ZVON > References > Relax NG Reference

Definition: pattern


<define name="pattern">
     <choice>
          <element name="element">
               <choice>
                    <attribute name="name">
                         <data type="QName"/>
                    </attribute>
                    <ref name="open-name-class"/>
               </choice>
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="attribute">
               <ref name="common-atts"/>
               <choice>
                    <attribute name="name">
                         <data type="QName"/>
                    </attribute>
                    <ref name="open-name-class"/>
               </choice>
               <interleave>
                    <ref name="other"/>
                    <optional>
                         <ref name="pattern"/>
                    </optional>
               </interleave>
          </element>
          <element name="group">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="interleave">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="choice">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="optional">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="zeroOrMore">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="oneOrMore">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="list">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="mixed">
               <ref name="common-atts"/>
               <ref name="open-patterns"/>
          </element>
          <element name="ref">
               <attribute name="name">
                    <data type="NCName"/>
               </attribute>
               <ref name="common-atts"/>
          </element>
          <element name="parentRef">
               <attribute name="name">
                    <data type="NCName"/>
               </attribute>
               <ref name="common-atts"/>
          </element>
          <element name="empty">
               <ref name="common-atts"/>
               <ref name="other"/>
          </element>
          <element name="text">
               <ref name="common-atts"/>
               <ref name="other"/>
          </element>
          <element name="value">
               <optional>
                    <attribute name="type">
                         <data type="NCName"/>
                    </attribute>
               </optional>
               <ref name="common-atts"/>
               <text/>
          </element>
          <element name="data">
               <attribute name="type">
                    <data type="NCName"/>
               </attribute>
               <ref name="common-atts"/>
               <interleave>
                    <ref name="other"/>
                    <group>
                         <zeroOrMore>
                              <element name="param">
                                   <attribute name="name">
                                        <data type="NCName"/>
                                   </attribute>
                                   <text/>
                              </element>
                         </zeroOrMore>
                         <optional>
                              <element name="except">
                                   <ref name="common-atts"/>
                                   <ref name="open-patterns"/>
                              </element>
                         </optional>
                    </group>
               </interleave>
          </element>
          <element name="notAllowed">
               <ref name="common-atts"/>
               <ref name="other"/>
          </element>
          <element name="externalRef">
               <attribute name="href">
                    <data type="anyURI"/>
               </attribute>
               <ref name="common-atts"/>
               <ref name="other"/>
          </element>
          <element name="grammar">
               <ref name="common-atts"/>
               <ref name="grammar-content"/>
          </element>
     </choice>
</define>