Next version of JABA
[jabaws.git] / webservices / compbio / ws / server / resource / MuscleWS_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="align" type="tns:align"/>
15
16   <xs:element name="alignResponse" type="tns:alignResponse"/>
17
18   <xs:element name="cancelJob" type="tns:cancelJob"/>
19
20   <xs:element name="cancelJobResponse" type="tns:cancelJobResponse"/>
21
22   <xs:element name="customAlign" type="tns:customAlign"/>
23
24   <xs:element name="customAlignResponse" type="tns:customAlignResponse"/>
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="presetAlign" type="tns:presetAlign"/>
53
54   <xs:element name="presetAlignResponse" type="tns:presetAlignResponse"/>
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="pullExecStatistics">
65     <xs:sequence>
66       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
67       <xs:element name="position" type="xs:long"/>
68     </xs:sequence>
69   </xs:complexType>
70
71   <xs:complexType name="pullExecStatisticsResponse">
72     <xs:sequence>
73       <xs:element name="return" type="tns:chunkHolder" minOccurs="0"/>
74     </xs:sequence>
75   </xs:complexType>
76
77   <xs:complexType name="chunkHolder">
78     <xs:sequence>
79       <xs:element name="chunk" type="xs:string" minOccurs="0"/>
80       <xs:element name="position" type="xs:long"/>
81     </xs:sequence>
82   </xs:complexType>
83
84   <xs:complexType name="align">
85     <xs:sequence>
86       <xs:element name="fastaSequences" type="tns:fastaSequence" minOccurs="0" maxOccurs="unbounded"/>
87     </xs:sequence>
88   </xs:complexType>
89
90   <xs:complexType name="fastaSequence">
91     <xs:sequence>
92       <xs:element name="id" type="xs:string" minOccurs="0"/>
93       <xs:element name="sequence" type="xs:string" minOccurs="0"/>
94     </xs:sequence>
95   </xs:complexType>
96
97   <xs:complexType name="alignResponse">
98     <xs:sequence>
99       <xs:element name="return" type="xs:string" minOccurs="0"/>
100     </xs:sequence>
101   </xs:complexType>
102
103   <xs:complexType name="UnsupportedRuntimeException">
104     <xs:sequence>
105       <xs:element name="message" type="xs:string" minOccurs="0"/>
106     </xs:sequence>
107   </xs:complexType>
108
109   <xs:complexType name="LimitExceededException">
110     <xs:sequence>
111       <xs:element name="actualNumberofSequences" type="xs:int"/>
112       <xs:element name="message" type="xs:string" minOccurs="0"/>
113       <xs:element name="numberOfSequencesAllowed" type="xs:int"/>
114       <xs:element name="sequenceLenghtActual" type="xs:int"/>
115       <xs:element name="sequenceLenghtAllowed" type="xs:int"/>
116     </xs:sequence>
117   </xs:complexType>
118
119   <xs:complexType name="JobSubmissionException">
120     <xs:sequence>
121       <xs:element name="message" type="xs:string" minOccurs="0"/>
122     </xs:sequence>
123   </xs:complexType>
124
125   <xs:complexType name="customAlign">
126     <xs:sequence>
127       <xs:element name="fastaSequences" type="tns:fastaSequence" minOccurs="0" maxOccurs="unbounded"/>
128       <xs:element name="options" type="tns:option" minOccurs="0" maxOccurs="unbounded"/>
129     </xs:sequence>
130   </xs:complexType>
131
132   <xs:complexType name="option">
133     <xs:sequence>
134       <xs:element name="description" type="xs:string"/>
135       <xs:element name="optionNames" type="xs:string" maxOccurs="unbounded"/>
136       <xs:element name="name" type="xs:string"/>
137       <xs:element name="furtherDetails" type="xs:anyURI" minOccurs="0"/>
138       <xs:element name="defaultValue" type="xs:string" minOccurs="0"/>
139     </xs:sequence>
140     <xs:attribute name="isRequired" type="xs:boolean" use="required"/>
141   </xs:complexType>
142
143   <xs:complexType name="customAlignResponse">
144     <xs:sequence>
145       <xs:element name="return" type="xs:string" minOccurs="0"/>
146     </xs:sequence>
147   </xs:complexType>
148
149   <xs:complexType name="WrongParameterException">
150     <xs:sequence>
151       <xs:element name="message" type="xs:string" minOccurs="0"/>
152     </xs:sequence>
153   </xs:complexType>
154
155   <xs:complexType name="cancelJob">
156     <xs:sequence>
157       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
158     </xs:sequence>
159   </xs:complexType>
160
161   <xs:complexType name="cancelJobResponse">
162     <xs:sequence>
163       <xs:element name="return" type="xs:boolean"/>
164     </xs:sequence>
165   </xs:complexType>
166
167   <xs:complexType name="getLimits">
168     <xs:sequence/>
169   </xs:complexType>
170
171   <xs:complexType name="getLimitsResponse">
172     <xs:sequence>
173       <xs:element name="return" type="tns:limitsManager" minOccurs="0"/>
174     </xs:sequence>
175   </xs:complexType>
176
177   <xs:complexType name="limitsManager">
178     <xs:sequence>
179       <xs:element name="runnerClassName" type="xs:string" minOccurs="0"/>
180       <xs:element name="limit" type="tns:limit" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
181     </xs:sequence>
182   </xs:complexType>
183
184   <xs:complexType name="limit">
185     <xs:sequence>
186       <xs:element name="preset" type="xs:string" minOccurs="0"/>
187       <xs:element name="seqNumber" type="xs:int"/>
188       <xs:element name="seqLength" type="xs:int"/>
189     </xs:sequence>
190     <xs:attribute name="isDefault" type="xs:boolean" use="required"/>
191   </xs:complexType>
192
193   <xs:complexType name="getLimit">
194     <xs:sequence>
195       <xs:element name="presetName" type="xs:string" minOccurs="0"/>
196     </xs:sequence>
197   </xs:complexType>
198
199   <xs:complexType name="getLimitResponse">
200     <xs:sequence>
201       <xs:element name="return" type="tns:limit" minOccurs="0"/>
202     </xs:sequence>
203   </xs:complexType>
204
205   <xs:complexType name="getPresets">
206     <xs:sequence/>
207   </xs:complexType>
208
209   <xs:complexType name="getPresetsResponse">
210     <xs:sequence>
211       <xs:element name="return" type="tns:presetManager" minOccurs="0"/>
212     </xs:sequence>
213   </xs:complexType>
214
215   <xs:complexType name="presetManager">
216     <xs:sequence>
217       <xs:element name="runnerClassName" type="xs:string"/>
218       <xs:element name="preset" type="tns:preset" maxOccurs="unbounded"/>
219     </xs:sequence>
220   </xs:complexType>
221
222   <xs:complexType name="preset">
223     <xs:sequence>
224       <xs:element name="name" type="xs:string"/>
225       <xs:element name="description" type="xs:string" minOccurs="0"/>
226       <xs:element name="optlist" minOccurs="0">
227         <xs:complexType>
228           <xs:sequence>
229             <xs:element name="option" type="xs:string" maxOccurs="unbounded"/>
230           </xs:sequence>
231         </xs:complexType>
232       </xs:element>
233     </xs:sequence>
234   </xs:complexType>
235
236   <xs:complexType name="presetAlign">
237     <xs:sequence>
238       <xs:element name="fastaSequences" type="tns:fastaSequence" minOccurs="0" maxOccurs="unbounded"/>
239       <xs:element name="preset" type="tns:preset" minOccurs="0"/>
240     </xs:sequence>
241   </xs:complexType>
242
243   <xs:complexType name="presetAlignResponse">
244     <xs:sequence>
245       <xs:element name="return" type="xs:string" minOccurs="0"/>
246     </xs:sequence>
247   </xs:complexType>
248
249   <xs:complexType name="getResult">
250     <xs:sequence>
251       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
252     </xs:sequence>
253   </xs:complexType>
254
255   <xs:complexType name="getResultResponse">
256     <xs:sequence>
257       <xs:element name="return" type="tns:alignment" minOccurs="0"/>
258     </xs:sequence>
259   </xs:complexType>
260
261   <xs:complexType name="alignment" final="extension restriction">
262     <xs:sequence>
263       <xs:element name="metadata" type="tns:alignmentMetadata" minOccurs="0"/>
264       <xs:element name="sequences" type="tns:fastaSequence" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
265     </xs:sequence>
266   </xs:complexType>
267
268   <xs:complexType name="alignmentMetadata">
269     <xs:sequence>
270       <xs:element name="program" type="tns:program" minOccurs="0"/>
271       <xs:element name="gapchar" type="xs:unsignedShort"/>
272     </xs:sequence>
273   </xs:complexType>
274
275   <xs:complexType name="ResultNotAvailableException">
276     <xs:sequence>
277       <xs:element name="message" type="xs:string" minOccurs="0"/>
278     </xs:sequence>
279   </xs:complexType>
280
281   <xs:complexType name="getRunnerOptions">
282     <xs:sequence/>
283   </xs:complexType>
284
285   <xs:complexType name="getRunnerOptionsResponse">
286     <xs:sequence>
287       <xs:element name="return" type="tns:runnerConfig" minOccurs="0"/>
288     </xs:sequence>
289   </xs:complexType>
290
291   <xs:complexType name="runnerConfig">
292     <xs:sequence>
293       <xs:element name="options" type="tns:option" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
294       <xs:element name="parameters" type="tns:parameter" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
295       <xs:element name="prmSeparator" type="xs:string" minOccurs="0"/>
296       <xs:element name="runnerClassName" type="xs:string"/>
297     </xs:sequence>
298   </xs:complexType>
299
300   <xs:complexType name="parameter">
301     <xs:complexContent>
302       <xs:extension base="tns:option">
303         <xs:sequence>
304           <xs:element name="possibleValues" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
305           <xs:element name="validValue" type="tns:valueConstrain" minOccurs="0"/>
306         </xs:sequence>
307       </xs:extension>
308     </xs:complexContent>
309   </xs:complexType>
310
311   <xs:complexType name="valueConstrain">
312     <xs:sequence>
313       <xs:element name="type" type="tns:type"/>
314       <xs:element name="max" type="xs:string" minOccurs="0"/>
315       <xs:element name="min" type="xs:string" minOccurs="0"/>
316     </xs:sequence>
317   </xs:complexType>
318
319   <xs:complexType name="getJobStatus">
320     <xs:sequence>
321       <xs:element name="jobId" type="xs:string" minOccurs="0"/>
322     </xs:sequence>
323   </xs:complexType>
324
325   <xs:complexType name="getJobStatusResponse">
326     <xs:sequence>
327       <xs:element name="return" type="tns:jobStatus" minOccurs="0"/>
328     </xs:sequence>
329   </xs:complexType>
330
331   <xs:simpleType name="program">
332     <xs:restriction base="xs:string">
333       <xs:enumeration value="CLUSTAL"/>
334       <xs:enumeration value="MAFFT"/>
335       <xs:enumeration value="MUSCLE"/>
336       <xs:enumeration value="Tcoffee"/>
337       <xs:enumeration value="Probcons"/>
338     </xs:restriction>
339   </xs:simpleType>
340
341   <xs:simpleType name="type">
342     <xs:restriction base="xs:string">
343       <xs:enumeration value="Integer"/>
344       <xs:enumeration value="Float"/>
345     </xs:restriction>
346   </xs:simpleType>
347
348   <xs:simpleType name="jobStatus">
349     <xs:restriction base="xs:string">
350       <xs:enumeration value="PENDING"/>
351       <xs:enumeration value="RUNNING"/>
352       <xs:enumeration value="CANCELLED"/>
353       <xs:enumeration value="FINISHED"/>
354       <xs:enumeration value="FAILED"/>
355       <xs:enumeration value="UNDEFINED"/>
356       <xs:enumeration value="STARTED"/>
357       <xs:enumeration value="SUBMITTED"/>
358       <xs:enumeration value="COLLECTED"/>
359     </xs:restriction>
360   </xs:simpleType>
361 </xs:schema>
362