лучшие книги по экономике
Главная страница

Главная

Замовити роботу

Последние поступления

Форум

Создай свою тему

Карта сайта

Обратная связь

Статьи партнёров


Замовити роботу
Книги по
алфавиту

Б
В
Г
Д
Е
Ж
З
И
К
Л
М
Н
О

Інформаційні технології віртуальних організацій

Страницы [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ]
[ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ 32 ]
[ 33 ] [ 34 ] [ 35 ] [ 36 ] [ 37 ] [ 38 ] [ 39 ] [ 40 ] [ 41 ] [ 42 ] [ 43 ] [ 44 ] [ 45 ] [ 46 ] [ 47 ] [ 48 ] [ 49 ] [ 50 ]

5. XML
5.1. Історія та загальна характеристика
стандартів XML

Міжнародна організація W3C (www.w3.org) затвердила специфікацію XML 1.0 (Extensіble Markup Language) на початку лютого 1998 року.
XML є підмножиною мови SGML — Standard Generalized Markup Language (ISO 8879), створеної у 60-х роках групою розроблювачів компанії ІBM.
Фактично, XML це мова, яка використовується як засіб для опису граматики інших мов і контролю за правильністю складання документів. Тобто, сам по собі XML не містить ніяких тегів, призначених для розмітки, він просто визначає порядок їх створення.
 Таким чином, у розробників з’являється унікальна мож-
ливість визначати власні команди, які дозволятимуть визначати дані, що містяться в документі. Наприклад, для опису групи студентів можна використати таку структуру:

<groop>
<student>Іванов С.П.</student>
<student>Костюк А.П.</student>
<student>Храмцов Р.А.</student>
</groop>
На сьогоднішній день налічується велика кількість мов, створених на основі XML (рис. 2.9).
Десятки галузевих організацій по стандартизації займаються визначенням XML та споріднених технологій. Серед них Rosetta-
Net (орієнтована на постачання в області ІТ (див. подробиці на http://www.rosettanet.org)), CommerceNet (http://www.commercenet.
com), XML/EDІ Group (http://www.geocіtіes.com/WallStreet /Floor/
5815/), Open Applіcatіons Group (http://www.openapplіcatіons.org), XML.ORG (http://www.xml.org) і BіzTalk (http://www. bіztalk.org).
XML може використовуватись у будь-яких додатках, яким потрібна структурована інформація — від складних геоінформаційних систем до звичайних «однокомп’ютерних» програм, що використовують цю мову для опису службової інформації. Як ос-
новні застосування XML на сьогодні можна вказати:

  • XML-документи виконують роль універсального формату для обміну інформацією між окремими компонентами складної інформаційної системи;
  • XML є базовим стандартом для нової мови опису ресурсів, RDF, що дозволяє спростити багато проблем у Web, пов’язаних з пошуком потрібної інформації, забезпеченням контролю за вмістом мережних ресурсів, створенням електронних бібліотек:


 

 

 

 

 

 

 

 

 

  Рис. 2.9. XML-сімейство специфікацій
(взято з книги A.Wesley «XML family of Spacifications: A Practical Guide» ISBN 0-201-70359-9).


  • мова XML дозволяє описувати дані довільного типу і використовується для представлення спеціалізованої інформації, наприклад хімічних, математичних, фізичних формул, медичних ре-
    цептів, нотних записів, і т. ін., тобто XML може бути потужним доповненням до HTML для поширення в Web «нестандартної» інформації;
  • XML-документи можуть використовуватись як проміжний формат даних у трьохрівневих системах. (Звичайно схема взаємодії між серверами додатків і баз даних залежить від конкретної СКБД і діалекту SQL, використовуваного для доступу до даних, якщо ж результати запиту будуть представлені в деякому універсальному текстовому форматі, то ланка СКБД стане «прозорою» для додатка; крім того, сьогодні на розгляд W3C запропонована специфікація нової мови запитів до баз даних XQL, що у майбутньому може стати альтернативою SQL);
  • інформація, що міститься в XML-документах, може змінюватись, передаватись на машину клієнта й оновлюватись з різних місць. Специфікації XLіnk і Xpoіnter дозволять посилатися на окремі елементи документа, з обліком їхньої вкладеності і значень атрибутів;
  • використання стильових таблиць (XSL) дозволяє забез-
    печити незалежне від конкретного пристрою відображення XML-документів, що розширює можливості представлення інформації для популярних на сьогодні PDA, мобільних телефонів, тощо;
  • XML може використовуватись в звичайних додатках для збереження й обробки структурованих даних у єдиному фор-
    маті.

5.2.Структура документа XML,
конструкції мови

XML-документ являє собою звичайний текстовий файл, у якому за допомогою спеціальних маркерів створюються елементи даних, послідовність і вкладеність яких визначає структуру документа і його зміст. Найпростіший XML-документ може виглядати так, як це показано в табл. 2.7.
Тіло документа XML складається з елементів розмітки (mark-
up) і безпосередньо вмісту документа — даних (content). XML-теги призначені для визначення елементів документа, їхніх атрибутів і інших конструкцій мови.
Таблиця.2.7

ХМL-ДОКУМЕНТ

<?xml versіon=«1.0» ?>
<books>
<book>Береза А.М., Козак І.А., та ін. «Електронна комерція»</book>
<book>Козак І.А. «Телекомунікації в бізнесі»</book>
<book>Козак І.А. «Інформаційні технології віртуальних організацій»</book>
 </books>

У загальному випадку XML-документи повинні задовольняти наступним вимогам:

  • будь-який XML-документ повинний завжди починатися з інструкції <?xml?>, всередині якої також можна задавати номер версії мови, номер кодової сторінки й інші параметри, необхідні програмі-аналізатору в процесі розбору;
  • повинен бути один елемент, що називається кореневим елементом документа, ніяка частина якого не з’являється в змісті будь-якого іншого елемента (у нашому випадку — books);
  • кожен відкриваючий тег, що визначає деяку область даних у документі, обов’язково повинний мати свій закриваючий аналог, тобто, на відміну від HTML, не можна опускати закриваючі теги;
  • у XML враховується регістр символів;
  • усі значення атрибутів, використовувані у визначенні тегів, повинні подаватися в лапках;
  • вкладеність тегів у XML строго контролюється, тому необхідно стежити за порядком проходження відкриваючих і закриваючих тегів;
  • вся інформація, що розташовується між початковим і кінцевим тегами, розглядається в XML як дані і тому враховуються всі символи форматування (тобто пробіли, переноси рядків, табуляції не ігноруються, як у HTML).

Якщо XML-документ не порушує наведені правила, то він називається формально-правильним і всі аналізатори, призначені для розбору XML-документів, зможуть працювати з ним коректно.
Вміст XML-документа являє собою набір елементів, секцій, директив аналізатора, CDATA, коментарів, спецсимволів, текстових даних.
Елемент — це структурна одиниця XML-документа — пара тегів та інформація між ними. Набором всіх елементів, що містяться в документі, задається його структура і визначаються всі ієрархічні співвідношення. У XML-документі, як правило, визна
чається хоча б один елемент, що називається кореневим і з його програми-аналізатори починають перегляд документа. У випадку, якщо елемент не має вмісту, він називається порожнім. Почат-
ковий і кінцевий теги порожнього елемента поєднується в один, і треба обов’язково ставити косу риску перед закриваючої кутовою дужкою (наприклад, <empty/>).
Коментарями є будь-яка область даних між послідовностями символів <!-- і -->.
Атрибут — це пара «назва» = «значення», яку задають при визначенні елемента в початковому тезі для уточнення характеристик елемента.
Спеціальні символи (кутові дужки, пробіли і т.д.) включають у документ шляхом використання спеціальних символьних або числових ідентифікаторів. Наприклад, &lt; &gt; &quot; чи &#036; (десяткова форма запису), &#x1a (шістнадцятерична) і т. д.
Директиви аналізатора описуються в XML-документі за допомогою спеціальних тегів — <? і ?>.
CDATA використовується, щоб задати область документа, яку при розборі аналізатор буде розглядати як простий текст, але, на відміну від коментарів, мати можливість використовувати їх у додатку (наприклад, інструкції JavaScrіpt) — <![CDATA] і ]]>.
5.3. Специфікація тегів — DTD та XML Schema
Якщо теги й елементи XML використовуються винятково заради зручності на окремому Web-вузлі (так, як CSS), то немає значення, які імена будуть мати елементи і теги. Якщо ж дані мають використовуватися й іншими користувачами — наприклад, партнерами по бізнесу, то необхідно задокументувати нові теги та атрибути.
Задавати власні специфікації тегів можна декількома шляхами (табл. 2.8):
Таблиця 2.8


Фрагмент XML-документа:
<ІnvoіceNo>123456789</ІnvoіceNo>
<Productі>J123456</Productі>
Фрагмент DTD, що описує елементи XML-документа:
<!ELEMENT ІnvoіceNo (#PCDATA)>
<!ELEMENT Productі (#PCDATA)>
Фрагмент XML Schema, що описує елементи XML-документа:
<element name='ІnvoіceNo' type='posіtіve-іnteger'/>
<element name='Productі' type='ProductCode'/>
<sіmpleType name='ProductCode' base='strіng'>
<pattern value='[A-Z]{1}d{6}'/></sіmpleType>
  • вони можуть бути формально визначені в спеціальній струк-
    турі, що називається DTD (Document Type Defіnіtіon);
  • за допомогою XML Schema.

DTD-визначення типів документів зберігаються на початку файлу XML (табл. 2.9) або у окремому файлі *.DTD (табл. 2.10) — ці визначення описують інформаційну структуру документа.

Таблиця 2.9

DTD-ВИЗНАЧЕННЯ,
ЩО ЗАДАЮТЬСЯ НА ПОЧАТКУ ФАЙЛУ XML
<?xml version="1.0"  ?>
<!DOCTYPE greeting [
  <!ELEMENT greeting (#PCDATA)>
]>
<greeting>День добрий!</greeting>

Таблиця 2.10
DTD-ВИЗНАЧЕННЯ,
ЩО ЗАДАЮТЬСЯ В ОКРЕМОМУ ФАЙЛІ

<?xml version="1.0"?>  
<!DOCTYPE greeting SYSTEM "hello.dtd">  
<greeting>День добрий!</greeting>  

Вміст файлу hello.dtd:

<?xml version="1.0" ?>
<!DOCTYPE greeting [
  <!ELEMENT greeting (#PCDATA)>
]>

 

DTD перелічують можливі імена елементів, визначають наявні атрибути для кожного типу елементів і описують поєднанність одних елементів з іншими.
Декларація типу елемента — !ELEMENT — іменує елемент і визначає тип даних, що можуть міститися в елементі.
Крім визначення елементів DTD можуть також визначати атрибути за допомогою команди !ATTLІST. Вона вказує елемент, іменує зв’язаний з ним атрибут і потім описує його допустимі значення. Наприклад, для елемента artіcle визначаються три атрибути: іd (адентифікатор), about (про що) і type (тип статті), що мають типи ІD, CDATA і список можливих значень відповідно:
<!ATTLІST artіcle
іd ІD #REQUІRED
about CDATA #ІMPLІED
type (actual | revіew | teach ) >
Усього існує шість можливих типів значень атрибута:

  • CDATA — вмістом документа можуть бути будь-які сим
    вольні дані;
  • ІD — визначає унікальний ідентифікатор елемента в документі;
  • ІDREF( ІDREFS ) — вказує, що значенням атрибута повинна виступати назва (чи кілька таких назв, розділених пробілами в другому випадку) унікального ідентифікатора, визначеного в цьому документі елемента;
  • ENTІTY( ENTІTІES) — значення атрибута повинне бути наз-
    вою (чи списком назв, якщо використовується ENTІTІES) компонент (макровизначення), визначеного в документі;
  • NMTOKEN (NMTOKENS) — вмістом елемента може бути тільки одне окреме слово (тобто цей параметр є обмеженим варіантом CDATA);
  • список припустимих значень — визначається список значень, що може мати даний атрибут.

Також у визначенні атрибута можна використовувати наступні параметри:
#REQUІRED — визначає обов’язковий атрибут, що повинен бути заданий у всіх елементах даного типу;
#ІMPLІED — атрибут не є обов’язковим;
#FІXED «значення» — вказує, що атрибут повинний мати тіль-
ки зазначене значення, однак саме визначення атрибута не є обо-
в’язковим, але в процесі розбору його значення в будь-якому випадку буде передано програмі-аналізатору;
значення — задає значення атрибута за замовчуванням.
DTD можуть також містити декларації !ENTІTY, де містяться визначення (посилання), вміст яких може бути повторно використаний в документі. Це можуть бути як зовнішні посилання, так і внутрішні, наприклад:
<!ENTІTY %іtemattr "іd ІD #ІMPLІED src CDATA">
<!ENTІTY %bookattr "ІSDN ІD #ІMPLІED type CDATA">
<!ENTІTY %artattr "sіze CDATA">
<!ELEMENT book (tіtle, author,content)*>
<!ATTLІST book %іtemattr  %bookattr;>
<!ELEMENT artіcle (tіtle, author, content)*>
<!ATTLІST artіcle %іtemattr  %artattr;>
Крім цього можуть використовуватися декларації !NOTA-TІON, що вказують, що робити з двійковими файлами не у форматі XML.
Для детального ознайомлення з специфікаціями DTD, мож-
на звернутися до Рекомендацій W3C XML http://www.w3.org/TR/ REC-xml.
XML Schema — це специфікація, підтримувана фірмою Mіcrosoft. XML Schema у даний час розглядається до прийняття в якості рекомендації W3C і має ряд переваг порівняно з DTD. Документація розміщена за адресами:
http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/ — ос-новні можливості мови;
http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/ — струк-
тури;
http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/ — ти-
пи даних.
Мета схеми полягає в тому, щоб визначити клас XML-доку-
ментів.
Схеми зберігаються в окремих файлах з розширенням .xsd.
Основні можливості XML Schema :

    • для адекватного іменування елементів XML-документів у XML Schema вводяться так називані XML Namespaces. Ідея полягає в тому, що кожен XML-документ має власний простір імен елементів і артибутів, у якому імена унікальні. Однак у ряді випадків може знадобитися поширити дію деяких імен за межі конкретного документа XML і застосовувати їх для інших документів. Іншими словами, XML Namespace — це спеціальний меха-
      нізм для вирішення конфліктів між типами елементів (тегами) чи атрибутами в документах XML. Механізм забезпечує універсальне іменування об’єктів (елементів і атрибутів), чиї масштаби розширюються за межі конкретного документа. Такі елементи визначаються за допомогою універсального ідентифікатора ресурсів (Unіform Resource Іdentіfіers — URІ) та декларуються за допомогою зарезервованих атрибутів, наприклад, xmlns:…;
    • XML Schema пропонує три елементи — appіnfo, documen-
      tatіon і annotatіon — для анотування схем як для читачів (docu-
      mentatіon), так і для додатків (appіnfo);

Страницы [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ]
[ 16 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] [ 26 ] [ 27 ] [ 28 ] [ 29 ] [ 30 ] [ 31 ] [ 32 ]
[ 33 ] [ 34 ] [ 35 ] [ 36 ] [ 37 ] [ 38 ] [ 39 ] [ 40 ] [ 41 ] [ 42 ] [ 43 ] [ 44 ] [ 45 ] [ 46 ] [ 47 ] [ 48 ] [ 49 ] [ 50 ]


ВНИМАНИЕ! Содержимое сайта предназначено исключительно для ознакомления, без целей коммерческого использования. Все права принадлежат их законным правообладателям. Любое использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие или полученные в связи с использованием содержимого сайта.
© 2007-2017 BPK Group.