Annotation of embedaddon/libxml2/test/schemas/bug306806_1.xsd, revision 1.1
1.1 ! misho 1: <?xml version="1.0" encoding="UTF-8"?>
! 2: <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
! 3: <xs:element name="targetGeometry">
! 4: <xs:complexType>
! 5: <xs:group minOccurs="0" maxOccurs="unbounded" ref="geometry-element"/>
! 6: </xs:complexType>
! 7: </xs:element>
! 8: <xs:element name="geometryGroup" type="geometryGroup-content"/>
! 9: <xs:complexType name="geometryGroup-content">
! 10: <xs:group maxOccurs="unbounded" ref="geometry-element"/>
! 11: <xs:attribute name="name" use="required" type="xs:token"/>
! 12: </xs:complexType>
! 13: <xs:group name="geometry-element">
! 14: <xs:sequence>
! 15: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 16: <xs:element ref="component"/>
! 17: <xs:element ref="geometryGroup"/>
! 18: </xs:choice>
! 19: </xs:sequence>
! 20: </xs:group>
! 21: <xs:element name="component">
! 22: <xs:complexType>
! 23: <xs:sequence>
! 24: <xs:element minOccurs="0" ref="description"/>
! 25: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 26: <xs:element ref="cylinder"/>
! 27: <xs:element ref="ellipsoid"/>
! 28: <xs:element ref="faceSet"/>
! 29: <xs:element ref="tube"/>
! 30: <xs:element ref="sphere"/>
! 31: <xs:element ref="box"/>
! 32: <xs:element ref="extrusion"/>
! 33: </xs:choice>
! 34: </xs:sequence>
! 35: <xs:attributeGroup ref="name-attribute"/>
! 36: </xs:complexType>
! 37: </xs:element>
! 38: <xs:element name="translation">
! 39: <xs:complexType>
! 40: <xs:simpleContent>
! 41: <xs:extension base="three-doubles-list">
! 42: <xs:attributeGroup ref="dimension-attribute"/>
! 43: <xs:attributeGroup ref="Length-attribute"/>
! 44: </xs:extension>
! 45: </xs:simpleContent>
! 46: </xs:complexType>
! 47: </xs:element>
! 48: <xs:element name="rotation">
! 49: <xs:complexType>
! 50: <xs:simpleContent>
! 51: <xs:extension base="three-doubles-list">
! 52: <xs:attributeGroup ref="dimension-attribute"/>
! 53: <xs:attributeGroup ref="Length-attribute"/>
! 54: </xs:extension>
! 55: </xs:simpleContent>
! 56: </xs:complexType>
! 57: </xs:element>
! 58: <xs:element name="about">
! 59: <xs:complexType>
! 60: <xs:simpleContent>
! 61: <xs:extension base="three-doubles-list">
! 62: <xs:attributeGroup ref="dimension-attribute"/>
! 63: <xs:attributeGroup ref="Length-attribute"/>
! 64: </xs:extension>
! 65: </xs:simpleContent>
! 66: </xs:complexType>
! 67: </xs:element>
! 68: <xs:element name="length">
! 69: <xs:complexType>
! 70: <xs:simpleContent>
! 71: <xs:restriction base="xs:anyType">
! 72: <xs:simpleType>
! 73: <xs:restriction base="xs:double">
! 74: <xs:minExclusive value="0"/>
! 75: </xs:restriction>
! 76: </xs:simpleType>
! 77: <xs:attributeGroup ref="dimension-attribute"/>
! 78: <xs:attributeGroup ref="Length-attribute"/>
! 79: </xs:restriction>
! 80: </xs:simpleContent>
! 81: </xs:complexType>
! 82: </xs:element>
! 83: <xs:element name="radius">
! 84: <xs:complexType>
! 85: <xs:simpleContent>
! 86: <xs:restriction base="xs:anyType">
! 87: <xs:simpleType>
! 88: <xs:restriction base="xs:double">
! 89: <xs:minExclusive value="0"/>
! 90: </xs:restriction>
! 91: </xs:simpleType>
! 92: <xs:attributeGroup ref="dimension-attribute"/>
! 93: <xs:attributeGroup ref="Length-attribute"/>
! 94: </xs:restriction>
! 95: </xs:simpleContent>
! 96: </xs:complexType>
! 97: </xs:element>
! 98: <xs:element name="base1">
! 99: <xs:complexType>
! 100: <xs:simpleContent>
! 101: <xs:extension base="three-doubles-list">
! 102: <xs:attributeGroup ref="dimension-attribute"/>
! 103: <xs:attributeGroup ref="Length-attribute"/>
! 104: </xs:extension>
! 105: </xs:simpleContent>
! 106: </xs:complexType>
! 107: </xs:element>
! 108: <xs:element name="base2">
! 109: <xs:complexType>
! 110: <xs:simpleContent>
! 111: <xs:extension base="three-doubles-list">
! 112: <xs:attributeGroup ref="dimension-attribute"/>
! 113: <xs:attributeGroup ref="Length-attribute"/>
! 114: </xs:extension>
! 115: </xs:simpleContent>
! 116: </xs:complexType>
! 117: </xs:element>
! 118: <xs:element name="transform">
! 119: <xs:complexType>
! 120: <xs:sequence>
! 121: <xs:element minOccurs="0" ref="translation"/>
! 122: <xs:element minOccurs="0" ref="rotation"/>
! 123: <xs:element minOccurs="0" ref="about"/>
! 124: </xs:sequence>
! 125: </xs:complexType>
! 126: </xs:element>
! 127: <xs:element name="cyl-transform">
! 128: <xs:complexType>
! 129: <xs:sequence>
! 130: <xs:element ref="translation"/>
! 131: <xs:element minOccurs="0" ref="rotation"/>
! 132: <xs:element minOccurs="0" ref="about"/>
! 133: </xs:sequence>
! 134: </xs:complexType>
! 135: </xs:element>
! 136: <xs:element name="cylinder">
! 137: <xs:complexType>
! 138: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 139: <xs:element ref="radius"/>
! 140: <xs:choice>
! 141: <xs:choice>
! 142: <xs:element ref="length"/>
! 143: <xs:element ref="cyl-transform"/>
! 144: </xs:choice>
! 145: <xs:choice>
! 146: <xs:element ref="base1"/>
! 147: <xs:element ref="base2"/>
! 148: <xs:element minOccurs="0" maxOccurs="unbounded" ref="transform"/>
! 149: </xs:choice>
! 150: </xs:choice>
! 151: <xs:element ref="description"/>
! 152: <xs:element ref="vMaterial"/>
! 153: </xs:choice>
! 154: <xs:attributeGroup ref="name-attribute"/>
! 155: </xs:complexType>
! 156: </xs:element>
! 157: <xs:element name="ellipsoid">
! 158: <xs:complexType>
! 159: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 160: <xs:element name="radius">
! 161: <xs:complexType>
! 162: <xs:simpleContent>
! 163: <xs:extension base="three-doubles-list">
! 164: <xs:attributeGroup ref="length-attribute"/>
! 165: </xs:extension>
! 166: </xs:simpleContent>
! 167: </xs:complexType>
! 168: </xs:element>
! 169: <xs:element ref="vMaterial"/>
! 170: <xs:element ref="transform"/>
! 171: </xs:choice>
! 172: <xs:attributeGroup ref="name-attribute"/>
! 173: </xs:complexType>
! 174: </xs:element>
! 175: <xs:element name="faceSet">
! 176: <xs:complexType>
! 177: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 178: <xs:element ref="description"/>
! 179: <xs:element ref="vertex_normals"/>
! 180: <xs:element ref="vertices"/>
! 181: <xs:element ref="facets"/>
! 182: <xs:group ref="optional-content"/>
! 183: </xs:choice>
! 184: <xs:attribute name="name" type="xs:token"/>
! 185: </xs:complexType>
! 186: </xs:element>
! 187: <xs:element name="facets" type="facets-content"/>
! 188: <xs:simpleType name="facets-content">
! 189: <xs:restriction base="integer-list"/>
! 190: </xs:simpleType>
! 191: <xs:element name="vertex_normals" type="vertex_normals-content"/>
! 192: <xs:complexType name="vertex_normals-content">
! 193: <xs:simpleContent>
! 194: <xs:restriction base="xs:anyType">
! 195: <xs:simpleType>
! 196: <xs:restriction>
! 197: <xs:simpleType>
! 198: <xs:list>
! 199: <xs:simpleType>
! 200: <xs:union>
! 201: <xs:simpleType>
! 202: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 203: </xs:simpleType>
! 204: <xs:simpleType>
! 205: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 206: </xs:simpleType>
! 207: <xs:simpleType>
! 208: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 209: </xs:simpleType>
! 210: <xs:simpleType>
! 211: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 212: </xs:simpleType>
! 213: </xs:union>
! 214: </xs:simpleType>
! 215: </xs:list>
! 216: </xs:simpleType>
! 217: <xs:minLength value="9"/>
! 218: </xs:restriction>
! 219: </xs:simpleType>
! 220: <xs:attributeGroup ref="length-attribute"/>
! 221: </xs:restriction>
! 222: </xs:simpleContent>
! 223: </xs:complexType>
! 224: <xs:element name="vertices" type="vertices-content"/>
! 225: <xs:complexType name="vertices-content">
! 226: <xs:simpleContent>
! 227: <xs:restriction base="xs:anyType">
! 228: <xs:simpleType>
! 229: <xs:restriction>
! 230: <xs:simpleType>
! 231: <xs:list>
! 232: <xs:simpleType>
! 233: <xs:union>
! 234: <xs:simpleType>
! 235: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 236: </xs:simpleType>
! 237: <xs:simpleType>
! 238: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 239: </xs:simpleType>
! 240: <xs:simpleType>
! 241: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 242: </xs:simpleType>
! 243: <xs:simpleType>
! 244: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 245: </xs:simpleType>
! 246: </xs:union>
! 247: </xs:simpleType>
! 248: </xs:list>
! 249: </xs:simpleType>
! 250: <xs:minLength value="9"/>
! 251: </xs:restriction>
! 252: </xs:simpleType>
! 253: <xs:attributeGroup ref="length-attribute"/>
! 254: </xs:restriction>
! 255: </xs:simpleContent>
! 256: </xs:complexType>
! 257: <xs:element name="tube" type="tube-content"/>
! 258: <xs:complexType name="tube-content">
! 259: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 260: <xs:element ref="spine"/>
! 261: <xs:element ref="radius"/>
! 262: <xs:group ref="optional-content"/>
! 263: </xs:choice>
! 264: <xs:attributeGroup ref="name-attribute"/>
! 265: </xs:complexType>
! 266: <xs:element name="spine" type="spine-content"/>
! 267: <xs:complexType name="spine-content">
! 268: <xs:simpleContent>
! 269: <xs:restriction base="xs:anyType">
! 270: <xs:simpleType>
! 271: <xs:restriction>
! 272: <xs:simpleType>
! 273: <xs:list>
! 274: <xs:simpleType>
! 275: <xs:union>
! 276: <xs:simpleType>
! 277: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 278: </xs:simpleType>
! 279: <xs:simpleType>
! 280: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 281: </xs:simpleType>
! 282: </xs:union>
! 283: </xs:simpleType>
! 284: </xs:list>
! 285: </xs:simpleType>
! 286: <xs:minLength value="6"/>
! 287: </xs:restriction>
! 288: </xs:simpleType>
! 289: <xs:attributeGroup ref="length-attribute"/>
! 290: </xs:restriction>
! 291: </xs:simpleContent>
! 292: </xs:complexType>
! 293: <xs:element name="sphere" type="sphere-content"/>
! 294: <xs:complexType name="sphere-content">
! 295: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 296: <xs:element ref="radius"/>
! 297: <xs:element ref="position"/>
! 298: </xs:choice>
! 299: <xs:attributeGroup ref="name-attribute"/>
! 300: </xs:complexType>
! 301: <xs:element name="position" type="position-content"/>
! 302: <xs:complexType name="position-content">
! 303: <xs:simpleContent>
! 304: <xs:extension base="three-doubles-list">
! 305: <xs:attributeGroup ref="length-attribute"/>
! 306: </xs:extension>
! 307: </xs:simpleContent>
! 308: </xs:complexType>
! 309: <xs:element name="box" type="box-content"/>
! 310: <xs:complexType name="box-content">
! 311: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 312: <xs:element ref="size"/>
! 313: <xs:choice>
! 314: <xs:element ref="position"/>
! 315: <xs:element ref="transform"/>
! 316: </xs:choice>
! 317: </xs:choice>
! 318: <xs:attributeGroup ref="name-attribute"/>
! 319: </xs:complexType>
! 320: <xs:element name="size" type="size-content"/>
! 321: <xs:complexType name="size-content">
! 322: <xs:simpleContent>
! 323: <xs:extension base="three-doubles-list">
! 324: <xs:attributeGroup ref="length-attribute"/>
! 325: </xs:extension>
! 326: </xs:simpleContent>
! 327: </xs:complexType>
! 328: <xs:element name="extrusion" type="extrusion-content"/>
! 329: <xs:complexType name="extrusion-content">
! 330: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 331: <xs:element ref="spine"/>
! 332: <xs:element ref="scale"/>
! 333: <xs:element ref="crossSection"/>
! 334: <xs:group ref="optional-content"/>
! 335: </xs:choice>
! 336: <xs:attributeGroup ref="name-attribute"/>
! 337: </xs:complexType>
! 338: <xs:element name="scale" type="scale-content"/>
! 339: <xs:simpleType name="scale-content">
! 340: <xs:restriction>
! 341: <xs:simpleType>
! 342: <xs:list>
! 343: <xs:simpleType>
! 344: <xs:union memberTypes="xs:double xs:double"/>
! 345: </xs:simpleType>
! 346: </xs:list>
! 347: </xs:simpleType>
! 348: <xs:minLength value="2"/>
! 349: </xs:restriction>
! 350: </xs:simpleType>
! 351: <xs:element name="crossSection" type="crossSection-content"/>
! 352: <xs:complexType name="crossSection-content">
! 353: <xs:simpleContent>
! 354: <xs:restriction base="xs:anyType">
! 355: <xs:simpleType>
! 356: <xs:restriction>
! 357: <xs:simpleType>
! 358: <xs:list>
! 359: <xs:simpleType>
! 360: <xs:union>
! 361: <xs:simpleType>
! 362: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 363: </xs:simpleType>
! 364: <xs:simpleType>
! 365: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 366: </xs:simpleType>
! 367: <xs:simpleType>
! 368: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 369: </xs:simpleType>
! 370: </xs:union>
! 371: </xs:simpleType>
! 372: </xs:list>
! 373: </xs:simpleType>
! 374: <xs:minLength value="9"/>
! 375: </xs:restriction>
! 376: </xs:simpleType>
! 377: <xs:attributeGroup ref="length-attribute"/>
! 378: <xs:attributeGroup ref="closed-attribute"/>
! 379: </xs:restriction>
! 380: </xs:simpleContent>
! 381: </xs:complexType>
! 382: <xs:attributeGroup name="closed-attribute">
! 383: <xs:attribute name="closed" use="required" type="xs:boolean"/>
! 384: </xs:attributeGroup>
! 385: <xs:group name="optional-content">
! 386: <xs:annotation>
! 387: <xs:documentation>global #############</xs:documentation>
! 388: </xs:annotation>
! 389: <xs:sequence>
! 390: <xs:choice minOccurs="0" maxOccurs="unbounded">
! 391: <xs:element ref="transform"/>
! 392: <xs:element ref="vMaterial"/>
! 393: </xs:choice>
! 394: </xs:sequence>
! 395: </xs:group>
! 396: <xs:element name="description" type="xs:string"/>
! 397: <xs:attributeGroup name="length-attribute">
! 398: <xs:attributeGroup ref="dimension-attribute"/>
! 399: <xs:attributeGroup ref="Length-attribute"/>
! 400: </xs:attributeGroup>
! 401: <xs:attributeGroup name="dimension-attribute">
! 402: <xs:attribute name="dimension" use="required">
! 403: <xs:simpleType>
! 404: <xs:restriction base="xs:token">
! 405: <xs:enumeration value="L"/>
! 406: <xs:enumeration value="F"/>
! 407: <xs:enumeration value="M"/>
! 408: <xs:enumeration value="T"/>
! 409: <xs:enumeration value="F/L"/>
! 410: <xs:enumeration value="F/LL"/>
! 411: <xs:enumeration value="F/LLL"/>
! 412: <xs:enumeration value="F/T"/>
! 413: <xs:enumeration value="F/TT"/>
! 414: <xs:enumeration value="F/TTT"/>
! 415: <xs:enumeration value="L/T"/>
! 416: <xs:enumeration value="L/TT"/>
! 417: <xs:enumeration value="LLLLL"/>
! 418: <xs:enumeration value="D/D"/>
! 419: </xs:restriction>
! 420: </xs:simpleType>
! 421: </xs:attribute>
! 422: </xs:attributeGroup>
! 423: <xs:attributeGroup name="Length-attribute">
! 424: <xs:attribute name="Length" use="required">
! 425: <xs:simpleType>
! 426: <xs:restriction base="xs:token">
! 427: <xs:enumeration value="meter"/>
! 428: <xs:enumeration value="m"/>
! 429: <xs:enumeration value="foot"/>
! 430: <xs:enumeration value="f"/>
! 431: <xs:enumeration value="inch"/>
! 432: <xs:enumeration value="in"/>
! 433: <xs:enumeration value="centimeter"/>
! 434: <xs:enumeration value="cm"/>
! 435: <xs:enumeration value="decimeter"/>
! 436: <xs:enumeration value="dm"/>
! 437: <xs:enumeration value="millimeter"/>
! 438: <xs:enumeration value="mm"/>
! 439: <xs:enumeration value="degree"/>
! 440: </xs:restriction>
! 441: </xs:simpleType>
! 442: </xs:attribute>
! 443: </xs:attributeGroup>
! 444: <xs:attributeGroup name="Time-attribute">
! 445: <xs:attribute name="Time" use="required">
! 446: <xs:simpleType>
! 447: <xs:restriction base="xs:token">
! 448: <xs:enumeration value="second"/>
! 449: <xs:enumeration value="s"/>
! 450: <xs:enumeration value="sec"/>
! 451: <xs:enumeration value="minute"/>
! 452: <xs:enumeration value="min"/>
! 453: <xs:enumeration value="hour"/>
! 454: <xs:enumeration value="hr"/>
! 455: </xs:restriction>
! 456: </xs:simpleType>
! 457: </xs:attribute>
! 458: </xs:attributeGroup>
! 459: <xs:attributeGroup name="Force-attribute">
! 460: <xs:attribute name="Force" use="required">
! 461: <xs:simpleType>
! 462: <xs:restriction base="xs:token">
! 463: <xs:enumeration value="newton"/>
! 464: <xs:enumeration value="n"/>
! 465: <xs:enumeration value="pound"/>
! 466: <xs:enumeration value="grain"/>
! 467: </xs:restriction>
! 468: </xs:simpleType>
! 469: </xs:attribute>
! 470: </xs:attributeGroup>
! 471: <xs:attributeGroup name="Mass-attribute">
! 472: <xs:attribute name="Mass" use="required">
! 473: <xs:simpleType>
! 474: <xs:restriction base="xs:token">
! 475: <xs:enumeration value="kilogram"/>
! 476: <xs:enumeration value="kg"/>
! 477: <xs:enumeration value="gram"/>
! 478: </xs:restriction>
! 479: </xs:simpleType>
! 480: </xs:attribute>
! 481: </xs:attributeGroup>
! 482: <xs:attributeGroup name="Dimensionless-attribute">
! 483: <xs:attribute name="Dimensionless" use="required">
! 484: <xs:simpleType>
! 485: <xs:restriction base="xs:token">
! 486: <xs:enumeration value="radian"/>
! 487: <xs:enumeration value="rad"/>
! 488: </xs:restriction>
! 489: </xs:simpleType>
! 490: </xs:attribute>
! 491: </xs:attributeGroup>
! 492: <xs:simpleType name="three-doubles-list">
! 493: <xs:restriction>
! 494: <xs:simpleType>
! 495: <xs:list>
! 496: <xs:simpleType>
! 497: <xs:union memberTypes="xs:double xs:double xs:double"/>
! 498: </xs:simpleType>
! 499: </xs:list>
! 500: </xs:simpleType>
! 501: <xs:length value="3"/>
! 502: </xs:restriction>
! 503: </xs:simpleType>
! 504: <xs:simpleType name="integer-list">
! 505: <xs:restriction>
! 506: <xs:simpleType>
! 507: <xs:list>
! 508: <xs:simpleType>
! 509: <xs:union memberTypes="xs:integer xs:integer"/>
! 510: </xs:simpleType>
! 511: </xs:list>
! 512: </xs:simpleType>
! 513: <xs:minLength value="1"/>
! 514: </xs:restriction>
! 515: </xs:simpleType>
! 516: <xs:attributeGroup name="name-attribute">
! 517: <xs:attribute name="name" use="required" type="xs:token"/>
! 518: </xs:attributeGroup>
! 519: <xs:attributeGroup name="description-attribute">
! 520: <xs:attribute name="description" use="required"/>
! 521: </xs:attributeGroup>
! 522: <xs:element name="vMaterial">
! 523: <xs:complexType>
! 524: <xs:sequence>
! 525: <xs:element minOccurs="0" ref="diffuseColor"/>
! 526: <xs:element minOccurs="0" ref="emissiveColor"/>
! 527: <xs:element minOccurs="0" ref="specularColor"/>
! 528: <xs:element minOccurs="0" ref="shininess"/>
! 529: <xs:element minOccurs="0" ref="transparency"/>
! 530: <xs:element minOccurs="0" ref="ambientIntensity"/>
! 531: <xs:element minOccurs="0" ref="DEF"/>
! 532: <xs:element minOccurs="0" ref="USE"/>
! 533: </xs:sequence>
! 534: </xs:complexType>
! 535: </xs:element>
! 536: <xs:element name="diffuseColor" type="xs:string"/>
! 537: <xs:element name="emissiveColor" type="xs:string"/>
! 538: <xs:element name="specularColor" type="xs:string"/>
! 539: <xs:element name="shininess" type="xs:string"/>
! 540: <xs:element name="transparency" type="xs:string"/>
! 541: <xs:element name="ambientIntensity" type="xs:string"/>
! 542: <xs:element name="DEF" type="xs:string"/>
! 543: <xs:element name="USE" type="xs:string"/>
! 544: </xs:schema>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>