attribute based on simpleType : simpleType « 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 » simpleType 
attribute based on simpleType


File: Data.xml

<?xml version="1.0" encoding="UTF-8"?>
<data>
  <firstelement position="1">
    <level1 children="0">
      This is level of the nested elements
    </level1>
  </firstelement>
  <secondelement position="2">
    <level1 children="1">
      <level2>This is level of the nested elements</level2>
    </level1>
  </secondelement>
</data>

File: Schema.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  elementFormDefault="qualified">
  <xs:element name="firstelement">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="level1" />
      </xs:sequence>
      <xs:attribute name="position" type="xs:boolean"
        use="required" />
    </xs:complexType>
  </xs:element>
  <xs:element name="level1">
    <xs:complexType mixed="true">
      <xs:choice minOccurs="0" maxOccurs="unbounded">
        <xs:element ref="level2" />
      </xs:choice>
      <xs:attribute name="children" use="required">
        <xs:simpleType>
          <xs:restriction base="xs:NMTOKEN">
            <xs:enumeration value="0" />
            <xs:enumeration value="1" />
          </xs:restriction>
        </xs:simpleType>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
  <xs:element name="level2" type="xs:string" />
  <xs:element name="data">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="firstelement" />
        <xs:element ref="secondelement" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="secondelement">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="level1" />
      </xs:sequence>
      <xs:attribute name="position" type="xs:byte" use="required" />
    </xs:complexType>
  </xs:element>
</xs:schema>

 
Related examples in the same category
1. Create simpleType with restriction on another simple type
2. Derived simple type
3. Define simple type outside
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.