Replace dashes with underscores to work around xmlbuilder limitation
[sfa.git] / sfa / managers / eucalyptus / eucalyptus.rnc
1 start = RSpec
2 RSpec = element RSpec {
3    attribute type { xsd:NMTOKEN },
4    cloud
5 }
6 cloud = element cloud {
7    attribute id { xsd:NMTOKEN },
8    user_info?,
9    ipv4,
10    keypairs,
11    images,
12    cluster+
13 }
14 user_info = element user_info { 
15    credential 
16 }
17 keypairs = element keypairs { keypair+ }
18 images = element images { image+ }
19 image = element image {
20    attribute id { xsd:ID },
21    type,
22    arch,
23    state,
24    location
25 }
26 cluster = element cluster {
27    attribute id { xsd:ID },
28    ipv4,
29    vm_types
30 }
31 vm_types = element vm_types { vm_type+ }
32 vm_type = element vm_type {
33    attribute name { xsd:ID },
34    free_slots,
35    max_instances,
36    cores,
37    memory,
38    disk_space,
39    request?
40 }
41 request = element request {
42    instances,
43    kernel_image,
44    ramdisk,
45    disk_image,
46    keypair
47 }
48 credential = element credential { text }
49 ipv4 = element ipv4 { text }
50 keypair = element keypair { text }
51 type = element type { text }
52 arch = element arch { text }
53 state = element state { text }
54 location = element location { text }
55 free_slots = element free_slots { text }
56 max_instances = element max_instances { text }
57 cores = element cores { text }
58 memory = element memory {
59    attribute unit { xsd:NMTOKEN },
60    text
61 }
62 disk_space = element disk_space {
63    attribute unit { xsd:NMTOKEN },
64    text
65 }
66 instances = element instances { xsd:unsignedInt }
67 kernel_image = element kernel_image {
68    attribute id { xsd:IDREF },
69    empty
70 }
71 ramdisk = element ramdisk {
72    attribute id { xsd:IDREF }?,
73    empty
74 }
75 disk_image = element disk_image {
76    attribute id { xsd:IDREF },
77    empty
78 }