Ідеї мови пролог простежуються в сучасних мовах представлення знань в Інтернет: owl, rdf, які лежать в основі розвитку семантичного веб 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Ідеї мови пролог простежуються в сучасних мовах представлення знань в Інтернет: owl, rdf, які лежать в основі розвитку семантичного веб



Питання:

1. Яка основна відміна між імперативною та декларативною парадигмами?

2. Які мови програмування традиційно відносять до декларативної парадигми?

3. Яка математична теорія лежить в основі функціонального програмування?

4. Яка математична теорія лежить в основі логічного програмування?

5. Яка мова програмування традиційно є мовою функціонального програмування?

6. Яка мова програмування традиційно є мовою логічного програмування?

7. Назвіть дві основні характеристики функціонального програмування?

8. Для якого класу задач призначене функціонального програмування?

9. Для якого класу задач призначене логічне програмування?

10. Що собою представляє програма у логічному програмуванні?

11. До якої парадигми відноситься мова Prolog?

12. До якої парадигми відносяться мови Lisp, Common Lisp?

13. У чому полягає виконання програми у логічному програмуванні?


Лекція 8. Основи XML

План

1. Визначення і структура XML-документа

2. Створення XML-документа

3. Способи відображення XML-документа.

4. Правила створення коректного XML-документа

Визначення і структура XML-документа

Будь-який документ можна представити у вигляді деякого набору символів, розділених на дві групи: перша група визначає вміст документа, друга – спеціальні набори символів (теги), призначені для специфічного виділення або позначки деяких частин першої групи. У XML-документах перша група носить назву "текст" або "контент", а друга називається розміткою. У мові HTML, наприклад, до розмітки відносяться всі теги, без виключення.

Розмітка XML-документа є дещо складніше поняття, ніж в мові HTML. Це пов'язано з трьома наступними обставинами:

1. XML-документ може містити інструкції обробки самого себе. Це означає, що обробник XML-документа (процесор) є посередником між цим документом і деяким застосуванням. Такими застосуваннями можуть бути бази даних, сервер каталога, мова програмування, що працює на стороні сервера, і тому подібне.

2. Синтаксис мови XML визначений жорстко і не допускає багатозначного тлумачення своїх правил. Причому будь-яке відхилення від цих правил спричиняє за собою відмову процесора обробляти весь документ. Тому в мові XML кількість обмежень на синтаксис документа, про які необхідно пам'ятати розробнику, значно більше, чим в мові HTML.

3. На відміну від мови HTML, розробник XML-документів сам визначає назви тегов і, можливо, правила їх інтерпретації. Якщо такі правила присутні, то вони відокремлені від безпосередньо XML-коду і утворюють так званий сценарій XSLT (XSL Transformation). Іншими словами, якщо XML-файл служить не лише для зберігання яких-небудь даних, але і для їх представлення, (наприклад, в браузері), то способи представлення цих даних винесені в окремий XSL-файл (XSL – розширювана мова стилів).

Структура інформації, що міститься в XML-файлі, є ієрархічною моделлю даних (як і HTML-документа), тобто, вся символьна інформація: розмітка або контент є сукупністю вузлів деякого дерева. По правилах XML в коректному документі має бути присутнім єдиний кореневий елемент. Всі останні елементи є його безпосередніми нащадками або нащадками інших його нащадків. Процес обробки такого документа починається з першого або кореневого елементу, потім обробляються вузли дерева другого рівня, потім — третього і так далі. Переважна більшість помилок виникають в результаті того, що набори символів розмічені не однозначно, тобто процесор не може визначити, до якого саме вузла слід віднести даний набір.

Створення XML-документа

XML-документ є звичайним текстовим файлом, в якому за допомогою спеціальних тегов створюються елементи даних, послідовність і вкладеність яких визначає структуру документа і його вміст.

Структура XML-документа

Як і HTML-документ, XML-документ складається з двох частин: Заголовка (прологу) (як тег HEAD в HTML) і елементу Документ (його також називають кореневим елементом).

 

 

Розглянемо ще один приклад XML-документа.

<?xml version="1.0" encoding="koi-8"?><notepad> <note id="1" date="12/04/99" time="13:40"> <subject>Важная ділова встреча</subject> <importance/> <text> Треба зустрітися з <Person id="1625">Иваном Івановичем</person>, заздалегідь подзвонивши йому по телефону <tel>123-12-12</tel> </text> </note>... <note id="2" date="12/04/99" time="13:58"> <subject>Позвонить домой</subject> <text> <tel>124-13-13</tel> </text> </note></notepad>

 

Питання. Як називається в даному прикладі кореневий елемент?

Заголовок XML-документа

Заголовок (пролог) згідно специфікації мови XML, підкоряється наступним правилам синтаксису:

1) заголовок повинен починатися з символів <?;

2) перед початковими символами заголовка не повинно бути інших символів;

3) заголовок повинен закінчуватися символами?>;

4) після початкових символів повинне стояти слово xml;

5) вказівка версії за допомогою конструкції version ="... " є обов'язковою;

6) номер версії на даний момент — 1.0;

7) номер версії має бути поміщений в лапки.

Окрім номера версії заголовок XML-документа може включати в оголошення кодування документа, яке визначається за допомогою конструкції encoding ="... ". Наприклад:

<?xml version="1.0" encoding="koi-8"?>,

або

<?xml version="1.0" encoding="Windows-1251"?>

Елемент Документ

Другою основною частиною XML-документа є єдиний елемент Документ, або кореневий елемент, який у свою чергу містить додаткові елементи.

 

Примітка. Елемент Документ в XML-документі схожий на елемент BODY на HTML-сторінці, за винятком того, що ви можете призначити йому будь-яке допустиме ім'я.

Важливо!

1. Мова XML є чутливою до регістру символів, тому як відкриваючі, так і закриваючі теги мають бути записані символами в одному регістрі.

Невірно Вірно

<tag> content </Tag> <tag> content </tag>

<TAG> content </TAG>

tag і Tag – це різні теги на відміну від HTML!

2. Не допускається один або декілька пропусків перед відкриваючою дужкою тега, хоча в будь-якому іншому місці пропуски допустимі. Те саме стосується і символів кінців рядків. Таким чином, будуть вірними, наприклад, такі два варіанти коду:

<tag_name attl="l" att2="2">...</tag_name>

і

<tag_name

attl="l" att2="2"

>

.......

</tag_name>

 

3. Використання закриваючого тега завжди обов'язково!

<?xml version="1.0"?><INVENTORY> <BOOK><TITLE>The Adventures of Huckleberry Finn</TITLE> <AUTHOR>Mark Twain</AUTHOR> <BINDING>mass market paperback</BINDING> <PAGES>298</PAGES> <PRICE>$5.49</PRICE> </BOOK><BOOK> <TITLE>Moby-Dick</TITLE> <AUTHOR>Herman Melville</AUTHOR> <BINDING>trade paperback</BINDING> <PAGES>605</PAGES> <PRICE>$4.95</PRICE> </BOOK><BOOK> <TITLE>The Scarlet Letter</TITLE> <AUTHOR>Nathaniel Hawthorne</AUTHOR> <BINDING>trade paperback</BINDING> <PAGES>253</PAGES> <PRICE>$4.25</PRICE> </BOOK></INVENTORY>

 

Імена елементів в XML-документі (такі як INVENTORY, BOOK і TITLE в наведеному вище прикладі) не є визначеннями мови XML. Ви всього лише призначаєте ці імена при створенні певного документа. Для ваших елементів ви можете вибирати будь-які коректно задані імена (LIST замість INVENTORY, або ITEM замість BOOK).

Примітка. Хоча немає спец. заборон, краще імена елементів писати латиницею.

У попередньому прикладі XML-документ має ієрархічну структуру у вигляді дерева з елементами, вкладеними в інші елементи, і з одним елементом верхнього рівня – він носить назву елемент Документ або кореневий елемент, – який містить всі інші елементи. Структуру описаного в прикладі документа можна представити, як показано на рисунку.

Таким чином, за допомогою XML ви можете описати ієрархічну структуру документа, такого як книга, що містить частини, глави і розділи.



Поделиться:


Последнее изменение этой страницы: 2017-02-21; просмотров: 214; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.248.119 (0.007 с.)