sfa-0.9-17 tag
[sfa.git] / sfa / managers / vini / vini.rnc
1 start = RSpec
2 RSpec = element RSpec { 
3    attribute type { xsd:NMTOKEN },
4    ( network | request )
5 }
6 network = element network {
7    attribute name { xsd:NMTOKEN },
8    attribute slice { xsd:NMTOKEN }?,
9    sliver_defaults?,
10    site+,
11    link*
12 }
13 sliver_defaults = element sliver_defaults {
14    sliver_elements
15 }
16 site = element site { 
17    attribute id { xsd:ID },
18    element name { text },
19    node*
20 }
21 node = element node {
22    attribute id { xsd:ID },
23    element hostname { text },
24    element bw_unallocated { attribute units { xsd:NMTOKEN }, text }?,
25    element bw_limit { attribute units { xsd:NMTOKEN }, text }?,
26    sliver*
27 }
28 link = element link { 
29    attribute endpoints { xsd:IDREFS },
30    element description { text }?,
31    element bw_unallocated { attribute units { xsd:NMTOKEN }, text },
32    vlink*
33 }
34 request = element request {
35    attribute name { xsd:NMTOKEN },
36    sliver_defaults?,
37    sliver*,
38    vlink*
39 }
40 sliver = element sliver { 
41    attribute nodeid { xsd:ID }?,
42    sliver_elements
43 }
44 sliver_elements = ( 
45    element capabilities { text }? 
46  & element codemux { text }* 
47  & element cpu_pct { text }?
48  & element cpu_share { text }?
49  & element delegations { text }?
50  & element disk_max { text }?
51  & element initscript { text }?
52  & element ip_addresses {text }*
53  & element net_i2_max_kbyte { text }?
54  & element net_i2_max_rate { text }?
55  & element net_i2_min_rate { text }?
56  & element net_i2_share { text }?
57  & element net_i2_thresh_kbyte { text }?
58  & element net_max_kbyte { text }?
59  & element net_max_rate { text }?
60  & element net_min_rate { text }?
61  & element net_share { text }?
62  & element net_thresh_kbyte { text }?
63  & element vsys {text}*
64  & element vsys_vnet { text }?
65 )
66 vlink = element vlink { 
67    attribute endpoints { xsd:IDREFS }?,
68    element description { text }?,
69    element kbps { text }? 
70 }