1*7c568831SAndroid Build Coastguard Worker<?xml version="1.0" encoding="ISO-8859-1"?> 2*7c568831SAndroid Build Coastguard Worker<xsd:schema xmlns:foo="http://FOO" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:import="http://IMPORT" 3*7c568831SAndroid Build Coastguard Worker targetNamespace="http://FOO" elementFormDefault="qualified"> 4*7c568831SAndroid Build Coastguard Worker <xsd:import namespace="http://IMPORT" schemaLocation="anyAttr.importA.1_0.xsd"/> 5*7c568831SAndroid Build Coastguard Worker <xsd:import schemaLocation="anyAttr.importB.1_0.xsd"/> 6*7c568831SAndroid Build Coastguard Worker <xsd:element name="foo"> 7*7c568831SAndroid Build Coastguard Worker <xsd:complexType> 8*7c568831SAndroid Build Coastguard Worker <xsd:sequence> 9*7c568831SAndroid Build Coastguard Worker <!-- Attribute Wildcard Union --> 10*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.1_1" type="foo:type.1_1"/> 11*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.1_4" type="foo:type.1_4"/> 12*7c568831SAndroid Build Coastguard Worker 13*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.2_1" type="foo:type.2_1"/> 14*7c568831SAndroid Build Coastguard Worker 15*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.3_1" type="foo:type.3_1"/> 16*7c568831SAndroid Build Coastguard Worker 17*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.4_1" type="foo:type.4_1"/> 18*7c568831SAndroid Build Coastguard Worker 19*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_1_a" type="foo:type.5_1_a"/> 20*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_1_b" type="foo:type.5_1_b"/> 21*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_2_a" type="foo:type.5_2_a"/> 22*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_2_b" type="foo:type.5_2_b"/> 23*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_4_a" type="foo:type.5_4_a"/> 24*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.5_4_b" type="foo:type.5_4_b"/> 25*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.6_1" type="foo:type.6_1"/> 26*7c568831SAndroid Build Coastguard Worker <xsd:element name="derive.6_2" type="foo:type.6_2"/> 27*7c568831SAndroid Build Coastguard Worker </xsd:sequence> 28*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 29*7c568831SAndroid Build Coastguard Worker </xsd:element> 30*7c568831SAndroid Build Coastguard Worker 31*7c568831SAndroid Build Coastguard Worker <!-- Attribute Wildcard Union --> 32*7c568831SAndroid Build Coastguard Worker 33*7c568831SAndroid Build Coastguard Worker <!-- 1. If O1 and O2 are the same value, then that value must be the value. --> 34*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.1_1"> 35*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 36*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.1_1"> 37*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##any" processContents="lax"/> 38*7c568831SAndroid Build Coastguard Worker </xsd:extension> 39*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 40*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 41*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.1_1"> 42*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup ref="foo:attrGr.1_1"/> 43*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##any" processContents="lax"/> 44*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 45*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup name="attrGr.1_1"> 46*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##any" processContents="lax"/> 47*7c568831SAndroid Build Coastguard Worker </xsd:attributeGroup> 48*7c568831SAndroid Build Coastguard Worker 49*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.1_4"> 50*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 51*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.1_4"> 52*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="http://BAR ##local http://FOO" processContents="lax"/> 53*7c568831SAndroid Build Coastguard Worker </xsd:extension> 54*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 55*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 56*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.1_4"> 57*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup ref="foo:attrGr.1_4"/> 58*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local http://BAR ##targetNamespace " processContents="lax"/> 59*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 60*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup name="attrGr.1_4"> 61*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace=" http://FOO http://BAR ##local"/> 62*7c568831SAndroid Build Coastguard Worker </xsd:attributeGroup> 63*7c568831SAndroid Build Coastguard Worker 64*7c568831SAndroid Build Coastguard Worker <!-- 2. If either O1 or O2 is any, then any must be the value. --> 65*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.2_1"> 66*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 67*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.2_1"> 68*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##any" processContents="lax"/> 69*7c568831SAndroid Build Coastguard Worker </xsd:extension> 70*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 71*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 72*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.2_1"> 73*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup ref="foo:attrGr.2_1"/> 74*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##any" processContents="lax"/> 75*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 76*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup name="attrGr.2_1"> 77*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local ##targetNamespace"/> 78*7c568831SAndroid Build Coastguard Worker </xsd:attributeGroup> 79*7c568831SAndroid Build Coastguard Worker 80*7c568831SAndroid Build Coastguard Worker <!-- 3. If both O1 and O2 are sets of (namespace names or �absent�), 81*7c568831SAndroid Build Coastguard Worker then the union of those sets must be the value. --> 82*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.3_1"> 83*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 84*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.3_1"> 85*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##targetNamespace http://DOO" processContents="lax"/> 86*7c568831SAndroid Build Coastguard Worker </xsd:extension> 87*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 88*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 89*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.3_1"> 90*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup ref="foo:attrGr.3_1"/> 91*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local" processContents="lax"/> 92*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 93*7c568831SAndroid Build Coastguard Worker <xsd:attributeGroup name="attrGr.3_1"> 94*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local ##targetNamespace http://BAR"/> 95*7c568831SAndroid Build Coastguard Worker </xsd:attributeGroup> 96*7c568831SAndroid Build Coastguard Worker <!-- 4 If the two are negations of different values (namespace 97*7c568831SAndroid Build Coastguard Worker names or �absent�), then a pair of not and �absent� must be the value. --> 98*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.4_1"> 99*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 100*7c568831SAndroid Build Coastguard Worker <xsd:extension base="imp.type.base.derive.4_1"> 101*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 102*7c568831SAndroid Build Coastguard Worker </xsd:extension> 103*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 104*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 105*7c568831SAndroid Build Coastguard Worker <!-- 5 If either O1 or O2 is a pair of not and a namespace name and 106*7c568831SAndroid Build Coastguard Worker the other is a set of (namespace names or �absent�) (call this set S), 107*7c568831SAndroid Build Coastguard Worker then The appropriate case among the following must be true: --> 108*7c568831SAndroid Build Coastguard Worker <!-- 5.1 If the set S includes both the negated namespace name and 109*7c568831SAndroid Build Coastguard Worker �absent�, then any must be the value. --> 110*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_1_a"> 111*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 112*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_1_a"> 113*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local ##targetNamespace" processContents="lax"/> 114*7c568831SAndroid Build Coastguard Worker </xsd:extension> 115*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 116*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 117*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_1_a"> 118*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 119*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 120*7c568831SAndroid Build Coastguard Worker 121*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_1_b"> 122*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 123*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_1_b"> 124*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 125*7c568831SAndroid Build Coastguard Worker </xsd:extension> 126*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 127*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 128*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_1_b"> 129*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local ##targetNamespace" processContents="lax"/> 130*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 131*7c568831SAndroid Build Coastguard Worker 132*7c568831SAndroid Build Coastguard Worker <!-- 5.2 If the set S includes the negated namespace name but not �absent�, 133*7c568831SAndroid Build Coastguard Worker then a pair of not and �absent� must be the value. --> 134*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_2_a"> 135*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 136*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_2_a"> 137*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##targetNamespace http://BAR" processContents="lax"/> 138*7c568831SAndroid Build Coastguard Worker </xsd:extension> 139*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 140*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 141*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_2_a"> 142*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 143*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 144*7c568831SAndroid Build Coastguard Worker 145*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_2_b"> 146*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 147*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_2_b"> 148*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 149*7c568831SAndroid Build Coastguard Worker </xsd:extension> 150*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 151*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 152*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_2_b"> 153*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##targetNamespace http://BAR" processContents="lax"/> 154*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 155*7c568831SAndroid Build Coastguard Worker <!-- 5.3 If the set S includes �absent� but not the negated namespace name, 156*7c568831SAndroid Build Coastguard Worker then the union is not expressible. --> 157*7c568831SAndroid Build Coastguard Worker <!-- 158*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_3_a"> 159*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 160*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_3_a"> 161*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local http://BAR" processContents="lax"/> 162*7c568831SAndroid Build Coastguard Worker </xsd:extension> 163*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 164*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 165*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_3_a"> 166*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 167*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 168*7c568831SAndroid Build Coastguard Worker 169*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_3_b"> 170*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 171*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_3_b"> 172*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 173*7c568831SAndroid Build Coastguard Worker </xsd:extension> 174*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 175*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 176*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_3_b"> 177*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local http://BAR" processContents="lax"/> 178*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 179*7c568831SAndroid Build Coastguard Worker --> 180*7c568831SAndroid Build Coastguard Worker <!-- 5.4 If the set S does not include either the negated namespace name 181*7c568831SAndroid Build Coastguard Worker or �absent�, then whichever of O1 or O2 is a pair of not and a namespace 182*7c568831SAndroid Build Coastguard Worker name must be the value. --> 183*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_4_a"> 184*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 185*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_4_a"> 186*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="http://BAR" processContents="lax"/> 187*7c568831SAndroid Build Coastguard Worker </xsd:extension> 188*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 189*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 190*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_4_a"> 191*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 192*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 193*7c568831SAndroid Build Coastguard Worker 194*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.5_4_b"> 195*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 196*7c568831SAndroid Build Coastguard Worker <xsd:extension base="foo:type.base.5_4_b"> 197*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##other" processContents="lax"/> 198*7c568831SAndroid Build Coastguard Worker </xsd:extension> 199*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 200*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 201*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.base.5_4_b"> 202*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="http://BAR" processContents="lax"/> 203*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 204*7c568831SAndroid Build Coastguard Worker <!-- 6 If either O1 or O2 is a pair of not and �absent� and the other is a 205*7c568831SAndroid Build Coastguard Worker set of (namespace names or �absent�) (again, call this set S), then The 206*7c568831SAndroid Build Coastguard Worker appropriate case among the following must be true: --> 207*7c568831SAndroid Build Coastguard Worker <!-- 6.1 If the set S includes �absent�, then any must be the value. --> 208*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.6_1"> 209*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 210*7c568831SAndroid Build Coastguard Worker <xsd:extension base="imp.type.base.derive.6"> 211*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="##local http://BAR" processContents="lax"/> 212*7c568831SAndroid Build Coastguard Worker </xsd:extension> 213*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 214*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 215*7c568831SAndroid Build Coastguard Worker <!-- 6.2 If the set S does not include �absent�, then a pair of not and �absent� 216*7c568831SAndroid Build Coastguard Worker must be the value. --> 217*7c568831SAndroid Build Coastguard Worker <xsd:complexType name="type.6_2"> 218*7c568831SAndroid Build Coastguard Worker <xsd:complexContent> 219*7c568831SAndroid Build Coastguard Worker <xsd:extension base="imp.type.base.derive.6"> 220*7c568831SAndroid Build Coastguard Worker <xsd:anyAttribute namespace="http://BAR http://DOO" processContents="lax"/> 221*7c568831SAndroid Build Coastguard Worker </xsd:extension> 222*7c568831SAndroid Build Coastguard Worker </xsd:complexContent> 223*7c568831SAndroid Build Coastguard Worker </xsd:complexType> 224*7c568831SAndroid Build Coastguard Worker 225*7c568831SAndroid Build Coastguard Worker</xsd:schema> 226*7c568831SAndroid Build Coastguard Worker 227*7c568831SAndroid Build Coastguard Worker 228