source: xssim/trunk/src/test/rewolucja/schemas/XSSimResSchema.xsd @ 234

Revision 234, 6.8 KB checked in by wojtekp, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3        elementFormDefault="qualified" attributeFormDefault="unqualified">
4       
5        <xs:complexType name="computingResourceParameterType">
6                <xs:annotation>
7                        <xs:documentation>Computational resource related parameter</xs:documentation>
8                </xs:annotation>
9                <xs:complexContent>
10                        <xs:extension base="parameterType">
11                                <xs:attribute name="name" type="computingResourceParameterName" use="required"/>
12                        </xs:extension>
13                </xs:complexContent>
14        </xs:complexType>
15
16        <xs:simpleType name="computingResourceParameterName">
17                <xs:restriction base="xs:string">
18                        <xs:enumeration value="count"/>
19                        <xs:enumeration value="arch"/>
20                        <xs:enumeration value="memory"/>
21                        <xs:enumeration value="freememory"/>
22                        <xs:enumeration value="diskspace"/>
23                        <xs:enumeration value="freediskspace"/>
24                        <xs:enumeration value="speed"/>
25                        <xs:enumeration value="cost"/>
26                        <xs:enumeration value="load"/>
27                        <xs:enumeration value="application"/>
28                        <xs:enumeration value="osname"/>
29                        <xs:enumeration value="ostype"/>
30                        <xs:enumeration value="osversion"/>
31                        <xs:enumeration value="osrelease"/>
32                </xs:restriction>
33        </xs:simpleType>
34       
35                <xs:complexType name="logicalResourceParameterType">
36                <xs:annotation>
37                        <xs:documentation>Computational resource related parameter</xs:documentation>
38                </xs:annotation>
39                <xs:complexContent>
40                        <xs:extension base="parameterType">
41                                <xs:attribute name="name" type="logicalResourceParameterName" use="required"/>
42                        </xs:extension>
43                </xs:complexContent>
44        </xs:complexType>
45       
46        <xs:simpleType name="logicalResourceParameterName">
47                <xs:restriction base="xs:string">
48                        <xs:enumeration value="TO DO"/>
49                </xs:restriction>
50        </xs:simpleType>
51       
52        <xs:complexType name="energyParameterType">
53                <xs:annotation>
54                        <xs:documentation>Computational resource related parameter</xs:documentation>
55                </xs:annotation>
56                <xs:complexContent>
57                        <xs:extension base="parameterType">
58                                <xs:attribute name="name" type="energyParameterName" use="required"/>
59                        </xs:extension>
60                </xs:complexContent>
61        </xs:complexType>
62       
63        <xs:simpleType name="energyParameterName">
64                <xs:restriction base="xs:string">
65                        <xs:enumeration value="powerProfile"/>
66                        <xs:enumeration value="estimationPlugin"/>
67                </xs:restriction>
68        </xs:simpleType>
69       
70        <xs:complexType name="schedulingParameterType">
71                <xs:annotation>
72                        <xs:documentation>Computational resource related parameter</xs:documentation>
73                </xs:annotation>
74                <xs:complexContent>
75                        <xs:extension base="parameterType">
76                                <xs:attribute name="name" type="schedulingParameterName" use="required"/>
77                        </xs:extension>
78                </xs:complexContent>
79        </xs:complexType>
80       
81        <xs:simpleType name="schedulingParameterName">
82                <xs:restriction base="xs:string">
83                        <xs:enumeration value="schedulingPlugin"/>
84                </xs:restriction>
85        </xs:simpleType>
86       
87        <xs:complexType name="otherParameterType">
88                <xs:annotation>
89                        <xs:documentation>Dynamically defined parameter of resource</xs:documentation>
90                </xs:annotation>
91                <xs:complexContent>
92                        <xs:extension base="parameterType">
93                                <xs:attribute name="name" type="xs:string" use="required"/>
94                                <xs:attribute name="endpoint" type="xs:string" use="optional"/>
95                        </xs:extension>
96                </xs:complexContent>
97        </xs:complexType>
98       
99        <xs:complexType name="parameterType">
100                <xs:annotation>
101                        <xs:documentation>Description of parameter of resource</xs:documentation>
102                </xs:annotation>
103                <xs:sequence>
104                        <xs:element name="paramValue" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
105                        <xs:element name="property" minOccurs="0" maxOccurs="unbounded">
106                                <xs:complexType>
107                                        <xs:sequence>
108                                                <xs:element name="value" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
109                                        </xs:sequence>
110                                        <xs:attribute name="name" type="xs:string" use="required"/>
111                                        <xs:attribute name="exclude" type="xs:boolean" use="optional" default="false"/>
112                                </xs:complexType>
113                        </xs:element>
114                </xs:sequence>
115        </xs:complexType>
116       
117        <xs:complexType name="managedComputingResourceType">
118                <xs:annotation>
119                        <xs:documentation>Computing resource</xs:documentation>
120                </xs:annotation>
121
122                                <xs:choice minOccurs="0" maxOccurs="1">
123                                        <xs:element name="associatedComputingResource" type="xs:string"></xs:element>
124                                        <xs:element name="listOfManagedResources" type="resourceList"></xs:element>
125                                </xs:choice>
126        </xs:complexType>
127       
128        <xs:simpleType name="resourceList">
129                <xs:list itemType="xs:string"></xs:list>
130        </xs:simpleType>
131       
132        <xs:complexType name="computingResourceType">
133                <xs:annotation>
134                        <xs:documentation>Computing resource</xs:documentation>
135                </xs:annotation>
136                <xs:complexContent>
137                        <xs:extension base="resource">
138                                <xs:choice minOccurs="0" maxOccurs="unbounded">
139                                        <xs:element name="computingResource" type="computingResourceType"></xs:element>
140                                        <xs:element name="resourceParameter" type="computingResourceParameterType"></xs:element>
141                                        <xs:element name="energyParameter" type="energyParameterType"></xs:element>
142                                        <xs:element name="schedulingParameter" type="schedulingParameterType"></xs:element>
143                                        <xs:element name="otherParameter" type="otherParameterType"/>
144                                </xs:choice>
145                        </xs:extension>
146                </xs:complexContent>
147        </xs:complexType>
148       
149        <xs:complexType name="logicalResourceType">
150                <xs:annotation>
151                        <xs:documentation>Computing resource</xs:documentation>
152                </xs:annotation>
153                <xs:complexContent>
154                        <xs:extension base="resource">
155                        <xs:sequence minOccurs="0" maxOccurs="1">
156                                <xs:element name="schedulingParameter" type="schedulingParameterType" minOccurs="0" maxOccurs="1"></xs:element>
157                                <xs:choice minOccurs="0" maxOccurs="unbounded">
158                                        <xs:element name="managedComputingResource" type="managedComputingResourceType" minOccurs="0" maxOccurs="1"></xs:element>
159                                        <xs:element name="logicalResource" type="logicalResourceType"></xs:element>
160                                        <xs:element name="otherParameter" type="otherParameterType"/>
161                                </xs:choice>
162                        </xs:sequence>
163                        </xs:extension>
164                </xs:complexContent>
165        </xs:complexType>
166
167        <xs:complexType name="resource">
168                <xs:attribute name="resourceType" type="xs:string" use="required" />
169                <xs:attribute name="resourceId" type="xs:string" use="optional" />
170        </xs:complexType>
171
172        <xs:element name="environment">
173                <xs:annotation>
174                        <xs:documentation>Schema describing simulation environment
175                        </xs:documentation>
176                </xs:annotation>
177                <xs:complexType>
178                        <xs:sequence>
179                                <xs:element name="resources">
180                                        <xs:annotation>
181                                                <xs:documentation>Description of resources</xs:documentation>
182                                        </xs:annotation>
183                                        <xs:complexType>
184                                                <xs:sequence>
185                                                        <xs:element name="computingResource" type="computingResourceType" maxOccurs="unbounded">
186                                                        </xs:element>
187                                                        <xs:element name="logicalResource" type="logicalResourceType" minOccurs="0">
188                                                        </xs:element>
189                                                </xs:sequence>
190                                        </xs:complexType>
191                                </xs:element>
192                        </xs:sequence>
193                </xs:complexType>
194        </xs:element>
195
196</xs:schema>
Note: See TracBrowser for help on using the repository browser.