1 | <?xml version="1.0"?> |
---|
2 | <xsd:schema targetNamespace="http://www.isi.edu/faber/fedd_types" |
---|
3 | xmlns:tns="http://www.isi.edu/faber/fedd_types" |
---|
4 | xmlns:topdl="http://www.isi.edu/faber/topdl" |
---|
5 | xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
---|
6 | xmlns="http://www.w3.org/2000/10/XMLSchema"> |
---|
7 | |
---|
8 | <xsd:complexType name="IDType"> |
---|
9 | <xsd:annotation> |
---|
10 | <xsd:documentation> |
---|
11 | An ID is an identifier for a principal, service, or object. This type |
---|
12 | is currently polymorphic o allow different implementations of type, |
---|
13 | though running code primarily uses localnames and fedids. |
---|
14 | </xsd:documentation> |
---|
15 | </xsd:annotation> |
---|
16 | <xsd:choice> |
---|
17 | <xsd:element name="uuid" type="xsd:base64Binary"/> |
---|
18 | <xsd:element name="fedid" type="xsd:base64Binary"/> |
---|
19 | <xsd:element name="uri" type="xsd:string"/> |
---|
20 | <xsd:element name="localname" type="xsd:string"/> |
---|
21 | <xsd:element name="kerberosUsername" type="xsd:string"/> |
---|
22 | </xsd:choice> |
---|
23 | </xsd:complexType> |
---|
24 | |
---|
25 | <!-- begin deprecated --> |
---|
26 | |
---|
27 | <xsd:complexType name="projectType"> |
---|
28 | <xsd:annotation> |
---|
29 | <xsd:documentation> |
---|
30 | A description of the project used to access a testbed. Includes |
---|
31 | the testbed being accessed, the project name (often a local |
---|
32 | name, scoped by the testbed), and any users who have been |
---|
33 | granted access or for whom access is being requested. |
---|
34 | </xsd:documentation> |
---|
35 | </xsd:annotation> |
---|
36 | <xsd:sequence> |
---|
37 | <xsd:element name="testbed" type="tns:IDType" minOccurs="0" |
---|
38 | maxOccurs="1"/> |
---|
39 | <xsd:element name="name" type="tns:IDType" minOccurs="0" maxOccurs="1"/> |
---|
40 | <xsd:element name="user" type="tns:userType" minOccurs="0" |
---|
41 | maxOccurs="unbounded"/> |
---|
42 | </xsd:sequence> |
---|
43 | </xsd:complexType> |
---|
44 | |
---|
45 | <xsd:complexType name="emulabType"> |
---|
46 | <xsd:annotation> |
---|
47 | <xsd:documentation> |
---|
48 | A description of an Emulab sufficient for the federation system |
---|
49 | to create a sub experiment on it. Note that fedAttrs provide an |
---|
50 | extension mechanism by which testbeds may communicate additional |
---|
51 | information and preferences to federation systems that |
---|
52 | understand it. |
---|
53 | </xsd:documentation> |
---|
54 | </xsd:annotation> |
---|
55 | <xsd:sequence> |
---|
56 | <xsd:element name="project" type="tns:projectType"/> |
---|
57 | <xsd:element name="domain" type="xsd:string"/> |
---|
58 | <xsd:element name="boss" type="xsd:string"/> |
---|
59 | <xsd:element name="ops" type="xsd:string"/> |
---|
60 | <xsd:element name="fileServer" type="xsd:string"/> |
---|
61 | <xsd:element name="eventServer" type="xsd:string"/> |
---|
62 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
63 | maxOccurs="unbounded"/> |
---|
64 | </xsd:sequence> |
---|
65 | </xsd:complexType> |
---|
66 | |
---|
67 | <xsd:complexType name="nodeType"> |
---|
68 | <xsd:annotation> |
---|
69 | <xsd:documentation> |
---|
70 | A node from an Emulab. It may have 0 or more images or hardware |
---|
71 | types associated with it. As this description is used for |
---|
72 | acquiring access to the testbed in question, multiple images or |
---|
73 | types are considered options. Specifying multiple image names |
---|
74 | indicates that the requester is looking for support for any of |
---|
75 | them. |
---|
76 | </xsd:documentation> |
---|
77 | </xsd:annotation> |
---|
78 | <xsd:sequence> |
---|
79 | <xsd:element name="image" type="xsd:string" minOccurs="0" |
---|
80 | maxOccurs="unbounded"/> |
---|
81 | <xsd:element name="hardware" type="xsd:string" minOccurs="0" |
---|
82 | maxOccurs="unbounded"/> |
---|
83 | </xsd:sequence> |
---|
84 | <xsd:attribute name="count" type="xsd:int" use="optional"/> |
---|
85 | </xsd:complexType> |
---|
86 | |
---|
87 | <xsd:complexType name="capacityType"> |
---|
88 | <xsd:annotation> |
---|
89 | <xsd:documentation> |
---|
90 | A strawman network capacity description for access negotiation. |
---|
91 | This will come to include more and more interesting parameters. |
---|
92 | </xsd:documentation> |
---|
93 | </xsd:annotation> |
---|
94 | <xsd:sequence> |
---|
95 | <xsd:element name="rate" type="xsd:double"/> |
---|
96 | <xsd:element name="kind" type="tns:kindType"/> |
---|
97 | </xsd:sequence> |
---|
98 | </xsd:complexType> |
---|
99 | |
---|
100 | |
---|
101 | <xsd:simpleType name="userRole"> |
---|
102 | <xsd:annotation> |
---|
103 | <xsd:documentation> |
---|
104 | This defines the role the user/account is playing in the |
---|
105 | federated experiment. An account being accessed by the |
---|
106 | federation system to create the experiment is in the |
---|
107 | experimentCreation role and the accounts that experimenters will |
---|
108 | use to access local testbed services (e.g., rebooting a local |
---|
109 | node) are serviceAccess roles. |
---|
110 | </xsd:documentation> |
---|
111 | </xsd:annotation> |
---|
112 | <xsd:restriction base="xsd:string"> |
---|
113 | <xsd:enumeration value="serviceAccess"/> |
---|
114 | <xsd:enumeration value="experimentCreation"/> |
---|
115 | </xsd:restriction> |
---|
116 | </xsd:simpleType> |
---|
117 | |
---|
118 | <xsd:simpleType name="kindType"> |
---|
119 | <xsd:annotation> |
---|
120 | <xsd:documentation> |
---|
121 | An indication of how requested networking capacity is measured. |
---|
122 | This will undoubtably expand. |
---|
123 | </xsd:documentation> |
---|
124 | </xsd:annotation> |
---|
125 | <xsd:restriction base="xsd:string"> |
---|
126 | <xsd:enumeration value="max"/> |
---|
127 | <xsd:enumeration value="average"/> |
---|
128 | </xsd:restriction> |
---|
129 | </xsd:simpleType> |
---|
130 | |
---|
131 | <!-- end deprecated --> |
---|
132 | |
---|
133 | <xsd:simpleType name="statusType"> |
---|
134 | <xsd:annotation> |
---|
135 | <xsd:documentation> |
---|
136 | The current state of the experiment. |
---|
137 | </xsd:documentation> |
---|
138 | </xsd:annotation> |
---|
139 | <xsd:restriction base="xsd:string"> |
---|
140 | <xsd:enumeration value="empty"/> |
---|
141 | <xsd:enumeration value="active"/> |
---|
142 | <xsd:enumeration value="starting"/> |
---|
143 | <xsd:enumeration value="terminating"/> |
---|
144 | <xsd:enumeration value="failed"/> |
---|
145 | </xsd:restriction> |
---|
146 | </xsd:simpleType> |
---|
147 | |
---|
148 | <xsd:complexType name="accessType"> |
---|
149 | <xsd:annotation> |
---|
150 | <xsd:documentation> |
---|
151 | This captures an access credential that will be used to access |
---|
152 | resources. These are certificates or public keys. The type is |
---|
153 | used to designate the key to which access should be bound, or on |
---|
154 | a reply has been bound. Dynamic credentials where new keys have |
---|
155 | been created may also be passed in this kind of field. |
---|
156 | </xsd:documentation> |
---|
157 | </xsd:annotation> |
---|
158 | <xsd:choice> |
---|
159 | <xsd:element name="X509" type="xsd:base64Binary"/> |
---|
160 | <xsd:element name="sshPubkey" type="xsd:base64Binary"/> |
---|
161 | <xsd:element name="pgpPubkey" type="xsd:base64Binary"/> |
---|
162 | <xsd:element name="passwordHash" type="xsd:string"/> |
---|
163 | </xsd:choice> |
---|
164 | </xsd:complexType> |
---|
165 | |
---|
166 | <xsd:complexType name="userType"> |
---|
167 | <xsd:annotation> |
---|
168 | <xsd:documentation> |
---|
169 | The definition of a user principal. It includes the |
---|
170 | identification of the user as an ID type, the access credential(s) |
---|
171 | that the user will use, and the role of the user, if any. |
---|
172 | Multiple access keys may be used, and it is also possible for |
---|
173 | the user to be anonymous. Though it is possible to specify a |
---|
174 | user without ID, access, or role, it is difficult to imagine |
---|
175 | such a user being useful. |
---|
176 | </xsd:documentation> |
---|
177 | </xsd:annotation> |
---|
178 | <xsd:sequence> |
---|
179 | <xsd:element name="userID" type="tns:IDType" minOccurs="0" |
---|
180 | maxOccurs="1"/> |
---|
181 | <xsd:element name="access" type="tns:accessType" minOccurs="0" |
---|
182 | maxOccurs="unbounded"/> |
---|
183 | <!-- begin deprecated --> |
---|
184 | <xsd:element name="role" type="tns:userRole" minOccurs="0" maxOccurs="1"/> |
---|
185 | <!-- end deprecated --> |
---|
186 | </xsd:sequence> |
---|
187 | </xsd:complexType> |
---|
188 | |
---|
189 | <xsd:complexType name="fedAttrType"> |
---|
190 | <xsd:annotation> |
---|
191 | <xsd:documentation> |
---|
192 | A general attribute/value pair for passing federation parameters and |
---|
193 | preferences. Anything encodable in XML is allowed. This is a |
---|
194 | point for customization and extension. |
---|
195 | </xsd:documentation> |
---|
196 | </xsd:annotation> |
---|
197 | <xsd:sequence> |
---|
198 | <xsd:element name="attribute" type="xsd:string"/> |
---|
199 | <xsd:element name="value" type="xsd:string"/> |
---|
200 | </xsd:sequence> |
---|
201 | </xsd:complexType> |
---|
202 | |
---|
203 | |
---|
204 | <xsd:complexType name="resourcesType"> |
---|
205 | <xsd:annotation> |
---|
206 | <xsd:documentation> |
---|
207 | The estimate of resources a requester is looking for, or the |
---|
208 | response of a testbed indicating what it can provide. This is |
---|
209 | something of a placeholder for a full resource specification, |
---|
210 | and alternative encodings are likely to be imported. |
---|
211 | </xsd:documentation> |
---|
212 | </xsd:annotation> |
---|
213 | <xsd:sequence> |
---|
214 | <!-- replace with topdl --> |
---|
215 | <xsd:element name="node" type="tns:nodeType" minOccurs="0" |
---|
216 | maxOccurs="unbounded" /> |
---|
217 | <xsd:element name="capacity" type="tns:capacityType" minOccurs="0" |
---|
218 | maxOccurs="unbounded"/> |
---|
219 | <!-- replace with topdl --> |
---|
220 | </xsd:sequence> |
---|
221 | </xsd:complexType> |
---|
222 | |
---|
223 | <xsd:complexType name="mapType"> |
---|
224 | <xsd:annotation> |
---|
225 | <xsd:documentation> |
---|
226 | Explicit translation of testbed attribute in a federated experiment |
---|
227 | description to the URI at which the controlling federation |
---|
228 | system can be reached. Used in a creation request. |
---|
229 | |
---|
230 | This type allows tools to encode experiments in familiar local |
---|
231 | names for experimenters while providing remote federation |
---|
232 | systems the information to map the local name into a service |
---|
233 | location. |
---|
234 | </xsd:documentation> |
---|
235 | </xsd:annotation> |
---|
236 | <xsd:sequence> |
---|
237 | <xsd:element name="testbed" type="tns:IDType"/> |
---|
238 | <xsd:element name="uri" type="xsd:string"/> |
---|
239 | </xsd:sequence> |
---|
240 | </xsd:complexType> |
---|
241 | |
---|
242 | <xsd:complexType name="vtoponodeType"> |
---|
243 | <xsd:annotation> |
---|
244 | <xsd:documentation> |
---|
245 | Node in the virtual topology of a federated experiment (Emulab |
---|
246 | legacy). The fields are the local hostname and the IP addresses |
---|
247 | of the experimental interfaces(colon-separated). |
---|
248 | </xsd:documentation> |
---|
249 | </xsd:annotation> |
---|
250 | <xsd:sequence> |
---|
251 | <xsd:element name="vname" type="xsd:string"/> |
---|
252 | <xsd:element name="ips" type="xsd:string"/> |
---|
253 | </xsd:sequence> |
---|
254 | </xsd:complexType> |
---|
255 | |
---|
256 | <xsd:complexType name="vtopolanType"> |
---|
257 | <xsd:annotation> |
---|
258 | <xsd:documentation> |
---|
259 | LAN in the virtual topology of a federated experiment (Emulab legacy). |
---|
260 | The fields are the name of the LAN/link (vname) the node that |
---|
261 | this description applies to (vnode), the IP of the connection, |
---|
262 | and performance information. |
---|
263 | </xsd:documentation> |
---|
264 | </xsd:annotation> |
---|
265 | <xsd:sequence> |
---|
266 | <xsd:element name="vname" type="xsd:string"/> |
---|
267 | <xsd:element name="vnode" type="xsd:string"/> |
---|
268 | <xsd:element name="ip" type="xsd:string"/> |
---|
269 | <xsd:element name="bandwidth" type="xsd:int"/> |
---|
270 | <xsd:element name="delay" type="xsd:float"/> |
---|
271 | <xsd:element name="member" type="xsd:string"/> |
---|
272 | </xsd:sequence> |
---|
273 | </xsd:complexType> |
---|
274 | |
---|
275 | <xsd:complexType name="vtopoType"> |
---|
276 | <xsd:annotation> |
---|
277 | <xsd:documentation> |
---|
278 | The virtual topology of a federated experiment (Emulab legacy). |
---|
279 | </xsd:documentation> |
---|
280 | </xsd:annotation> |
---|
281 | <xsd:sequence> |
---|
282 | <xsd:element name="node" type="tns:vtoponodeType" minOccurs="0" |
---|
283 | maxOccurs="unbounded" /> |
---|
284 | <xsd:element name="lan" type="tns:vtopolanType" minOccurs="0" |
---|
285 | maxOccurs="unbounded"/> |
---|
286 | </xsd:sequence> |
---|
287 | </xsd:complexType> |
---|
288 | |
---|
289 | <xsd:complexType name="visnodeType"> |
---|
290 | <xsd:annotation> |
---|
291 | <xsd:documentation> |
---|
292 | Node in the visualization of a federated experiment (Emulab |
---|
293 | legacy). Fields include the local hostname of the node, x,y |
---|
294 | coordinates in a 2-dimensional representation, and whether the |
---|
295 | node in the visualization is a host or a LAN. |
---|
296 | </xsd:documentation> |
---|
297 | </xsd:annotation> |
---|
298 | <xsd:sequence> |
---|
299 | <xsd:element name="name" type="xsd:string"/> |
---|
300 | <xsd:element name="x" type="xsd:int"/> |
---|
301 | <xsd:element name="y" type="xsd:int"/> |
---|
302 | <xsd:element name="type" type="xsd:string"/> |
---|
303 | </xsd:sequence> |
---|
304 | </xsd:complexType> |
---|
305 | |
---|
306 | <xsd:complexType name="visType"> |
---|
307 | <xsd:annotation> |
---|
308 | <xsd:documentation> |
---|
309 | The visualization of a federated experiment (Emulab legacy) |
---|
310 | </xsd:documentation> |
---|
311 | </xsd:annotation> |
---|
312 | <xsd:sequence> |
---|
313 | <xsd:element name="node" type="tns:visnodeType" minOccurs="0" |
---|
314 | maxOccurs="unbounded"/> |
---|
315 | </xsd:sequence> |
---|
316 | </xsd:complexType> |
---|
317 | |
---|
318 | <xsd:complexType name="projectAllocType"> |
---|
319 | <xsd:annotation> |
---|
320 | <xsd:documentation> |
---|
321 | The information needed to create a dynamic project, specifically |
---|
322 | a project description and the resources in needs access to. |
---|
323 | This is used by an internal fedd interface. |
---|
324 | </xsd:documentation> |
---|
325 | </xsd:annotation> |
---|
326 | <xsd:sequence> |
---|
327 | <xsd:element name="project" type="tns:projectType"/> |
---|
328 | <xsd:element name="resources" type="tns:resourcesType" |
---|
329 | minOccurs="0" maxOccurs="1"/> |
---|
330 | </xsd:sequence> |
---|
331 | </xsd:complexType> |
---|
332 | |
---|
333 | <xsd:complexType name="experimentDescriptionType"> |
---|
334 | <xsd:annotation> |
---|
335 | <xsd:documentation> |
---|
336 | The description of the federated experiment, in extended ns2. |
---|
337 | </xsd:documentation> |
---|
338 | </xsd:annotation> |
---|
339 | <xsd:choice> |
---|
340 | <xsd:element name="ns2description" type="xsd:base64Binary"/> |
---|
341 | <xsd:element name="topdldescription" type="topdl:topologyType"/> |
---|
342 | </xsd:choice> |
---|
343 | </xsd:complexType> |
---|
344 | |
---|
345 | <xsd:simpleType name="connectionType"> |
---|
346 | <xsd:annotation> |
---|
347 | <xsd:documentation> |
---|
348 | Known subexperiment interconnection mechanisms |
---|
349 | </xsd:documentation> |
---|
350 | </xsd:annotation> |
---|
351 | <xsd:restriction base="xsd:string"> |
---|
352 | <xsd:enumeration value="ssh"/> |
---|
353 | <xsd:enumeration value="transit"/> |
---|
354 | </xsd:restriction> |
---|
355 | </xsd:simpleType> |
---|
356 | |
---|
357 | <xsd:complexType name="memberType"> |
---|
358 | <xsd:annotation> |
---|
359 | <xsd:documentation> |
---|
360 | A member of a set of nodes for which transit is being provided |
---|
361 | </xsd:documentation> |
---|
362 | </xsd:annotation> |
---|
363 | <xsd:sequence> |
---|
364 | <xsd:element name="element" type="xsd:string"/> |
---|
365 | <xsd:element name="interface" type="xsd:string" minOccurs="0" |
---|
366 | maxOccurs="1"/> |
---|
367 | </xsd:sequence> |
---|
368 | </xsd:complexType> |
---|
369 | |
---|
370 | <xsd:simpleType name="connectionParameterIOType"> |
---|
371 | <xsd:annotation> |
---|
372 | <xsd:documentation> |
---|
373 | Connection parameter types: input or output |
---|
374 | </xsd:documentation> |
---|
375 | </xsd:annotation> |
---|
376 | <xsd:restriction base="xsd:string"> |
---|
377 | <xsd:enumeration value="input"/> |
---|
378 | <xsd:enumeration value="output"/> |
---|
379 | </xsd:restriction> |
---|
380 | </xsd:simpleType> |
---|
381 | |
---|
382 | <xsd:complexType name="connectionParameterType"> |
---|
383 | <xsd:annotation> |
---|
384 | <xsd:documentation> |
---|
385 | This is a parameter on which two or more access controllers have to |
---|
386 | agree in order to complete the stitching. This gives the name of the |
---|
387 | parameter, the key under which to store it (or it has been stored) and |
---|
388 | whether it is to be input or output. |
---|
389 | </xsd:documentation> |
---|
390 | </xsd:annotation> |
---|
391 | <xsd:sequence> |
---|
392 | <xsd:element name="name" type="xsd:string"/> |
---|
393 | <xsd:element name="key" type="xsd:string"/> |
---|
394 | <xsd:element name="store" type="xsd:string"/> |
---|
395 | <xsd:element name="type" type="tns:connectionParameterIOType"/> |
---|
396 | </xsd:sequence> |
---|
397 | </xsd:complexType> |
---|
398 | |
---|
399 | |
---|
400 | <xsd:complexType name="connectionInfoType"> |
---|
401 | <xsd:annotation> |
---|
402 | <xsd:documentation> |
---|
403 | The information needed to stitch together two segments. It is both |
---|
404 | exported from the nmaster and reported by the experiment controller to |
---|
405 | the access controller and by the access controller into the world. |
---|
406 | </xsd:documentation> |
---|
407 | </xsd:annotation> |
---|
408 | <xsd:sequence> |
---|
409 | <xsd:element name="type" type="tns:connectionType"/> |
---|
410 | <xsd:element name="portal" type="xsd:string" minOccurs="0" maxOccurs="1"/> |
---|
411 | <xsd:element name="peer" type="xsd:string" minOccurs="0" maxOccurs="1"/> |
---|
412 | <xsd:element name="member" type="tns:memberType" minOccurs="0" |
---|
413 | maxOccurs="unbounded" /> |
---|
414 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
415 | maxOccurs="unbounded"/> |
---|
416 | <xsd:element name="parameter" type="tns:connectionParameterType" |
---|
417 | minOccurs="0" maxOccurs="unbounded"/> |
---|
418 | </xsd:sequence> |
---|
419 | </xsd:complexType> |
---|
420 | |
---|
421 | <xsd:complexType name="serviceInfoType"> |
---|
422 | <xsd:annotation> |
---|
423 | <xsd:documentation> |
---|
424 | A generic service entry, basically a name and server |
---|
425 | </xsd:documentation> |
---|
426 | </xsd:annotation> |
---|
427 | <xsd:sequence> |
---|
428 | <xsd:element name="name" type="xsd:string"/> |
---|
429 | <xsd:element name="server" type="xsd:string" minOccurs="0" |
---|
430 | maxOccurs="1"/> |
---|
431 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
432 | maxOccurs="unbounded"/> |
---|
433 | <xsd:element name="visibility" type="xsd:string"> |
---|
434 | <xsd:restriction> |
---|
435 | <xsd:enumeration value="export"/> <!-- server --> |
---|
436 | <xsd:enumeration value="import"/> <!-- client --> |
---|
437 | <xsd:enumeration value="composition"/><!-- both --> |
---|
438 | </xsd:restriction> |
---|
439 | </xsd:element> |
---|
440 | </xsd:sequence> |
---|
441 | </xsd:complexType> |
---|
442 | |
---|
443 | |
---|
444 | <xsd:complexType name="newRequestType"> |
---|
445 | <xsd:annotation> |
---|
446 | <xsd:documentation> |
---|
447 | Request for an experiment to which credentials can be delegated and |
---|
448 | resources attached. A local name may be included as a human readable |
---|
449 | accessor, local to this experiment controller. It is a suggestion and |
---|
450 | may be modified. experimentID can only be a local name. |
---|
451 | |
---|
452 | Credentials are seed credentials to begin the proof. |
---|
453 | </xsd:documentation> |
---|
454 | </xsd:annotation> |
---|
455 | <xsd:sequence> |
---|
456 | <xsd:element name="experimentID" type="tns:IDType" minOccurs="0" |
---|
457 | maxOccurs="1"/> |
---|
458 | <xsd:element name="credential" type="xsd:base64Binary" minOccurs="0" |
---|
459 | maxOccurs="unbounded"/> |
---|
460 | </xsd:sequence> |
---|
461 | </xsd:complexType> |
---|
462 | |
---|
463 | <xsd:complexType name="newResponseType"> |
---|
464 | <xsd:annotation> |
---|
465 | <xsd:documentation> |
---|
466 | Result of a new experiment creation. A successful sreation will have |
---|
467 | an experimentState of "empty", 2 experimentIDs, one a fedid and one a |
---|
468 | local name, and an experimentAccess that allows the creator to act as |
---|
469 | the experiment. |
---|
470 | </xsd:documentation> |
---|
471 | </xsd:annotation> |
---|
472 | <xsd:sequence> |
---|
473 | <xsd:element name="experimentID" type="tns:IDType" minOccurs="0" |
---|
474 | maxOccurs="unbounded"/> |
---|
475 | <xsd:element name="experimentStatus" type="tns:statusType"/> |
---|
476 | <xsd:element name="experimentAccess" type="tns:accessType"/> |
---|
477 | </xsd:sequence> |
---|
478 | </xsd:complexType> |
---|
479 | |
---|
480 | <xsd:complexType name="accessRequestType"> |
---|
481 | <xsd:annotation> |
---|
482 | <xsd:documentation> |
---|
483 | Request for access to a testbed. It includes the testbed from |
---|
484 | which resources are being requested (a single service may |
---|
485 | provide access to many), the user or project requesting access |
---|
486 | (a testbed making the request will leave both empty), the |
---|
487 | resources needed, the access keys to be used in the subsequent |
---|
488 | instantiation and service use, an allocation ID to identify this |
---|
489 | access in later requests, and scheduling information. |
---|
490 | </xsd:documentation> |
---|
491 | </xsd:annotation> |
---|
492 | <xsd:sequence> |
---|
493 | <xsd:element name="destinationTestbed" type="tns:IDType" |
---|
494 | minOccurs="0" maxOccurs="1" /> |
---|
495 | <xsd:element name="credential" type="xsd:string" minOccurs="0" |
---|
496 | maxOccurs="unbounded"/> |
---|
497 | <xsd:element name="resources" type="tns:resourcesType" minOccurs="0" |
---|
498 | maxOccurs="1"/> |
---|
499 | <xsd:element name="service" type="tns:serviceInfoType" minOccurs="0" |
---|
500 | maxOccurs="unbounded" /> |
---|
501 | <!-- begin deprecated --> |
---|
502 | <xsd:element name="exportProject" type="tns:IDType" |
---|
503 | minOccurs="0" maxOccurs="1"/> |
---|
504 | <!-- end deprecated --> |
---|
505 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
506 | <xsd:element name="when" type="xsd:dateTime" minOccurs="0" maxOccurs="1"/> |
---|
507 | <xsd:element name="until" type="xsd:dateTime" minOccurs="0" |
---|
508 | maxOccurs="1"/> |
---|
509 | </xsd:sequence> |
---|
510 | </xsd:complexType> |
---|
511 | |
---|
512 | <xsd:complexType name="accessResponseType"> |
---|
513 | <xsd:annotation> |
---|
514 | <xsd:documentation> |
---|
515 | Response to an access request. Includes the allocation, the |
---|
516 | information needed to access creation and experiment services |
---|
517 | and scheduling information. |
---|
518 | </xsd:documentation> |
---|
519 | </xsd:annotation> |
---|
520 | <xsd:sequence> |
---|
521 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
522 | <!-- begin deprecated --> |
---|
523 | <xsd:element name="emulab" type="tns:emulabType" minOccurs="0" maxOccurs="1"/> |
---|
524 | <!-- end deprecated --> |
---|
525 | <xsd:element name="service" type="tns:serviceInfoType" minOccurs="0" |
---|
526 | maxOccurs="unbounded" /> |
---|
527 | <xsd:element name="when" type="xsd:dateTime" minOccurs="0" maxOccurs="1"/> |
---|
528 | <xsd:element name="until" type="xsd:dateTime" minOccurs="0" |
---|
529 | maxOccurs="1"/> |
---|
530 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
531 | maxOccurs="unbounded"/> |
---|
532 | </xsd:sequence> |
---|
533 | </xsd:complexType> |
---|
534 | |
---|
535 | <xsd:complexType name="releaseRequestType"> |
---|
536 | <xsd:annotation> |
---|
537 | <xsd:documentation> |
---|
538 | A request to release the access rights allocated by an earlier |
---|
539 | RequestAccess call. |
---|
540 | </xsd:documentation> |
---|
541 | </xsd:annotation> |
---|
542 | <xsd:sequence> |
---|
543 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
544 | </xsd:sequence> |
---|
545 | </xsd:complexType> |
---|
546 | |
---|
547 | <xsd:complexType name="releaseResponseType"> |
---|
548 | <xsd:annotation> |
---|
549 | <xsd:documentation> |
---|
550 | Indication that the access has been terminated. |
---|
551 | </xsd:documentation> |
---|
552 | </xsd:annotation> |
---|
553 | <xsd:sequence> |
---|
554 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
555 | </xsd:sequence> |
---|
556 | </xsd:complexType> |
---|
557 | |
---|
558 | <xsd:complexType name="createRequestType"> |
---|
559 | <xsd:annotation> |
---|
560 | <xsd:documentation> |
---|
561 | A request to embed a federated experiment across testbeds. Non- |
---|
562 | standard local names for testbeds are included in the |
---|
563 | testbedmap, the user making the request, the experiment |
---|
564 | description, master testbed, and a suggested experiment name are |
---|
565 | included. More than one name can be suggested, either as |
---|
566 | synonyms (a fedid and a localname) or as choices (multiple |
---|
567 | localnames). |
---|
568 | </xsd:documentation> |
---|
569 | </xsd:annotation> |
---|
570 | <xsd:sequence> |
---|
571 | <xsd:element name="testbedmap" type="tns:mapType" minOccurs="0" |
---|
572 | maxOccurs="unbounded"/> |
---|
573 | <xsd:element name="experimentdescription" |
---|
574 | type="tns:experimentDescriptionType"/> |
---|
575 | <!-- begin deprecated --> |
---|
576 | <xsd:element name="master" type="xsd:string"/> |
---|
577 | <xsd:element name='exportProject' type="tns:IDType"/> |
---|
578 | <!-- end deprecated --> |
---|
579 | <xsd:element name="experimentID" type="tns:IDType"/> |
---|
580 | </xsd:sequence> |
---|
581 | </xsd:complexType> |
---|
582 | |
---|
583 | <xsd:complexType name="createResponseType"> |
---|
584 | <xsd:annotation> |
---|
585 | <xsd:documentation> |
---|
586 | Returned to let the caller know that the request is underway. |
---|
587 | </xsd:documentation> |
---|
588 | </xsd:annotation> |
---|
589 | <xsd:sequence> |
---|
590 | <xsd:element name="experimentID" type="tns:IDType" minOccurs="1" |
---|
591 | maxOccurs="unbounded"/> |
---|
592 | <xsd:element name="experimentStatus" type="tns:statusType"/> |
---|
593 | </xsd:sequence> |
---|
594 | </xsd:complexType> |
---|
595 | |
---|
596 | <xsd:complexType name="vtopoRequestType"> |
---|
597 | <xsd:annotation> |
---|
598 | <xsd:documentation> |
---|
599 | Request for an existing experiment's virtual topology. |
---|
600 | Different information may be returned based on the user's rights |
---|
601 | to see the topology. |
---|
602 | </xsd:documentation> |
---|
603 | </xsd:annotation> |
---|
604 | <xsd:sequence> |
---|
605 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
606 | </xsd:sequence> |
---|
607 | </xsd:complexType> |
---|
608 | |
---|
609 | <xsd:complexType name="vtopoResponseType"> |
---|
610 | <xsd:annotation> |
---|
611 | <xsd:documentation> |
---|
612 | The response to a topology request. Different information may |
---|
613 | be returned based on the user's rights to see the topology. |
---|
614 | </xsd:documentation> |
---|
615 | </xsd:annotation> |
---|
616 | <xsd:sequence> |
---|
617 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
618 | <xsd:element name="vtopo" type="tns:vtopoType"/> |
---|
619 | </xsd:sequence> |
---|
620 | </xsd:complexType> |
---|
621 | |
---|
622 | |
---|
623 | <xsd:complexType name="visRequestType"> |
---|
624 | <xsd:annotation> |
---|
625 | <xsd:documentation> |
---|
626 | Request for an existing experiment's visualization. This is |
---|
627 | largely a compatibility service. Different information may be |
---|
628 | returned based on the user's rights to see the topology. |
---|
629 | </xsd:documentation> |
---|
630 | </xsd:annotation> |
---|
631 | <xsd:sequence> |
---|
632 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
633 | </xsd:sequence> |
---|
634 | </xsd:complexType> |
---|
635 | |
---|
636 | <xsd:complexType name="visResponseType"> |
---|
637 | <xsd:annotation> |
---|
638 | <xsd:documentation> |
---|
639 | An existing experiment's visualization. This is largely a |
---|
640 | compatibility service. Different information may be returned |
---|
641 | based on the user's rights to see the topology. |
---|
642 | </xsd:documentation> |
---|
643 | </xsd:annotation> |
---|
644 | <xsd:sequence> |
---|
645 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
646 | <xsd:element name="vis" type="tns:visType"/> |
---|
647 | </xsd:sequence> |
---|
648 | </xsd:complexType> |
---|
649 | |
---|
650 | <xsd:complexType name="infoRequestType"> |
---|
651 | <xsd:annotation> |
---|
652 | <xsd:documentation> |
---|
653 | A combined topology, visualalization, and federant request. |
---|
654 | Different information may be returned based on the user's rights |
---|
655 | to see the topology. |
---|
656 | </xsd:documentation> |
---|
657 | </xsd:annotation> |
---|
658 | <xsd:sequence> |
---|
659 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
660 | </xsd:sequence> |
---|
661 | </xsd:complexType> |
---|
662 | |
---|
663 | <!-- This needs to go away as well. It's only part of an infoResponseType, |
---|
664 | which needs to be reworked overall --> |
---|
665 | <xsd:complexType name="federatedExperimentType"> |
---|
666 | <xsd:annotation> |
---|
667 | <xsd:documentation> |
---|
668 | Naming and Emulab instantiation information about a federant. |
---|
669 | This is returned by various informational requests and as part |
---|
670 | of a successful creation message. |
---|
671 | </xsd:documentation> |
---|
672 | </xsd:annotation> |
---|
673 | <xsd:sequence> |
---|
674 | <xsd:element name="name" type="tns:IDType" minOccurs="1" |
---|
675 | maxOccurs="unbounded"/> |
---|
676 | <!-- begin deprecated --> |
---|
677 | <xsd:element name="emulab" type="tns:emulabType" minOccurs="0" |
---|
678 | maxOccurs="1"/> |
---|
679 | <xsd:element name="master" type="xsd:boolean"/> |
---|
680 | <!-- end deprecated --> |
---|
681 | </xsd:sequence> |
---|
682 | </xsd:complexType> |
---|
683 | |
---|
684 | <!-- end go away --> |
---|
685 | |
---|
686 | <xsd:complexType name="infoResponseType"> |
---|
687 | <xsd:annotation> |
---|
688 | <xsd:documentation> |
---|
689 | Information on an instantiated experiment. Different information may |
---|
690 | be returned based on the user's rights to see the topology. Includes |
---|
691 | the information about federants hosting sub-experiments for service |
---|
692 | access as well as virtual topology and visualization information. All |
---|
693 | that information is relative to the requester. ExperimentAccess |
---|
694 | includes credentials with which one can access the experiment. These |
---|
695 | may include a public key necessary to prove possession of the |
---|
696 | credential and should be treated with care. |
---|
697 | </xsd:documentation> |
---|
698 | </xsd:annotation> |
---|
699 | <xsd:sequence> |
---|
700 | <xsd:element name="federant" type="tns:federatedExperimentType" |
---|
701 | minOccurs="0" maxOccurs="unbounded"/> |
---|
702 | <xsd:element name="vtopo" type="tns:vtopoType" minOccurs="0" |
---|
703 | maxOccurs="1"/> |
---|
704 | <xsd:element name="vis" type="tns:visType" minOccurs="0" |
---|
705 | maxOccurs="1"/> |
---|
706 | <xsd:element name="experimentID" type="tns:IDType" minOccurs="1" |
---|
707 | maxOccurs="unbounded"/> |
---|
708 | <xsd:element name="allocationLog" type="xsd:string" minOccurs="0" |
---|
709 | maxOccurs="1"/> |
---|
710 | <xsd:element name="experimentStatus" type="tns:statusType"/> |
---|
711 | <xsd:element name="experimentAccess" type="tns:accessType" minOccurs="0" |
---|
712 | maxOccurs="1"/> |
---|
713 | </xsd:sequence> |
---|
714 | </xsd:complexType> |
---|
715 | |
---|
716 | |
---|
717 | <xsd:complexType name="multiInfoRequestType"> |
---|
718 | <xsd:annotation> |
---|
719 | <xsd:documentation> |
---|
720 | Gets all information that this user can access on this fedd. |
---|
721 | </xsd:documentation> |
---|
722 | </xsd:annotation> |
---|
723 | <xsd:sequence> |
---|
724 | </xsd:sequence> |
---|
725 | </xsd:complexType> |
---|
726 | |
---|
727 | <xsd:complexType name="multiInfoResponseType"> |
---|
728 | <xsd:annotation> |
---|
729 | <xsd:documentation> |
---|
730 | Multi info response. A list of infoResponses |
---|
731 | </xsd:documentation> |
---|
732 | </xsd:annotation> |
---|
733 | <xsd:sequence> |
---|
734 | <xsd:element name="info" type="tns:infoResponseType" minOccurs="0" |
---|
735 | maxOccurs="unbounded"/> |
---|
736 | </xsd:sequence> |
---|
737 | </xsd:complexType> |
---|
738 | |
---|
739 | <xsd:complexType name="terminateRequestType"> |
---|
740 | <xsd:annotation> |
---|
741 | <xsd:documentation> |
---|
742 | Request to terminate an experiment. |
---|
743 | </xsd:documentation> |
---|
744 | </xsd:annotation> |
---|
745 | <xsd:sequence> |
---|
746 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
747 | <xsd:element name="force" type="xsd:boolean" minOccurs="0" maxOccurs="1"/> |
---|
748 | </xsd:sequence> |
---|
749 | </xsd:complexType> |
---|
750 | |
---|
751 | <xsd:complexType name="terminateResponseType"> |
---|
752 | <xsd:annotation> |
---|
753 | <xsd:documentation> |
---|
754 | Indication that the experiment has been terminated. |
---|
755 | </xsd:documentation> |
---|
756 | </xsd:annotation> |
---|
757 | <xsd:sequence> |
---|
758 | <xsd:element name="experiment" type="tns:IDType"/> |
---|
759 | <xsd:element name="deallocationLog" type="xsd:string" minOccurs="0" |
---|
760 | maxOccurs="1"/> |
---|
761 | </xsd:sequence> |
---|
762 | </xsd:complexType> |
---|
763 | |
---|
764 | <xsd:complexType name="startSegmentRequestType"> |
---|
765 | <xsd:annotation> |
---|
766 | <xsd:documentation> |
---|
767 | Request a testbed to create a segment in the given allocation |
---|
768 | </xsd:documentation> |
---|
769 | </xsd:annotation> |
---|
770 | <xsd:sequence> |
---|
771 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
772 | <xsd:element name="segmentdescription" |
---|
773 | type="tns:experimentDescriptionType"/> |
---|
774 | <!-- begin deprecated --> |
---|
775 | <xsd:element name="master" type="xsd:boolean"/> |
---|
776 | <!-- begin deprecated --> |
---|
777 | <xsd:element name="service" type="tns:serviceInfoType" minOccurs="0" |
---|
778 | maxOccurs="unbounded" /> |
---|
779 | <xsd:element name="connection" type="tns:connectionInfoType" |
---|
780 | minOccurs="0" maxOccurs="unbounded"/> |
---|
781 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
782 | maxOccurs="unbounded"/> |
---|
783 | </xsd:sequence> |
---|
784 | </xsd:complexType> |
---|
785 | |
---|
786 | <xsd:complexType name="startSegmentResponseType"> |
---|
787 | <xsd:annotation> |
---|
788 | <xsd:documentation> |
---|
789 | Indication that the segment started successfully |
---|
790 | </xsd:documentation> |
---|
791 | </xsd:annotation> |
---|
792 | <xsd:sequence> |
---|
793 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
794 | <xsd:element name="allocationLog" type="xsd:string" minOccurs="0" |
---|
795 | maxOccurs="1"/> |
---|
796 | <xsd:element name="fedAttr" type="tns:fedAttrType" minOccurs="0" |
---|
797 | maxOccurs="unbounded"/> |
---|
798 | </xsd:sequence> |
---|
799 | </xsd:complexType> |
---|
800 | |
---|
801 | <xsd:complexType name="terminateSegmentRequestType"> |
---|
802 | <xsd:annotation> |
---|
803 | <xsd:documentation> |
---|
804 | Request to terminate an experiment. |
---|
805 | </xsd:documentation> |
---|
806 | </xsd:annotation> |
---|
807 | <xsd:sequence> |
---|
808 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
809 | <xsd:element name="force" type="xsd:boolean" minOccurs="0" maxOccurs="1"/> |
---|
810 | </xsd:sequence> |
---|
811 | </xsd:complexType> |
---|
812 | |
---|
813 | <xsd:complexType name="terminateSegmentResponseType"> |
---|
814 | <xsd:annotation> |
---|
815 | <xsd:documentation> |
---|
816 | Indication that the experiment has been terminated. |
---|
817 | </xsd:documentation> |
---|
818 | </xsd:annotation> |
---|
819 | <xsd:sequence> |
---|
820 | <xsd:element name="allocID" type="tns:IDType"/> |
---|
821 | <xsd:element name="deallocationLog" type="xsd:string" minOccurs="0" |
---|
822 | maxOccurs="1"/> |
---|
823 | </xsd:sequence> |
---|
824 | </xsd:complexType> |
---|
825 | |
---|
826 | <xsd:complexType name="ns2SplitRequestType"> |
---|
827 | <xsd:annotation> |
---|
828 | <xsd:documentation> |
---|
829 | Request to run the CEDL splitter remotely. This is primarily an |
---|
830 | internal interface. |
---|
831 | </xsd:documentation> |
---|
832 | </xsd:annotation> |
---|
833 | <xsd:sequence> |
---|
834 | <xsd:element name="description" type="tns:experimentDescriptionType"/> |
---|
835 | <xsd:element name="master" type="xsd:string"/> |
---|
836 | <xsd:element name="include_fedkit" type="xsd:boolean"/> |
---|
837 | <xsd:element name="include_gatewaykit" type="xsd:boolean"/> |
---|
838 | </xsd:sequence> |
---|
839 | </xsd:complexType> |
---|
840 | |
---|
841 | <xsd:complexType name="ns2SplitResponseType"> |
---|
842 | <xsd:annotation> |
---|
843 | <xsd:documentation> |
---|
844 | Remote splitter output. Also an internal interface |
---|
845 | </xsd:documentation> |
---|
846 | </xsd:annotation> |
---|
847 | <xsd:sequence> |
---|
848 | <xsd:element name="output" type="xsd:base64Binary"/> |
---|
849 | <xsd:element name="experimentdescription" |
---|
850 | type="tns:experimentDescriptionType"/> |
---|
851 | </xsd:sequence> |
---|
852 | </xsd:complexType> |
---|
853 | |
---|
854 | <xsd:complexType name="setValueRequestType"> |
---|
855 | <xsd:annotation> |
---|
856 | <xsd:documentation> |
---|
857 | Request to set a shared value. |
---|
858 | </xsd:documentation> |
---|
859 | </xsd:annotation> |
---|
860 | <xsd:sequence> |
---|
861 | <xsd:element name="name" type="xsd:string"/> |
---|
862 | <xsd:element name="value" type="xsd:string"/> |
---|
863 | </xsd:sequence> |
---|
864 | </xsd:complexType> |
---|
865 | |
---|
866 | <xsd:complexType name="setValueResponseType"> |
---|
867 | <xsd:annotation> |
---|
868 | <xsd:documentation> |
---|
869 | Request to set a shared value. |
---|
870 | </xsd:documentation> |
---|
871 | </xsd:annotation> |
---|
872 | <xsd:sequence> |
---|
873 | <xsd:element name="name" type="xsd:string"/> |
---|
874 | <xsd:element name="value" type="xsd:string"/> |
---|
875 | </xsd:sequence> |
---|
876 | </xsd:complexType> |
---|
877 | |
---|
878 | <xsd:complexType name="getValueRequestType"> |
---|
879 | <xsd:annotation> |
---|
880 | <xsd:documentation> |
---|
881 | Request to set a shared value. |
---|
882 | </xsd:documentation> |
---|
883 | </xsd:annotation> |
---|
884 | <xsd:sequence> |
---|
885 | <xsd:element name="name" type="xsd:string"/> |
---|
886 | <xsd:element name="wait" type="xsd:boolean"/> |
---|
887 | </xsd:sequence> |
---|
888 | </xsd:complexType> |
---|
889 | |
---|
890 | <xsd:complexType name="getValueResponseType"> |
---|
891 | <xsd:annotation> |
---|
892 | <xsd:documentation> |
---|
893 | Request to set a shared value. |
---|
894 | </xsd:documentation> |
---|
895 | </xsd:annotation> |
---|
896 | <xsd:sequence> |
---|
897 | <xsd:element name="name" type="xsd:string"/> |
---|
898 | <xsd:element name="value" type="xsd:string" minOccurs="0" maxOccurs="1"/> |
---|
899 | </xsd:sequence> |
---|
900 | </xsd:complexType> |
---|
901 | |
---|
902 | <xsd:complexType name="faultType"> |
---|
903 | <xsd:annotation> |
---|
904 | <xsd:documentation> |
---|
905 | Indication that a service has failed. The code values are |
---|
906 | |
---|
907 | 1 access denied |
---|
908 | 2 proxy error |
---|
909 | 3 badly formed request |
---|
910 | 4 server configuration error |
---|
911 | 5 internal error |
---|
912 | 6 partial instantiation |
---|
913 | 7 federant error |
---|
914 | |
---|
915 | Errstr contains the text above corresponding to the code. Code |
---|
916 | is always present. Desc provides additional human-readable data |
---|
917 | about the error. |
---|
918 | </xsd:documentation> |
---|
919 | </xsd:annotation> |
---|
920 | <xsd:sequence> |
---|
921 | <xsd:element name="code" type="xsd:int"> |
---|
922 | <xsd:restriction> |
---|
923 | <xsd:enumeration value="1"/> <!-- access denied --> |
---|
924 | <xsd:enumeration value="2"/> <!-- protocol error --> |
---|
925 | <xsd:enumeration value="3"/> <!-- badly formed request --> |
---|
926 | <xsd:enumeration value="4"/> <!-- server configuration error --> |
---|
927 | <xsd:enumeration value="5"/> <!-- internal error --> |
---|
928 | <xsd:enumeration value="6"/> <!-- partial instantiation --> |
---|
929 | <xsd:enumeration value="7"/> <!-- federant error --> |
---|
930 | <xsd:enumeration value="8"/> <!-- connect error --> |
---|
931 | </xsd:restriction> |
---|
932 | </xsd:element> |
---|
933 | <xsd:element name="errstr" minOccurs="0" maxOccurs="1" type="xsd:string"> |
---|
934 | </xsd:element> |
---|
935 | <xsd:element name="desc" type="xsd:string"/> |
---|
936 | </xsd:sequence> |
---|
937 | </xsd:complexType> |
---|
938 | </xsd:schema> |
---|