Скачати 0.94 Mb.
|
letterFrom: O. Protsenko to: All students Subject: Questions to exam Date: 19.09 2009 аналогічний фрагмент XML-тексту виглядає так: Якщо поставити собі питання, який із фрагментів містить більше даних для обробки програмним додатком, то відповідь зрозуміла – XML. Інша відмінність полягає в тому, що HTML змішує зміст і форматування в одному потоці розмітки. Так, наприклад, елементи і свідчать, яким чином мають бути виділені елементи, і де розміщені об'єкти, виділені такими елементами.А XML-код виглядатиме так: ![]() Рисунок 5 – Приклад документа
Контроль типів даних досягається завдяки використанню відповідної схеми. Дані XML документа, які використовуються при обміні, повинні використовувати один формат, для запобігання плутанини. Наприклад, дата може бути оформлена в одному з таких форматів: mmddyy yyddmm ddmmyy yymmdd. Існує декілька підходів до контролю типів даних. Пізніше розглянемо технології XDR і DTD. До наступних типів даних може буде потрібна перевірка правильності. Необхідність перевірки залежить від того, обмін якою інформацією здійснюється.
Якщо мова йде про перевірку правильності оформлення документа, то мова йде не про представлення даних, а про структуру даних. ^ Структура документа дозволяє читачеві швидко зрозуміти, в якому саме вигляді подав інформацію автор документа. ^ вказують шлях комп’ютерного застосування даних, які містяться в різних контейнерах цілого документа. У структурі даних не міститься визначення важливості одного компонента документа по відношенню до іншого. Всі компоненти рівні. Парсер – це програма (у специфікації консорціуму W3C називається обробником XML), яка інтерпретує символ за символом. Існує два типи парсерів:
^ Зв'язок схеми з документом дозволяє розширити можливість поширення документа незалежно від додатка. Схема додає ряд обмежень, які визначають список необхідних елементів і атрибутів, порядок їх проходження, а також при необхідності, їх допустимі значення. Схема DTD надає шаблон розмітки документа, в якому вказується наявність, порядок проходження і розміщення елементів і їх атрибутів у документі. Також XML-документ можна подати у вигляді дерева, схему DTD також можна подати у вигляді дерева. Проте відмінність DTD полягає в тому, що дерево DTD не повторює елементи або структуру. Наприклад, деревоподібну структуру XML-документа, що містить інструкцію по миттю машини, можна подати у вигляді схеми на рисунку 6, а деревоподібна схема DTD виглядає так, як показано на рисунку 7. ![]() Рисунок 6– Деревоподібна структура XML-документа ![]() Рисунок 7– Дерево DTD для XML--файлу Схеми DTD мають справу з елементами документа XML, елементами-контейнерами, пустими елементами. Елементи-контейнери можуть містити дані, наприклад, текст, дочірні елементи або те і інше. Оголошення змісту елемента або атрибута в схемі DTD називається моделлю змісту для цього елемента або атрибута. У будь-якому XML документі елементи – фундаментальні структури, які об'єднані для представлення екземпляра XML. Тому кожен елемент має бути оголошений у схемі DTD разом з оголошенням його типу. Оголошення типів елемента мають таку структуру: . Всі приклади, які будуть наведені нижче, пов'язані між собою. Кожен приклад зберігатимемо в окремому файлі як нову версію попереднього. ^ Приклад 1. Необхідно оформити як екземпляр XML записку «Завтра о 12.45 лекція з Web-дизайну». Екземпляр добре оформленого коду example_3.xml виглядатиме так: У цьому екземплярі елемент Цей документ можна перевірити, створивши DTD схему із оголошенням типу цього елемента, яка вказує на те, що цей елемент може мати тільки зарезервоване ключове слово #PCDATA або текст. #PCDATA (завжди вказується знаками тільки верхнього регістру) – це звичайні текстові дані, але які зчитуються парсером і обробляються належним чином. Перевірка документа на відповідність DTD-схемі, у разі, коли вказаний тип #PCDATA може привести як до бажаних, так і небажаних результатів. Оскільки, схема DTD забезпечує перевірку правильності структури документів, вона містить правила для змісту. Наприклад, елемент може містити текст або інші елементи, а може бути порожнім елементом. Всі ці моделі змісту подаються у схемах DTD по-різному. Схеми DTD можуть бути вказані в різних документах і бути пов'язаними в цих документах. Виділяють внутрішні і зовнішні схеми DTD. ^ Розглянемо приклад, в якому схема DTD буде вбудована в XML-документ. Для детального розгляду пронумеруємо рядки. 1: 2: 3: 4: ]> 5: Рядок 1 – звичайне оголошення XML, яке використовується у всіх XML документах. У рядку 2 міститься оголошення певного типу документа, яке дається в пролозі документа і, яке пов'язує з документом схему DTD. Визначення типу документа завжди починається з і закінчується >. Ключове слово DOCTYPE завжди записується символами верхнього регістру. Всі рядки, що містяться в XML-документі до кореневого елемента називаються прологом. Пролог містить інструкції обробки документа: оголошення XML і оголошення DOCTYPE у випадку використання DTD схеми. Оголошення типу документа в другому рядку повідомляє обробника про те, що існує оголошення елемента note, а всі відомості, поміщені в квадратні дужки, є схемою DTD. Іншими словами, рядок 2 починає внутрішню підмножину DTD під назвою note. У рядку 3 міститься оголошення типу елемента для елемента note. Тут вказано, що елемент note може містити тільки текстові дані. У дужках указується або модель змісту, або специфікація змісту. За допомогою моделі змісту парсеру повідомляється чого слід чекати від кожного елемента XML у даному документі. Рядок 4 містить закриття схеми DTD. Рядок 5 містить кореневий елемент XML-документа. ^ Нехай елемент note містить дочірній елемент. Добре оформлений документ виглядатиме так: Цей самий документ, що містить схему DTD можна оформити так: 1: 2: 3: 4: 5: ]> 6: 7: 8: Завтра о 12.45 відбудеться лекція з Web-дизайну 9: 10: Тут, у рядку 3 оголошується, що елемент note містить дочірній елемент text, рядок 4 містить інформацію про те, що вмістом елемента text є текст, що інтерпретується парсером. Рядки 6-8 є добре і правильно оформленим документом. Зауваження. Відступи в тексті використовуються виключно для надання документу зручної форми для читання. ^ Порожній елемент у схемах DTD оголошується таким чином . Припустимо, в нашому повідомленні є порожні елементи Тоді DTD схема для такого XML тексту виглядатиме так 1: 2: 3: 4: 5: 6: 7: ]> 8: 9: 10: 11: 12: Завтра о 12.45 відбудеться лекція з Web-дизайну 13: 14: Парсер інтерпретує рядок 3 так: елемент note містить три елементи time, date, text, які слідують один за одним у такому порядку, в якому вони перелічені в дужках при описі елемента note. Згідно схеми DTD, елементи time і date не можуть містити будь-яких даних. ^ Трапляється, що наперед невідомо, яка саме модель використовується. У таких випадках в схемах DTD використовують слово ANY. Ключове слово ANY впливає на визначення структури XML. 1: 2: 3: 4: 5: 6: 7: ]> 8: 9: 10: 11: 12: Завтра о 12.45 відбудеться лекція з Web-дизайну 13: 14: ^ Бувають випадки, коли необхідно дозволити елементу містити деяку комбінацію текстових даних і інших елементів. Подібні можливості забезпечує модель змішаного вмісту. Наприклад, Завтра о 12.45 лекція з Web-дизайну Тут кореневий елемент note окрім порожніх дочірніх елементів містить текст «Увага!!!» Для визначення змішаного типу вмісту використовують таке позначення: Тобто в даному прикладі XML-код виглядатиме так: 1: 2: 3: PCDATA 9: 10: 11: 12:Завтра о 12.45 відбудеться лекція з Web-дизайну 13: 14: Завтра о 12.45 відбудеться лекція з Web-дизайну Завтра о 12.45 відбудеться лекція з Web-дизайну | ||||||||||||||||||||||||||||||||||||||||||||||||||||
XML Version 1.0 | Технічні рекомендації про використання XML. | |||||||||||||||||||||||||||||||||||||||||||||||||||
DTD | Визначення типу документа. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XDR | Формат XML Reduced ( схема Microsoft). | |||||||||||||||||||||||||||||||||||||||||||||||||||
XSD | Визначення схеми XML (схема консорціуму W3C). | |||||||||||||||||||||||||||||||||||||||||||||||||||
Простори імен | Метод визначення імен елементів та атрибутів. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XPath | Мова шляхів XML. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XLink | Мова посилань XML. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XPointer | Мова покажчиків XML. | |||||||||||||||||||||||||||||||||||||||||||||||||||
DOM | Програмний інтерфейс API для об'єктної моделі документів. | |||||||||||||||||||||||||||||||||||||||||||||||||||
SAX | Simple API for XML (Простий програмний інтерфейс API для XML). | |||||||||||||||||||||||||||||||||||||||||||||||||||
XSL | Розширена мова таблиць стилів. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XSL-FO | Об'єкти форматування XSL. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XSLT | Мова перетворень XSL. | |||||||||||||||||||||||||||||||||||||||||||||||||||
X Include | Синтаксис XML Include. | |||||||||||||||||||||||||||||||||||||||||||||||||||
XBase | Синтаксис XML Base URI. |
![]() | Програма Основний синтаксис ... | ![]() | Методичні вказівки до виконання курсової роботи з дисципліни «Web-програмування» для студентів напряму 030502 економічна кібернетика Курсова робота самостійна робота студента, мета якої полягає в систематизації, закріпленні і поглибленні знань, одержаних при вивченні... |
![]() | Лекція №2. Стандарти Web Створення World Wide Web «Війни браузерів» Поява стандартів Web Формування W3c розвиток стандартів Web У 1993 р у світі працювало 1700 Gopher-серверів. Але після того, як університет оголосив, що збирається вимагати ліцензійні відрахування... | ![]() | Разработка Web-сервиса на основе php и Mysql На платформе Microsoft. Net или J2ee web-сервис представляет собой развитый сервер на основе wsdl (Web Service Definition Language),... |
![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12 | ![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12 |
![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12 | ![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 9 |
![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 12 | ![]() | Техническая документация web ирбис64 и web ирбис32 Команда чтения внутреннего двоичного объекта из библиографической записи – «интегрированный файл»(3) 14 |