1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <xsd:schema xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:pl="http://www.planet-lab.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="pl" ecore:package="planetlab.planetlab" targetNamespace="http://www.planet-lab.org">
3 <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/>
4 <xsd:element ecore:ignore="true" name="RSpec" type="pl:RSpec"/>
5 <xsd:element ecore:ignore="true" name="NetSpec" type="pl:NetSpec"/>
6 <xsd:element ecore:ignore="true" name="NodeSpec" type="pl:NodeSpec"/>
7 <xsd:element ecore:ignore="true" name="LinkSpec" type="pl:LinkSpec"/>
8 <xsd:element ecore:ignore="true" name="IfSpec" type="pl:IfSpec"/>
9 <xsd:element ecore:ignore="true" name="SwitchSpec" type="pl:SwitchSpec"/>
10 <xsd:complexType name="RSpec">
11 <xsd:attribute ecore:reference="pl:NetSpec" name="networks" use="required">
13 <xsd:list itemType="xsd:anyURI"/>
16 <xsd:attribute ecore:name="start_time" name="start_time" type="ecore:EDate"/>
17 <xsd:attribute name="duration" type="ecore:EDate"/>
19 <xsd:complexType name="NetSpec">
21 <xsd:element ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="links" type="pl:LinkSpec"/>
23 <xsd:attribute name="name" type="ecore:EString"/>
24 <xsd:attribute ecore:reference="pl:NodeSpec" name="nodes" use="required">
26 <xsd:list itemType="xsd:anyURI"/>
29 <xsd:attribute ecore:name="start_time" name="start_time" type="ecore:EDate"/>
30 <xsd:attribute name="duration" type="ecore:EDate"/>
32 <xsd:complexType name="NodeSpec">
34 <xsd:element ecore:unique="true" maxOccurs="1000" name="name" nillable="true" type="ecore:EString"/>
36 <xsd:attribute default="""" ecore:unsettable="false" name="type" type="ecore:EString"/>
37 <xsd:attribute default="" ecore:name="init_params" ecore:unsettable="false" name="init_params" type="ecore:EByteArray"/>
38 <xsd:attribute default="0" ecore:name="cpu_min" ecore:unsettable="false" name="cpu_min" type="ecore:EInt"/>
39 <xsd:attribute default="0" ecore:name="cpu_share" ecore:unsettable="false" name="cpu_share" type="ecore:EInt"/>
40 <xsd:attribute default="0" ecore:name="cpu_pct" ecore:unsettable="false" name="cpu_pct" type="ecore:EInt"/>
41 <xsd:attribute default="0" ecore:name="disk_max" ecore:unsettable="false" name="disk_max" type="ecore:EInt"/>
42 <xsd:attribute ecore:name="net_if" ecore:reference="pl:IfSpec" name="net_if" use="required">
44 <xsd:list itemType="xsd:anyURI"/>
47 <xsd:attribute ecore:name="start_time" name="start_time" type="ecore:EDate"/>
48 <xsd:attribute name="duration" type="ecore:EDate"/>
50 <xsd:complexType name="LinkSpec">
52 <xsd:element default="0" ecore:unique="true" maxOccurs="unbounded" minOccurs="0" name="bw" type="ecore:EInt"/>
53 <xsd:element default="0" ecore:name="max_alloc" ecore:unique="true" maxOccurs="unbounded" minOccurs="0" name="max_alloc" type="ecore:EInt"/>
55 <xsd:attribute default="""" ecore:changeable="false" ecore:unsettable="false" name="type" type="ecore:EString"/>
56 <xsd:attribute ecore:name="init_params" name="init_params" type="ecore:EByteArray"/>
57 <xsd:attribute default="0" ecore:name="min_alloc" ecore:unsettable="false" name="min_alloc" type="ecore:EInt"/>
58 <xsd:attribute ecore:changeable="false" ecore:reference="pl:IfSpec" name="endpoint" use="required">
60 <xsd:list itemType="xsd:anyURI"/>
63 <xsd:attribute ecore:name="start_time" name="start_time" type="ecore:EDate"/>
64 <xsd:attribute name="duration" type="ecore:EDate"/>
66 <xsd:complexType name="IfSpec">
68 <xsd:element default="5452595" ecore:name="max_kbyte" ecore:unique="true" ecore:unsettable="true" maxOccurs="unbounded" minOccurs="0" name="max_kbyte" type="ecore:EInt"/>
70 <xsd:attribute name="name" type="ecore:EString"/>
71 <xsd:attribute name="addr" type="ecore:EString"/>
72 <xsd:attribute default="" ecore:changeable="false" ecore:unsettable="false" name="type" type="ecore:EString"/>
73 <xsd:attribute default="" ecore:name="init_params" ecore:unsettable="false" name="init_params" type="ecore:EByteArray"/>
74 <xsd:attribute default="0" ecore:name="min_rate" ecore:unsettable="false" name="min_rate" type="ecore:EInt"/>
75 <xsd:attribute default="12207" ecore:name="max_rate" ecore:unsettable="false" name="max_rate" type="ecore:EInt"/>
76 <xsd:attribute default="false" ecore:name="ip_spoof" ecore:unsettable="false" name="ip_spoof" type="ecore:EBoolean"/>
78 <xsd:complexType name="SwitchSpec">
80 <xsd:extension base="pl:NodeSpec">
81 <xsd:attribute default="0" ecore:name="fib_max" ecore:unsettable="false" name="fib_max" type="ecore:EInt"/>