Документ схемы XML - это просто XML-документ с предопределенными элементами и атрибутами, описывающими структуру другого XML-документа.
Рассмотрим такой простой документ схемы:
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:element name="memories"> <xsd:complexType> <xsd:sequence> <xsd:element name="memory" maxOccurs="unbounded" type="memoryType"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="memoryType"> <xsd:sequence> <xsd:element name="media"> <xsd:complexType> <xsd:attribute name="mediaid" type="xsd:string" /> <xsd:attribute name="status" type="xsd:string" /> </xsd:complexType> </xsd:element> <xsd:element name="subdate" type="xsd:string"/> <xsd:element name="donor" type="xsd:string"/> <xsd:element name="subject" type="xsd:string"/> <xsd:element name="location" type="locationType" /> </xsd:sequence> <xsd:attribute name="tapeid" type="xsd:string" /> <xsd:attribute name="status" type="xsd:string" /> </xsd:complexType> <xsd:complexType name="locationType"> <xsd:choice> <xsd:element name="description" type="xsd:string" /> <xsd:element name="place" type="xsd:string" /> </xsd:choice> </xsd:complexType> </xsd:schema>
Этот документ, являющийся схемой XML, эквивалентной DTD, построенному ранее в нашем учебнике, показывает некоторые структуры, используемые для определения содержимого XML-документов. Разработчик схемы начинает с определения элементов.