O'Reilly logo

Real World XML by Steven Holzner

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Creating Element Groups

Say that I wanted to let the borrower borrow not just books, but also a magazine. To do that, I can create a new group named booksAndMagazine. A group collects elements together, and you can name groups. You can then include a group in other elements using the <xsd:group> element and referring to the group by name:

<xsd:complexType name="transactionType"> 
    <xsd:sequence>
        <xsd:element name="Lender" type="address"/>
        <xsd:element name="Borrower" type="address"/>
        <xsd:element ref="note" minOccurs="0"/>
        <xsd:choice>
            <xsd:element name="books" type="books"/>
            <xsd:element ref="book"/>
            <xsd:group ref="booksAndMagazine"/>
        <xsd:choice>
    </xsd:sequence>
    <xsd:attribute name="borrowDate" type="xsd:date"/>
</xsd:complexType>

To create ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required