Name

text — Pattern-matching text nodes

Synopsis

element text
{
 (
 attribute ns { text }?,
 attribute datatypeLibrary { xsd:anyURI }?,
 attribute * - (rng:* | local:*) { text }*
 ),
 ( element * - rng:* { ... }* )
}

Class

pattern

May be included in

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

Compact syntax equivalent

text

Description

The text pattern matches zero or more text nodes. A match of more than one text node has no effect when it is used in ordered content models (the data model used by RELAX NG for XML documents is similar to the data model of XPath 1.0, and two text nodes can’t be adjacent) but makes a difference when a text pattern is used in interleave. Adding a single text pattern in an interleave pattern has the effect of allowing any number of text nodes, which can interleave before and after each element (note that the mixed pattern is provided as a shortcut to define these content models).

Restrictions

No more than one text pattern can be included in an interleave pattern.

Example

<element name="first"><text/></element>
 <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>

Attributes

datatypeLibrary

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

ns

This attribute defines the default namespace for the elements defined ...

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.