source: wsdl/fedd_types.xsd @ 7b26c39

axis_examplecompt_changesinfo-opsversion-3.01version-3.02
Last change on this file since 7b26c39 was 7b26c39, checked in by Ted Faber <faber@…>, 14 years ago

Cleanup and split creation into two operations.

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