<Complete Reference XML - схемы
Определение и использование
Элемент группы используется для определения группы элементов, которые будут использоваться в определениях сложных типов.
Элемент информации
- Parent elements: схемы, выбор, последовательность, ComplexType, ограничение (как simpleContent и complexContent), расширение (как simpleContent и complexContent)
Синтаксис
<group
id=ID
name=NCName
ref=QName
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
any attributes
>
(annotation?,(all|choice|sequence)?)
</group>
(Знак? Заявляет, что элемент может появиться ноль или один раз внутри элемента группы)
Атрибут | Описание |
---|---|
id | Необязательный. Указывает уникальный идентификатор для элемента |
name | Необязательный. Определяет имя для группы. Этот атрибут используется только тогда, когда элемент схемы является родителем этого элемента группы. Имя и атрибуты реф не могут одновременно присутствовать |
ref | Необязательный. Относится к имени другой группы. Имя и атрибуты реф не могут одновременно присутствовать |
maxOccurs | Необязательный. Задает максимальное число раз группа элементов может происходить в родительском элементе. Значение может быть задано любое число> = 0, или если вы хотите , чтобы не устанавливать никакого предела на максимальное число, используйте значение "unbounded" . Значение по умолчанию равно 1 |
minOccurs | Необязательный. Задает минимальное количество раз группа элементов может происходить в родительском элементе. Значение может быть задано любое число> = 0. По умолчанию значение равно 1 |
any attributes | Необязательный. Определяет любые другие атрибуты с пространством имен без схемы |
Пример 1
Следующий пример определяет группу, содержащую последовательность из четырех элементов и использует элемент группы в комплексном определении типа:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:group name="custGroup">
<xs:sequence>
<xs:element name="customer" type="xs:string"/>
<xs:element name="orderdetails" type="xs:string"/>
<xs:element name="billto" type="xs:string"/>
<xs:element name="shipto" type="xs:string"/>
</xs:sequence>
</xs:group>
<xs:element name="order" type="ordertype"/>
<xs:complexType name="ordertype">
<xs:group ref="custGroup"/>
<xs:attribute name="status" type="xs:string"/>
</xs:complexType>
</xs:schema>
<Complete Reference XML - схемы