Chase N.Проверка правильности XML

       

Необязательные и повторяющиеся элементы


До сих пор все элементы и атрибуты, добавляемые в схему, должны были появляться ровно один раз. Очевидно, что это не всегда желательно. Используя minOccurs и maxOccurs, вы можете управлять тем, должен ли компонент появляться обязательно и может ли он повторяться. В данном примере схема требует, чтобы элемент subject присутствовал, и позволяет ему появляться до пяти раз в одном элементе:

... <xsd:element name="subject" minOccurs="1" maxOccurs="5" type="xsd:string"/> ...

Иногда вам не нужен верхний предел. Например, элемент memory может быть определен как необязательный, но если он есть, он может появляться неограниченное число раз в элементе memories:

<xsd:element name="memories"> <xsd:complexType> <xsd:sequence> <xsd:element name="memory" minOccurs="0" maxOccurs="unbounded"

type="memoryType"/> </xsd:sequence> </xsd:complexType> </xsd:element>

Эта возможность становится очень полезной, когда мы имеем дело со смешанным содержимым в схеме.



Содержание раздела