&introduction;
&body;
&sidebar;
&conclusion;
&resources;
Що таке XML?
XML (eXtensible Markup Language) - це розширювана мова розмітки тексту, запропонована W3C у 1996 році. Це мова, яка повною мірою визначає логічну структуру документа. Задача XML полягає в тому, щоб дані: тексти, зображення або інші частини Web-документа могли бути визначені і структуровані незалежно від платформи , що їх відтворює, постачальника і його програмного забезпечення, наприклад Web-браузерів.
При створенні документів із використанням XML, ви можете використовувати ваші власні елементи і структури для розмітки вмісту ваших документів. Можливо визначити DTD (a Document Type Definition), тобто визначення типу документа. DTD визначає те, що можна назвати "граматикою" документа - це список різноманітних елементів і їхніх утворень для використання у визначених документах, у чомусь це нагадує використання CSS, тобто ви можете зробити посилання на DTD, що знаходиться або в мережі або написати його безпосередньо у вашому документі.
Таким чином, вміст документа, його структура, типи використвуваних у ньому елементів і його видгляд визначаться окремо, тобто незалежно один від одного.
Чому XML?
Потрібно сказати, що XML корисний для автоматизованих програмних засобів, що шукають у Web. Недосконалість HTML призвела до того, що мережа перетворилася в мішанину тексту, повну різноманітних елементів і тегів, часто використовуваних, що називається Pro Forma і нічого не значущих.
XML має величезний потенціал для удосконалення гіпертекста. Наприклад у HTML для створення зв'язку використовується елемент A, XML же дозволяє створити не просто посилання, а наприклад, двонаправлений зв'язок.
Перспектива XML полягає в тому, що він буде використовуватися для опису інших мов розмітки, наприклад, JavaScript, що використовується в HTML-документах.
XML розроблений для того, щоб спростити і полегшити використання SGML, при цьому зберігши його великі можливості по створенню, поширенню і публікації Web-документів мережі.
Вступ
Незважаючи на те, що XML дуже молода (W3C затвердила специфікацію "Extensible Markup Language(XML) 1.0" на початку лютого 1998 г) і окремі компоненти цієї мови знаходяться ще в стадії доробки, уже сьогодні з'являються нові мови, створені на основі XML, виникають численні Web-сервери, що використовують цю технологію для організації інформації , що зберігається на них.
Для чого потрібна нова мова розмітки?
Мова розмітки документів - це набір спеціальних інструкцій, називаних тегами, призначених для формування в документах якоїсь структури і визначення відношень між різноманітними елементами цієї структури. Теги мови, або, як їх іноді називають, управляючі дескриптори, у таких документах якимось чином кодуються, виділяються щодо основного вмісту документа і служать у якості інструкцій для броузера.
Всю красу XML можна зрозуміти тільки при порівнянні його з HTML. Формалізована у RFC 1866 у 1995 році, HTML є найбільш популярною мовою розмітки у всьому світі. Термін “розмітка” стосовно до документа означає звичайно усе, що не відноситься до його інформаційного наповнення.
У ранню пору свого розвитку мова HTML підносилася як засіб масштабованого форматування документів, яку можна було б використовувати для обміну інформацією практично на будь-якій платформі. У основі HTML лежить украй проста ідея: ви визначаєте нескладну мову, що описує структуру документа, і чекаєте, коли компанії розроблять програмні засоби, спроможні подавати такі документи в різноманітних операційних середовищах з урахуванням обраних користувачем параметрів. За допомогою HTML можна було б створювати матеріали, що допускають представлення в будь-якому візуальному або звуковому форматі.
Проте поступово ставало ясно, що ця ідея, незважаючи на свою простоту, йде врозріз з узвичаєною практикою видавничих систем. Традиційний механізм підготування публікацій передбачає, що графічні дизайнери і компоновщики повинні брати до уваги специфічні особливості презентаційного середовища, включаючи розмір листа, якість друку, палітру кольорів і т.п. Виявилося, що переключитися з такого методу на більш простий, при якому автор відповідає лише за вміст і логічну структуру документа, перекладаючи презентаційні обов'язки на користувацькі програми, досить важко.
У файлі HTML у його вихідному виді теги форматування перемішані зі звичайним текстом. Головною особливістю розмітки HTML є, звичайно, можливість вставки посилань на зовнішні документи або на внутрішні розділи того ж самого документа.
HTML процвітав не тільки як адаптована мова розмітки, але й у якості проміжного програмного забезпечення. Завдяки своїй дешевизні і поширеності браузери Web являють собою відмінних клієнтів; за посередництвом HTML вони можуть спілкуватися з найрізноманітнішими серверами.
Проте HTML стикнувся з певними труднощами. Його обмежені можливості форматування намагалися перебороти за допомогою CSS, ініціативи TrueDoc від Bitstream і звісно ж множини специфічних розширень для браузера; а його обмежені можливості в якості проміжного ПО - за допомогою Java, Active і т.п. Проте все це не усуває його фундаментальні недоліки.
По суті, HTML - це технологія представлення інформації, вона описує те, як браузер повинний скомпонувати текст і графік на сторінці. У результаті “те, що ви бачите, - це усе, що ви одержуєте”. Немає ніякого способу описати дані незалежно від відображення цих даних (за винятком надзвичайно слабкої системи ключових слів у заголовку сторінки Web). "Байдужність" до структури документа призводить до того, що пошук або аналіз інформації усередині нього нічим не буде відрізнятися від роботи із суцільним, не розбитим на елементи текстовим файлом. Це головна причина, чому так важко знайти потрібну інформацію за допомогою механізму пошуку.
Клієнт не має ніяких менше прийнятних засобів витягу даних із сторінки Web для подальшої роботи з ними. Далі, на будь-який конкретній сторінці Web клієнт одержує тільки одне представлення конкретної множини даних.
Припустимо, що ви переглядаєте список аукціонів eBay, упорядкований по даті відкриття торгів. Якщо ви захочете глянути на той же список, але відсортований по даті закриття торгів, то вашому браузеру прийдеться посилати новий запит серверу. У свою чергу серверу прийдеться наново відправляти повну сторінку HTML із списком аукціонів. Такого роду маніпулювання даними веде до значного збільшення числа звертань до серверів Web і утруднює, таким чином, їх подальше масштабирование.
Інша проблема з HTML у тому, що це “плоска” мова, тобто автори не можуть використовувати її для надання інформації про ієрархію даних. Далі, вона непослідовна і тому утрудняє розбір тексту програмним забезпеченням. Наприклад, хоча більшість відкриваючих тегів, (такі, як або ) має відповідні закриваючі теги, деякі (наприклад,
) їх не мають.
Істотним недоліком HTML можна назвати обмеженість набору його тегов. DTD-правила для HTML визначають фіксований набір дескрипторів і тому в розробника немає можливості вводити власні, спеціальні теги.
Простим рішенням для деяких із перерахованих проблем було би введення додаткових тегів HTML, таких, як Тому в 1996 році члени робочої групи Консорціуму World Wide Web (W3C) повернулися до розгляду стандартної узагальненої мови розмітки (Standard Generalized Markup Language, SGML), сильно спрощеним нащадком якого є HTML. Запропонована у 1974 році Чарльзом Голдфарбом, SGML являє собою метамову - систему для опису інших мов. Ця мова призначена для створення інших мов розмітки, він визначає припустимий набір тегів, їхні атрибути і внутрішню структуру документа. При всіх своїх можливостях вона занадто складна для більшості браузеров Web: одна специфікацій SGML займає понад 500 сторінок. Спростивши SGML для використання з Web, група запропонувала XML (рекомендація W3C по статусу на лютий 1998 року). XML – підмножина SGML, причому любий дійсний документ XML є дійсним документом SGML. І, як і SGML, XML - це метамова, що визначає інші мови розмітки для специфічних цілей. Наприклад, мова синхронізованої інтеграції мультимедіа (Synchronized Multimedia Integration Language, SMIL) базується на XML. Консорціум W3C, закликаючи до використання XML у Web, фактично пропонує кожному сконструювати особисту мову для своїх гіпертекстових документів, причому для різних документів це будуть різні мови. XML дозволяє визначити формальний синтаксис мови, наприклад правила вкладення елементів. Семантику можна, звичайно, описувати на звичайній англійській мові. XML використовується для розмітки стандартних документів багато в чому так само, як HTML. Проте XML перевершує його при роботі зі структурованими даними, такими, як результати запиту, метаінформація про вузол Web або елементи і типи схеми. Документ XML виглядає багато в чому схожим на HTML. Він також складається з текстових фрагментів, анотованих вкладеними в кутові дужки тегами. Проте, на відміну від HTML, зміст тега залежить від регістра, а кожний відкриваючий тег повинний в усіх випадках мати парний закриваючий тег. XML (Extensible Markup Language)-э те мова розмітки, що описує цілий клас об'єктів даних, називаних XML- документами. Ця мова використовується в якості засобу для опису грамматики інших мов і контролю за правильністю впорядкування документів. XML не містить ніяких тегів, призначених для розмітки, а просто визначає порядок їх створення. Таким чином, якщо, наприклад, ми вважаємо, що для позначення елемента rose у документі необхідно використовувати тег Таким чином, у розробників з'являється унікальна можливість визначати власні команди, що дозволяють їм найбільш ефективно визначати дані, що зберігаються в документі. Автор документа створює його структуру, будує необхідні зв'язки між елементами, використовуючи ті команди, що задовольняють його вимогам і домагається такого типу розмітки, що необхідно йому для виконання операцій перегляду, пошуку, аналізу документа. Ще одною з очевидних переваг XML є можливість використання її в якості універсальної мови запитів до сховищ інформації. Сьогодні в глибинах W3C знаходиться на розгляді робочий варіант стандарту XML-QL (або XQL), що, можливо, у майбутньому складе серйозну конкуренцію SQL. Крім того, XML-документи можуть виступати в якості унікального засобу збереження даних, що містить у собі одночасно засоби для розбору інформації й представлення її на стороні клієнта. У цій області одним із перспективних напрямків є інтеграція Java і XML - технологій, що дозволяє використовувати міць обох технологій при побудові машинно-незалежних додатків, що використовують, крім того, універсальний формат даних при обміні інформацією. XML дозволяє також здійснювати контроль за коректністю даних, що зберігаються в документах, робити перевірки ієрархічних співвідношень усередині документа і встановлювати єдиний стандарт на структуру документів, умістом яких можуть бути самі різноманітні дані. Це означає, що його можна використовувати при побудові складних інформаційних систем, у котрих дуже важливим є питання обміну інформацією між різноманітними додатками, що працюють в одній системі. Створюючи структуру механізму обміну інформації на самому початку роботи над проектом, менеджер може позбути себе в майбутньому від багатьох проблем, пов'язаних із несумісністю використовуваних різноманітними компонентами системи форматів даних. На основі XML уже сьогодні створені такі відомі спеціалізовані мови розмітки, як SMIL, CDF, MathML, XSL, і список робочих проектів нових мов, що знаходяться на розгляді W3C, постійно поповнюється. Структура документа Не обмежуючи автора яким-небудь фіксованим набором тегів, XML дозволяє йому вводити будь-які імена. Ця можливість є ключовою для активного маніпулювання даними. Приклад для порівняння представлення списку імен і адрес на HTML і на XML. От фрагмент HTML: Посада: старший редактор Видання: Network Magazine Вулиця і будинок: Гарісона, 600 Місто: Сан-Франциско Штат: Каліфорнія Індекс: 94107 Електронна пошта: jangel@mfi. com Теги розміщають дані на екрані, але нічого не повідомляють про їхню структуру. У випадку XML той же самий фрагмент буде поданий у такий спосіб (і збережений у файлі EDITORS. XML). Magazine У XML теги не можуть накладатися, як у HTML, проте вони можуть бути вкладені один в одний. Насправді, вкладення навіть рекомендується як засіб створення ієрархії даних (підпорядковані або рівноправні відношення). Як очевидно з приведеного приклада, такі елементи, як Теги початку і кінця елемента є основними використовуваними в XML розмітками, але ними справа не вичерпується. Наприклад, елементам можуть бути привласнені атрибути. Ця можливість аналогічна наявній в HTML, де, наприклад, елементу Документи XML можуть містити посилання на інші об'єкти. Посилання являють собою рядок, що починається з амперсанта і закінчується “;”. Ці посилання дозволяють, зокрема, вставити в документ спеціальні символи. Посилання XML на об'єкти надають набагато більше можливостей, тому що вони можуть посилатися на визначені автором розділи тексту в тому ж самому або в іншому документі. Наприклад, посилання на об'єкти дозволяють застосувати об'єктно-орієнтований підхід при створенні журнальної статті: &introduction; &body; &sidebar; &conclusion; &resources; Найпростіший XML- документ може виглядати так, як це показано в Прикладі 1 У XML існують відкриваючі, закриваючі і порожні теги (у HTML поняття порожнього тэга теж існує, але спеціального його позначення не потрібно). Тіло документа XML складається з елементів розмітки (markup) і безпосередньо вмісту документа - даних (content). XML - теги призначені для визначення елементів документа, їхніх атрибутів і інших конструкцій мови. Любий XML-документ повинний завжди починатися з інструкції xml? >, усередині якої також можна задавати номер версії мови, номер кодової сторінки й інші параметри, необхідні програмі-аналізатору в процесі розбору документа. Правила створення XML- документа У загальному випадку XML- документи повинні задовольняти таким вимогам: У заголовку документа поміщається оголошення XML, у якому вказується мова розмітки документа, номер її версії і додаткова інформація Кожний відкриваючий тег, що визначає деяку область даних у документі обов'язково повинний мати відповідний закриваючий тег У XML враховується регістр символів Всі значення атрибутів, використовуваних у визначенні тегів, повинні бути взяті в лапки Вкладеність тегів у XML строго контролюється, тому необхідно стежити за порядком слідування відкриваючих і закриваючих тегів Вся інформація, що розташовується між початковим і кінцевими тегами, розглядається в XML як дані і тому враховуються всі символи форматування Якщо XML- документ не порушує приведені правила, то він називається формально-правильним і всі аналізатори, призначені для розбору XML- документів, зможуть працювати з ним коректно. З XML-документом пов'язані три рівні коректності: Правильно побудований XML-документ - це такий, у якому елементи правильно структуровані у вигляді дерева з коректно розставленими відкриваючих і закриваючих тегами. Діючий XML-документ правильно побудований і містить теги, що відповідають оголошенню типу документа. Він містить тільки елементи і значення атрибутів, що відповідають DTD. Хоча XML-документ може підготовлятися і читатися без DTD, DTD істотно для встановлення дієвості. Синтаксически коректний XML-документ знаходиться поза контролем XML. Розробник такого документа відповідає за його логічну структуризацію. Проте крім перевірки на формальну відповідність граматиці мови, у документі можуть бути присутнім засоби контролю над вмістом документа, за дотриманням правил, що визначають необхідні співвідношення між елементами і формуючою структурою документа. Наприклад, наступний текст, будучи цілком правильним XML- документом, буде абсолютно безглуздим: Для того, щоб забезпечити перевірку коректності XML-документів, необхідно використовувати аналізатори, що роблять таку перевірку і називаються верифікованими. На сьогоднішній день існує два способи контролю правильності XML-документа: DTD - визначення (Document Type Definition) і схеми даних (Semantic Schema). Визначення DTD- правил у XML не є необхідністю. Конструкції мови Вміст XML- документа являє собою набір елементів, секцій CDATA, директив аналізатора, коментарів, спецсимволів, текстових даних. Елементи даних Елемент - це структурна одиниця XML- документа. Вкладаючи слово rose в у тэги Любий непустой елемент повинний складатися з початкового, кінцевого тегов і даних, між ними заключених. Наприклад, наступні фрагменти будуть бути елементами: ,а ці - ні: rose Набором всіх елементів, що містяться в документі, задається його структура і визначаються всі ієрархічні співвідношення. Плоска модель даних перетворюється з використанням елементів у складну ієрархічну систему з множиною можливих зв'язків між елементами. Наприклад, у такому прикладі ми описуємо місце розташування Новосибірських університетів (вказуємо, що Новосибірський Університет розташований у місті Новосибірську, що, у свою чергу, знаходиться в Росії), використовуючи для цього вкладеність елементів XML : Проводячи пошук у цьому документі, програма клієнта буде спиратися на інформацію, закладену в його структуру - використовуючи елементи документа. Тобто, якщо, наприклад, потрібно знайти потрібний університет у потрібному місті, використовуючи приведений фрагмент документа, то необхідно буде переглянути вміст конкретного елемента У XML документі, як правило, визначається хоча б один елемент, названий кореневим і з нього програми-аналізатори починають перегляд документа. У приведеному прикладі цим елементом є У деяких випадках теги можуть змінювати й уточнювати семантику тих або інших фрагментів документа, по різному визначаючи ту саму інформацію, тим самим надаючи додатку-аналізатору цього документа зведення про контекст використання описуваних даних. У випадку, якщо елемент не має вмісту, тобто немає даних, які він повинний визначати, він називається порожнім. Необхідно тільки пам'ятати, що початковий і кінцеві теги порожнього елемента ніби об'єднується в один, і треба обов'язково ставити косу риску перед кутовою закриваючою (наприклад, Коментар Коментарями є будь-яка область даних, поміщена між послідовностями символів Коментар пропускаються аналізатором і тому при розборі структури документа в якості значущої інформації не розглядається. Атрибути Якщо при визначенні елементів необхідно задати якісь параметри, що уточнюють його характеристики, то є можливість використовувати атрибути елемента. Атрибут - це пару "назва" = "значення", що треба задавати при визначенні елемента в початковому тегу. Приклад: або Прикладом використання атрибутів у HTML є опис елемента : Black Cпеціальні символи Для того, щоб включити в документ символ, використовуваний для визначення яких-небудь конструкцій мови і не викликати при цьому помилок у процесі розбору такого документа, потрібно використовувати його спеціальний символьний або числовий ідентифікатор. Наприклад, < , > " або $(десяткова форма запису), (шестнадцатеричная) і т.д. Директиви аналізатора Інструкції, призначені для аналізаторів мови, описуються в XML документі за допомогою спеціальних тегів - і ? >;. Програма клієнта використовує ці інструкції для керування процесом розбору документа. Найбільше часто інструкції використовуються при визначенні типу документа (наприклад, Xml version=”1.0”? >) або створенні простору імен. CDATA Розділи символьных даних - це частини документа, аналізовані винятково як символьные дані, що не піддаються розборові, але, у відмінності від коментарів, використовуються застосуванням, виглядають так: Цей текст, навіть якщо він містить інструкції JavaScript або елементи коду HTML, такі, як жирныйшрифт або
Подобные работы:Еditor Сontacts
Ім'я: Джонатан Эйнджел
може бути привласнений атрибут align=”center”. У XML елемент може мати один або більше пов'язаних із ним атрибутів, причому при упорядкуванні документа ви можете видумати їх стільки, скільки побажнете, наприклад
заголовок
, не піддається граматичному розборові. Замість цього він відображається як їсти.