source: DCWoRMS/branches/coolemall/simulator/schemas/grms3/QCGJobDescriptionSchemaNew.xsd @ 1543

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