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

Properties

Name Value
svn:mime-type text/plain

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