Mega Code Archive

 
Categories / XML / XML Schema
 

Element with anonymous complexType and sequence

File: Data.xml <?xml version="1.0"?> <addr:address xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://www.rntsoft.com Schema.xsd"     xmlns:addr="http://www.rntsoft.com"     addr:language="en">   <fullName>     <first>first</first>     <middle>middle</middle>     <last>last</last>   </fullName>   <contacts>     <phone addr:number="111.222.3333"/>   </contacts> </addr:address> File: Schema.xsd <?xml version="1.0"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"   targetNamespace="http://www.rntsoft.com"   xmlns:addr="http://www.rntsoft.com"   attributeFormDefault="qualified">  <xsd:element name="address">   <xsd:complexType>     <xsd:sequence>       <xsd:element name="fullName">         <xsd:complexType>           <xsd:sequence>             <xsd:element name="first" type="addr:nameType"/>             <xsd:element name="middle" type="addr:nameType" minOccurs="0"/>             <xsd:element name="last" type="addr:nameType"/>           </xsd:sequence>         </xsd:complexType>       </xsd:element>       <xsd:element name="contacts" type="addr:contactsType" minOccurs="0"/>     </xsd:sequence>   <xsd:attributeGroup ref="addr:nationality"/>   </xsd:complexType>  </xsd:element>    <xsd:complexType name="nameType">   <xsd:simpleContent>     <xsd:extension base="xsd:string"/>   </xsd:simpleContent>  </xsd:complexType>     <xsd:complexType name="contactsType">     <xsd:sequence>       <xsd:element name="phone" minOccurs="0">         <xsd:complexType>           <xsd:complexContent>             <xsd:restriction base="xsd:anyType">               <xsd:attribute name="number" type="xsd:string"/>             </xsd:restriction>           </xsd:complexContent>         </xsd:complexType>       </xsd:element>     </xsd:sequence>   </xsd:complexType>  <xsd:attributeGroup name="nationality">   <xsd:attribute name="language" type="xsd:language"/>  </xsd:attributeGroup> </xsd:schema>