root/trunk/resources/timezones/tzservice.xsd

Revision 3159 (checked in by douglm, 2 years ago)

Add xjc task to allow compilation of xml schemas by JAXB xjc compiler

Add timezones service xml schema + bindings

Minor change to wscal extensions

Line 
1 <?xml version="1.0" encoding="UTF-8"?>
2 <schema xmlns="http://www.w3.org/2001/XMLSchema"
3         xmlns:tns="urn:ietf:params:xml:ns:timezone-service"
4         xmlns:xcal="urn:ietf:params:xml:ns:icalendar-2.0"
5         targetNamespace="urn:ietf:params:xml:ns:timezone-service"
6         elementFormDefault="qualified">
7   <!-- =====================================================================
8        Timezones service XML schema
9        ===================================================================== -->
10        
11   <import schemaLocation="xml.xsd"
12           namespace="http://www.w3.org/XML/1998/namespace" />
13        
14   <import schemaLocation="../exsynchwsdefs/iCalendar.xsd"
15           namespace="urn:ietf:params:xml:ns:icalendar-2.0" />
16  
17   <!-- *********************************************************************
18                              basic types
19        ********************************************************************* -->
20          
21   <simpleType name="CalscaleType">
22     <annotation>
23       <documentation xml:lang="en">
24         The calendar system defines how rules, dates and times are to be
25         interpreted. Currently only the value "Gregorian" is supported,
26         referring to the Gregorian calendar scale. If this element is not
27         present in its normal context, then the value "Gregorian" MUST be assumed.
28       </documentation>
29     </annotation>
30     <restriction base="string"/>
31   </simpleType>
32
33   <simpleType name="DtstampType">
34     <annotation>
35       <documentation xml:lang="en">
36         Provides the UTC date and time when a substantive change was made to the
37         timezone data. 
38       </documentation>
39     </annotation>
40     <restriction base="string"/>
41   </simpleType>
42
43   <simpleType name="LastmodifiedType">
44     <annotation>
45       <documentation xml:lang="en">
46         Provides the UTC date and time that the timezone data was last modified.
47       </documentation>
48     </annotation>
49     <restriction base="string"/>
50   </simpleType>
51  
52   <complexType name="LocalNameType">
53     <annotation>
54       <documentation xml:lang="en">
55         Defines one or more localized names that are used when a timezone
56         identifier needs to be presented to a user. The xml:lang attribute is
57         used to indicate the language associated with each value. If multiple
58         names are provided for the same locale the first is considered the
59         preferred name.
60       </documentation>
61     </annotation>
62     <simpleContent>
63       <extension base="string">
64         <attribute ref="xml:lang" />
65       </extension>
66     </simpleContent>
67   </complexType>
68              
69   <simpleType name="OnsetType">
70     <annotation>
71       <documentation xml:lang="en">
72         The onset element defines the local time at which the observance takes effect.   
73       </documentation>
74     </annotation>
75     <restriction base="string"/>
76   </simpleType>
77              
78   <simpleType name="TzidType">
79     <annotation>
80       <documentation xml:lang="en">
81         The text value is the identifier of the timezone being referred to. 
82       </documentation>
83     </annotation>
84     <restriction base="string"/>
85   </simpleType>
86              
87   <simpleType name="UtcOffsetFromType">
88     <annotation>
89       <documentation xml:lang="en">
90         The utc-offset-from element defines the UTC offset in hours and minutes
91         before the start of this observance.   
92       </documentation>
93     </annotation>
94     <restriction base="string"/>
95   </simpleType>
96              
97   <simpleType name="UtcOffsetToType">
98     <annotation>
99       <documentation xml:lang="en">
100         The utc-offset-to element defines the UTC offset in hours and minutes at
101         and after the start of this observance.   
102       </documentation>
103     </annotation>
104     <restriction base="string"/>
105   </simpleType>
106  
107   <complexType name="AliasType">
108     <annotation>
109       <documentation xml:lang="en">
110         Defines alternative identifiers that can be used for the timezone. This
111         feature allows mapping of old identifiers onto new.
112       </documentation>
113     </annotation>
114     <simpleContent>
115       <extension base="string">
116         <attribute ref="xml:lang" />
117       </extension>
118     </simpleContent>
119   </complexType>
120  
121   <complexType name="BaseResultType" abstract="true" />
122  
123   <!-- *********************************************************************
124                              capabilities response
125        ********************************************************************* -->
126  
127   <complexType name="CapabilitiesAcceptParameterType">
128     <annotation>
129       <documentation xml:lang="en">
130         This defines the name, type and characteristics of an operation parameter.
131       </documentation>
132     </annotation>
133     <sequence>
134       <element name="name" type="string" />
135       <element name="required" type="boolean" />
136       <element name="multi" type="boolean" />
137       <element name="value" type="string" />
138       <element name="description" type="string" />
139     </sequence>
140   </complexType>
141  
142   <complexType name="CapabilitiesOperationType">
143     <annotation>
144       <documentation xml:lang="en">
145         The element used as the container for information defining an operation
146         and its parameters. .
147       </documentation>
148     </annotation>
149     <sequence>
150       <element name="action" type="string" />
151       <element name="description" type="string" />
152       <element name="accept-parameter" type="tns:CapabilitiesAcceptParameterType"
153                maxOccurs="unbounded" />
154     </sequence>
155   </complexType>
156  
157   <complexType name="CapabilitiesType">
158     <annotation>
159       <documentation xml:lang="en">
160            The root (top-level) element used as the container for capabilities information.
161       </documentation>
162     </annotation>
163     <complexContent mixed="false">
164       <extension base="tns:BaseResultType">
165         <sequence>
166           <element name="operation" type="tns:CapabilitiesOperationType"
167                     maxOccurs="unbounded" />
168         </sequence>
169       </extension>
170     </complexContent>
171   </complexType>
172  
173   <element name="capabilities" type="tns:CapabilitiesType" />
174  
175   <!-- *********************************************************************
176                              list response
177        ********************************************************************* -->
178  
179   <complexType name="SummaryType">
180     <annotation>
181       <documentation xml:lang="en">
182         This defines the element that provides summary information for a timezone
183         in the timezones list.
184       </documentation>
185     </annotation>
186     <sequence >
187       <element name="tzid" type="tns:TzidType" minOccurs="1" />
188       <element name="last-modified" type="tns:LastmodifiedType" />
189       <element name="local-name" type="tns:LocalNameType"
190                maxOccurs="unbounded" />
191       <element name="alias" type="tns:AliasType"
192                maxOccurs="unbounded" />
193     </sequence>
194   </complexType>
195  
196   <complexType name="TimezoneListType">
197     <annotation>
198       <documentation xml:lang="en">
199         This defines the root (top-level) element used as the container for
200         a timezone listing. 
201       </documentation>
202     </annotation>
203     <complexContent mixed="false">
204       <extension base="tns:BaseResultType">
205         <sequence >
206           <element name="dtstamp" type="tns:DtstampType" minOccurs="1" />
207           <element name="summary" type="tns:SummaryType"
208                    maxOccurs="unbounded"  />
209         </sequence>
210       </extension>
211     </complexContent>
212   </complexType>
213  
214   <element name="timezone-list" type="tns:TimezoneListType" />
215  
216   <!-- *********************************************************************
217                             expand response
218        ********************************************************************* -->
219  
220   <complexType name="ObservanceType">
221     <annotation>
222       <documentation xml:lang="en">
223         In an expanded timezone, the observance element specifies a single
224         timezone observance. 
225       </documentation>
226     </annotation>
227     <sequence>
228       <element name="name" type="string" />
229       <element name="local-name" type="tns:LocalNameType"
230                maxOccurs="unbounded" />
231       <element name="onset" type="tns:OnsetType" minOccurs="1" />
232       <element name="utc-offset-from" type="tns:UtcOffsetFromType" minOccurs="1" />
233       <element name="utc-offset-to" type="tns:UtcOffsetToType" minOccurs="1" />
234     </sequence>
235   </complexType>
236  
237   <complexType name="TzdataType">
238     <annotation>
239       <documentation xml:lang="en">
240         This element specifies expanded timezone data for the range specified in
241         a request.
242       </documentation>
243     </annotation>
244     <sequence>
245       <element name="tzid" type="tns:TzidType" minOccurs="1" />
246       <element name="calscale" type="tns:CalscaleType" />
247       <element name="observance" type="tns:ObservanceType"
248                maxOccurs="unbounded" />
249     </sequence>
250   </complexType>
251  
252   <complexType name="TimezonesType">
253     <annotation>
254       <documentation xml:lang="en">
255         This defines the root (top-level) element used as the container for
256         expanded timezone data. 
257       </documentation>
258     </annotation>
259     <complexContent mixed="false">
260       <extension base="tns:BaseResultType">
261         <sequence >
262           <element name="dtstamp" type="tns:DtstampType" minOccurs="1" />
263           <element name="tzdata" type="tns:TzdataType"
264                    maxOccurs="unbounded"  />
265         </sequence>
266       </extension>
267     </complexContent>
268   </complexType>
269  
270   <element name="timezones" type="tns:TimezonesType" />
271 </schema>
Note: See TracBrowser for help on using the browser.