XML — расширяемый язык разметки. Рекомендован Консорциумом Всемирной паутины. Спецификация XML описывает XML-документы и частично описывает поведение XML-процессоров.
XML (eXtensible Markup Language — расширяемый язык разметки; произносится [икс-эм-э́ль])- набор правил и соглашений о синтаксисе, с помощью которого можно создавать собственные наборы элементов разметки. Эти элементы, в свою очередь, можно использовать для описания содержимого. Своим появлением XML обязан невозможности применения HTML для описания данных самого разного рода, которые пользователи желают распространять через Web. Так, HTML практически невозможно использовать для описания финансовых данных, руководств по инсталляции программного обеспечения, математических выражений и множества данных других типов, которыми буквально наполнена сеть Интернет. Истинное назначение языка разметки XML - описывать части документа, не касаясь способов его визуализации и отображения. Разметка позволяет структурировать данные, а уже затем эти данные можно использовать по-разному.
В то время как XML описывает структуру данных, XSL и XLink представляют их в определенной форме и организуют связь между ними.
Правила XML:
<?xml version="1.0" encoding="UTF-8"?>
<name>John Smit</name>
XML можно использовать внутри HTML документа. "Острова данных" - Data islands - это технология онлайновой вставки XML данных в HTML код, разработанная Microsoft и W3C. С позиции данной технологии XML код используется как источник данных, а HTML служит средством их визуализации.
XML код может храниться во внешнем .xml файле, или может быть вставлен непосредственно в HTML документ. Для объявления используется <XML id="YourID">; для связи таблицы и источника данных используется атрибут datasrc <table datаsrc="#YourID" … >; для вывода на страницу используется атрибут datafld.
XML документы могут быть визуально представлены при помощи таблиц стилей - Основы работы с CSS.
Для указазания этой информации броузеру в CSS используется атрибут стиля display, который может принимать значения "block" - блочное форматирование или "inline" - линейное:
book { display: block; border-bottom: 1px solid; padding: 3px; ... } title { display: inline; ... }
Для подключения стилей существует специальная инструкция xml:stylesheet
<?xml version="1.0" encoding="UTF-8"?> <?xml:stylesheet type="text/css" href="URL" ?> ...
Атрибут type указывает используемый тип стилевых таблиц. При использовании таблиц стилей XSL значение атрибута type поменяется на "text/xsl". Атрибут href указывает расположение файла таблицы стилей.
Альтернативу определениям DTD представляют XML схемы. XML Schema была задумана для определения правил, которым должен подчиняться документ. Схемы используют синтаксис языка XML для определения правил словаря XML документа. К достоинствам схем можно отнести расширяемость и возможность наследования, поддержку пространств имен, поддержку большего, по сравнению с DTD, количества типов данных.
После проверки документа на соответствие XML Schema, читающая программа может создать модель данных документа (словарь; модель содержания;типы данных). Каждый элемент в этой модели ассоциируется с определённым типом данных, позволяя строить в памяти объект, соответствующий структуре XML-документа. В XML схеме один словарь может ссылаться на другой, и, таким образом, разработчик может использовать уже существующие словари и легче устанавливать и распространять стандарты XML структуры для определённых задач (например, словарь протокола SOAP).
Список схем для описания XML документов:
Шаблон XSD документа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="ENTER_NAME_OF_ROOT_ELEMENT_HERE"> <xs:annotation> <xs:documentation>Comments</xs:documentation> </xs:annotation> </xs:element> </xs:schema>
Семейство рекомендаций консорциума W3C языков XSL (eXtensible Stylesheet Language) служит для преобразования XML файлов для представления и печати. В него входят:
DOM (Document Object Model), SAX (Simple API for XML), Примеры использования SimpleXML, XSLT используются для обработки XML документов.