XML схемы

Также, как и XML DTD, XML схемы описывают структуру XML документа.

XML документ с корректной синтаксической структурой является "синтаксически верным".

XML документ, прошедший проверку по XML схеме, является "синтаксически верным" и "валидным".

XML схема

XML схема является основанной на XML альтернативой DTD:


<xs:element name="note">
   <xs:complexType>
      <xs:sequence>
         <xs:element name="to" type="xs:string"/>
         <xs:element name="from" type="xs:string"/>
         <xs:element name="heading" type="xs:string"/>
         <xs:element name="body" type="xs:string"/>
      </xs:sequence>
   </xs:complexType>
</xs:element>

Приведенная выше схема интерпретируется следующим образом:

  • <xs:element name="note"> определяет элемент "note"
  • <xs:complexType> у элемента "note" комплексный тип
  • <xs:sequence> комплексный тип - это последовательность элементов
  • <xs:element name="to" type="xs:string"> у элемента "to" строковый тип (текст)
  • <xs:element name="from" type="xs:string"> у элемента "from" строковый тип
  • <xs:element name="heading" type="xs:string"> у элемента "heading" строковый тип
  • <xs:element name="body" type="xs:string"> у элемента "body" строковый тип

При этом все оформлено как "синтаксически верный" XML.

XML схема мощнее DTD

  • XML схема пишется на XML
  • XML схема легко расширяется
  • XML схема поддерживает типы данных
  • XML схема поддерживает пространства имен

Зачем нужно использовать XML схему?

С XML схемой ваш XML файл может нести собственный формат.

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

С XML схемой вы можете проверять корректность данных.

XML схема поддерживает типы данных

Одним из мощнейших свойств XML схемы является поддержка типов данных:

  • Упрощается описание содержимого документа
  • Упрощается определение ограничений по данным
  • Упрощается проверка корректности данных
  • Упрощается преобразование данных из одного типа в другой

XML схема использует синтаксис XML

Еще одним из больших плюсов XML схемы является то, что она пишется на XML:

  • Вам не нужно изучать новый язык программирования
  • Вы можете использовать тот же XML редактор для создания файлов XML схем
  • Вы можете использовать тот же XML парсер для разбора файлов XML схем
  • Вы можете манипулировать XML схемами при помощи XML DOM
  • Вы можете трансформировать XML схемы при помощи XSLT