/[volute]/trunk/projects/grid/uws/doc/UWS.xsd
ViewVC logotype

Contents of /trunk/projects/grid/uws/doc/UWS.xsd

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3005 - (show annotations)
Thu Jun 18 07:03:38 2015 UTC (5 years, 3 months ago) by harripa@gmail.com
File MIME type: text/plain
File size: 15340 byte(s)
revert namespace to 1.0 and add mandatory version attribute on job list and jobinfo
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- $Revision$ $Date$ $HeadURL$ -->
3 <!-- UWS schema - Paul Harrison May 2008 -->
4 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
5 targetNamespace="http://www.ivoa.net/xml/UWS/v1.0" xmlns:uws="http://www.ivoa.net/xml/UWS/v1.0"
6 xmlns:xlink="http://www.w3.org/1999/xlink" elementFormDefault="qualified"
7 attributeFormDefault="unqualified"
8 >
9 <xs:import namespace="http://www.w3.org/1999/xlink"
10 schemaLocation="http://www.ivoa.net/xml/Xlink/xlink.xsd"/>
11
12 <xs:complexType name="ShortJobDescription">
13 <xs:sequence>
14 <xs:element name="phase" type="uws:ExecutionPhase">
15 <xs:annotation>
16 <xs:documentation> the execution phase - returned at
17 /(jobs)/(jobid)/phase</xs:documentation>
18 </xs:annotation>
19 </xs:element>
20 </xs:sequence>
21 <xs:attribute name="id" type="uws:JobIdentifier" use="required"></xs:attribute>
22 <xs:attributeGroup ref="uws:reference"></xs:attributeGroup>
23 </xs:complexType>
24 <xs:attributeGroup name="reference">
25 <xs:annotation>
26 <xs:documentation>standard xlink references
27 </xs:documentation>
28 </xs:annotation>
29 <xs:attribute ref="xlink:type" use="optional"
30 default="simple" />
31 <xs:attribute ref="xlink:href" use="optional" />
32 </xs:attributeGroup>
33 <xs:simpleType name="ExecutionPhase">
34 <xs:annotation>
35 <xs:documentation>
36 Enumeration of possible phases of job execution
37 </xs:documentation>
38 </xs:annotation>
39 <xs:restriction base="xs:string">
40 <xs:enumeration value="PENDING">
41 <xs:annotation>
42 <xs:documentation>
43 The first phase a job is entered into - this is where
44 a job is being set up but no request to run has
45 occurred.
46 </xs:documentation>
47 </xs:annotation>
48 </xs:enumeration>
49 <xs:enumeration value="QUEUED">
50 <xs:annotation>
51 <xs:documentation>
52 A job has been accepted for execution but is waiting
53 in a queue
54 </xs:documentation>
55 </xs:annotation>
56 </xs:enumeration>
57 <xs:enumeration value="EXECUTING">
58 <xs:annotation>
59 <xs:documentation>A job is running</xs:documentation>
60 </xs:annotation>
61 </xs:enumeration>
62 <xs:enumeration value="COMPLETED">
63 <xs:annotation>
64 <xs:documentation>
65 A job has completed successfully
66 </xs:documentation>
67 </xs:annotation>
68 </xs:enumeration>
69 <xs:enumeration value="ERROR">
70 <xs:annotation>
71 <xs:documentation>
72 Some form of error has occurred
73 </xs:documentation>
74 </xs:annotation>
75 </xs:enumeration>
76 <xs:enumeration value="UNKNOWN">
77 <xs:annotation>
78 <xs:documentation>
79 The job is in an unknown state.
80 </xs:documentation>
81 </xs:annotation>
82 </xs:enumeration>
83 <xs:enumeration value="HELD">
84 <xs:annotation>
85 <xs:documentation>
86 The job is HELD pending execution and will not
87 automatically be executed - can occur after a
88 PHASE=RUN request has been made (cf PENDING).
89 </xs:documentation>
90 </xs:annotation>
91 </xs:enumeration>
92 <xs:enumeration value="SUSPENDED">
93 <xs:annotation>
94 <xs:documentation>
95 The job has been suspended by the system during
96 execution
97 </xs:documentation>
98 </xs:annotation>
99 </xs:enumeration>
100 <xs:enumeration value="ABORTED">
101 <xs:annotation>
102 <xs:documentation>
103 The job has been aborted, either by user request or by
104 the server because of lack or overuse of resources.
105 </xs:documentation>
106 </xs:annotation>
107 </xs:enumeration>
108 <xs:enumeration value="ARCHIVED">
109 <xs:annotation>
110 <xs:documentation>
111 The job has been archived by the server at destruction time. An archived job
112 may have deleted the results to reclaim resources, but must have job metadata preserved.
113 This is an alternative that the server may choose in contrast to completely destroying all record of the job.
114 </xs:documentation>
115 </xs:annotation>
116 </xs:enumeration>
117 </xs:restriction>
118 </xs:simpleType>
119 <xs:complexType name="JobSummary">
120 <xs:annotation>
121 <xs:documentation>
122 The complete representation of the state of a job
123 </xs:documentation>
124 </xs:annotation>
125 <xs:sequence>
126 <xs:element name="jobId" type="uws:JobIdentifier" />
127 <xs:element name="runId" type="xs:string" maxOccurs="1"
128 minOccurs="0"
129 >
130 <xs:annotation>
131 <xs:documentation>
132 this is a client supplied identifier - the UWS system
133 does nothing other than to return it as part of the
134 description of the job
135 </xs:documentation>
136 </xs:annotation>
137 </xs:element>
138 <xs:element name="ownerId" type="xs:string" nillable="true">
139 <xs:annotation>
140 <xs:documentation>
141 the owner (creator) of the job - this should be
142 expressed as a string that can be parsed in accordance
143 with IVOA security standards. If there was no
144 authenticated job creator then this should be set to
145 NULL.
146 </xs:documentation>
147 </xs:annotation>
148 </xs:element>
149 <xs:element name="phase" type="uws:ExecutionPhase">
150 <xs:annotation>
151 <xs:documentation>
152 the execution phase - returned at
153 /(jobs)/(jobid)/phase
154 </xs:documentation>
155 </xs:annotation>
156 </xs:element>
157 <xs:element name="quote" type="xs:dateTime" nillable="true"
158 maxOccurs="1" minOccurs="0"
159 >
160 <xs:annotation>
161 <xs:documentation>
162 A Quote predicts when the job is likely to complete -
163 returned at /(jobs)/(jobid)/quote "don't know" is
164 encoded by setting to the XML null value
165 xsi:nil="true"
166 </xs:documentation>
167 </xs:annotation>
168 </xs:element>
169 <xs:element name="startTime" type="xs:dateTime"
170 nillable="true"
171 >
172 <xs:annotation>
173 <xs:documentation>
174 The instant at which the job started execution.
175 </xs:documentation>
176 </xs:annotation>
177 </xs:element>
178 <xs:element name="endTime" type="xs:dateTime"
179 nillable="true"
180 >
181 <xs:annotation>
182 <xs:documentation>
183 The instant at which the job finished execution
184 </xs:documentation>
185 </xs:annotation>
186 </xs:element>
187 <xs:element name="executionDuration" type="xs:int"
188 nillable="false"
189 >
190 <xs:annotation>
191 <xs:documentation>
192 The duration (in seconds) for which the job should be
193 allowed to run - a value of 0 is intended to mean
194 unlimited - returned at
195 /(jobs)/(jobid)/executionduration
196 </xs:documentation>
197 </xs:annotation>
198 </xs:element>
199 <xs:element name="destruction" type="xs:dateTime"
200 nillable="true"
201 >
202 <xs:annotation>
203 <xs:documentation>
204 The time at which the whole job + records + results
205 will be destroyed. returned at
206 /(jobs)/(jobid)/destruction
207 </xs:documentation>
208 </xs:annotation>
209 </xs:element>
210 <xs:element ref="uws:parameters" maxOccurs="1" minOccurs="0">
211 <xs:annotation>
212 <xs:documentation>
213 The parameters to the job (where appropriate) can also
214 be retrieved at /(jobs)/(jobid)/parameters
215 </xs:documentation>
216 </xs:annotation>
217 </xs:element>
218 <xs:element ref="uws:results">
219 <xs:annotation>
220 <xs:documentation>
221 The results for the job - can also be retrieved at
222 /(jobs)/(jobid)/results
223 </xs:documentation>
224 </xs:annotation>
225 </xs:element>
226 <xs:element name="errorSummary" type="uws:ErrorSummary"
227 maxOccurs="1" minOccurs="0"
228 >
229 </xs:element>
230 <xs:element name="jobInfo" maxOccurs="1" minOccurs="0">
231 <xs:annotation>
232 <xs:documentation>
233 This is arbitrary information that can be added to the
234 job description by the UWS implementation.
235 </xs:documentation>
236 </xs:annotation>
237 <xs:complexType>
238 <xs:sequence>
239 <xs:any namespace="##any" processContents="lax"
240 minOccurs="0" maxOccurs="unbounded"
241 />
242 </xs:sequence>
243 </xs:complexType>
244 </xs:element>
245 </xs:sequence>
246 <xs:attribute name="version" type="uws:UWSVersion" use="required"/>
247 </xs:complexType>
248 <xs:simpleType name="JobIdentifier">
249 <xs:annotation>
250 <xs:documentation> The identifier for the job
251 </xs:documentation>
252 </xs:annotation>
253 <xs:restriction base="xs:string" />
254 </xs:simpleType>
255 <xs:simpleType name="UWSVersion">
256 <xs:annotation>
257 <xs:documentation>The version of the UWS standard that the server complies with.
258 </xs:documentation>
259 </xs:annotation>
260 <xs:restriction base="xs:string" />
261 </xs:simpleType>
262 <xs:element name="job" type="uws:JobSummary">
263 <xs:annotation>
264 <xs:documentation> This is the information that is returned
265 when a GET is made for a single job resource - i.e.
266 /(jobs)/(jobid)</xs:documentation>
267 </xs:annotation>
268 </xs:element>
269 <xs:element name="jobs">
270 <xs:annotation>
271 <xs:documentation> The list of job references returned at
272 /(jobs)</xs:documentation>
273 <xs:documentation>The list presented may be affected by the current securiity context and may be filtered</xs:documentation>
274 </xs:annotation>
275 <xs:complexType>
276 <xs:sequence>
277 <xs:element name="jobref" type="uws:ShortJobDescription"
278 maxOccurs="unbounded" minOccurs="0"
279 >
280 </xs:element>
281 </xs:sequence>
282 <xs:attribute name="version" type="uws:UWSVersion" use="required"/>
283 </xs:complexType>
284 </xs:element>
285 <xs:complexType name="ResultReference" mixed="false">
286 <xs:annotation>
287 <xs:documentation> A reference to a UWS result.
288 </xs:documentation>
289 </xs:annotation>
290 <xs:attribute name="id" type="xs:string" use="required"></xs:attribute>
291 <xs:attributeGroup ref="uws:reference"></xs:attributeGroup>
292 <xs:attribute name="size" type="xs:long" use="required" ></xs:attribute>
293 <xs:attribute name="mime-type" type="xs:string" use="required"></xs:attribute>
294 <xs:anyAttribute namespace="urn:uwscustom" processContents="lax" />
295 </xs:complexType>
296 <xs:element name="results">
297 <xs:annotation>
298 <xs:documentation> The element returned for
299 /(jobs)/(jobid)/results</xs:documentation>
300 </xs:annotation>
301 <xs:complexType>
302 <xs:sequence>
303 <xs:element name="result" type="uws:ResultReference"
304 maxOccurs="unbounded" minOccurs="0"
305 ></xs:element>
306 </xs:sequence>
307 </xs:complexType>
308 </xs:element>
309 <xs:complexType name="ErrorSummary">
310 <xs:annotation>
311 <xs:documentation>
312 A short summary of an error - a fuller representation of the
313 error may be retrieved from /(jobs)/(jobid)/error
314 </xs:documentation>
315 </xs:annotation>
316 <xs:sequence>
317 <xs:element name="message" type="xs:string"></xs:element>
318 </xs:sequence>
319 <xs:attribute name="type" type="uws:ErrorType" use="required">
320 <xs:annotation>
321 <xs:documentation>
322 characterization of the type of the error
323 </xs:documentation>
324 </xs:annotation>
325 </xs:attribute>
326 <xs:attribute name="hasDetail" type="xs:boolean" use="required">
327 <xs:annotation>
328 <xs:documentation>if true then there is a more detailed error message available at /(jobs)/(jobid)/error</xs:documentation>
329 </xs:annotation></xs:attribute>
330 </xs:complexType>
331 <xs:simpleType name="ErrorType">
332 <xs:restriction base="xs:string">
333 <xs:enumeration value="transient"></xs:enumeration>
334 <xs:enumeration value="fatal"></xs:enumeration>
335 </xs:restriction>
336 </xs:simpleType>
337 <xs:complexType name="Parameter" mixed="true">
338 <xs:annotation>
339 <xs:documentation> the list of input parameters to the job - if
340 the job description language does not naturally have
341 parameters, then this list should contain one element which
342 is the content of the original POST that created the job.
343 </xs:documentation>
344 </xs:annotation>
345 <xs:attribute name="byReference" type="xs:boolean"
346 default="false"
347 >
348 <xs:annotation>
349 <xs:documentation> if this attribute is true then the
350 content of the parameter represents a URL to retrieve the
351 actual parameter value.</xs:documentation>
352 <xs:documentation> It is up to the implementation to decide
353 if a parameter value cannot be returned directly as the
354 content - the basic rule is that the representation of
355 the parameter must allow the whole job element to be
356 valid XML. If this cannot be achieved then the parameter
357 value must be returned by reference.</xs:documentation>
358 </xs:annotation>
359 </xs:attribute>
360 <xs:attribute name="id" type="xs:string" use="required">
361 <xs:annotation>
362 <xs:documentation> the identifier for the parameter
363 </xs:documentation>
364 </xs:annotation>
365 </xs:attribute>
366 <xs:attribute name="isPost" type="xs:boolean"></xs:attribute>
367 </xs:complexType>
368 <xs:element name="parameters">
369 <xs:complexType>
370 <xs:sequence>
371 <xs:element name="parameter" type="uws:Parameter"
372 maxOccurs="unbounded" minOccurs="0"
373 ></xs:element>
374 </xs:sequence>
375 </xs:complexType>
376 </xs:element>
377 </xs:schema>
378
379 <!-- -->

Properties

Name Value
svn:keywords LastChangedDate LastChangedRevision HeadURL Id
svn:mime-type text/plain

msdemlei@ari.uni-heidelberg.de
ViewVC Help
Powered by ViewVC 1.1.26