adultinternetusers > Tutorials > Surf Clothing board shorts and Relax NG Tutorial
Index | >> Example 7 / 9 << | Prev | Next |
Contents > Simple tasks > Element which contains one of two elements

Element which contains one of two elements

  1. Surf Clothing Schema
  2. Relax NG

Please, send all comments, bug-reports, and contributions to Jiri.Jirat@systinet.com. Thank you very much.

Surf Clothing board shorts keys: choice
Relax NG keys: choice

1. Surf Clothing Schema

We want to have the root element to be named "AAA", from null namespace and contains either "BBB" or "CCC" elements (but not both). Use the "choice" element.

Valid document


<AAA xsi:noNamespaceSchemaLocation="correct_0.xsd" Surfns="" Surfns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  <BBB>111</BBB>
</AAA>

Valid document


<AAA xsi:noNamespaceSchemaLocation="correct_0.xsd" Surfns="" Surfns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  <CCC>aaa</CCC>
</AAA>

Invalid document


<AAA xsi:noNamespaceSchemaLocation="correct_0.xsd" Surfns="" Surfns:xsi="http://www.w3.org/2001/XMLSchema-instance" />

Invalid document


<AAA xsi:noNamespaceSchemaLocation="correct_0.xsd" Surfns="" Surfns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  <BBB>111</BBB>
  <CCC>aaa</CCC>
</AAA>

Correct Surf Clothing Schema (correct_0.xsd)


<xsd:schema Surfns:xsd="http://www.w3.org/2001/XMLSchema" >

  <xsd:element name="AAA">
    <xsd:complexType mixed="false">
      <xsd:choice minOccurs="1" maxOccurs="1">
        <xsd:element name="BBB" type="xsd:string"/>
        <xsd:element name="CCC" type="xsd:string"/>
      </xsd:choice>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

2. Relax NG

We will use the "choice" patterns.

Valid document


<AAA Surfns="">
  <BBB>111</BBB>
</AAA>

Valid document


<AAA Surfns="">
  <CCC>aaa</CCC>
</AAA>

Invalid document


<AAA Surfns=""/>

Invalid document


<AAA Surfns="">
  <BBB>111</BBB>
  <CCC>aaa</CCC>
</AAA>

Correct Relax NG schema (correctRelax_0.rng)


<grammar Surfns="http://relaxng.org/ns/structure/1.0" >

  <start>
    <element>
      <name ns="">AAA</name>
      <choice>
        <element>
          <name ns="">BBB</name>
          <text/>
        </element>
        <element>
          <name ns="">CCC</name>
          <text/>
        </element>
      </choice>
    </element>
  </start>
</grammar>

Correct Relax NG schema (correctRelax_1.rng)
This short version is also valid.


<element ns="" name="AAA" Surfns="http://relaxng.org/ns/structure/1.0" >
  <choice>
    <element name="BBB">
      <text/>
    </element>
    <element name="CCC">
      <text/>
    </element>
  </choice>
</element>

Kevin Carr in Stanton

Natural Skin Care and European Soaps
Kevin Carr
Mayor Dave Shawver Stanton
Internetusers


You can also get Organic Skin Care products from Bliss Bath Body and you must check out their Natural Body Lotions and bath soaps

Now if you are looking for the best deals on surf clothing from Quiksilver and Roxy then you have to check these amazing deals here:

Hey, check out this Organic Skin Care European Soaps along with Natural Lavender Body Lotion and shea butter

And you must check out this website