RELAX NG by Eric van der Vlist will be published by O'Reilly & Associates (ISBN: 0596004214)
You are welcome to use our annotation system to give your feedback.
mixed — Pattern for mixed content models
pattern
element mixed { ( 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.
mixed
The mixed pattern is a shortcut for interleave with an embedded text pattern. It describes unordered content models where a text node may be included before and after each element. Note that RELAX NG does not allow the addition of constraints on these text nodes.
The limitations of interleave apply here:
The mixed pattern cannot be used within a list.
Elements within a mixed pattern cannot have overlapping name classes.
There must no other text pattern in each set of patterns combined by mixed.
<element name="title"> <mixed> <attribute name="xml:lang"/> <zeroOrMore> <element name="a"> <attribute name="href"/> <text/> </element> </zeroOrMore> </mixed> </element> is equivalent to: <element name="title"> <interleave> <text/> <group> <attribute name="xml:lang"/> <zeroOrMore> <element name="a"> <attribute name="href"/> <text/> </element> </zeroOrMore> </group> </interleave> </element> which itself is equivalent to: <element name="title"> <interleave> <text/> <attribute name="xml:lang"/> <zeroOrMore> <element name="a"> <attribute name="href"/> <text/> </element> </zeroOrMore> </interleave> </element> |
The datatypeLibrary attribute defines the default datatype library. The value of datatypeLibrary is inherited.
The ns attribute defines the default namespace for the elements defined in a portion of a schema. The value of ns is inherited.
You are welcome to use our annotation system to give your feedback.
[Annotations for this page]
All text is copyright Eric van der Vlist, Dyomedea. During development, I give permission for non-commercial copying for educational and review purposes. After publication, all text will be released under the Free Software Foundation GFDL.