Mega Code Archive

 
Categories / XML Tutorial / XML Schema
 

Schema reuse

File: Data.xml <?xml version = "1.0" ?> <Customer customerID = "242552">    <Name>       <FirstName>A</FirstName>       <Middle>G</Middle>       <LastName>C</LastName>    </Name>    <Address>       <Street1>10 Place</Street1>       <Town>D</Town>       <City>E</City>       <State>F</State>       <Country>Australia</Country>       <Postcode>2021</Postcode>    </Address> </Customer> File: Data2.xml <?xml version = "1.0" ?> <Employee employeeID = "133">    <Name>       <FirstName>A</FirstName>       <Middle>G</Middle>       <LastName>B</LastName>    </Name>    <Address>       <Street1>10 Place</Street1>       <Town>small</Town>       <City>big</City>       <State>NS</State>       <Country>Australia</Country>       <Postcode>2021</Postcode>    </Address> </Employee> File: Schema.xsd <?xml version = "1.0" ?> <xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">        <xs:element name = "Customer">       <xs:complexType>          <xs:sequence>             <xs:element ref = "Name" />             <xs:element ref = "Address" />          </xs:sequence>          <xs:attribute name = "customerID" type = "integer" />       </xs:complexType>    </xs:element>        <xs:element name = "Employee">       <xs:complexType>          <xs:sequence>             <xs:element ref = "Name" />             <xs:element ref = "Address" />          </xs:sequence>          <xs:attribute name = "employeeID" type = "integer" />       </xs:complexType>    </xs:element>        <xs:element name = "Name">       <xs:complexType>          <xs:sequence>             <xs:element name = "FirstName" type = "string" />             <xs:element name = "Middle" type = "string" />             <xs:element name = "LastName" type = "string" />          </xs:sequence>       </xs:complexType>    </xs:element>        <xs:element name = "Address">       <xs:complexType>          <xs:sequence>             <xs:element name = "Street1" type = "string" />             <xs:element name = "Town" type = "string" />             <xs:element name = "City" type = "string" />             <xs:element name = "State" type = "string" />             <xs:element name = "Country" type = "string" />             <xs:element name = "Postcode" type = "string" />          </xs:sequence>       </xs:complexType>    </xs:element>     </xs:schema>