Name
mixed — Pattern for mixed content models
Synopsis
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 { ... } )+ ) }
Class
pattern
May be included in
attribute
, choice
,
define
, element
,
except
, group
,
interleave
, list
,
mixed
, oneOrMore
,
optional
, start
,
zeroOrMore
Compact syntax equivalent
mixed
Description
The mixed
pattern is a shortcut for
interleave
with an embedded
text
pattern. It describes unordered content
models in which a text node may be included before and after each
element. Note that RELAX NG doesn’t allow the
addition of constraints on these text nodes.
Restrictions
The limitations of interleave
apply here:
The
mixed
pattern can’t be used within alist
.Elements within a
mixed
pattern can’t have overlapping name classes.There must no other
text
pattern in each set of patterns combined bymixed
.
Example
<element name="title"> <mixed> <attribute name="xml:lang"/> <zeroOrMore> <element ...
Get RELAX NG now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.