aboutsummaryrefslogtreecommitdiff
path: root/tests/cxx/tree/containment/test.xsd
blob: 72c9379d3293ff34591f32d4b19d4f10d6730f25 (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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">

  <complexType name="id-ex">
    <simpleContent>
      <extension base="ID">
        <attribute name="id" type="ID"/>
      </extension>
    </simpleContent>
  </complexType>

  <complexType name="inner">
    <sequence>
      <element name="id" type="ID" minOccurs="0"/>
      <element name="id-ex" type="t:id-ex" minOccurs="0"/>
      <element name="ref" type="IDREF" minOccurs="0"/>
    </sequence>
  </complexType>

  <complexType name="outer">
    <sequence>
      <element name="i" type="t:inner" minOccurs="0"/>
      <element name="ref" type="IDREF" minOccurs="0"/>
    </sequence>
  </complexType>

  <!-- IDREF lists -->

  <complexType name="id">
    <attribute name="id" type="ID" use="required"/>
  </complexType>

  <complexType name="ids">
    <sequence>
      <element name="id" type="t:id" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
  </complexType>

  <complexType name="idrefs1">
    <attribute name="idrefs" type="IDREFS" use="required"/>
  </complexType>

  <simpleType name="idref-list">
    <list itemType="IDREF"/>
  </simpleType>

  <complexType name="idrefs2">
    <attribute name="idrefs" type="t:idref-list" use="required"/>
  </complexType>

  <complexType name="model">
    <sequence>
      <element name="ids" type="t:ids"/>
      <element name="idrefs1" type="t:idrefs1"/>
      <element name="idrefs2" type="t:idrefs2"/>
    </sequence>
  </complexType>

</schema>