Почему XML схемы?

XML схемы — это более мощный инструмент определения типов документов, чем XML DTD.

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

Один из самых больших плюсов XML схем это поддержка типов данных.

Поддержка типов данных позволяет:

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

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

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

То, что XML схемы пишутся на XML, дает следующие преимущества:

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

XML схемы обеспечивают безопасную передачу данных

При посылке данных от отправителя к получателю крайне важно, чтобы оба участника имели одинаковые "ожидания" по поводу контента.

При помощи XML схем отправитель может описать данные таким образом, что получатель без труда их поймет.

Например, запись даты: "03-11-2004" в одних странах будет понята, как 3 Ноября, а в других, как 11 Марта.

Тем не менее, при описании XML элемента с датой следующим образом:


<date type="date">2004-03-11</date>

обеспечивает обоюдное понимание контента, так как тип XML данных "date" требует использования формата "ГГГГ-ММ-ДД".

XML схемы легко расширяются

Так как XML схемы написаны на XML, то их очень просто расширять.

Благодаря расширяемым схемам определений вы можете:

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

Быть синтаксически верным не достаточно

Синтаксически верный XML документ это документ, который соответствует таким синтаксическим правилам XML, как:

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

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

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