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