Сергей Коломиец
На данный момент XML
является результатом более чем полувековой работы программистов -
разработчиков гипертекстовой системы представления информации. Однако
приложения, реально использующие эту систему, появились только в середине 60-х
годов, когда стало необходимо объединить множество информационных ресурсов в
единый комплекс.
Основным признаком гипертекста является механизм нелинейного представления
информации. Данные представляются не в виде непрерывного потока, а набором
различных, связанных между собой, компонентов, навигация по которым
осуществляется при помощи гиперссылок.
Самым широко используемым на данный момент языком гипертекстовой разметки -
HTML. HTML содержит набор инструкций (тегов),
с помощью которых осуществляется разметка текста. Теги HTML управляют процессами ввода-вывода
информации в программе-клиенте (что, кстати, есть серьезным недостатком, так как
вид представления документа может меняться при переходе от одного клиента к
другому). Вследствие этого этот язык не определяет структуру
документа.
Данные, заключенные в теги HTML, никак не связаны с самими тегами.
Например:
<b>Жирный
текст<b>
Броузер отображает текст полужирным шрифтом, однако он не 'видит' связи
данного тега с другими, не 'понимает', включен ли этот тег в другие, включает ли
он сам что-либо. Это крайне затрудняет поиск информации в таких документах.
Также, недостатком HTML
является ограниченный набор тегов и отсутствие возможности вводить
разработчиком новых инструкций.
В связи с этим в 1998 году консорциумом World Wide Web Consortium был принят
принципиально новый язык гипертекстовой разметки XML (Extensible Markup Language), отличающийся следующими
признаками:
·
Разделение представлений и данных облегчает модификацию GUI, поскольку
обрабатываемые данные при этом не меняются
·
Возможность введения новых тегов, что позволяет создавать и использовать
специальные языки представления данных
·
По мере стандартизации дополнительных тегов облегчается обмен данными
между веб-страницами.
Автор документа на XML
сам создает его структуру, наборы элементов, строит связи между ними и
добивается оптимального типа разметки, поиска и анализа документа.
Так как XML
определяет структуру документа, то он, соответственно, позволяет
производить проверку корректности данных, иерархических отношений в документе,
стандартизировать структуру документов с различными данными. Это свойство
применимо для построения сложных информационных систем, где необходимо
обеспечить оперативный обмен информацией между различными приложениями в одной
системе.
Для XML не требуется
сложных программ-обработчиков, поэтому о его поддержке заявили такие
производители программного обеспечения, как Microsoft (MS Explorer 4.0/5.0/5.5), Netscape,
Oracle и др.
* * *
Тело документа XML состоит из элементов разметки и содержимого документа.
Теги предназначены для определения элементов документа, атрибутов и других
конструкций. Документ XML начинается с тега <?xml?>, в котором можно указывать
кодовую страницу, версию языка и другую информацию.
Требования к XML-документу:
·
Заголовок документа - <?xml?> с необходимыми
параметрами.
·
В отличие от HTML, в
XML каждый тег должен иметь закрывающий элемент.
·
В учитывается регистр
символов.
·
Атрибуты тегов заключаются в кавычки.
·
Необходим строгий порядок следования открывающих и закрывающих тегов при
использовании вложений.
Существуют два способа проверки корректности XML-документов - определения DTD (Document Type Definition)
и семантические схемы.
В XML представлены следующие конструкции:
·
Элементы данных.
·
Атрибуты
·
Директивы
·
Специальные символы
·
Комментарии
·
CDATA
Элементы данных - основные структурные единицы документа.
Например:
<animal>cat</animal>
Любой элемент должен обязательно
содержать открывающий и закрывающий теги. Его содержимым могут выступать любые
конструкции языка. Набором элементов определяется структура документа. Поиск в
документе производится, опираясь на эту структуру.
Атрибуты - это параметры, определяющие характеристики тех или иных элементов.
Так же, как и в HTML,
они задаются парой 'название'='значение'.
Директивы анализаторам обозначаются в XML тегами <? и ?>. Броузер использует эти инструкции для
управления разбора документа.
Для отображения в тексте документа некоторых специальных символов, как,
например, кавычки или угловой скобки, необходимо использовать их специальные
символьные идентификаторы (<, &qout).
Комментарии определяются по аналогии с HTML как <!-- Текст комментария -->. Они игнорируются
анализатором при разборе структуры документа.
Тегом CDATA определяется
область документа, рассматриваемая анализатором, как просто текст. В эту
область можно помещать, например, Java Script. Форма записи
тега:
<![CDATA] Текст
]]>
* * *
Что же можно отнести к недостаткам нового языка разметки? Вследствие
отсутствия предопределенных тегов и гибкости структуры языка существует
множество программ-обработчиков (parsers) XML-файлов. Это приводит к
затруднениям в области стандартизации языка и может повлечь за собой разделение
его на множество диалектов.
XML можно называть новой ступенью Web-программирования, можно считать
просто следующим шагом в развитии HTML, но, несомненно, можно сказать, что
его внедрение и повсеместное применение (не только в Интернете, а и в других
информационных системах, например, в системах управления предприятием) приведет
к значительному упрощению поиска, анализа, обработки и отображения
информации.
Литература по XML
|