adultinternetusers > Tutorials > Surf Clothing board shorts and Relax NG Tutorial
Index | >> Example 6 / 9 << | Prev | Next |
Contents > Simple tasks > Element which contains mixture of two elements (can appear more times)

Element which contains mixture of two elements (can appear more times)

  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: sequence, maxOccurs

1. Surf Clothing Schema

We want to have the root element to be named "AAA", from null namespace and contains a mixture of any number (even zero) of "BBB" and "CCC" elements. You need to use the trick below - use "sequence" element with "minOccurs" attribute set to 0 and "maxOccurs" set to "unbounded", and the attribute "minOccurs" of the "element" elements must be set to 0 too.

Valid document


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

Valid document


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

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:sequence minOccurs="0" maxOccurs="unbounded">
        <xsd:element name="BBB" type="xsd:string" minOccurs="0"/>
        <xsd:element name="CCC" type="xsd:string" minOccurs="0"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>
</xsd:schema>

2. Relax NG

We will use the "interleave" and "zeroOrMore" patterns.

Valid document


<AAA Surfns="">
  <BBB>111</BBB>
  <CCC>YYY</CCC>
  <BBB>222</BBB>
  <BBB>333</BBB>
  <CCC>ZZZ</CCC>
</AAA>

Valid document


<AAA Surfns=""/>

Correct Relax NG schema (correctRelax_0.rng)


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

  <start>
    <element>
      <name ns="">AAA</name>
      <interleave>
        <zeroOrMore>
          <element>
            <name ns="">BBB</name>
            <text/>
          </element>
        </zeroOrMore>
        <zeroOrMore>
          <element>
            <name ns="">CCC</name>
            <text/>
          </element>
        </zeroOrMore>
      </interleave>
    </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" >
  <interleave>
    <zeroOrMore>
      <element name="BBB">
        <text/>
      </element>
    </zeroOrMore>
    <zeroOrMore>
      <element name="CCC">
        <text/>
      </element>
    </zeroOrMore>
  </interleave>
</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