by Eric van der Vlist is published by O'Reilly & Associates (ISBN: 0596004214)
list — Text node split
element list { ( 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 list pattern splits a text node into tokens separated by whitespace. The splitting allows the validation of these tokens separately. This practice is most useful for validating lists of values.
interleave can't be used within list.
The content of a list is only about data: it's forbidden to define element, attribute, or text there.
It's forbidden to embed list into list.
<attribute name="see-also"> <list> <zeroOrMore> <data type="token"/> </zeroOrMore> </list> </attribute> <attribute name="dimensions"> <list> <data type="xs:decimal"/> <data type="xs:decimal"/> <data type="xs:decimal"/> <choice> <value>inches</value> <value>cm</value> <value>mm</value> </choice> </list> </attribute> |
This text is released under the Free Software Foundation GFDL.