Элементы и атрибуты в XML Схеме
Помимо богатых возможностей для определения типов данных XML Schema включает богатый словарь для определения структуры документа и разрешенных элементов и атрибутов.
– Простое содержимое. Элемент содержит только текст (хотя, как говорилось в предыдущем параграфе, текст можно ограничить данными отдельного типа, такими как дата или числовое значение). Содержимое этого типа определяется при помощи элемента simpleContent.
– Толькоэлементы. Элемент содержит только вложенные элементы. Содержимое этого типа определяется при помощи элемента complexType.
– Смешанноесодержимое.Элемент может содержать и текстовое содержимое, и вложенные элементы. XML Schema требует, чтобы последовательность элементов и текстового содержимого была строго определена, и допустимые документы должны соответствовать этой последовательности.
– Пустоесодержимое.Элемент содержит только атрибуты, и никакого текстового содержимого. XML Schema интерпретирует такие элементы как особый случай содержимого типа «только элементы» без объявленных элементов.
– Любоесодержимое.Элемент может быть пустым, содержать вложенные элементы и/или текст. Содержимое этого типа определяется при помощи элемента anyТуре.
Эти базовые типы элементов могут задаваться в объявлениях элементов схемы. Кроме того, можно указать, что элемент может встречаться в документе несколько раз, и задать минимальное и максимальное количество вхождений. Подобно SQL, XML Schema поддерживает значение элементов NULL, указывающее, что содержимое элемента неизвестно. В терминологии XML это значение называется nil,но смысл его тот же самый. Поддержка этого значения упрощает перенос данных между XML и столбцами баз данных, которые могут содержать значения NULL.
Схема XML позволяет определить логическую группу элементов, которые, как правило, используются совместно, и задать для этой группы собственное имя. Данную группу можно включать в последующие объявления элементов как единое целое. Группировка элементов делает их структуру еще более гибкой. Группа может определять последовательность элементов, которые должны обязательно присутствовать в документе в заданном порядке. Или же она может определять набор элементов, из которого в документе обязательно должен присутствовать только один элемент.
Аналогичные возможности имеются и для управления атрибутами. Отдельный атрибут можно определить как обязательный или необязательный. Можно задать значение атрибута по умолчанию, которое будет использоваться в том случае, если значение этого атрибута не задано. Можно задать фиксированное значение атрибута, то есть неизменное значение для этого атрибута. Можно определить имя группы атрибутов, которые всегда используются вместе, после этого для определения группы атрибутов для очередного элемента схемы достаточно задать только имя этой группы.
Дата добавления: 2015-02-03; просмотров: 1006;