Правильные экзмпляры XML

В XML, наряду с концепцией «хорошо оформленного документа», рассматривается концепция «действительного XML документа».

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

Для определения правильности документа необходимо:

  1. Определить использование только заданного набора дескрипторов.
  2. Проверить, чтобы порядок следования элементов и их атрибутов полностью соответствовал содержанию документа или определенным правилам.

Другими словами, в XML-документе должна быть правильно реализована схема документа, определяющая его структуру.

Как правильно определить структуру. Вернемся к примеру создания XML документа для инструкции по мытью машины. Документ XML хорошо оформлен, но с точки зрения правильности он избыточен (на каждый ингредиент отводится по два элемента). Логично было бы использовать один элемент с атрибутом

<items quantity= “…”>.

А XML код будет выглядеть так:

<?xml version= “1.0” encoding= “windows-1251”>

<!--Это XML код инструкции-->

<directions>

<title>Инструкция, как помыть машину</title>

<ingredients>

<items quantity= “50 л”>Вода</items>

<items quantity= “0,5 л”>Шампунь</items>

<items quantity= “0,3 л”>Воск</items>

</ingredients>

<instrument>

<items quantity= “1 шт”>Ведро</items>

<items quantity= “1 шт” >Мочалка </items>

<items quantity= “2 шт” >лоскут для полировки</items>

</instrument>

<actions>

Машину ополоснуть водой, затем нанести пену и оставить на 5 минут. Пену смыть. Нанести на поверхность кузова воск, вытереть корпус машины насухо

</actions>

</directions>

  1. Контроль типов данных (достигается благодаря использованию соответствующей схемы)

Данные XML документа, которые используются при обмене, должны использовать один формат, для предотвращения путаницы.

Например, дата может быть оформлена в одном из следующих форматов

mmddyy yyddmm

ddmmyy yymmdd

существует несколько подходов к контролю типов данных. Позднее будем рассматривать технологии XDR и DTD.

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

Тип данных Описание
Boolean Логический тип, значения ИСТИНА / ЛОЖЬ
Char Один символ
String Строка символов
Float Действительные числа
Int Целые числа
Date Дата в формате YYYY-DD-MM
Time Время в формате HH-MM-SS
Id Текст, уникальным образом идентифицирующий элемент
Idref Ссылка на идентификатор
Enumeration Последовательность значений, из которой можно выбрать любоезначение
  1. Осуществить контроль целостности данных для обеспечения оптимального обмена информацией через Web с помощью транзакций

Если речь идет о проверке правильности оформления документа, то речь идет не о представлении данных, а о структуре данных.

В ЧЕМ СОСТОИТ ОТЛИЧИЕ СТРУКТУРЫ ДОКУМЕНТА ОТ СТРУКТУРЫ ДАННЫХ?

Структура документа позволяет читателю быстро понять, в каком именно виде представил информацию автор документа.

Структуры данных указывают путь компьютерным приложениям путь к данным, которые содержаться в различных контейнерах целго документа. В структуре данных не содержится определение важности одного компонента документа по отношению к другому. Все компоненты равны.

Контрольные вопросы:

  1. Каково отличие между хорошо оформленными и правильными документами XML?

Хорошо оформленный документ отвечает всем правилам синтаксиса документа. Правильный документ – хорошо оформленный документ, соответствующий всем ограничениям, которые налагает на него связанная с ним структурная схема.

  1. Какие ограничения может использовать программист при создании схемы для документа XML?

Схема четко определяет имя и структуру корневого элемента, включая спецификацию его дочерних элементов. Программист может задать, какие элементы, и в каком количестве обязательны, а какие – нет. Схема определяет, какие элементы (и их допустимые значения) содержат атрибуты, а какие нет.

  1. Какие языки описания схем могут использовать авторы XML документов?

Используется несколько видов языков описания схем: DTD, XDR, XSD.

  1. Можно ли использовать схемы для контроля над типами данных в потоке данных XML?

Могут ограничивать типы данных такие схемы как XDR, XSD. Подход с использованием DTD не позволяет легко создавать правила использования типов данных

  1. Каково различие между структурой документа и структурой данных?

Структура документа позволяет читателю быстро понять, о чем идет речь в документе, а структура данных – показать программе обработчику, где брать данные.

  1. Что такое парсер?

Парсер – программа (в спецификации консорциума W3C называется обработчиком XML), которая интерпретирует символ за символом. Существует двва типа парсеров:

– проверяют форматирование документов, т.е. их соответствие синтаксическим правилам;

– сначала проверяют форматирование документа, а затем их соответствие всем ограничениям, указанным в связанных с ним документах.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: