choice minOccurs="0" maxOccurs="unbounded" : choice « XML Schema « XML

XML
1. CSS Style
2. SVG
3. XML Schema
4. XQuery
5. XSLT stylesheet
Java
XML Tutorial
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
XML » XML Schema » choice 
choice minOccurs="0" maxOccurs="unbounded"


File: Data.xml

<?xml version="1.0"?>
<employees xmlns="http://www.java2java.com/employees"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.java2java.com/employees Schema.xsd">
  <employee>
    <name>
      <first>first</first>
      <middle>middle</middle>
      <last>last</last>
    </name>
    <location>
      <address>USA</address>
      <latitude>123</latitude>
      <longitude>123</longitude>
    </location>
    <phone>001</phone>
    <knows />
    <description>
      test
      <em>em</em>
      test
      <br />
      test
      <strong>strong</strong>
      test
    </description>
  </employee>
</employees>

File: Schema.xsd

<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
  xmlns:employees="http://www.java2java.com/employees"
  targetNamespace="http://www.java2java.com/employees"
  elementFormDefault="qualified">

  <element name="employees">
    <complexType>
      <sequence>
        <element name="employee" minOccurs="0"
          maxOccurs="unbounded">
          <complexType>
            <sequence>
              <element name="name"
                type="employees:NameType" />
              <element name="location"
                type="employees:LocationType" />
              <element name="phone" type="string" />
              <element name="knows"
                type="employees:KnowsType" />
              <element name="description"
                type="employees:DescriptionType" />
            </sequence>
          </complexType>
        </element>
      </sequence>
    </complexType>
  </element>

  <complexType name="NameType">
    <group ref="employees:NameGroup" />
  </complexType>

  <group name="NameGroup">
    <sequence>
      <element name="first" type="string" minOccurs="1"
        maxOccurs="unbounded" />
      <element name="middle" type="string" minOccurs="0"
        maxOccurs="1" />
      <element name="last" type="string" />
    </sequence>
  </group>

  <complexType name="LocationType">
    <choice minOccurs="0" maxOccurs="unbounded">
      <element name="address" type="string" />
      <sequence>
        <element name="latitude" type="string" />
        <element name="longitude" type="string" />
      </sequence>
    </choice>
  </complexType>

  <complexType name="KnowsType"></complexType>

  <complexType name="DescriptionType" mixed="true">
    <choice minOccurs="0" maxOccurs="unbounded">
      <element name="em" type="string" />
      <element name="strong" type="string" />
      <element name="br" type="string" />
    </choice>
  </complexType>
</schema>

 
Related examples in the same category
1. Choice with three elements
2. Use choice to define elements with random number and occurence
3. complexType mixed="true" and choice
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.