File: functions.xsd

package info (click to toggle)
calligra 1%3A2.4.4-3
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 290,028 kB
  • sloc: cpp: 1,105,019; xml: 24,940; ansic: 11,807; python: 8,457; perl: 2,792; sh: 1,507; yacc: 1,307; ruby: 1,248; sql: 903; lex: 455; makefile: 89
file content (129 lines) | stat: -rw-r--r-- 4,963 bytes parent folder | download | duplicates (6)
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?xml version="1.0" encoding="UTF-8" ?>
<!--  kspread XSD v1.0 -->
<xsd:schema
           xmlns:xsd="http://www.w3.org/2001/XMLSchema"
           xmlns="http://www.calligra.org/standards/kspread/functions/1.0"
           xmlns:kspread="http://www.calligra.org/standards/kspread/functions/1.0"
           targetNamespace="http://www.calligra.org/standards/kspread/functions/1.0"
           version="1.0"
           elementFormDefault="qualified" >

    <xsd:annotation>
        <xsd:documentation>

            Copyright (c) 2006 Stefan Nikolaus &lt;stefan.nikolaus@kdemail.net&gt;

            Permission to use, copy, modify and distribute this XML schema
            and its accompanying documentation for any purpose and without fee
            is hereby granted in perpetuity, provided that the above copyright
            notice and this paragraph appear in all copies.  The copyright
            holders make no representation about the suitability of the DTD for
            any purpose. It is provided "as is" without expressed or implied
            warranty.

        </xsd:documentation>
    </xsd:annotation>
    <xsd:annotation>
        <xsd:documentation>

            A schema for KSpread's function description XML format.

            A document instance of this Schema should have a declaration
            looking like this:

            <![CDATA[

                <?xml version="1.0" encoding="UTF-8" ?>
                <functions xmlns="http://www.calligra.org/standards/kspread/1.0"
                           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                           xsi:schemaLocation="http://www.calligra.org/standards/kspread/functions/1.0
                           http://www.calligra.org/standards/kspread/functions/1.0/functions.xsd" >
                    <!-- the content -->
                </functions>

            ]]>

        </xsd:documentation>
    </xsd:annotation>

    <xsd:element name="functions">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="group" maxOccurs="unbounded" type="group"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>

    <xsd:complexType name="group">
        <xsd:sequence>
            <xsd:group ref="functions"/>
        </xsd:sequence>
        <xsd:attribute name="name" use="required" type="xsd:string"/>
    </xsd:complexType>

    <xsd:group name="functions">
        <xsd:sequence>
            <xsd:element name="function" maxOccurs="unbounded" type="function"/>
        </xsd:sequence>
    </xsd:group>

    <xsd:complexType name="function">
        <xsd:sequence>
            <xsd:element name="summary" maxOccurs="1" type="xsd:string"/>
            <xsd:element name="parameters" minOccurs="0" maxOccurs="1" type="parameters"/>
            <xsd:element name="description" maxOccurs="1" type="xsd:string"/>
            <xsd:element name="examples" minOccurs="0" maxOccurs="1"/>
        </xsd:sequence>
        <xsd:attribute name="name" use="required" type="xsd:string"/>
        <xsd:attribute name="type" use="required" type="type"/>
    </xsd:complexType>

    <xsd:complexType name="parameters">
        <xsd:sequence>
            <xsd:element name="parameter" maxOccurs="unbounded" type="parameter"/>
            <xsd:element name="optional" maxOccurs="1" type="optionalParameters"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="optionalParameters">
        <xsd:sequence>
            <xsd:element name="parameter" maxOccurs="unbounded" type="optionalParameter"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="parameter">
        <xsd:attribute name="name" use="required" type="xsd:string"/>
        <xsd:attribute name="type" use="required" type="type" />
        <xsd:attribute name="comment" use="required" type="xsd:string"/>
    </xsd:complexType>

    <xsd:complexType name="optionalParameter">
        <xsd:complexContent>
            <xsd:extension base="parameter">
                <xsd:attribute name="default" use="optional" type="xsd:string"/>
            </xsd:extension>
        </xsd:complexContent>
    </xsd:complexType>

    <xsd:complexType name="examples">
        <xsd:sequence>
            <xsd:element name="example" maxOccurs="unbounded" type="xsd:string"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:simpleType name="type">
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="String"/>
            <xsd:enumeration value="Number"/>
            <xsd:enumeration value="Integer"/>
            <xsd:enumeration value="Date"/>
            <xsd:enumeration value="Time"/>
            <xsd:enumeration value="Boolean"/>
            <xsd:enumeration value="Percentage"/>
            <xsd:enumeration value="Currency"/>
            <xsd:enumeration value="Complex"/>
            <xsd:enumeration value="Array"/>
        </xsd:restriction>
    </xsd:simpleType>

</xsd:schema>