by Eric van der Vlist is published by O'Reilly & Associates (ISBN: 0596004214)


Name

choice (in the context of a pattern) — choice pattern

Synopsis

element choice
{
 (
 attribute ns { text }?,
 attribute datatypeLibrary { xsd:anyURI }?,
 attribute * - (rng:* | local:*) { text }*
 ),
 (
 ( element * - rng:* { ... }* )
 & (
 element element { ... }
 | element attribute { ... }
 | element group { ... }
 | element interleave { ... }
 | element choice { ... }
 | element optional { ... }
 | element zeroOrMore { ... }
 | element oneOrMore { ... }
 | element list { ... }
 | element mixed { ... }
 | element ref { ... }
 | element parentRef { ... }
 | element empty { ... }
 | element text { ... }
 | element value { ... }
 | element data { ... }
 | element notAllowed { ... }
 | element externalRef { ... }
 | element grammar { ... }
 )+
 )
}

Class

pattern

May be included in

attribute, choice, define, element, except, group, interleave, list, mixed, oneOrMore, optional, start, zeroOrMore

Compact syntax equivalent

pattern|pattern

Description

The choice pattern defines a choice between different patterns; it matches a node if, and only if, at least one of its subpatterns matches this node.

Example

<element name="name">
 <choice>
  <text/>
  <group>
   <element name="first"><text/></element>
   <optional>
     <element name="middle"><text/></element>
   </optional>
   <element name="last"><text/></element>
  </group>
 </choice>
</element>
<attribute name="available">
  <choice>
   <value>true</value>
   <value>false</value>
   <value>who knows?</value>
  </choice>
 </attribute>
 <start>
   <ref name="libraryElement"/>
   <ref name="bookElement"/>
 </start>

Attributes

datatypeLibrary

This attribute defines the default datatype library. The value is inherited.

ns

This attribute defines the default namespace for the elements defined in a portion of a schema. The value is inherited.


This text is released under the Free Software Foundation GFDL.