sfa-0.9-17 tag
[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    euca_instances?
41 }
42 request = element request {
43    instances,
44    kernel_image,
45    ramdisk,
46    disk_image,
47    keypair
48 }
49 euca_instances = element euca_instances {
50    euca_instance+
51 }
52 euca_instance = element euca_instance {
53    attribute id { xsd:ID },
54    state,
55    public_dns,
56    keypair
57 }
58 credential = element credential { text }
59 ipv4 = element ipv4 { text }
60 keypair = element keypair { text }
61 type = element type { text }
62 arch = element arch { text }
63 state = element state { text }
64 location = element location { text }
65 free_slots = element free_slots { text }
66 max_instances = element max_instances { text }
67 cores = element cores { text }
68 public_dns = element public_dns { text }
69 memory = element memory {
70    attribute unit { xsd:NMTOKEN },
71    text
72 }
73 disk_space = element disk_space {
74    attribute unit { xsd:NMTOKEN },
75    text
76 }
77 instances = element instances { xsd:unsignedInt }
78 kernel_image = element kernel_image {
79    attribute id { xsd:IDREF },
80    empty
81 }
82 ramdisk = element ramdisk {
83    attribute id { xsd:IDREF }?,
84    empty
85 }
86 disk_image = element disk_image {
87    attribute id { xsd:IDREF },
88    empty
89 }