Поделиться через


Элемент <xsd:group>

Группирует набор объявлений элементов таким образом, что их можно включить в качестве группы в определения сложных типов.

<group
  name= NCName
  id = ID
  maxOccurs = (nonNegativeInteger | unbounded) : 1
  minOccurs = nonNegativeInteger : 1
  name = NCName
  ref = QName
  {any attributes with non-schema Namespace}...>
Content: (annotation?, (all | choice | sequence))
</group>

Атрибуты

  • имя
    Имя группы. Имя не должно содержать двоеточий (NCName), как определено в спецификации пространств имен XML.

    Этот атрибут используется только в случае, когда элемент schema является родителем данного элемента group element. В данном случае group является группой модели, которая будет использоваться элементами complexType, choice и sequence.

    Необязательно.

  • id
    Идентификатор данного элемента. Значение id должно иметь тип ID и быть уникальным в пределах документа, содержащего этот элемент.

    Необязательно.

  • maxOccurs
    Максимальное число появлений элемента в содержащем его элементе. Это значение должно быть целым числом, большим или равным 0. Для того, чтобы снять ограничение на максимальное число, используйте строку "unbounded".

    Ограничено, если группа не является дочерней по отношению к элементу schema.

    Необязательно.

  • minOccurs
    Минимальное число появлений элемента в содержащем его элементе. Это значение должно быть целым числом, большим или равным 0. Чтобы указать, что элемент необязателен, установите атрибуту значение 0.

    Ограничено, если группа не является дочерней по отношению к элементу schema.

    Необязательно.

  • имя
    Имя элемента. Имя не должно содержать двоеточий (NCName), как определено в спецификации пространств имен XML. Атрибуты Name и ref не могут присутствовать одновременно.

    Обязательный атрибут, если содержащим является элемент schema.

    Необязательно.

  • ref
    Имя группы, определенной в этой схеме (или другой схеме, заданной указанным пространством имен). Значение ref должно иметь тип QName. ref может включать префикс, определяющий пространство имен.

    При наличии атрибута ref могут присутствовать также атрибуты id, minOccurs и maxOccurs. Атрибуты Ref and name являются взаимоисключающими.

    Чтобы объявить группу с использованием существующего определения группы, используйте атрибут ref для указания существующего определения группы.

    <xs:group ref="globalGroup"/>
    

    Необязательно.

Сведения об элементе

Количество вхождений

Без ограничений

Родительские элементы

schema, choice, sequence, complexType, restriction (complexContent), extension (complexContent)

Описание

annotation, all, choice, sequence

Примечания

Любой из следующих элементов может быть дочерним для элемента group.

choice

Разрешает один и только один элемент из имеющихся в группе.

sequence

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

все

Позволяет элементам группы появляться (или не появляться) в содержащем элементе в любом порядке.

Атрибуты minOccurs и maxOccurs имеют по умолчанию значение 1. Группа, у которой нет ни одного из этих атрибутов, должна появиться в объемлющем элементе один и только один раз.

Пример

Следующий пример определяет группу, содержащую последовательность из трех элементов, и использует элемент group в определении сложного типа.

<xs:element name="thing1" type="xs:string"/>
<xs:element name="thing2" type="xs:string"/>
<xs:element name="thing3" type="xs:string"/>

<xs:attribute name="myAttribute" type="xs:decimal"/>

<xs:group name="myGroupOfThings">
 <xs:sequence>
  <xs:element ref="thing1"/>
  <xs:element ref="thing2"/>
  <xs:element ref="thing3"/>
 </xs:sequence>
</xs:group>

<xs:complexType name="myComplexType">
  <xs:group ref="myGroupOfThings"/>
  <xs:attribute ref="myAttribute"/>
</xs:complexType>

Другие ресурсы

Дополнительные сведения см. в документе «Рекомендация W3C по схемам XML, часть 1: структуры» по адресу www.w3.org/TR/2001/REC-xmlschema-1-20010502/\#element-all.

См. также

Ссылки

Справочник по XML-схемам (XSD)

Элементы XML-схемы