Администрирование локальных сетей
Рефераты >> Программирование и компьютеры >> Администрирование локальных сетей

· XML позволяет описывать данные произвольного типа и используется для представления специализированной информации.

· XML может служить мощным дополнением к HTML для распространения в Web "нестандартной" структурированной информации

· XML-документы могут использоваться в качестве промежуточного формата данных в трехзвенных системах при поиске информации в удаленных базах данных. Сегодня на рассмотрение W3C предложена спецификация нового языка запросов к базам данных XQL.

· Информация, содержащаяся в XML-документах, может изменяться, передаваться на машину клиента и обновляться по частям. Разрабатываемые спецификации XLink и Xpointer позволяют ссылаться на отдельные элементы документа, c учетом их вложенности и значений атрибутов.

· Использование стилевых таблиц (XSL) позволяет обеспечить независимое от конкретного устройства вывода отображение XML- документов и фильтрацию данных.

Тэги языка кодируются и выделяются относительно основного содержимого документа и служат в качестве инструкций для программы, производящей действия над содержимым документа на стороне клиента.

Исторически сложилось таким образом, что в системах для обозначения этих команд использовались символы "<" и ">", внутри которых помещались названия инструкций и их параметры. Сейчас такой способ обозначения тэгов является стандартным.

Например, для создания элемента Ivanov в имени заказчика используется тэг <CustumerName>. В программе это выглядит следующим образом:

<CustumerName> Ivanov </CustumerName>

Определения тэгов может легко расширяться. Так для указания более полных реквизитов заказчика можно определить тег <Custumer>, в который включено не только имя, телефон заказчика, но и адрес компании.

<Custumer>

<CustumerName> Ivanov </CustumerName>

<phone>312-12-13<phone>

<Company>Bussines Trade Consulti</Company>

</Custumer>

Можно создать массив заказчиков, определив тег <Custumers>:

<Custumers>

<Custumer>

<CustumerName> Ivanov </CustumerName>

<phone>312-12-13<phone>

<Company>Bussines Trade Consulti</Company>

</Custumer>

<Custumer>

<CustumerName> Petrov </CustumerName>

<phone>315-15-16<phone>

<Company> Trade Forest Company</Company>

</Custumer>

<Custumer>

</Custumer>

</Custumers>

Из приведенного примера видно, что XML - документы подлежат четкой структуризации и имеют четкую иерархическую структуру следования элементов. Элементы имеют своих родителей - корневые элементы и наследников - дочерние элементы.

Документ XML состоит из элементов. Элемент - это структурная единица XML- документа. Заключая данные об имени заказчика в тэги <CustumerName> </CustumerName>, XML-процессор определит как элемент. Содержимым элемента CustumerName является значение. В нашем примере имеется два значения (Ivanov и Petrov) элемента CustumerName.

Контроль за правильностью использования порядка использования элементов осуществляется при помощи специального набора правил, называемых DTD (Document Type Definition)- описаниями, которые используются программой клиента при анализе документа.

Производя в последствии поиск в XML документе, программа клиента будет опираться на информацию, заложенную в его структуру - используя элементы документа, определенные в DTD.

В общем случае XML- документы должны удовлетворять следующим синктатическим правилам:

· В заголовке документа помещается объявление XML, в котором указывается язык разметки документа, номер его версии и дополнительная информация;

· Каждый открывающий тэг, определяющий некоторую область данных в документе обязательно должен иметь парный закрывающий тэг;

· XML учитывает регистр символов;

· Все значения атрибутов, используемых в определении тэгов, должны быть заключены в кавычки;

· Вложенность тэгов в XML строго контролируется, поэтому необходимо следить за порядком следования открывающих и закрывающих тэгов;

· Вся информация, располагающаяся между начальным и конечными тэгами, рассматривается в XML как данные и поэтому учитываются все символы форматирования ( пробелы, переводы строк, табуляции не игнорируются)

В случае, если элемент не содержит данных, т.е. является пустым, то начальный и конечные тэги такого элемента можно объединить в один. При этом не обязательно ставить косую черту перед закрывающей угловой скобкой (например, в вышеприведенном примере отсутствие факса в компании пару тэгов <fax></fax> можно заменить на <fax/>;)

При необходимости, каждому элементу можно задать параметры, уточняющие его характеристики. При этом используются атрибуты элемента. Атрибут - это пара "название" = "значение", которую необходимо задавать при определении элемента в начальном тэге. Пример:

<container Type="20f">123456</container > двадцати футовый контейнер

<container Type ="30f ">654321</container> тридцати футовый контейнер

Просмотр XML документов осуществляется специальной программой анализатором. На сегодняшний день разработано около десятка подобных анализаторов. В своем новом браузере Internet Explorer 5 фирма Microsoft уже предусмотрела анализ XML документов.

Анализ документа в Internet Explorer 5 осуществляется тремя вариантами: просмотр аналогично HTML документу, форматирование документа с использованием специальных стилевых таблиц - XSL и анализ с помощью сценариев, написанных на Java Script ил VBScript.

Поиск нужного элемента или поддерева осуществляется при помощи XQL запроса. XQL является частью XML и переводится как язык запросов для XML (XML Query Language). Идет дискуссия об утверждении языка запросов в качестве общепринятого стандарта, который может заменить SQL.

Синтаксис языка запросов очень гибок и позволяет осуществлять поиск элемента как по названию, значению атрибутов, содержанию, так и учитывать вложенность и положение в дереве элементов. При помощи запросов мы можем выделять из общего дерева необходимые нам элементы и применять к ним необходимые инструкции. Запрос возможно применять как к самому XML документу, так и к ссылкам URL.

Язык запросов напоминает обычный способ определения пути к ресурсу - список узлов дерева, разделенных символом "/". Для указания на текущий элемент используется символ "." , на родительский - " ", для выделения всех дочерних элементов - символ "*", для выделения элемента, расположенного просто "ниже" по дереву(не важно на каком уровне вложенности) - "//". Условие на значение в запросе должно заключаться в символы "[" и "]". Для выбора значения атрибута в условии указывается символ @.

Примеры простых XQL шаблонов:

"/Customer "

корневой элемент

"Customers/"

возвращает дочерние элементы для элемента Customers

"Customers //"

список всех элементов, вложенных в Customers

"container[@Type]"

список элементов container, в котором определен атрибут Type

"container[@Type =20f]"

поиск всех двадцатифутовых контейнеров, т.е. элементов container, в котором значение атрибута Type равно "20f"

"Customers[address]"

список элементов Customers, которые содержат хотя бы один элемент address, выражение в квадратных скобках может быть составным.


Страница: