Name

xs:choice(outside a group) — Compositor to define group of mutually exclusive elements or compositors.

Synopsis

<xs:choice
           id                 = xs:ID
           maxOccurs          = ( xs:nonNegativeInteger | “unbounded” ) : “1”
           minOccurs          = xs:nonNegativeInteger : “1”
           {any attributes with non-schema namespace}
           >
           Content: (xs:annotation?, (xs:element | xs:group | xs:choice |
                     xs:sequence | xs:any)
          )*)
</xs:choice>

May be included in: xs:choice (outside a group), xs:choice (within a group), xs:complexType (local definition), xs:complexType (global definition), xs:extension (complex content), xs:restriction (complex content), xs:sequence (within a group), xs:sequence (outside a group)

Description

xs:choice is a compositor that defines a group of mutually exclusive particles. Only one can be found in the instance document per occurrence of the xs:choice compositor. The number of occurrences of the compositor itself is controlled by its minOccurs and maxOccurs attributes, while the number of occurrences of each particle within a single occurrence of xs:choice can be controlled by the minOccurs and maxOccurs attributes of the particles.

In addition to situations where simple choices are expressed (element “a” or “b” can be accepted here), xs:choice is often used to work around the limitations of xs:all and to define content models where an unlimited number of elements can be found in any order (see the example).

When the particle used in a xs:choice compositor is an element, a similar effect may be achieved using substitution groups.

Restrictions

The xs:choice compositor may cause violations of the Unique Particle Attribution and Consistent Declaration rules.

Example

<xs:choice> 
  <!-- Allows either "name" or the sequence "first-name",
  "middle-name"and"last-name". -->
  <xs:element ref="name"/>
  <xs:sequence>
    <xs:element ref="first-name"/>
    <xs:element ref="middle-name" minOccurs="0"/>
    <xs:element ref="last-name"/>
  </xs:sequence>
</xs:choice>

Attributes

id

W3C XML Schema’s element ID.

maxOccurs

Maximum number of occurrences of the choice compositor.

minOccurs

Minimum number of occurrences of the choice compositor.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.12.161.77