source: xssim/trunk/simulator/schemas/grms3/GrmsResourceRequirementsSchema.xsd @ 104

Revision 104, 24.0 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:executable set to *
  • Property svn:mime-type set to text/plain
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- edited with XMLSpy v2005 U (http://www.xmlspy.com) by Ariel Oleksiak (PSNC) -->
3<!-- edited with XMLSPY v5 rel. 4 U (http://www.xmlspy.com) by Tomasz Piontek (Instytut Chemii Bioorganicznej PAN) -->
4<!--Job Description Schema for Third Edition GRMS -->
5<!--version 0.1.0-->
6<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
7        <xs:simpleType name="taskStatesName">
8                <xs:restriction base="xs:string">
9                        <xs:enumeration value="QUEUED"/>
10                        <xs:enumeration value="PREPROCESSING"/>
11                        <xs:enumeration value="PENDING"/>
12                        <xs:enumeration value="RUNNING"/>
13                        <xs:enumeration value="STOPPED"/>
14                        <xs:enumeration value="POSTPROCESSING"/>
15                        <xs:enumeration value="SUSPENDED"/>
16                        <xs:enumeration value="FINISHED"/>
17                        <xs:enumeration value="CANCELED"/>
18                        <xs:enumeration value="FAILED"/>
19                </xs:restriction>
20        </xs:simpleType>
21        <xs:element name="resourceRequirements">
22                <xs:annotation>
23                        <xs:documentation>Resource Requirements for Gridge Resource Management System</xs:documentation>
24                </xs:annotation>
25                <xs:complexType>
26                        <xs:sequence>
27                                <xs:element name="task" maxOccurs="unbounded">
28                                        <xs:complexType>
29                                                <xs:sequence>
30                                                        <xs:element name="description" type="xs:string" minOccurs="0"/>
31                                                        <xs:element name="proxyInfo" type="proxyInfoType" minOccurs="0"/>
32                                                        <xs:element name="candidateHosts" type="hostCandidatesType" minOccurs="0">
33                                                                <xs:annotation>
34                                                                        <xs:documentation>List of hosts used by GRMS in resource discovery process</xs:documentation>
35                                                                </xs:annotation>
36                                                        </xs:element>
37                                                        <xs:element name="requirements" minOccurs="0">
38                                                                <xs:complexType>
39                                                                        <xs:sequence>
40                                                                                <xs:element name="resourceRequirements" minOccurs="0">
41                                                                                        <xs:annotation>
42                                                                                                <xs:documentation>Description of resources</xs:documentation>
43                                                                                        </xs:annotation>
44                                                                                        <xs:complexType>
45                                                                                                <xs:sequence>
46                                                                                                        <xs:element name="computingResource" minOccurs="0" maxOccurs="unbounded">
47                                                                                                                <xs:annotation>
48                                                                                                                        <xs:documentation>Computing resource requirements</xs:documentation>
49                                                                                                                </xs:annotation>
50                                                                                                                <xs:complexType>
51                                                                                                                        <xs:complexContent>
52                                                                                                                                <xs:extension base="computingResourceType"/>
53                                                                                                                        </xs:complexContent>
54                                                                                                                </xs:complexType>
55                                                                                                        </xs:element>
56                                                                                                        <xs:element name="preferences" type="preferencesType" minOccurs="0"/>
57                                                                                                </xs:sequence>
58                                                                                        </xs:complexType>
59                                                                                </xs:element>
60                                                                                <xs:element name="topology" minOccurs="0" maxOccurs="unbounded">
61                                                                                        <xs:annotation>
62                                                                                                <xs:documentation>Processes topology definition</xs:documentation>
63                                                                                        </xs:annotation>
64                                                                                        <xs:complexType>
65                                                                                                <xs:sequence>
66                                                                                                        <xs:element name="group" minOccurs="0" maxOccurs="unbounded">
67                                                                                                                <xs:annotation>
68                                                                                                                        <xs:documentation>Groups of processes definition</xs:documentation>
69                                                                                                                </xs:annotation>
70                                                                                                                <xs:complexType>
71                                                                                                                        <xs:sequence>
72                                                                                                                                <xs:element name="processesConnection" minOccurs="0">
73                                                                                                                                        <xs:annotation>
74                                                                                                                                                <xs:documentation>Requirements for network parameters of connection among processes in group</xs:documentation>
75                                                                                                                                        </xs:annotation>
76                                                                                                                                        <xs:complexType>
77                                                                                                                                                <xs:sequence>
78                                                                                                                                                        <xs:element name="networkResource" type="networkResourceType" maxOccurs="unbounded"/>
79                                                                                                                                                </xs:sequence>
80                                                                                                                                        </xs:complexType>
81                                                                                                                                </xs:element>
82                                                                                                                                <xs:element name="groupConnection" minOccurs="0" maxOccurs="unbounded">
83                                                                                                                                        <xs:annotation>
84                                                                                                                                                <xs:documentation>Requirements for network parameters of connection between current group and group with provided id</xs:documentation>
85                                                                                                                                        </xs:annotation>
86                                                                                                                                        <xs:complexType>
87                                                                                                                                                <xs:sequence>
88                                                                                                                                                        <xs:element name="networkResource" type="networkResourceType" maxOccurs="unbounded"/>
89                                                                                                                                                </xs:sequence>
90                                                                                                                                                <xs:attribute name="endpointGroupId" type="xs:string" use="required"/>
91                                                                                                                                        </xs:complexType>
92                                                                                                                                </xs:element>
93                                                                                                                        </xs:sequence>
94                                                                                                                        <xs:attribute name="groupId" type="xs:string" use="required"/>
95                                                                                                                </xs:complexType>
96                                                                                                        </xs:element>
97                                                                                                        <xs:element name="processes" maxOccurs="unbounded">
98                                                                                                                <xs:annotation>
99                                                                                                                        <xs:documentation>Processes definition</xs:documentation>
100                                                                                                                </xs:annotation>
101                                                                                                                <xs:complexType>
102                                                                                                                        <xs:sequence>
103                                                                                                                                <xs:element name="groupIdReference" type="xs:string" minOccurs="0" maxOccurs="unbounded">
104                                                                                                                                        <xs:annotation>
105                                                                                                                                                <xs:documentation>Ids of group that the process belongs</xs:documentation>
106                                                                                                                                        </xs:annotation>
107                                                                                                                                </xs:element>
108                                                                                                                                <xs:element name="processesCount" type="countType" minOccurs="0">
109                                                                                                                                        <xs:annotation>
110                                                                                                                                                <xs:documentation>Number of process with specified resources requirements</xs:documentation>
111                                                                                                                                        </xs:annotation>
112                                                                                                                                </xs:element>
113                                                                                                                                <xs:element name="resourceRequirements" minOccurs="0">
114                                                                                                                                        <xs:annotation>
115                                                                                                                                                <xs:documentation>Resource requirements of defined processes</xs:documentation>
116                                                                                                                                        </xs:annotation>
117                                                                                                                                        <xs:complexType>
118                                                                                                                                                <xs:sequence>
119                                                                                                                                                        <xs:element name="computingResource" type="computingResourceExtType" minOccurs="0" maxOccurs="unbounded">
120                                                                                                                                                                <xs:annotation>
121                                                                                                                                                                        <xs:documentation>Definition of resource reqiurements for processes</xs:documentation>
122                                                                                                                                                                </xs:annotation>
123                                                                                                                                                        </xs:element>
124                                                                                                                                                        <xs:element name="preferences" type="preferencesType" minOccurs="0"/>
125                                                                                                                                                </xs:sequence>
126                                                                                                                                        </xs:complexType>
127                                                                                                                                </xs:element>
128                                                                                                                        </xs:sequence>
129                                                                                                                        <xs:attribute name="processesId" type="xs:string" use="optional"/>
130                                                                                                                </xs:complexType>
131                                                                                                        </xs:element>
132                                                                                                </xs:sequence>
133                                                                                        </xs:complexType>
134                                                                                </xs:element>
135                                                                        </xs:sequence>
136                                                                </xs:complexType>
137                                                        </xs:element>
138                                                        <xs:element name="execution" type="executionType" minOccurs="0">
139                                                        </xs:element>
140                                                        <xs:element name="executionTime" type="executionTimeType" minOccurs="0"/>
141                                                        <xs:element name="workflow" minOccurs="0">
142                                                                <xs:complexType>
143                                                                        <xs:sequence>
144                                                                                <xs:element name="parent" maxOccurs="unbounded">
145                                                                                        <xs:complexType>
146                                                                                                <xs:simpleContent>
147                                                                                                        <xs:extension base="xs:string">
148                                                                                                                <xs:attribute name="runSameHost" type="xs:boolean" use="optional" default="false"/>
149                                                                                                                <xs:attribute name="triggerState" type="taskStatesName" use="optional" default="FINISHED"/>
150                                                                                                        </xs:extension>
151                                                                                                </xs:simpleContent>
152                                                                                        </xs:complexType>
153                                                                                </xs:element>
154                                                                        </xs:sequence>
155                                                                        <xs:attribute name="parentStates" use="optional" default="AND">
156                                                                                <xs:simpleType>
157                                                                                        <xs:restriction base="xs:string">
158                                                                                                <xs:enumeration value="AND"/>
159                                                                                                <xs:enumeration value="OR"/>
160                                                                                        </xs:restriction>
161                                                                                </xs:simpleType>
162                                                                        </xs:attribute>
163                                                                </xs:complexType>
164                                                        </xs:element>
165                                                </xs:sequence>
166                                                <xs:attribute name="jobId" type="xs:string" use="required"/>
167                                                <xs:attribute name="taskId" type="xs:string" use="required"/>
168                                                <xs:attribute name="submissionTime" type="xs:dateTime" use="required"/>
169                                                <xs:attribute name="userDN" type="xs:string" use="optional"/>
170                                                <xs:attribute name="extension" type="xs:string" use="optional"/>
171                                                <xs:attribute name="priority" type="xs:int" use="optional" default="0"/>
172                                                <xs:attribute name="domain" type="xs:string"/>
173                                        </xs:complexType>
174                                </xs:element>
175                        </xs:sequence>
176                </xs:complexType>
177        </xs:element>
178        <xs:complexType name="rangeType">
179                <xs:annotation>
180                        <xs:documentation>Range of values definition</xs:documentation>
181                </xs:annotation>
182                <xs:sequence>
183                        <xs:element name="min" type="parameterBoundaryType"/>
184                        <xs:element name="max" type="parameterBoundaryType"/>
185                </xs:sequence>
186        </xs:complexType>
187        <xs:complexType name="parameterType">
188                <xs:annotation>
189                        <xs:documentation>Description of parameter of resource</xs:documentation>
190                </xs:annotation>
191                <xs:choice>
192                        <xs:choice maxOccurs="unbounded">
193                                <xs:element name="value">
194                                        <xs:complexType>
195                                                <xs:simpleContent>
196                                                        <xs:extension base="parameterValueType">
197                                                                <xs:attribute name="exclude" type="xs:boolean" use="optional" default="false"/>
198                                                        </xs:extension>
199                                                </xs:simpleContent>
200                                        </xs:complexType>
201                                </xs:element>
202                                <xs:element name="range">
203                                        <xs:complexType>
204                                                <xs:complexContent>
205                                                        <xs:extension base="rangeType">
206                                                                <xs:attribute name="exclude" type="xs:boolean" use="optional" default="false"/>
207                                                        </xs:extension>
208                                                </xs:complexContent>
209                                        </xs:complexType>
210                                </xs:element>
211                        </xs:choice>
212                        <xs:element name="min" type="parameterBoundaryType"/>
213                        <xs:element name="max" type="parameterBoundaryType"/>
214                        <xs:element name="stringValue" maxOccurs="unbounded">
215                                <xs:complexType>
216                                        <xs:sequence>
217                                                <xs:element name="property" minOccurs="0" maxOccurs="unbounded">
218                                                        <xs:complexType>
219                                                                <xs:sequence>
220                                                                        <xs:element name="value" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
221                                                                </xs:sequence>
222                                                                <xs:attribute name="name" type="xs:string" use="required"/>
223                                                                <xs:attribute name="exclude" type="xs:boolean" use="optional" default="false"/>
224                                                        </xs:complexType>
225                                                </xs:element>
226                                        </xs:sequence>
227                                        <xs:attribute name="value" type="xs:string" use="optional"/>
228                                        <xs:attribute name="exclude" type="xs:boolean" use="optional" default="false"/>
229                                </xs:complexType>
230                        </xs:element>
231                </xs:choice>
232        </xs:complexType>
233        <xs:complexType name="otherParameterType">
234                <xs:annotation>
235                        <xs:documentation>Dynamically defined parameter of resource</xs:documentation>
236                </xs:annotation>
237                <xs:complexContent>
238                        <xs:extension base="parameterType">
239                                <xs:attribute name="name" type="xs:string" use="required"/>
240                                <xs:attribute name="endpoint" type="xs:string" use="optional"/>
241                        </xs:extension>
242                </xs:complexContent>
243        </xs:complexType>
244        <xs:complexType name="computingResourceNetParameterType">
245                <xs:annotation>
246                        <xs:documentation>Network related prameter</xs:documentation>
247                </xs:annotation>
248                <xs:complexContent>
249                        <xs:extension base="parameterType">
250                                <xs:attribute name="name" use="required">
251                                        <xs:simpleType>
252                                                <xs:restriction base="xs:string">
253                                                        <xs:enumeration value="bandwidth"/>
254                                                        <xs:enumeration value="latency"/>
255                                                        <xs:enumeration value="capacity"/>
256                                                </xs:restriction>
257                                        </xs:simpleType>
258                                </xs:attribute>
259                                <xs:attribute name="endpoint" type="xs:string" use="required"/>
260                        </xs:extension>
261                </xs:complexContent>
262        </xs:complexType>
263        <xs:complexType name="computingResourceParameterType">
264                <xs:annotation>
265                        <xs:documentation>Computational resource related parameter</xs:documentation>
266                </xs:annotation>
267                <xs:complexContent>
268                        <xs:extension base="parameterType">
269                                <xs:attribute name="name" use="required">
270                                        <xs:simpleType>
271                                                <xs:restriction base="xs:string">
272                                                        <xs:enumeration value="osname"/>
273                                                        <xs:enumeration value="ostype"/>
274                                                        <xs:enumeration value="cpuarch"/>
275                                                        <xs:enumeration value="osversion"/>
276                                                        <xs:enumeration value="osrelease"/>
277                                                        <xs:enumeration value="memory"/>
278                                                        <xs:enumeration value="freememory"/>
279                                                        <xs:enumeration value="cpucount"/>
280                                                        <xs:enumeration value="freecpus"/>
281                                                        <xs:enumeration value="cpuspeed"/>
282                                                        <xs:enumeration value="application"/>
283                                                        <xs:enumeration value="diskspace"/>
284                                                        <xs:enumeration value="freediskspace"/>
285                                                        <xs:enumeration value="remoteSubmissionInterface"/>
286                                                        <xs:enumeration value="localResourceManager"/>
287                                                        <xs:enumeration value="hostname"/>
288                                                </xs:restriction>
289                                        </xs:simpleType>
290                                </xs:attribute>
291                        </xs:extension>
292                </xs:complexContent>
293        </xs:complexType>
294        <xs:complexType name="countRangeType">
295                <xs:annotation>
296                        <xs:documentation>Range of count parameter</xs:documentation>
297                </xs:annotation>
298                <xs:sequence>
299                        <xs:element name="min" type="countBoundaryType"/>
300                        <xs:element name="max" type="countBoundaryType"/>
301                </xs:sequence>
302        </xs:complexType>
303        <xs:complexType name="faultToleranceType">
304                <xs:annotation>
305                        <xs:documentation>Fault tolerance description</xs:documentation>
306                </xs:annotation>
307                <xs:sequence>
308                        <xs:element name="additionalCPUs" minOccurs="0">
309                                <xs:complexType>
310                                        <xs:choice>
311                                                <xs:element name="count" type="countType"/>
312                                                <xs:element name="percentage" type="countType"/>
313                                        </xs:choice>
314                                </xs:complexType>
315                        </xs:element>
316                </xs:sequence>
317        </xs:complexType>
318        <xs:complexType name="hostCandidatesType">
319                <xs:annotation>
320                        <xs:documentation>List of hosts used by GRMS in resource discovery process</xs:documentation>
321                </xs:annotation>
322                <xs:sequence>
323                        <xs:element name="hostName" type="xs:string" maxOccurs="unbounded"/>
324                </xs:sequence>
325        </xs:complexType>
326        <xs:complexType name="otherNetParameterType">
327                <xs:annotation>
328                        <xs:documentation>Additional - dynamically defined - parameters of network connection</xs:documentation>
329                </xs:annotation>
330                <xs:complexContent>
331                        <xs:extension base="parameterType">
332                                <xs:attribute name="name" type="xs:string" use="required"/>
333                        </xs:extension>
334                </xs:complexContent>
335        </xs:complexType>
336        <xs:complexType name="networkResourceType">
337                <xs:annotation>
338                        <xs:documentation>Description of network connection</xs:documentation>
339                </xs:annotation>
340                <xs:choice maxOccurs="unbounded">
341                        <xs:element name="networkParameter" type="networkParameterType"/>
342                        <xs:element name="otherParameter" type="otherNetParameterType"/>
343                </xs:choice>
344                <xs:attribute name="resourceId" type="xs:string" use="optional"/>
345        </xs:complexType>
346        <xs:complexType name="networkParameterType">
347                <xs:annotation>
348                        <xs:documentation>Parameters of network connection</xs:documentation>
349                </xs:annotation>
350                <xs:complexContent>
351                        <xs:extension base="parameterType">
352                                <xs:attribute name="name" use="required">
353                                        <xs:simpleType>
354                                                <xs:restriction base="xs:string">
355                                                        <xs:enumeration value="bandwidth"/>
356                                                        <xs:enumeration value="latency"/>
357                                                        <xs:enumeration value="capacity"/>
358                                                </xs:restriction>
359                                        </xs:simpleType>
360                                </xs:attribute>
361                        </xs:extension>
362                </xs:complexContent>
363        </xs:complexType>
364        <xs:complexType name="countType">
365                <xs:annotation>
366                        <xs:documentation>Description of count element</xs:documentation>
367                </xs:annotation>
368                <xs:choice>
369                        <xs:element name="value">
370                                <xs:complexType>
371                                        <xs:simpleContent>
372                                                <xs:extension base="xs:int">
373                                                        <xs:attribute name="indiffThreshold" type="xs:int" use="optional" default="0"/>
374                                                </xs:extension>
375                                        </xs:simpleContent>
376                                </xs:complexType>
377                        </xs:element>
378                        <xs:element name="min" type="countBoundaryType"/>
379                        <xs:element name="max" type="countBoundaryType"/>
380                        <xs:element name="range" type="countRangeType"/>
381                </xs:choice>
382        </xs:complexType>
383        <xs:complexType name="computingResourceExtType">
384                <xs:annotation>
385                        <xs:documentation>Extended computing resource description</xs:documentation>
386                </xs:annotation>
387                <xs:complexContent>
388                        <xs:extension base="computingResourceType">
389                                <xs:sequence>
390                                        <xs:element name="processesCount" type="countType" minOccurs="0"/>
391                                </xs:sequence>
392                        </xs:extension>
393                </xs:complexContent>
394        </xs:complexType>
395        <xs:complexType name="computingResourceBaseType">
396                <xs:annotation>
397                        <xs:documentation>Base type for computing resource</xs:documentation>
398                </xs:annotation>
399                <xs:choice maxOccurs="unbounded">
400                        <xs:element name="hostParameter" type="computingResourceParameterType"/>
401                        <xs:element name="networkParameter" type="computingResourceNetParameterType"/>
402                        <xs:element name="otherParameter" type="otherParameterType"/>
403                </xs:choice>
404                <xs:attribute name="resourceId" type="xs:string" use="optional"/>
405        </xs:complexType>
406        <xs:complexType name="computingResourceType">
407                <xs:annotation>
408                        <xs:documentation>Coomputing resource</xs:documentation>
409                </xs:annotation>
410                <xs:complexContent>
411                        <xs:extension base="computingResourceBaseType">
412                                <xs:sequence>
413                                        <xs:element name="faultTolerance" type="faultToleranceType" minOccurs="0"/>
414                                </xs:sequence>
415                        </xs:extension>
416                </xs:complexContent>
417        </xs:complexType>
418        <xs:complexType name="parameterValueType">
419                <xs:annotation>
420                        <xs:documentation>Value of the parameter</xs:documentation>
421                </xs:annotation>
422                <xs:simpleContent>
423                        <xs:extension base="xs:double">
424                                <xs:attribute name="indiffThreshold" type="xs:double" use="optional" default="0"/>
425                        </xs:extension>
426                </xs:simpleContent>
427        </xs:complexType>
428        <xs:complexType name="parameterBoundaryType">
429                <xs:annotation>
430                        <xs:documentation>Description of boundary for parameters</xs:documentation>
431                </xs:annotation>
432                <xs:simpleContent>
433                        <xs:extension base="xs:double">
434                                <xs:attribute name="exclusiveBound" type="xs:boolean" use="optional" default="false"/>
435                        </xs:extension>
436                </xs:simpleContent>
437        </xs:complexType>
438        <xs:complexType name="countBoundaryType">
439                <xs:annotation>
440                        <xs:documentation>Description of boundary for count</xs:documentation>
441                </xs:annotation>
442                <xs:simpleContent>
443                        <xs:extension base="xs:int">
444                                <xs:attribute name="exclusiveBound" type="xs:boolean" use="optional" default="false"/>
445                        </xs:extension>
446                </xs:simpleContent>
447        </xs:complexType>
448        <xs:complexType name="executionTimeType">
449                <xs:annotation>
450                        <xs:documentation>Description for time constraints of job execution</xs:documentation>
451                </xs:annotation>
452                <xs:sequence>
453                        <xs:element name="timeSlot" minOccurs="0">
454                                <xs:annotation>
455                                        <xs:documentation>Information when to start application</xs:documentation>
456                                </xs:annotation>
457                                <xs:complexType>
458                                        <xs:sequence>
459                                                <xs:element name="slotStart">
460                                                        <xs:complexType>
461                                                                <xs:simpleContent>
462                                                                        <xs:extension base="xs:time"/>
463                                                                </xs:simpleContent>
464                                                        </xs:complexType>
465                                                </xs:element>
466                                                <xs:choice>
467                                                        <xs:element name="slotEnd" type="xs:time"/>
468                                                        <xs:element name="slotDuration" type="xs:duration"/>
469                                                </xs:choice>
470                                        </xs:sequence>
471                                </xs:complexType>
472                        </xs:element>
473                        <xs:element name="executionDuration" type="xs:duration">
474                                <xs:annotation>
475                                        <xs:documentation>How long the Task is running</xs:documentation>
476                                </xs:annotation>
477                        </xs:element>
478                        <xs:element name="timePeriod" minOccurs="0">
479                                <xs:annotation>
480                                        <xs:documentation>Tme period where to look for time slot</xs:documentation>
481                                </xs:annotation>
482                                <xs:complexType>
483                                        <xs:sequence>
484                                                <xs:element name="periodStart" type="xs:dateTime" minOccurs="0"/>
485                                                <xs:choice>
486                                                        <xs:element name="periodEnd" type="xs:dateTime"/>
487                                                        <xs:element name="periodDuration" type="xs:duration"/>
488                                                </xs:choice>
489                                                <xs:element name="excluding" type="daysType" minOccurs="0"/>
490                                                <xs:element name="including" type="daysType" minOccurs="0"/>
491                                        </xs:sequence>
492                                </xs:complexType>
493                        </xs:element>
494                </xs:sequence>
495        </xs:complexType>
496        <xs:complexType name="daysType">
497                <xs:annotation>
498                        <xs:documentation>Days of the week</xs:documentation>
499                </xs:annotation>
500                <xs:choice maxOccurs="unbounded">
501                        <xs:element name="weekDay">
502                                <xs:simpleType>
503                                        <xs:restriction base="xs:string">
504                                                <xs:enumeration value="Monday"/>
505                                                <xs:enumeration value="Tuesday"/>
506                                                <xs:enumeration value="Wednesday"/>
507                                                <xs:enumeration value="Thursday"/>
508                                                <xs:enumeration value="Friday"/>
509                                                <xs:enumeration value="Saturday"/>
510                                                <xs:enumeration value="Sunday"/>
511                                        </xs:restriction>
512                                </xs:simpleType>
513                        </xs:element>
514                        <xs:element name="dateDay" type="xs:date"/>
515                </xs:choice>
516        </xs:complexType>
517        <xs:complexType name="preferencesType">
518                <xs:annotation>
519                        <xs:documentation>User preferences concerning scheduling</xs:documentation>
520                </xs:annotation>
521                <xs:sequence>
522                        <xs:element name="parameter" maxOccurs="unbounded">
523                                <xs:complexType>
524                                        <xs:choice minOccurs="0">
525                                                <xs:choice>
526                                                        <xs:element name="value" type="parameterValueType"/>
527                                                        <xs:element name="min" type="parameterBoundaryType"/>
528                                                        <xs:element name="max" type="parameterBoundaryType"/>
529                                                        <xs:element name="range" type="rangeType"/>
530                                                </xs:choice>
531                                                <xs:element name="stringValue" type="xs:string"/>
532                                        </xs:choice>
533                                        <xs:attribute name="name" type="xs:string" use="required"/>
534                                        <xs:attribute name="optimizationType" use="required">
535                                                <xs:simpleType>
536                                                        <xs:restriction base="xs:string">
537                                                                <xs:enumeration value="GAIN"/>
538                                                                <xs:enumeration value="COST"/>
539                                                        </xs:restriction>
540                                                </xs:simpleType>
541                                        </xs:attribute>
542                                        <xs:attribute name="importance" type="xs:int" use="required"/>
543                                        <xs:attribute name="endpoint" type="xs:string" use="optional"/>
544                                </xs:complexType>
545                        </xs:element>
546                </xs:sequence>
547                <xs:attribute name="preferenceType" use="required">
548                        <xs:simpleType>
549                                <xs:restriction base="xs:string">
550                                        <xs:enumeration value="PRIORITY"/>
551                                        <xs:enumeration value="RANKING"/>
552                                </xs:restriction>
553                        </xs:simpleType>
554                </xs:attribute>
555        </xs:complexType>
556        <xs:complexType name="proxyInfoType">
557                <xs:annotation>
558                        <xs:documentation>Descriprion of proxy certificate</xs:documentation>
559                </xs:annotation>
560                <xs:sequence>
561                        <xs:element name="proxyName" maxOccurs="unbounded">
562                                <xs:complexType>
563                                        <xs:simpleContent>
564                                                <xs:extension base="xs:string">
565                                                        <xs:attribute name="lifetime" type="xs:int" use="optional"/>
566                                                </xs:extension>
567                                        </xs:simpleContent>
568                                </xs:complexType>
569                        </xs:element>
570                </xs:sequence>
571        </xs:complexType>
572        <xs:complexType name="executionType">
573                <xs:sequence>
574                        <xs:element name="stageInOut" minOccurs="0">
575                                <xs:annotation>
576                                        <xs:documentation>Description of files and directories to be stage out or in</xs:documentation>
577                                </xs:annotation>
578                                <xs:complexType>
579                                        <xs:choice maxOccurs="unbounded">
580                                                <xs:element name="file" type="fileType"/>
581                                                <xs:element name="directory" type="fileType"/>
582                                        </xs:choice>
583                                </xs:complexType>
584                        </xs:element>
585                </xs:sequence>
586        </xs:complexType>       
587        <xs:complexType name="fileType">
588                <xs:annotation>
589                        <xs:documentation>Element that describes a file</xs:documentation>
590                </xs:annotation>
591                <xs:complexContent>
592                        <xs:extension base="baseFileType">
593                                <xs:attribute name="name" type="xs:string" use="required"/>
594                                <xs:attribute name="type" use="required">
595                                        <xs:simpleType>
596                                                <xs:restriction base="xs:string">
597                                                        <xs:enumeration value="in"/>
598                                                        <xs:enumeration value="out"/>
599                                                </xs:restriction>
600                                        </xs:simpleType>
601                                </xs:attribute>
602                                <xs:attribute name="required" type="xs:boolean" use="optional" default="true"/>
603                        </xs:extension>
604                </xs:complexContent>
605        </xs:complexType>
606        <xs:complexType name="baseFileType">
607                <xs:annotation>
608                        <xs:documentation>Base element for file description</xs:documentation>
609                </xs:annotation>
610                <xs:sequence>
611                        <xs:element name="location">
612                                <xs:complexType>
613                                        <xs:simpleContent>
614                                                <xs:extension base="xs:string">
615                                                        <xs:attribute name="type" type="locationTypes" use="required"/>
616                                                </xs:extension>
617                                        </xs:simpleContent>
618                                </xs:complexType>
619                        </xs:element>
620                        <xs:element name="locationProperties" minOccurs="0">
621                                <xs:complexType>
622                                        <xs:sequence>
623                                                <xs:element name="locationProperty">
624                                                        <xs:complexType>
625                                                                <xs:simpleContent>
626                                                                        <xs:extension base="xs:string">
627                                                                                <xs:attribute name="name" type="xs:string"/>
628                                                                        </xs:extension>
629                                                                </xs:simpleContent>
630                                                        </xs:complexType>
631                                                </xs:element>
632                                        </xs:sequence>
633                                </xs:complexType>
634                        </xs:element>
635                </xs:sequence>
636                <xs:attribute name="size" type="xs:double" use="optional"/>
637        </xs:complexType>
638        <xs:simpleType name="locationTypes">
639                <xs:restriction base="xs:string">
640                        <xs:enumeration value="URL"/>
641                        <xs:enumeration value="DMSID"/>
642                        <xs:enumeration value="SRBID"/>
643                        <xs:enumeration value="REFERENCE"/>
644                </xs:restriction>
645        </xs:simpleType>
646</xs:schema>
Note: See TracBrowser for help on using the repository browser.