XML. Обзор языка
xml является результатом более чем полувековой работы программистов - разработчиков гипертекстовой системы представления информации. Однако приложения, реально использующие эту систему, появились только в середине 60-х годов, когда стало необходимо объединить множество информационных ресурсов в единый комплекс.
Основным признаком гипертекста является механизм нелинейного представления информации. Данные представляются не в виде непрерывного потока, а набором различных, связанных между собой, компонентов, навигация по которым осуществляется при помощи гиперссылок.
Самым широко используемым на данный момент языком гипертекстовой разметки - html. html содержит набор инструкций (тегов), с помощью которых осуществляется разметка текста. Теги html управляют процессами ввода-вывода информации в программе-клиенте (что, кстати, есть серьезным недостатком, так как вид представления документа может меняться при переходе от одного клиента к другому). Вследствие этого этот язык не определяет структуру документа.
Данные, заключенные в теги html, никак не связаны с самими тегами. Например:
<b>Жирный текст</b><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, но, несомненно, можно сказать, что его внедрение и повсеместное применение (не только в Интернете, а и в других информационных системах, например, в системах управления предприятием) приведет к значительному упрощению поиска, анализа, обработки и отображения информации.
Разное Дизайнер (designer)