349cb1bcb0813c8339cc526082e2ce3a11933ba1
[sfa.git] / sfa / managers / pl / pl.rng
1 <?xml version="1.0" encoding="UTF-8"?>
2 <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3   <start>
4     <ref name="RSpec"/>
5   </start>
6   <define name="RSpec">
7     <element name="RSpec">
8       <attribute name="type">
9         <data type="NMTOKEN"/>
10       </attribute>
11       <choice>
12         <ref name="network"/>
13         <ref name="request"/>
14       </choice>
15     </element>
16   </define>
17   <define name="network">
18     <element name="network">
19       <attribute name="name">
20         <data type="NMTOKEN"/>
21       </attribute>
22       <optional>
23         <attribute name="slice">
24           <data type="NMTOKEN"/>
25         </attribute>
26       </optional>
27       <optional>
28         <ref name="sliver_defaults"/>
29       </optional>
30       <oneOrMore>
31         <ref name="site"/>
32       </oneOrMore>
33     </element>
34   </define>
35   <define name="sliver_defaults">
36     <element name="sliver_defaults">
37       <ref name="sliver_elements"/>
38     </element>
39   </define>
40   <define name="site">
41     <element name="site">
42       <attribute name="id">
43         <data type="ID"/>
44       </attribute>
45       <element name="name">
46         <text/>
47       </element>
48       <zeroOrMore>
49         <ref name="node"/>
50       </zeroOrMore>
51     </element>
52   </define>
53   <define name="node">
54     <element name="node">
55       <attribute name="id">
56         <data type="ID"/>
57       </attribute>
58       <element name="hostname">
59         <text/>
60       </element>
61       <optional>
62         <element name="bw_limit">
63           <attribute name="units">
64             <data type="NMTOKEN"/>
65           </attribute>
66           <text/>
67         </element>
68         <element name="urn">
69             <text/>
70         </element>
71       </optional>
72       <zeroOrMore>
73         <ref name="sliver"/>
74       </zeroOrMore>
75     </element>
76   </define>
77   <define name="request">
78     <element name="request">
79       <attribute name="name">
80         <data type="NMTOKEN"/>
81       </attribute>
82       <optional>
83         <ref name="sliver_defaults"/>
84       </optional>
85       <zeroOrMore>
86         <ref name="sliver"/>
87       </zeroOrMore>
88     </element>
89   </define>
90   <define name="sliver">
91     <element name="sliver">
92       <optional>
93         <attribute name="nodeid">
94           <data type="ID"/>
95         </attribute>
96       </optional>
97       <ref name="sliver_elements"/>
98     </element>
99   </define>
100   <define name="sliver_elements">
101     <interleave>
102       <optional>
103         <element name="capabilities">
104           <text/>
105         </element>
106       </optional>
107       <zeroOrMore>
108         <element name="codemux">
109           <text/>
110         </element>
111       </zeroOrMore>
112       <optional>
113         <element name="cpu_pct">
114           <text/>
115         </element>
116       </optional>
117       <optional>
118         <element name="cpu_share">
119           <text/>
120         </element>
121       </optional>
122       <optional>
123         <element name="delegations">
124           <text/>
125         </element>
126       </optional>
127       <optional>
128         <element name="disk_max">
129           <text/>
130         </element>
131       </optional>
132       <optional>
133         <element name="initscript">
134           <text/>
135         </element>
136       </optional>
137       <zeroOrMore>
138         <element name="ip_addresses">
139           <text/>
140         </element>
141       </zeroOrMore>
142       <optional>
143         <element name="net_i2_max_kbyte">
144           <text/>
145         </element>
146       </optional>
147       <optional>
148         <element name="net_i2_max_rate">
149           <text/>
150         </element>
151       </optional>
152       <optional>
153         <element name="net_i2_min_rate">
154           <text/>
155         </element>
156       </optional>
157       <optional>
158         <element name="net_i2_share">
159           <text/>
160         </element>
161       </optional>
162       <optional>
163         <element name="net_i2_thresh_kbyte">
164           <text/>
165         </element>
166       </optional>
167       <optional>
168         <element name="net_max_kbyte">
169           <text/>
170         </element>
171       </optional>
172       <optional>
173         <element name="net_max_rate">
174           <text/>
175         </element>
176       </optional>
177       <optional>
178         <element name="net_min_rate">
179           <text/>
180         </element>
181       </optional>
182       <optional>
183         <element name="net_share">
184           <text/>
185         </element>
186       </optional>
187       <optional>
188         <element name="net_thresh_kbyte">
189           <text/>
190         </element>
191       </optional>
192       <zeroOrMore>
193         <element name="vsys">
194           <text/>
195         </element>
196       </zeroOrMore>
197       <optional>
198         <element name="vsys_vnet">
199           <text/>
200         </element>
201       </optional>
202     </interleave>
203   </define>
204 </grammar>