blob: 9cfe8c6eddf290b78f03d98ac570ac63bf7f2664 [file] [log] [blame]
Daniel Veillardc0826a72004-08-10 14:17:33 +00001<?xml version="1.0" ?>
2<!--
3 * $Id: giml.xsd,v 1.3 2004/06/25 09:03:53 ensonic Exp $
4 * @file giml.xsd
5 * @author Stefan Kost <ensonic@users.sf.net>
6 * @date Thu Jun 24 17:28:26 MEST 2004
7 *
8 * @brief giml document schema definition
9 * @ingroup gitkcore
10 *
11-->
12<xs:schema targetNamespace="http://gitk.sourceforge.net/"
13 xmlns="http://gitk.sourceforge.net/"
14 xmlns:xs="http://www.w3.org/2001/XMLSchema"
15 xmlns:dc="http://purl.org/dc/elements/1.1/"
16 xmlns:i18n="http://apache.org/cocoon/i18n/2.0/">
17 <xs:annotation>
18 <xs:documentation>
19 This schema describes giml dialog sources
20 </xs:documentation>
21 </xs:annotation>
22
23 <xs:import namespace="http://purl.org/dc/elements/1.1/"
24 schemaLocation="bug145246.xsd.imp"
25 />
26 <!--xs:import namespace="http://apache.org/cocoon/i18n/2.0/"
27 schemaLocation="file://./i18n.xsd"
28 /-->
29
30 <!-- foreign namespace
31 <xs:element name="title">
32 <xs:complexType mixed="true">
33 <xs:choice minOccurs="0" maxOccurs="unbounded">
34 </xs:choice>
35 </xs:complexType>
36 </xs:element>
37
38 <xs:element name="text">
39 <xs:complexType mixed="true"></xs:complexType>
40 </xs:element>
41 -->
42
43 <xs:element name="option">
44 <xs:complexType mixed="true">
45 <xs:choice minOccurs="0" maxOccurs="unbounded"></xs:choice>
46 </xs:complexType>
47 </xs:element>
48
49 <xs:element name="options">
50 <xs:complexType>
51 <xs:sequence minOccurs="0" maxOccurs="unbounded">
52 <xs:element ref="option"/>
53 </xs:sequence>
54 </xs:complexType>
55 </xs:element>
56
57 <xs:element name="disabled">
58 <xs:complexType mixed="true"></xs:complexType>
59 </xs:element>
60
61 <xs:element name="required">
62 <xs:complexType mixed="true"></xs:complexType>
63 </xs:element>
64
65 <xs:element name="value">
66 <xs:complexType mixed="true"></xs:complexType>
67 </xs:element>
68
69 <xs:element name="label">
70 <xs:complexType mixed="true">
71 <xs:choice minOccurs="0" maxOccurs="1"></xs:choice>
72 </xs:complexType>
73 </xs:element>
74
75 <xs:element name="widget">
76 <xs:complexType>
77 <xs:sequence>
78 <xs:element ref="meta" minOccurs="0"/>
79 <xs:element ref="label" minOccurs="0"/>
80 <xs:element ref="disabled" minOccurs="0"/>
81 <xs:element ref="value" minOccurs="0"/>
82 <xs:element ref="options" minOccurs="0"/>
83 </xs:sequence>
84 <xs:attribute name="id" type="xs:ID"/>
85 <xs:attribute name="type" default="action">
86 <xs:simpleType>
87 <xs:restriction base="xs:string">
88 <xs:enumeration value="action"/>
89 <xs:enumeration value="characterinput"/>
90 <xs:enumeration value="characterinput_numeric"/>
91 <xs:enumeration value="characterinput_alphabetic"/>
92 <xs:enumeration value="optionchoice"/>
93 <xs:enumeration value="optionchoice_boolean"/>
94 <xs:enumeration value="optionchoice_single"/>
95 <xs:enumeration value="optionchoice_single_compact"/>
96 <xs:enumeration value="label"/>
97 </xs:restriction>
98 </xs:simpleType>
99 </xs:attribute>
100 <xs:attribute name="hasFocus" default="false">
101 <xs:simpleType>
102 <xs:restriction base="xs:string">
103 <xs:enumeration value="true"/>
104 <xs:enumeration value="false"/>
105 </xs:restriction>
106 </xs:simpleType>
107 </xs:attribute>
108 </xs:complexType>
109 </xs:element>
110
111 <xs:element name="widgetgroup">
112 <xs:complexType>
113 <xs:sequence>
114 <xs:element ref="meta" minOccurs="0"/>
115 <xs:element ref="label" minOccurs="0"/>
116 <xs:element ref="widget" minOccurs="0" maxOccurs="unbounded"/>
117 <xs:element ref="widgetgroup" minOccurs="0" maxOccurs="unbounded"/>
118 </xs:sequence>
119 </xs:complexType>
120 </xs:element>
121
122 <xs:element name="dialogwidget">
123 <xs:complexType mixed="true">
124 <xs:attribute name="id" type="xs:ID"/>
125 </xs:complexType>
126 </xs:element>
127
128 <xs:element name="dialogwidgets">
129 <xs:complexType>
130 <xs:sequence>
131 <xs:element ref="dialogwidget" maxOccurs="unbounded"/>
132 </xs:sequence>
133 </xs:complexType>
134 </xs:element>
135
136 <xs:element name="meta">
137 <xs:complexType>
138 <xs:sequence>
139 <xs:element ref="dc:title"/>
140 </xs:sequence>
141 </xs:complexType>
142 </xs:element>
143
144 <xs:element name="dialog">
145 <xs:complexType>
146 <xs:sequence>
147 <xs:element ref="meta" minOccurs="0" maxOccurs="1"/>
148 <xs:element ref="dialogwidgets" minOccurs="0" maxOccurs="1"/>
149 <xs:element ref="widgetgroup" minOccurs="1" maxOccurs="unbounded"/>
150 </xs:sequence>
151 <xs:attribute name="id" type="xs:ID"/>
152 <xs:attribute name="focus" default="main">
153 <xs:simpleType>
154 <xs:restriction base="xs:string">
155 <xs:enumeration value="main"/>
156 <xs:enumeration value="ctrl"/>
157 </xs:restriction>
158 </xs:simpleType>
159 </xs:attribute>
160 </xs:complexType>
161 </xs:element>
162
163 <xs:element name="giml">
164 <xs:complexType>
165 <xs:sequence>
166 <xs:element ref="dialog" minOccurs="1" maxOccurs="1"/>
167 </xs:sequence>
168 <!--xs:attribute name="xmlns" type="xs:string" fixed="http://gitk.sourceforge.net/"/-->
169 </xs:complexType>
170 </xs:element>
171
172</xs:schema>
173