Відмінності між XML і HTML
XML є прекрасним інструментом для маніпулювання структурованими даними в Web, Завдяки можливостям представлення даних, закладеним в HTML, ці дві мови дійсно доповнюють один одного. Якщо ж важлива структура документа, стають видні переваги XML. На відміну від HTML, XML є прекрасною мовою розмітки для створення складних Web-додатків. При цьому знання HTML По-справжньому допоможе вам при вивченні XML. Перехід від HTML до XML відбудеться значно швидше, а освоєння понять, описаних в специфікації XML, буде значно простіше.
XML прекрасно підходить в тих випадках, коли вимоги до документа виходять за рамки простих опцій HTML, що забезпечують уявлення даних. Microsoft Internet Explorer підтримує XML поряд з можливістю зв'язування даних засобами Dynamic HTML (DHTML) і Channel Definition Format (CDF). Netscape Navigator також пропонує подібні можливості. Оскільки обидва популярних на сьогоднішній день браузера підтримують об'єктну модель документа (Document Object Model, DOM), елементи, які ви збираєтеся використовувати, можуть бути визначені в XML як об'єкти. Це означає, що ви можете програмувати їх за допомогою скриптів. Така розширюваність робить XML ідеальним мовою для відображення динамічних даних на різних платформах.
У загальних рисах, XML і HTML розрізняються за трьома основними напрямками:
- За допомогою XML можна визначати власні набори тегів і необхідні імена атрибутів.
- За допомогою XML структури документа можуть бути вкладені одна в одну, забезпечуючи будь-який рівень складності, якщо при цьому дотримуються відповідні правила вкладення документів XML.
- У XML-документах можуть міститися будь-які необов'язкові опису граматики документа, щоб інші програми могли виконати перевірку його структури.
Це не означає, що в процесі вивчення XML від вас буде потрібно повне забуття всього, що ви колись знали про HTML - зовсім навпаки. Фактично, оскільки обидві мови походять від SGML - "дідуся" мов розмітки, такі характерні риси, як синтаксис, елементи, правила, принципи розробки є схожими.
Можна стверджувати, що XML є більш розвиненою мовою розмітки в порівнянні з HTML. А якщо ви підете далі цього твердження і скажете, що HTML застосовується головним чином для подання змісту текстових документів, a XML використовується для структурування даних, то ви не зробите помилку. Однак відмінності полягають не тільки в цьому.
XML - це не заміна HTML. І це не просто HTML з додатковими тегами, хоча опис XML набагато більше за своїм обсягом, ніж опис HTML. Незважаючи на те, що HTML є додатком SGML, a XML є підмножиною SGML, HTML і XML мають суттєві відмінності. Зокрема, XML дозволяє вам створювати власні теги для різних цілей. Крім того, відмінності більш відчутні, якщо взяти до уваги ті проблеми, для вирішення яких застосовується XML. Можна сказати, що XML є рішенням звичайних проблем, викликаних застосуванням HTML. За допомогою XML досягається:- Кращий контроль над розміщенням інформації.
- Менша завантаження Web-сервера завдяки можливостям щодо доступу до інформації на клієнтській стороні.
- Застосування різних типів гіперпосилань (hyperlinks).
- Можливість поширення різних видів інформації в Internet і intranet.
- Менша кількість проблем, що виникають при відображенні великих сторінок (long pages).
Кращий контроль над розміщенням інформації
Незалежність від сервера
Кращий контроль над великими документами
XML дозволяє просто вирішити цю проблему, оскільки все XML-документи структуровані і правильно оформлені. У XML вам не доведеться "зрізати гострі кути", як в HTML, застосовуючи різні елементи розділів, ви можете розбити єдиний документ на розділи. Така багаторівнева структура нагадує ієрархічне представлення папок (folders) в Windows Explorer. З цього випливає, що XML забезпечує можливість пошуку по всьому документу, не вдаючись до створення окремих скриптів.
Застосування множинних гіперпосилань
Вам не набридла кнопка "Back" у вашому браузері? Це й не дивно, оскільки нинішня реалізація HTML допускає лише однонаправлений зв'язування (single direction linking). В даний час не існує угоди по багатозв'язна форматам (multi-linking formats), що дозволяє здійснювати багатонаправлені зв'язування (multidirectional linking), в залежності від того, яку роль відіграє документ. Однак користувачі Web хотіли б мати щось більше, ніж переходи в прямому і зворотному напрямках. Куди нас ведуть сучасні джерела HTML? До інших ресурсів - будь це інші Web-сторінки, пошукові системи, засоби для ведення бесід (chat rooms) і т. Д.
Зв'язування в XML є, однак, більш складним, ніж в HTML. Завдяки XLL (extensible Link Language) - мови опису зв'язків для впровадження інших документів XML і двонаправлених посилань - XML пропонує розвинені механізми зв'язування, які:- Надають управління семантикою зв'язку.
- Застосовують специфікацію розширених зв'язків (extended links), завдяки якій забезпечується більш двох зв'язків.
- Підтримують покажчики на зовнішні ресурси, завдяки застосуванню специфікації розширених покажчиків (extended pointers, Xpointers)
- двосторонніми зв'язками;
- зовнішнім управлінням зв'язками (тобто такими зв'язками, якими можна управляти, перебуваючи за межами змісту даного документа);
- зв'язками, які забезпечують доступ до кільця сайтів (ring of sites) або дозволяють відкривати безліч вікон;
- зв'язками з різними джерелами;
- атрибутами зв'язків.