1*4f52f5e6SDmitry Baryshkov<?xml version="1.0" encoding="UTF-8"?> 2*4f52f5e6SDmitry Baryshkov<schema xmlns="http://www.w3.org/2001/XMLSchema" 3*4f52f5e6SDmitry Baryshkov targetNamespace="http://nouveau.freedesktop.org/" 4*4f52f5e6SDmitry Baryshkov xmlns:rng="http://nouveau.freedesktop.org/" 5*4f52f5e6SDmitry Baryshkov elementFormDefault="qualified"> 6*4f52f5e6SDmitry Baryshkov 7*4f52f5e6SDmitry Baryshkov <annotation> 8*4f52f5e6SDmitry Baryshkov <documentation> 9*4f52f5e6SDmitry Baryshkov An updated version of the old rules.xml file from the 10*4f52f5e6SDmitry Baryshkov RivaTV project. Specifications by Pekka Paalanen, 11*4f52f5e6SDmitry Baryshkov preliminary attempt by KoalaBR, 12*4f52f5e6SDmitry Baryshkov first working version by Jakob Bornecrantz. 13*4f52f5e6SDmitry Baryshkov For specifications, see the file rules-ng-format.txt 14*4f52f5e6SDmitry Baryshkov in Nouveau CVS module 'rules-ng'. 15*4f52f5e6SDmitry Baryshkov </documentation> 16*4f52f5e6SDmitry Baryshkov <documentation>Version 0.1</documentation> 17*4f52f5e6SDmitry Baryshkov </annotation> 18*4f52f5e6SDmitry Baryshkov 19*4f52f5e6SDmitry Baryshkov 20*4f52f5e6SDmitry Baryshkov <!-- Elements --> 21*4f52f5e6SDmitry Baryshkov 22*4f52f5e6SDmitry Baryshkov <element name="database" type="rng:databaseType" /> 23*4f52f5e6SDmitry Baryshkov <element name="import" type="rng:importType" /> 24*4f52f5e6SDmitry Baryshkov <element name="copyright" type="rng:copyrightType" /> 25*4f52f5e6SDmitry Baryshkov <element name="domain" type="rng:domainType" /> 26*4f52f5e6SDmitry Baryshkov <element name="array" type="rng:arrayType" /> 27*4f52f5e6SDmitry Baryshkov <element name="stripe" type="rng:stripeType" /> 28*4f52f5e6SDmitry Baryshkov <element name="reg64" type="rng:registerType" /> 29*4f52f5e6SDmitry Baryshkov <element name="reg32" type="rng:registerType" /> 30*4f52f5e6SDmitry Baryshkov <element name="bitset" type="rng:bitsetType" /> 31*4f52f5e6SDmitry Baryshkov <element name="bitfield" type="rng:bitfieldType" /> 32*4f52f5e6SDmitry Baryshkov <element name="enum" type="rng:enumType" /> 33*4f52f5e6SDmitry Baryshkov <element name="value" type="rng:valueType" /> 34*4f52f5e6SDmitry Baryshkov 35*4f52f5e6SDmitry Baryshkov <!-- Copyright elements --> 36*4f52f5e6SDmitry Baryshkov <element name="author" type="rng:authorType" /> 37*4f52f5e6SDmitry Baryshkov <element name="nick" type="rng:nickType" /> 38*4f52f5e6SDmitry Baryshkov <element name="license" type="rng:docType" /> 39*4f52f5e6SDmitry Baryshkov 40*4f52f5e6SDmitry Baryshkov <!-- Documentation elements --> 41*4f52f5e6SDmitry Baryshkov 42*4f52f5e6SDmitry Baryshkov <!-- FIXME: allowed only one per parent element --> 43*4f52f5e6SDmitry Baryshkov <element name="brief" type="rng:briefType" /> 44*4f52f5e6SDmitry Baryshkov 45*4f52f5e6SDmitry Baryshkov <element name="doc" type="rng:docType" /> 46*4f52f5e6SDmitry Baryshkov <element name="b" type="rng:textformatType" /> 47*4f52f5e6SDmitry Baryshkov <element name="i" type="rng:textformatType" /> 48*4f52f5e6SDmitry Baryshkov <element name="u" type="rng:textformatType" /> 49*4f52f5e6SDmitry Baryshkov <element name="code" type="rng:textcodeType" /> 50*4f52f5e6SDmitry Baryshkov <element name="ul" type="rng:listType" /> 51*4f52f5e6SDmitry Baryshkov <element name="ol" type="rng:listType" /> 52*4f52f5e6SDmitry Baryshkov <element name="li" type="rng:listitemType" /> 53*4f52f5e6SDmitry Baryshkov 54*4f52f5e6SDmitry Baryshkov <!-- Copyright element types --> 55*4f52f5e6SDmitry Baryshkov 56*4f52f5e6SDmitry Baryshkov <complexType name="authorType" mixed="true"> 57*4f52f5e6SDmitry Baryshkov <annotation> 58*4f52f5e6SDmitry Baryshkov <documentation> 59*4f52f5e6SDmitry Baryshkov register database author 60*4f52f5e6SDmitry Baryshkov </documentation> 61*4f52f5e6SDmitry Baryshkov </annotation> 62*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 63*4f52f5e6SDmitry Baryshkov <element ref="rng:nick" /> 64*4f52f5e6SDmitry Baryshkov </choice> 65*4f52f5e6SDmitry Baryshkov <attribute name="name" type="string" use="required" /> 66*4f52f5e6SDmitry Baryshkov <attribute name="email" type="string" use="required" /> 67*4f52f5e6SDmitry Baryshkov </complexType> 68*4f52f5e6SDmitry Baryshkov 69*4f52f5e6SDmitry Baryshkov <complexType name="nickType"> 70*4f52f5e6SDmitry Baryshkov <annotation> 71*4f52f5e6SDmitry Baryshkov <documentation>nickType</documentation> 72*4f52f5e6SDmitry Baryshkov </annotation> 73*4f52f5e6SDmitry Baryshkov <attribute name="name" type="string" use="required" /> 74*4f52f5e6SDmitry Baryshkov </complexType> 75*4f52f5e6SDmitry Baryshkov 76*4f52f5e6SDmitry Baryshkov <!-- Database element types --> 77*4f52f5e6SDmitry Baryshkov 78*4f52f5e6SDmitry Baryshkov <complexType name="databaseType"> 79*4f52f5e6SDmitry Baryshkov <annotation> 80*4f52f5e6SDmitry Baryshkov <documentation>databaseType</documentation> 81*4f52f5e6SDmitry Baryshkov </annotation> 82*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 83*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 84*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 85*4f52f5e6SDmitry Baryshkov </choice> 86*4f52f5e6SDmitry Baryshkov </complexType> 87*4f52f5e6SDmitry Baryshkov 88*4f52f5e6SDmitry Baryshkov <complexType name="importType"> 89*4f52f5e6SDmitry Baryshkov <annotation> 90*4f52f5e6SDmitry Baryshkov <documentation>importType</documentation> 91*4f52f5e6SDmitry Baryshkov </annotation> 92*4f52f5e6SDmitry Baryshkov <attribute name="file" type="string" use="required" /> 93*4f52f5e6SDmitry Baryshkov </complexType> 94*4f52f5e6SDmitry Baryshkov 95*4f52f5e6SDmitry Baryshkov <complexType name="copyrightType"> 96*4f52f5e6SDmitry Baryshkov <annotation> 97*4f52f5e6SDmitry Baryshkov <documentation>copyrightType</documentation> 98*4f52f5e6SDmitry Baryshkov </annotation> 99*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 100*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 101*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 102*4f52f5e6SDmitry Baryshkov <element ref="rng:author" /> 103*4f52f5e6SDmitry Baryshkov <element ref="rng:license" /> 104*4f52f5e6SDmitry Baryshkov </choice> 105*4f52f5e6SDmitry Baryshkov <attribute name="year" type="nonNegativeInteger" use="optional" /> 106*4f52f5e6SDmitry Baryshkov </complexType> 107*4f52f5e6SDmitry Baryshkov 108*4f52f5e6SDmitry Baryshkov <complexType name="domainType"> 109*4f52f5e6SDmitry Baryshkov <annotation> 110*4f52f5e6SDmitry Baryshkov <documentation>domainType</documentation> 111*4f52f5e6SDmitry Baryshkov </annotation> 112*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 113*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 114*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 115*4f52f5e6SDmitry Baryshkov <group ref="rng:regarrayGroup" /> 116*4f52f5e6SDmitry Baryshkov </choice> 117*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 118*4f52f5e6SDmitry Baryshkov <attribute name="prefix" type="NMTOKENS" use="optional" /> 119*4f52f5e6SDmitry Baryshkov <attribute name="width" type="rng:DomainWidth" use="optional" /> 120*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 121*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 122*4f52f5e6SDmitry Baryshkov </complexType> 123*4f52f5e6SDmitry Baryshkov 124*4f52f5e6SDmitry Baryshkov <complexType name="arrayType"> 125*4f52f5e6SDmitry Baryshkov <annotation> 126*4f52f5e6SDmitry Baryshkov <documentation>arrayType</documentation> 127*4f52f5e6SDmitry Baryshkov </annotation> 128*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 129*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 130*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 131*4f52f5e6SDmitry Baryshkov <group ref="rng:regarrayGroup" /> 132*4f52f5e6SDmitry Baryshkov </choice> 133*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="optional" /> 134*4f52f5e6SDmitry Baryshkov <attribute name="offset" type="rng:HexOrNumber" use="optional" /> 135*4f52f5e6SDmitry Baryshkov <attribute name="offsets" type="string" use="optional"/> 136*4f52f5e6SDmitry Baryshkov <attribute name="doffsets" type="string" use="optional"/> 137*4f52f5e6SDmitry Baryshkov <attribute name="index" type="NMTOKENS" use="optional"/> 138*4f52f5e6SDmitry Baryshkov <attribute name="stride" type="rng:HexOrNumber" use="required" /> 139*4f52f5e6SDmitry Baryshkov <attribute name="length" type="rng:HexOrNumber" use="required" /> 140*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 141*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 142*4f52f5e6SDmitry Baryshkov <attribute name="usage" type="string" use="optional" /> 143*4f52f5e6SDmitry Baryshkov </complexType> 144*4f52f5e6SDmitry Baryshkov 145*4f52f5e6SDmitry Baryshkov <complexType name="stripeType"> 146*4f52f5e6SDmitry Baryshkov <annotation> 147*4f52f5e6SDmitry Baryshkov <documentation>stripeType</documentation> 148*4f52f5e6SDmitry Baryshkov </annotation> 149*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 150*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 151*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 152*4f52f5e6SDmitry Baryshkov <group ref="rng:regarrayGroup" minOccurs="0" /> 153*4f52f5e6SDmitry Baryshkov </choice> 154*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 155*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 156*4f52f5e6SDmitry Baryshkov <attribute name="prefix" type="NMTOKENS" use="optional" /> 157*4f52f5e6SDmitry Baryshkov </complexType> 158*4f52f5e6SDmitry Baryshkov 159*4f52f5e6SDmitry Baryshkov <complexType name="registerType"> 160*4f52f5e6SDmitry Baryshkov <annotation> 161*4f52f5e6SDmitry Baryshkov <documentation> 162*4f52f5e6SDmitry Baryshkov registerType used by reg32, reg64 163*4f52f5e6SDmitry Baryshkov </documentation> 164*4f52f5e6SDmitry Baryshkov </annotation> 165*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 166*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 167*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 168*4f52f5e6SDmitry Baryshkov <element ref="rng:value" /> 169*4f52f5e6SDmitry Baryshkov <element ref="rng:bitfield" /> 170*4f52f5e6SDmitry Baryshkov </choice> 171*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 172*4f52f5e6SDmitry Baryshkov <attribute name="offset" type="rng:HexOrNumber" use="required" /> 173*4f52f5e6SDmitry Baryshkov <attribute name="type" type="NMTOKENS" use="optional" /> 174*4f52f5e6SDmitry Baryshkov <attribute name="shr" type="nonNegativeInteger" use="optional" /> 175*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 176*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 177*4f52f5e6SDmitry Baryshkov <attribute name="stride" type="rng:HexOrNumber" use="optional" /> 178*4f52f5e6SDmitry Baryshkov <attribute name="length" type="rng:HexOrNumber" use="optional" /> 179*4f52f5e6SDmitry Baryshkov <attribute name="high" type="nonNegativeInteger" use="optional" /> 180*4f52f5e6SDmitry Baryshkov <attribute name="low" type="nonNegativeInteger" use="optional" /> 181*4f52f5e6SDmitry Baryshkov <attribute name="pos" type="nonNegativeInteger" use="optional" /> 182*4f52f5e6SDmitry Baryshkov <attribute name="align" type="nonNegativeInteger" use="optional" /> 183*4f52f5e6SDmitry Baryshkov <attribute name="radix" type="nonNegativeInteger" use="optional" /> 184*4f52f5e6SDmitry Baryshkov <attribute name="usage" type="string" use="optional" /> 185*4f52f5e6SDmitry Baryshkov </complexType> 186*4f52f5e6SDmitry Baryshkov 187*4f52f5e6SDmitry Baryshkov <complexType name="bitsetType"> 188*4f52f5e6SDmitry Baryshkov <annotation> 189*4f52f5e6SDmitry Baryshkov <documentation>bitsetType</documentation> 190*4f52f5e6SDmitry Baryshkov </annotation> 191*4f52f5e6SDmitry Baryshkov <choice maxOccurs="unbounded"> 192*4f52f5e6SDmitry Baryshkov <element ref="rng:bitfield" /> 193*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 194*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 195*4f52f5e6SDmitry Baryshkov </choice> 196*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 197*4f52f5e6SDmitry Baryshkov <attribute name="inline" type="rng:Boolean" use="optional" /> 198*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 199*4f52f5e6SDmitry Baryshkov </complexType> 200*4f52f5e6SDmitry Baryshkov 201*4f52f5e6SDmitry Baryshkov <complexType name="bitfieldType"> 202*4f52f5e6SDmitry Baryshkov <annotation> 203*4f52f5e6SDmitry Baryshkov <documentation>bitfieldType</documentation> 204*4f52f5e6SDmitry Baryshkov </annotation> 205*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 206*4f52f5e6SDmitry Baryshkov <element ref="rng:value" maxOccurs="unbounded" /> 207*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 208*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 209*4f52f5e6SDmitry Baryshkov </choice> 210*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 211*4f52f5e6SDmitry Baryshkov <attribute name="high" type="nonNegativeInteger" use="optional" /> 212*4f52f5e6SDmitry Baryshkov <attribute name="low" type="nonNegativeInteger" use="optional" /> 213*4f52f5e6SDmitry Baryshkov <attribute name="pos" type="nonNegativeInteger" use="optional" /> 214*4f52f5e6SDmitry Baryshkov <attribute name="radix" type="nonNegativeInteger" use="optional" /> 215*4f52f5e6SDmitry Baryshkov <attribute name="type" type="NMTOKENS" use="optional" /> 216*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 217*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 218*4f52f5e6SDmitry Baryshkov <attribute name="addvariant" type="rng:Boolean" use="optional" /> 219*4f52f5e6SDmitry Baryshkov <attribute name="shr" type="nonNegativeInteger" use="optional" /> 220*4f52f5e6SDmitry Baryshkov </complexType> 221*4f52f5e6SDmitry Baryshkov 222*4f52f5e6SDmitry Baryshkov <complexType name="enumType"> 223*4f52f5e6SDmitry Baryshkov <annotation> 224*4f52f5e6SDmitry Baryshkov <documentation>enumType</documentation> 225*4f52f5e6SDmitry Baryshkov </annotation> 226*4f52f5e6SDmitry Baryshkov <choice maxOccurs="unbounded"> 227*4f52f5e6SDmitry Baryshkov <element ref="rng:value" /> 228*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 229*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 230*4f52f5e6SDmitry Baryshkov </choice> 231*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 232*4f52f5e6SDmitry Baryshkov <attribute name="bare" type="rng:Boolean" use="optional" /> 233*4f52f5e6SDmitry Baryshkov <attribute name="prefix" type="NMTOKENS" use="optional" /> 234*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 235*4f52f5e6SDmitry Baryshkov </complexType> 236*4f52f5e6SDmitry Baryshkov 237*4f52f5e6SDmitry Baryshkov <complexType name="valueType"> 238*4f52f5e6SDmitry Baryshkov <annotation> 239*4f52f5e6SDmitry Baryshkov <documentation>valueType</documentation> 240*4f52f5e6SDmitry Baryshkov </annotation> 241*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 242*4f52f5e6SDmitry Baryshkov <group ref="rng:docGroup" /> 243*4f52f5e6SDmitry Baryshkov <group ref="rng:topGroup" /> 244*4f52f5e6SDmitry Baryshkov </choice> 245*4f52f5e6SDmitry Baryshkov <attribute name="name" type="NMTOKEN" use="required" /> 246*4f52f5e6SDmitry Baryshkov <attribute name="value" type="string" use="optional" /> 247*4f52f5e6SDmitry Baryshkov <attribute name="varset" type="NMTOKEN" use="optional" /> 248*4f52f5e6SDmitry Baryshkov <attribute name="variants" type="string" use="optional" /> 249*4f52f5e6SDmitry Baryshkov </complexType> 250*4f52f5e6SDmitry Baryshkov 251*4f52f5e6SDmitry Baryshkov <!-- Documentation element types --> 252*4f52f5e6SDmitry Baryshkov 253*4f52f5e6SDmitry Baryshkov <complexType name="briefType"> 254*4f52f5e6SDmitry Baryshkov <annotation> 255*4f52f5e6SDmitry Baryshkov <documentation> 256*4f52f5e6SDmitry Baryshkov brief documentation, no markup 257*4f52f5e6SDmitry Baryshkov </documentation> 258*4f52f5e6SDmitry Baryshkov </annotation> 259*4f52f5e6SDmitry Baryshkov <simpleContent> 260*4f52f5e6SDmitry Baryshkov <extension base="string" /> 261*4f52f5e6SDmitry Baryshkov </simpleContent> 262*4f52f5e6SDmitry Baryshkov </complexType> 263*4f52f5e6SDmitry Baryshkov 264*4f52f5e6SDmitry Baryshkov <complexType name="docType" mixed="true"> 265*4f52f5e6SDmitry Baryshkov <annotation> 266*4f52f5e6SDmitry Baryshkov <documentation> 267*4f52f5e6SDmitry Baryshkov root element of documentation sub-tree 268*4f52f5e6SDmitry Baryshkov </documentation> 269*4f52f5e6SDmitry Baryshkov </annotation> 270*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 271*4f52f5e6SDmitry Baryshkov <group ref="rng:textformatGroup" /> 272*4f52f5e6SDmitry Baryshkov <group ref="rng:listGroup" /> 273*4f52f5e6SDmitry Baryshkov <element ref="rng:code" /> 274*4f52f5e6SDmitry Baryshkov </choice> 275*4f52f5e6SDmitry Baryshkov </complexType> 276*4f52f5e6SDmitry Baryshkov 277*4f52f5e6SDmitry Baryshkov <complexType name="textformatType" mixed="true"> 278*4f52f5e6SDmitry Baryshkov <annotation> 279*4f52f5e6SDmitry Baryshkov <documentation> 280*4f52f5e6SDmitry Baryshkov for bold, underline, italics 281*4f52f5e6SDmitry Baryshkov </documentation> 282*4f52f5e6SDmitry Baryshkov </annotation> 283*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 284*4f52f5e6SDmitry Baryshkov <group ref="rng:textformatGroup" /> 285*4f52f5e6SDmitry Baryshkov </choice> 286*4f52f5e6SDmitry Baryshkov </complexType> 287*4f52f5e6SDmitry Baryshkov 288*4f52f5e6SDmitry Baryshkov <complexType name="textcodeType"> 289*4f52f5e6SDmitry Baryshkov <simpleContent> 290*4f52f5e6SDmitry Baryshkov <extension base="string"> 291*4f52f5e6SDmitry Baryshkov <attribute name="title" type="string" /> 292*4f52f5e6SDmitry Baryshkov </extension> 293*4f52f5e6SDmitry Baryshkov </simpleContent> 294*4f52f5e6SDmitry Baryshkov </complexType> 295*4f52f5e6SDmitry Baryshkov 296*4f52f5e6SDmitry Baryshkov <complexType name="listType"> 297*4f52f5e6SDmitry Baryshkov <annotation> 298*4f52f5e6SDmitry Baryshkov <documentation> 299*4f52f5e6SDmitry Baryshkov definition of a list, ordered or unordered 300*4f52f5e6SDmitry Baryshkov </documentation> 301*4f52f5e6SDmitry Baryshkov </annotation> 302*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 303*4f52f5e6SDmitry Baryshkov <element ref="rng:li" /> 304*4f52f5e6SDmitry Baryshkov </choice> 305*4f52f5e6SDmitry Baryshkov </complexType> 306*4f52f5e6SDmitry Baryshkov 307*4f52f5e6SDmitry Baryshkov <complexType name="listitemType" mixed="true"> 308*4f52f5e6SDmitry Baryshkov <annotation> 309*4f52f5e6SDmitry Baryshkov <documentation> 310*4f52f5e6SDmitry Baryshkov items of a list 311*4f52f5e6SDmitry Baryshkov </documentation> 312*4f52f5e6SDmitry Baryshkov </annotation> 313*4f52f5e6SDmitry Baryshkov <choice minOccurs="0" maxOccurs="unbounded"> 314*4f52f5e6SDmitry Baryshkov <group ref="rng:textformatGroup" /> 315*4f52f5e6SDmitry Baryshkov <group ref="rng:listGroup" /> 316*4f52f5e6SDmitry Baryshkov <element ref="rng:code" /> 317*4f52f5e6SDmitry Baryshkov </choice> 318*4f52f5e6SDmitry Baryshkov </complexType> 319*4f52f5e6SDmitry Baryshkov 320*4f52f5e6SDmitry Baryshkov 321*4f52f5e6SDmitry Baryshkov 322*4f52f5e6SDmitry Baryshkov <!-- Attribute value types --> 323*4f52f5e6SDmitry Baryshkov 324*4f52f5e6SDmitry Baryshkov <simpleType name="Hexadecimal"> 325*4f52f5e6SDmitry Baryshkov <restriction base="string"> 326*4f52f5e6SDmitry Baryshkov <pattern value="0x[0-9a-f]+" /> 327*4f52f5e6SDmitry Baryshkov <pattern value="0x[0-9A-F]+" /> 328*4f52f5e6SDmitry Baryshkov <pattern value="[0-9]" /> 329*4f52f5e6SDmitry Baryshkov </restriction> 330*4f52f5e6SDmitry Baryshkov </simpleType> 331*4f52f5e6SDmitry Baryshkov 332*4f52f5e6SDmitry Baryshkov <simpleType name="HexOrNumber"> 333*4f52f5e6SDmitry Baryshkov <annotation> 334*4f52f5e6SDmitry Baryshkov <documentation>HexOrNumber</documentation> 335*4f52f5e6SDmitry Baryshkov </annotation> 336*4f52f5e6SDmitry Baryshkov <union memberTypes="rng:Hexadecimal nonNegativeInteger" /> 337*4f52f5e6SDmitry Baryshkov </simpleType> 338*4f52f5e6SDmitry Baryshkov 339*4f52f5e6SDmitry Baryshkov <simpleType name="Boolean"> 340*4f52f5e6SDmitry Baryshkov <restriction base="string"> 341*4f52f5e6SDmitry Baryshkov <enumeration value="true" /> 342*4f52f5e6SDmitry Baryshkov <enumeration value="1" /> 343*4f52f5e6SDmitry Baryshkov <enumeration value="yes" /> 344*4f52f5e6SDmitry Baryshkov <enumeration value="false" /> 345*4f52f5e6SDmitry Baryshkov <enumeration value="0" /> 346*4f52f5e6SDmitry Baryshkov <enumeration value="no" /> 347*4f52f5e6SDmitry Baryshkov </restriction> 348*4f52f5e6SDmitry Baryshkov </simpleType> 349*4f52f5e6SDmitry Baryshkov 350*4f52f5e6SDmitry Baryshkov <simpleType name="DomainWidth"> 351*4f52f5e6SDmitry Baryshkov <annotation> 352*4f52f5e6SDmitry Baryshkov <documentation>DomainWidth</documentation> 353*4f52f5e6SDmitry Baryshkov </annotation> 354*4f52f5e6SDmitry Baryshkov <restriction base="string"> 355*4f52f5e6SDmitry Baryshkov <enumeration value="32" /> 356*4f52f5e6SDmitry Baryshkov </restriction> 357*4f52f5e6SDmitry Baryshkov </simpleType> 358*4f52f5e6SDmitry Baryshkov 359*4f52f5e6SDmitry Baryshkov 360*4f52f5e6SDmitry Baryshkov 361*4f52f5e6SDmitry Baryshkov <!-- Element groups --> 362*4f52f5e6SDmitry Baryshkov 363*4f52f5e6SDmitry Baryshkov <group name="topGroup"> 364*4f52f5e6SDmitry Baryshkov <choice> 365*4f52f5e6SDmitry Baryshkov <element ref="rng:copyright" /> 366*4f52f5e6SDmitry Baryshkov <element ref="rng:domain" /> 367*4f52f5e6SDmitry Baryshkov <element ref="rng:enum" /> 368*4f52f5e6SDmitry Baryshkov <element ref="rng:bitset" /> 369*4f52f5e6SDmitry Baryshkov <element ref="rng:import" /> 370*4f52f5e6SDmitry Baryshkov </choice> 371*4f52f5e6SDmitry Baryshkov </group> 372*4f52f5e6SDmitry Baryshkov 373*4f52f5e6SDmitry Baryshkov <group name="regarrayGroup"> 374*4f52f5e6SDmitry Baryshkov <choice> 375*4f52f5e6SDmitry Baryshkov <element ref="rng:reg64" /> 376*4f52f5e6SDmitry Baryshkov <element ref="rng:reg32" /> 377*4f52f5e6SDmitry Baryshkov <element ref="rng:array" /> 378*4f52f5e6SDmitry Baryshkov <element ref="rng:stripe" /> 379*4f52f5e6SDmitry Baryshkov </choice> 380*4f52f5e6SDmitry Baryshkov </group> 381*4f52f5e6SDmitry Baryshkov 382*4f52f5e6SDmitry Baryshkov <group name="docGroup"> 383*4f52f5e6SDmitry Baryshkov <choice> 384*4f52f5e6SDmitry Baryshkov <element ref="rng:brief" /> 385*4f52f5e6SDmitry Baryshkov <element ref="rng:doc" /> 386*4f52f5e6SDmitry Baryshkov </choice> 387*4f52f5e6SDmitry Baryshkov </group> 388*4f52f5e6SDmitry Baryshkov 389*4f52f5e6SDmitry Baryshkov <group name="textformatGroup"> 390*4f52f5e6SDmitry Baryshkov <choice> 391*4f52f5e6SDmitry Baryshkov <element ref="rng:b" /> 392*4f52f5e6SDmitry Baryshkov <element ref="rng:i" /> 393*4f52f5e6SDmitry Baryshkov <element ref="rng:u" /> 394*4f52f5e6SDmitry Baryshkov </choice> 395*4f52f5e6SDmitry Baryshkov </group> 396*4f52f5e6SDmitry Baryshkov 397*4f52f5e6SDmitry Baryshkov <group name="listGroup"> 398*4f52f5e6SDmitry Baryshkov <choice> 399*4f52f5e6SDmitry Baryshkov <element ref="rng:ul" /> 400*4f52f5e6SDmitry Baryshkov <element ref="rng:ol" /> 401*4f52f5e6SDmitry Baryshkov </choice> 402*4f52f5e6SDmitry Baryshkov </group> 403*4f52f5e6SDmitry Baryshkov 404*4f52f5e6SDmitry Baryshkov</schema> 405