by Eric van der Vlist is published by O'Reilly & Associates (ISBN: 0596004214)
choice (in the context of a pattern) — choice pattern
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 { ... }
)+
)
} |
attribute, choice, define, element, except, group, interleave, list, mixed, oneOrMore, optional, start, zeroOrMore
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.
<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> |
This text is released under the Free Software Foundation GFDL.