5c6f88dc7535dc582c6aac35ee0a7f4702b953e1
[jabaws.git] / webservices / compbio / ws / server / resource / RNAalifoldWS_schema1.xsd
1 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2 <xs:schema version="1.0" targetNamespace="http://msa.data.compbio/01/01/2010/" xmlns:tns="http://msa.data.compbio/01/01/2010/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
4   <xs:element name="JobSubmissionException" type="tns:JobSubmissionException"/>
5
6   <xs:element name="LimitExceededException" type="tns:LimitExceededException"/>
7
8   <xs:element name="ResultNotAvailableException" type="tns:ResultNotAvailableException"/>
9
10   <xs:element name="UnsupportedRuntimeException" type="tns:UnsupportedRuntimeException"/>
11
12   <xs:element name="WrongParameterException" type="tns:WrongParameterException"/>
13
14   <xs:element name="cancelJob" type="tns:cancelJob"/>
15
16   <xs:element name="cancelJobResponse" type="tns:cancelJobResponse"/>
17
18   <xs:element name="customFold" type="tns:customFold"/>
19
20   <xs:element name="customFoldResponse" type="tns:customFoldResponse"/>
21
22   <xs:element name="fold" type="tns:fold"/>
23
24   <xs:element name="foldResponse" type="tns:foldResponse"/>
25
26   <xs:element name="getJobStatus" type="tns:getJobStatus"/>
27
28   <xs:element name="getJobStatusResponse" type="tns:getJobStatusResponse"/>
29
30   <xs:element name="getLimit" type="tns:getLimit"/>
31
32   <xs:element name="getLimitResponse" type="tns:getLimitResponse"/>
33
34   <xs:element name="getLimits" type="tns:getLimits"/>
35
36   <xs:element name="getLimitsResponse" type="tns:getLimitsResponse"/>
37
38   <xs:element name="getPresets" type="tns:getPresets"/>
39
40   <xs:element name="getPresetsResponse" type="tns:getPresetsResponse"/>
41
42   <xs:element name="getResult" type="tns:getResult"/>
43
44   <xs:element name="getResultResponse" type="tns:getResultResponse"/>
45
46   <xs:element name="getRunnerOptions" type="tns:getRunnerOptions"/>
47
48   <xs:element name="getRunnerOptionsResponse" type="tns:getRunnerOptionsResponse"/>
49
50   <xs:element name="limits" type="tns:limitsManager"/>
51
52   <xs:element name="presetFold" type="tns:presetFold"/>
53
54   <xs:element name="presetFoldResponse" type="tns:presetFoldResponse"/>
55
56   <xs:element name="presets" type="tns:presetManager"/>
57
58   <xs:element name="pullExecStatistics" type="tns:pullExecStatistics"/>
59
60   <xs:element name="pullExecStatisticsResponse" type="tns:pullExecStatisticsResponse"/>
61
62   <xs:element name="runnerConfig" type="tns:runnerConfig"/>
63
64   <xs:complexType name="getJobStatus">
65     <xs:sequence>
66       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
67     </xs:sequence>
68   </xs:complexType>
69
70   <xs:complexType name="getJobStatusResponse">
71     <xs:sequence>
72       <xs:element name="return" type="tns:jobStatus" minOccurs="0"/>
73     </xs:sequence>
74   </xs:complexType>
75
76   <xs:complexType name="getRunnerOptions">
77     <xs:sequence/>
78   </xs:complexType>
79
80   <xs:complexType name="getRunnerOptionsResponse">
81     <xs:sequence>
82       <xs:element name="return" type="tns:runnerConfig" minOccurs="0"/>
83     </xs:sequence>
84   </xs:complexType>
85
86   <xs:complexType name="runnerConfig">
87     <xs:sequence>
88       <xs:element name="options" type="tns:option" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
89       <xs:element name="parameters" type="tns:parameter" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
90       <xs:element name="prmSeparator" type="xs:string" minOccurs="0"/>
91       <xs:element name="runnerClassName" type="xs:string"/>
92     </xs:sequence>
93   </xs:complexType>
94
95   <xs:complexType name="option">
96     <xs:sequence>
97       <xs:element name="description" type="xs:string"/>
98       <xs:element name="optionNames" type="xs:string" maxOccurs="unbounded"/>
99       <xs:element name="name" type="xs:string"/>
100       <xs:element name="furtherDetails" type="xs:anyURI" minOccurs="0"/>
101       <xs:element name="defaultValue" type="xs:string" minOccurs="0"/>
102     </xs:sequence>
103     <xs:attribute name="isRequired" type="xs:boolean" use="required"/>
104   </xs:complexType>
105
106   <xs:complexType name="parameter">
107     <xs:complexContent>
108       <xs:extension base="tns:option">
109         <xs:sequence>
110           <xs:element name="possibleValues" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
111           <xs:element name="validValue" type="tns:valueConstrain" minOccurs="0"/>
112         </xs:sequence>
113       </xs:extension>
114     </xs:complexContent>
115   </xs:complexType>
116
117   <xs:complexType name="valueConstrain">
118     <xs:sequence>
119       <xs:element name="type" type="tns:type"/>
120       <xs:element name="max" type="xs:string" minOccurs="0"/>
121       <xs:element name="min" type="xs:string" minOccurs="0"/>
122     </xs:sequence>
123   </xs:complexType>
124
125   <xs:complexType name="fold">
126     <xs:sequence>
127       <xs:element name="alignment" type="tns:alignment" minOccurs="0"/>
128     </xs:sequence>
129   </xs:complexType>
130
131   <xs:complexType name="alignment" final="extension restriction">
132     <xs:sequence>
133       <xs:element name="metadata" type="tns:alignmentMetadata" minOccurs="0"/>
134       <xs:element name="sequences" type="tns:fastaSequence" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
135     </xs:sequence>
136   </xs:complexType>
137
138   <xs:complexType name="alignmentMetadata">
139     <xs:sequence>
140       <xs:element name="program" type="tns:program" minOccurs="0"/>
141       <xs:element name="gapchar" type="xs:unsignedShort"/>
142     </xs:sequence>
143   </xs:complexType>
144
145   <xs:complexType name="fastaSequence">
146     <xs:sequence>
147       <xs:element name="id" type="xs:string" minOccurs="0"/>
148       <xs:element name="sequence" type="xs:string" minOccurs="0"/>
149     </xs:sequence>
150   </xs:complexType>
151
152   <xs:complexType name="foldResponse">
153     <xs:sequence>
154       <xs:element name="return" type="xs:string" minOccurs="0"/>
155     </xs:sequence>
156   </xs:complexType>
157
158   <xs:complexType name="UnsupportedRuntimeException">
159     <xs:sequence>
160       <xs:element name="message" type="xs:string" minOccurs="0"/>
161     </xs:sequence>
162   </xs:complexType>
163
164   <xs:complexType name="LimitExceededException">
165     <xs:sequence>
166       <xs:element name="actualNumberofSequences" type="xs:int"/>
167       <xs:element name="message" type="xs:string" minOccurs="0"/>
168       <xs:element name="numberOfSequencesAllowed" type="xs:int"/>
169       <xs:element name="sequenceLenghtActual" type="xs:int"/>
170       <xs:element name="sequenceLenghtAllowed" type="xs:int"/>
171     </xs:sequence>
172   </xs:complexType>
173
174   <xs:complexType name="JobSubmissionException">
175     <xs:sequence>
176       <xs:element name="message" type="xs:string" minOccurs="0"/>
177     </xs:sequence>
178   </xs:complexType>
179
180   <xs:complexType name="getResult">
181     <xs:sequence>
182       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
183     </xs:sequence>
184   </xs:complexType>
185
186   <xs:complexType name="getResultResponse">
187     <xs:sequence>
188       <xs:element name="return" type="tns:rnAstruct" minOccurs="0"/>
189     </xs:sequence>
190   </xs:complexType>
191
192   <xs:complexType name="rnAstruct" final="extension restriction">
193     <xs:sequence>
194       <xs:element name="sequence" type="xs:string" minOccurs="0"/>
195       <xs:element name="structure" type="xs:string" minOccurs="0"/>
196       <xs:element name="minEnergy" type="xs:float" minOccurs="0"/>
197       <xs:element name="energySum1" type="xs:float" minOccurs="0"/>
198       <xs:element name="energySum2" type="xs:float" minOccurs="0"/>
199     </xs:sequence>
200   </xs:complexType>
201
202   <xs:complexType name="ResultNotAvailableException">
203     <xs:sequence>
204       <xs:element name="message" type="xs:string" minOccurs="0"/>
205     </xs:sequence>
206   </xs:complexType>
207
208   <xs:complexType name="customFold">
209     <xs:sequence>
210       <xs:element name="alignment" type="tns:alignment" minOccurs="0"/>
211       <xs:element name="options" type="tns:option" minOccurs="0" maxOccurs="unbounded"/>
212     </xs:sequence>
213   </xs:complexType>
214
215   <xs:complexType name="customFoldResponse">
216     <xs:sequence>
217       <xs:element name="return" type="xs:string" minOccurs="0"/>
218     </xs:sequence>
219   </xs:complexType>
220
221   <xs:complexType name="WrongParameterException">
222     <xs:sequence>
223       <xs:element name="message" type="xs:string" minOccurs="0"/>
224     </xs:sequence>
225   </xs:complexType>
226
227   <xs:complexType name="getLimits">
228     <xs:sequence/>
229   </xs:complexType>
230
231   <xs:complexType name="getLimitsResponse">
232     <xs:sequence>
233       <xs:element name="return" type="tns:limitsManager" minOccurs="0"/>
234     </xs:sequence>
235   </xs:complexType>
236
237   <xs:complexType name="limitsManager">
238     <xs:sequence>
239       <xs:element name="runnerClassName" type="xs:string" minOccurs="0"/>
240       <xs:element name="limit" type="tns:limit" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
241     </xs:sequence>
242   </xs:complexType>
243
244   <xs:complexType name="limit">
245     <xs:sequence>
246       <xs:element name="preset" type="xs:string" minOccurs="0"/>
247       <xs:element name="seqNumber" type="xs:int"/>
248       <xs:element name="seqLength" type="xs:int"/>
249     </xs:sequence>
250     <xs:attribute name="isDefault" type="xs:boolean" use="required"/>
251   </xs:complexType>
252
253   <xs:complexType name="getPresets">
254     <xs:sequence/>
255   </xs:complexType>
256
257   <xs:complexType name="getPresetsResponse">
258     <xs:sequence>
259       <xs:element name="return" type="tns:presetManager" minOccurs="0"/>
260     </xs:sequence>
261   </xs:complexType>
262
263   <xs:complexType name="presetManager">
264     <xs:sequence>
265       <xs:element name="runnerClassName" type="xs:string"/>
266       <xs:element name="preset" type="tns:preset" maxOccurs="unbounded"/>
267     </xs:sequence>
268   </xs:complexType>
269
270   <xs:complexType name="preset">
271     <xs:sequence>
272       <xs:element name="name" type="xs:string"/>
273       <xs:element name="description" type="xs:string" minOccurs="0"/>
274       <xs:element name="optlist" minOccurs="0">
275         <xs:complexType>
276           <xs:sequence>
277             <xs:element name="option" type="xs:string" maxOccurs="unbounded"/>
278           </xs:sequence>
279         </xs:complexType>
280       </xs:element>
281     </xs:sequence>
282   </xs:complexType>
283
284   <xs:complexType name="getLimit">
285     <xs:sequence>
286       <xs:element name="presetName" type="xs:string" minOccurs="0"/>
287     </xs:sequence>
288   </xs:complexType>
289
290   <xs:complexType name="getLimitResponse">
291     <xs:sequence>
292       <xs:element name="return" type="tns:limit" minOccurs="0"/>
293     </xs:sequence>
294   </xs:complexType>
295
296   <xs:complexType name="cancelJob">
297     <xs:sequence>
298       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
299     </xs:sequence>
300   </xs:complexType>
301
302   <xs:complexType name="cancelJobResponse">
303     <xs:sequence>
304       <xs:element name="return" type="xs:boolean"/>
305     </xs:sequence>
306   </xs:complexType>
307
308   <xs:complexType name="pullExecStatistics">
309     <xs:sequence>
310       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
311       <xs:element name="position" type="xs:long"/>
312     </xs:sequence>
313   </xs:complexType>
314
315   <xs:complexType name="pullExecStatisticsResponse">
316     <xs:sequence>
317       <xs:element name="return" type="tns:chunkHolder" minOccurs="0"/>
318     </xs:sequence>
319   </xs:complexType>
320
321   <xs:complexType name="chunkHolder">
322     <xs:sequence>
323       <xs:element name="chunk" type="xs:string" minOccurs="0"/>
324       <xs:element name="position" type="xs:long"/>
325     </xs:sequence>
326   </xs:complexType>
327
328   <xs:complexType name="presetFold">
329     <xs:sequence>
330       <xs:element name="alignment" type="tns:alignment" minOccurs="0"/>
331       <xs:element name="preset" type="tns:preset" minOccurs="0"/>
332     </xs:sequence>
333   </xs:complexType>
334
335   <xs:complexType name="presetFoldResponse">
336     <xs:sequence>
337       <xs:element name="return" type="xs:string" minOccurs="0"/>
338     </xs:sequence>
339   </xs:complexType>
340
341   <xs:simpleType name="jobStatus">
342     <xs:restriction base="xs:string">
343       <xs:enumeration value="PENDING"/>
344       <xs:enumeration value="RUNNING"/>
345       <xs:enumeration value="CANCELLED"/>
346       <xs:enumeration value="FINISHED"/>
347       <xs:enumeration value="FAILED"/>
348       <xs:enumeration value="UNDEFINED"/>
349       <xs:enumeration value="STARTED"/>
350       <xs:enumeration value="SUBMITTED"/>
351       <xs:enumeration value="COLLECTED"/>
352     </xs:restriction>
353   </xs:simpleType>
354
355   <xs:simpleType name="type">
356     <xs:restriction base="xs:string">
357       <xs:enumeration value="Integer"/>
358       <xs:enumeration value="Float"/>
359     </xs:restriction>
360   </xs:simpleType>
361
362   <xs:simpleType name="program">
363     <xs:restriction base="xs:string">
364       <xs:enumeration value="CLUSTAL"/>
365       <xs:enumeration value="MAFFT"/>
366       <xs:enumeration value="MUSCLE"/>
367       <xs:enumeration value="Tcoffee"/>
368       <xs:enumeration value="Probcons"/>
369     </xs:restriction>
370   </xs:simpleType>
371 </xs:schema>
372