summaryrefslogtreecommitdiff
path: root/xsd-tests/cxx/tree/float/test.xsd
blob: c02678de3277b830770627f1832b22b62a4a4caf (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:t="test" targetNamespace="test">

  <simpleType name="float-list">
    <list itemType="float"/>
  </simpleType>

  <simpleType name="double-list">
    <list itemType="double"/>
  </simpleType>

  <simpleType name="decimal-list">
    <list itemType="decimal"/>
  </simpleType>

  <!-- decimal facets -->

  <simpleType name="simple">
    <restriction base="t:base-simple">
      <fractionDigits value="2"/>
    </restriction>
  </simpleType>

  <simpleType name="base-simple">
    <restriction base="decimal">
      <totalDigits value="4"/>
    </restriction>
  </simpleType>

  <complexType name="complex">
    <simpleContent>
      <restriction base="t:base-complex">
       <fractionDigits value="2"/>
       <totalDigits value="4"/>
       <attribute name="x" type="int"/>
      </restriction>
    </simpleContent>
  </complexType>

  <complexType name="base-complex">
    <simpleContent>
      <extension base="decimal">
       <attribute name="x" type="int"/>
      </extension>
    </simpleContent>
  </complexType>


  <complexType name="type">
    <sequence>
      <element name="float" type="float" maxOccurs="unbounded"/>
      <element name="float-list" type="t:float-list"/>
      <element name="double" type="double" maxOccurs="unbounded"/>
      <element name="double-list" type="t:double-list"/>
      <element name="decimal" type="decimal" maxOccurs="unbounded"/>
      <element name="decimal-list" type="t:decimal-list"/>

      <element name="simple" type="t:simple" maxOccurs="unbounded"/>
      <element name="complex" type="t:complex" maxOccurs="unbounded"/>

    </sequence>
    <attribute name="f" type="float" default="12.34"/>
    <attribute name="do" type="double" default="1234.1234"/>
    <attribute name="de" type="decimal" default="1234.1234"/>

    <attribute name="s" type="t:simple"/>
  </complexType>

  <element name="root" type="t:type"/>

  <element name="double" type="double"/>
  <element name="decimal" type="decimal"/>

</schema>