Set minOccurs, maxOccurs for referenced types : Reference « XML Schema « XML






Set minOccurs, maxOccurs for referenced types


File: Data.xml

<?xml version="1.0"?>
<Books xmlns="http://www.java2s.com"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.java2s.com Schema.xsd">
        <Book>
                <Title>title 1</Title>
                <Author>author 1</Author>
                <Date>2008</Date>
                <ISBN>1-11111-111-1</ISBN>
                <Publisher>Publisher 1</Publisher>
        </Book>
        <Book>
                <Title>title 2</Title>
                <Author>author 2</Author>
                <Date>2007</Date>
                <ISBN>0-111-11111-1</ISBN>
                <Publisher>Publisher 2</Publisher>
        </Book>
        <Book>
                <Title>title 3</Title>
                <Author>author 3</Author>
                <Date>2004</Date>
                <ISBN>0-11-111111-1</ISBN>
                <Publisher>Publisher 3</Publisher>
        </Book>
</Books>

File: Schema.xsd

<?xml version="1.0" encoding="UTF-8"?>
<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="Books">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="Book" minOccurs="1" maxOccurs="unbounded"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="Book">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element ref="Title" minOccurs="1" maxOccurs="1"/>
                <xsd:element ref="Author" minOccurs="1" maxOccurs="1"/>
                <xsd:element ref="Date" minOccurs="1" maxOccurs="1"/>
                <xsd:element ref="ISBN" minOccurs="1" maxOccurs="1"/>
                <xsd:element ref="Publisher" minOccurs="1" maxOccurs="1"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
    <xsd:element name="Title" type="xsd:string"/>
    <xsd:element name="Author" type="xsd:string"/>
    <xsd:element name="Date" type="xsd:string"/>
    <xsd:element name="ISBN" type="xsd:string"/>
    <xsd:element name="Publisher" type="xsd:string"/>
</xsd:schema>

 








Related examples in the same category

1.reference element
2.Reference defined data type with target namespace
3.Reference your type with namespace
4.Refernece anonymous complexType
5.Nexted reference
6.reference with maxOccurs
7.Use ref to remove the nested definition