complexType mixed="true" and xsd:all : all « XML Schema « XML






complexType mixed="true" and xsd:all

            

File: Data.xml
<?xml version="1.0"?>

<letter xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation="Schema.xsd">
  <greeting>
    <hello />
    Hi,
  </greeting>
  <body>
    This is the body.
    <item />
    
    <price />
    
    <arrivalDate />
    
  </body>
  <closing>Just closing.<lax/></closing>
</letter>

File: Schema.xsd
<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="letter">
    <xsd:complexType mixed="true">
      <xsd:sequence>
        <xsd:element name="greeting">
          <xsd:complexType mixed="true">
            <xsd:group ref="salutations"/>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="body">
          <xsd:complexType mixed="true">
            <xsd:all>
              <xsd:element name="item"/>
              <xsd:element name="price"/>
              <xsd:element name="arrivalDate"/>
            </xsd:all>
          </xsd:complexType>
        </xsd:element>
        <xsd:element name="closing">
          <xsd:complexType mixed="true">
            <xsd:complexContent>
              <xsd:restriction base="xsd:anyType">
                <xsd:sequence>
                  <xsd:any processContents="lax"/>
                </xsd:sequence>
              </xsd:restriction>
            </xsd:complexContent>
          </xsd:complexType>
        </xsd:element>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
  
  <xsd:group name="salutations">
    <xsd:choice>
      <xsd:element name="hello"/>
      <xsd:element name="hi"/>
      <xsd:element name="dear"/>
    </xsd:choice>
  </xsd:group>
</xsd:schema>

 








Related examples in the same category

1.all and Complex type