Модель содержимого элемента

Под моделью содержимого в схеме данных понимают описание всех допустимых объектов XML- документа, использование которых внутри данного элемента является корректным. Модель содержимого определяется инструкциями, расположенными внутри блока <elementType>.

<elementType id="article"><attribute name="id" atttype="ID"><element type="#title"><string/></elementType>

Для этого правила корректным будет являться следующий фрагмент документа:

<article id="0"><title>Психи и маньяки в Интернет</title></article>

Вложенные элементы описываются при помощи инструкции element, в которой параметром type указывается класс объекта - ссылка на его определение:

<elementType id="article"><element type="#title"/><element type="#author"/></elementType>

Если требуется указать режим использования вложенного элемента, то надо определить параметр occurs:

<elementType id="article"><element type="#title" occurs="REQUIRED"/><element type="#author" occurs="OPTIONAL"/><element type="#subject" occurs="ONEORMORE"/></elementType>

Возможные значения этого параметра таковы:

· REQUIRED - элемент должен быть обязательно определен

· OPTIONAL - использование элемента не является обязательным

· ZEROORMORE - вложенный элемент может встречаться несколько раз или ни разу

· ONEORMORE - элемент должен встречаться хотя бы один раз

Примеры правильных XML-документа, использующих приведенную выше схему:

<article><title>Зачем он нужен, XML?</title><author>Иван Петров</author><subject>Что такое XML</subject><subject>нужен ли он нам</subject></article>

или

<article><title>Зачем он нужен, XML?</title><subject>Что такое XML</subject></article>

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

· <string/>- указывает на то, что содержимым элемента является только свободная текстовая информация(секция PCDATA) :

· <elementType id="flower">· <string/>· </elementType>

· <any/>- указывает на то, что содержимым элемента должны являться только элементы, без текста, незаключенного ни в один элемент:

· <elementType id="issue">· <any/>· </elementType>

· <mixed>- любое сочетание элементов и текста

· <elementType id="contacts">· <mixed/>· </elementType>

· <empty>- пустой элемент

Пример:

<elementType id="title"><string/></elementType><elementType id="chapter"><string/></elementType><elementType id="chapters-list"><any/></elementType><elementType id="content"><element type="#chapters-list" occurs="OPTIONAL"></elementType><elementType id="article"><mixed><element type="#title"></mixed><element type="#content" occurs="OPTIONAL"></elementType>

О типах данных, которые можно определять с помощью схем, мы поговорим чуть позже








Дата добавления: 2015-09-14; просмотров: 573;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.