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