All inner elements in a sequence are referenced : sequence « XML Schema « XML






All inner elements in a sequence are referenced



File: Data.xml

<?xml version="1.0"?>
<products xmlns ="http://www.java2s.com"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.java2s.com Schema.xsd">
      <product>
          <name>name 1</name>
          <image>a.gif</image>
          <description>description 1</description>
          <warranty>lifetime warranty</warranty>
          <cost>41.95</cost>
          <retailer>http://www.java2s.com</retailer>
      </product>
      <product>
          <name>name 2</name>
          <image>b.gif</image>
          <description>description 2</description>
          <cost>239.00</cost>
          <retailer>http://www.java2s.com</retailer>
      </product>
</products>


File: Schema.xsd
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            targetNamespace="http://www.java2s.com"
            xmlns="http://www.java2s.com"
            elementFormDefault="qualified">
    <xsd:element name="products">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="product" minOccurs="0" maxOccurs="unbounded"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="product">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="name"/>
                <xsd:element ref="image"/>
                <xsd:element ref="description"/>
                <xsd:element ref="warranty" minOccurs="0"/>
                <xsd:element ref="weight" minOccurs="0"/>
                <xsd:element ref="cost" maxOccurs="unbounded"/>
                <xsd:element ref="retailer"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="name" type="xsd:string"/>
    <xsd:element name="image" type="xsd:string"/>
    <xsd:element name="description" type="xsd:string"/>
    <xsd:element name="warranty" type="xsd:string"/>
    <xsd:element name="weight" type="xsd:string"/>
    <xsd:element name="cost" type="xsd:string"/>
    <xsd:element name="retailer" type="xsd:string"/>
</xsd:schema>

 








Related examples in the same category

1.complexType with empty sequence
2.Reference group in a sequence
3.sequence with unbounded elements
4.Anonymous complexType with sequence
5.Nested sequence
6.Nested complexType and sequence
7.sequence with only one element