Определение простых элементов в XML схеме

XML схемы определяют элементы XML документа.

Простой элемент — это элемент XML, который содержит только текст. Простой элемент не может содержать другие элементы или атрибуты.

Тем не менее, ограничение "только текст" достаточно обманчиво. Текст может быть самых разных типов. Это может быть одним из типов, включенных в определение XML схем (boolean, string, date и т.д.), либо это может быть пользовательский тип, определенный вами.

Также, вы сами можете добавить ограничения (аспекты) по типу данных, чтобы лимитировать контент, либо вы можете указать требование, чтобы данные соответствовали определенной модели.

Определение простого элемента

Чтобы определить простой элемент, используется следующий синтаксис:


<xs:element name="xxx" type="yyy"/>

где xxx — имя элемента, а yyy — тип данных элемента.

XML схемы имеют множество встроенных типов данных. Наиболее часто используемыми являются следующие типы:

  • xs:string
  • xs:decimal
  • xs:integer
  • xs:boolean
  • xs:date
  • xs:time

Например,

Возьмем некоторые XML элементы:


<lastname>Refsnes</lastname>
<age>36</age>
<dateborn>1970-03-27</dateborn>

А вот как будут выглядеть определения этих элементов в XML схеме:


<xs:element name="lastname" type="xs:string"/>
<xs:element name="age" type="xs:integer"/>
<xs:element name="dateborn" type="xs:date"/>

Значения по умолчанию и фиксированные значения

Простые элементы могут иметь значения по умолчанию ИЛИ фиксированные значения.

Значение по умолчанию присваивается элементу автоматически, если не определено никакого другого значения.

В следующем примере "red" - значение по умолчанию:


<xs:element name="color" type="xs:string" default="red"/>

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

В следующем примере "red" — фиксированное значение:


<xs:element name="color" type="xs:string" fixed="red"/>