Annotation of embedaddon/libxml2/test/relaxng/tutorA.rng, revision 1.1
1.1 ! misho 1: <grammar datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"
! 2: ns="http://relaxng.org/ns/structure/1.0"
! 3: xmlns="http://relaxng.org/ns/structure/1.0">
! 4:
! 5: <start>
! 6: <ref name="pattern"/>
! 7: </start>
! 8:
! 9: <define name="pattern">
! 10: <choice>
! 11: <element name="element">
! 12: <choice>
! 13: <attribute name="name">
! 14: <data type="QName"/>
! 15: </attribute>
! 16: <ref name="open-name-class"/>
! 17: </choice>
! 18: <ref name="common-atts"/>
! 19: <ref name="open-patterns"/>
! 20: </element>
! 21: <element name="attribute">
! 22: <ref name="common-atts"/>
! 23: <choice>
! 24: <attribute name="name">
! 25: <data type="QName"/>
! 26: </attribute>
! 27: <ref name="open-name-class"/>
! 28: </choice>
! 29: <interleave>
! 30: <ref name="other"/>
! 31: <optional>
! 32: <ref name="pattern"/>
! 33: </optional>
! 34: </interleave>
! 35: </element>
! 36: <element name="group">
! 37: <ref name="common-atts"/>
! 38: <ref name="open-patterns"/>
! 39: </element>
! 40: <element name="interleave">
! 41: <ref name="common-atts"/>
! 42: <ref name="open-patterns"/>
! 43: </element>
! 44: <element name="choice">
! 45: <ref name="common-atts"/>
! 46: <ref name="open-patterns"/>
! 47: </element>
! 48: <element name="optional">
! 49: <ref name="common-atts"/>
! 50: <ref name="open-patterns"/>
! 51: </element>
! 52: <element name="zeroOrMore">
! 53: <ref name="common-atts"/>
! 54: <ref name="open-patterns"/>
! 55: </element>
! 56: <element name="oneOrMore">
! 57: <ref name="common-atts"/>
! 58: <ref name="open-patterns"/>
! 59: </element>
! 60: <element name="list">
! 61: <ref name="common-atts"/>
! 62: <ref name="open-patterns"/>
! 63: </element>
! 64: <element name="mixed">
! 65: <ref name="common-atts"/>
! 66: <ref name="open-patterns"/>
! 67: </element>
! 68: <element name="ref">
! 69: <attribute name="name">
! 70: <data type="NCName"/>
! 71: </attribute>
! 72: <ref name="common-atts"/>
! 73: <ref name="other"/>
! 74: </element>
! 75: <element name="parentRef">
! 76: <attribute name="name">
! 77: <data type="NCName"/>
! 78: </attribute>
! 79: <ref name="common-atts"/>
! 80: <ref name="other"/>
! 81: </element>
! 82: <element name="empty">
! 83: <ref name="common-atts"/>
! 84: <ref name="other"/>
! 85: </element>
! 86: <element name="text">
! 87: <ref name="common-atts"/>
! 88: <ref name="other"/>
! 89: </element>
! 90: <element name="value">
! 91: <optional>
! 92: <attribute name="type">
! 93: <data type="NCName"/>
! 94: </attribute>
! 95: </optional>
! 96: <ref name="common-atts"/>
! 97: <text/>
! 98: </element>
! 99: <element name="data">
! 100: <attribute name="type">
! 101: <data type="NCName"/>
! 102: </attribute>
! 103: <ref name="common-atts"/>
! 104: <interleave>
! 105: <ref name="other"/>
! 106: <group>
! 107: <zeroOrMore>
! 108: <element name="param">
! 109: <attribute name="name">
! 110: <data type="NCName"/>
! 111: </attribute>
! 112: <ref name="common-atts"/>
! 113: <text/>
! 114: </element>
! 115: </zeroOrMore>
! 116: <optional>
! 117: <element name="except">
! 118: <ref name="common-atts"/>
! 119: <ref name="open-patterns"/>
! 120: </element>
! 121: </optional>
! 122: </group>
! 123: </interleave>
! 124: </element>
! 125: <element name="notAllowed">
! 126: <ref name="common-atts"/>
! 127: <ref name="other"/>
! 128: </element>
! 129: <element name="externalRef">
! 130: <attribute name="href">
! 131: <data type="anyURI"/>
! 132: </attribute>
! 133: <ref name="common-atts"/>
! 134: <ref name="other"/>
! 135: </element>
! 136: <element name="grammar">
! 137: <ref name="common-atts"/>
! 138: <ref name="grammar-content"/>
! 139: </element>
! 140: </choice>
! 141: </define>
! 142:
! 143: <define name="grammar-content">
! 144: <interleave>
! 145: <ref name="other"/>
! 146: <zeroOrMore>
! 147: <choice>
! 148: <ref name="start-element"/>
! 149: <ref name="define-element"/>
! 150: <element name="div">
! 151: <ref name="common-atts"/>
! 152: <ref name="grammar-content"/>
! 153: </element>
! 154: <element name="include">
! 155: <attribute name="href">
! 156: <data type="anyURI"/>
! 157: </attribute>
! 158: <ref name="common-atts"/>
! 159: <ref name="include-content"/>
! 160: </element>
! 161: </choice>
! 162: </zeroOrMore>
! 163: </interleave>
! 164: </define>
! 165:
! 166: <define name="include-content">
! 167: <interleave>
! 168: <ref name="other"/>
! 169: <zeroOrMore>
! 170: <choice>
! 171: <ref name="start-element"/>
! 172: <ref name="define-element"/>
! 173: <element name="div">
! 174: <ref name="common-atts"/>
! 175: <ref name="include-content"/>
! 176: </element>
! 177: </choice>
! 178: </zeroOrMore>
! 179: </interleave>
! 180: </define>
! 181:
! 182: <define name="start-element">
! 183: <element name="start">
! 184: <ref name="combine-att"/>
! 185: <ref name="common-atts"/>
! 186: <ref name="open-pattern"/>
! 187: </element>
! 188: </define>
! 189:
! 190: <define name="define-element">
! 191: <element name="define">
! 192: <attribute name="name">
! 193: <data type="NCName"/>
! 194: </attribute>
! 195: <ref name="combine-att"/>
! 196: <ref name="common-atts"/>
! 197: <ref name="open-patterns"/>
! 198: </element>
! 199: </define>
! 200:
! 201: <define name="combine-att">
! 202: <optional>
! 203: <attribute name="combine">
! 204: <choice>
! 205: <value>choice</value>
! 206: <value>interleave</value>
! 207: </choice>
! 208: </attribute>
! 209: </optional>
! 210: </define>
! 211:
! 212: <define name="open-patterns">
! 213: <interleave>
! 214: <ref name="other"/>
! 215: <oneOrMore>
! 216: <ref name="pattern"/>
! 217: </oneOrMore>
! 218: </interleave>
! 219: </define>
! 220:
! 221: <define name="open-pattern">
! 222: <interleave>
! 223: <ref name="other"/>
! 224: <ref name="pattern"/>
! 225: </interleave>
! 226: </define>
! 227:
! 228: <define name="name-class">
! 229: <choice>
! 230: <element name="name">
! 231: <ref name="common-atts"/>
! 232: <data type="QName"/>
! 233: </element>
! 234: <element name="anyName">
! 235: <ref name="common-atts"/>
! 236: <ref name="except-name-class"/>
! 237: </element>
! 238: <element name="nsName">
! 239: <ref name="common-atts"/>
! 240: <ref name="except-name-class"/>
! 241: </element>
! 242: <element name="choice">
! 243: <ref name="common-atts"/>
! 244: <ref name="open-name-classes"/>
! 245: </element>
! 246: </choice>
! 247: </define>
! 248:
! 249: <define name="except-name-class">
! 250: <interleave>
! 251: <ref name="other"/>
! 252: <optional>
! 253: <element name="except">
! 254: <ref name="open-name-classes"/>
! 255: </element>
! 256: </optional>
! 257: </interleave>
! 258: </define>
! 259:
! 260: <define name="open-name-classes">
! 261: <interleave>
! 262: <ref name="other"/>
! 263: <oneOrMore>
! 264: <ref name="name-class"/>
! 265: </oneOrMore>
! 266: </interleave>
! 267: </define>
! 268:
! 269: <define name="open-name-class">
! 270: <interleave>
! 271: <ref name="other"/>
! 272: <ref name="name-class"/>
! 273: </interleave>
! 274: </define>
! 275:
! 276: <define name="common-atts">
! 277: <optional>
! 278: <attribute name="ns"/>
! 279: </optional>
! 280: <optional>
! 281: <attribute name="datatypeLibrary">
! 282: <data type="anyURI"/>
! 283: </attribute>
! 284: </optional>
! 285: <zeroOrMore>
! 286: <attribute>
! 287: <anyName>
! 288: <except>
! 289: <nsName/>
! 290: <nsName ns=""/>
! 291: </except>
! 292: </anyName>
! 293: </attribute>
! 294: </zeroOrMore>
! 295: </define>
! 296:
! 297: <define name="other">
! 298: <zeroOrMore>
! 299: <element>
! 300: <anyName>
! 301: <except>
! 302: <nsName/>
! 303: </except>
! 304: </anyName>
! 305: <zeroOrMore>
! 306: <choice>
! 307: <attribute>
! 308: <anyName/>
! 309: </attribute>
! 310: <text/>
! 311: <ref name="any"/>
! 312: </choice>
! 313: </zeroOrMore>
! 314: </element>
! 315: </zeroOrMore>
! 316: </define>
! 317:
! 318: <define name="any">
! 319: <element>
! 320: <anyName/>
! 321: <zeroOrMore>
! 322: <choice>
! 323: <attribute>
! 324: <anyName/>
! 325: </attribute>
! 326: <text/>
! 327: <ref name="any"/>
! 328: </choice>
! 329: </zeroOrMore>
! 330: </element>
! 331: </define>
! 332:
! 333: </grammar>
! 334:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>