summaryrefslogtreecommitdiff
path: root/xsd/tests/schema/recursive/test.xsd
blob: 6efc7d2b7da42a26ebdc909f7eb36483b2d13962 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?xml version="1.0" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.w3.org/2001/XMLSchema XMLSchema.xsd"
	    xmlns:test="http://www.codesynthesis.com/xmlns/test"
            targetNamespace="http://www.codesynthesis.com/xmlns/test">

  <xsd:element name="BooleanExpression">
    <xsd:complexType>
      <xsd:choice>
        <xsd:element name="literal" type="xsd:boolean"/>
        <xsd:element ref="test:AND"/>
        <xsd:element ref="test:OR"/>
	<xsd:element ref="test:XOR"/>
      </xsd:choice>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="AND">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="test:BooleanExpression" maxOccurs="2"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

  <xsd:element name="OR">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="test:BooleanExpression" maxOccurs="2"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

 <xsd:element name="XOR">
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref="test:BooleanExpression" maxOccurs="2"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

</xsd:schema>