Schema for XSchema elements : Salami Slice « XML Schema « XML






Schema for XSchema elements


File: Data.xml
<?xml version="1.0" standalone="yes"?>
<statement 
 xmlns="http://www.java2s.com/statement"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.java2s.com/statement Schema.xsd">
           
   <customer/>
   <orders>
      <order>
         <items>
            <item>
              <description>item 1</description>
            </item>
            <item>
              <description>item 2</description>
            </item>
         </items>
      </order>
      <order>
         <items>
            <item>
              <description>item 3</description>
            </item>
         </items>
      </order>
   </orders>
</statement>
File: Schema.xsd

<?xml version="1.0" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  targetNamespace="http://www.java2s.com/statement"
  xmlns="http://www.java2s.com/statement">
  <xs:element name="statement">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="customer" />
        <xs:element ref="orders" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="customer">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="orders">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="order"
         maxOccurs="unbounded" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="order">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="items" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="items">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="item" 
         maxOccurs="unbounded" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="item">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="description" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="description" type="xs:string" />
</xs:schema>

 








Related examples in the same category

1.Salami Slice Design
2.Reuse complex type
3.Global attibute definitions
4.Ref and Salami Slice
5.different types with the same name
6.Reuse data type defined
7.Reuse data type defined in another xml schema file