Annotation of embedaddon/libxml2/test/schemas/anyAttr-derive1_0.xsd, revision 1.1.1.1

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>