blob: da58981eaf368741bad58ac51604ce5d859451e0 [file] [log] [blame]
sb980529d242b12016-09-13 20:47:26 +02001module xos-types {
2 namespace "urn:onlab:xos:types";
Peter K. Lee4d936892016-09-13 11:59:21 -07003 prefix xtype;
sb980529d242b12016-09-13 20:47:26 +02004 yang-version 1.1;
5
6 organization
7 "Open Networking Lab (CORD) / Corenova Technologies";
8
9 contact
10 "Larry Peterson <llp@onlab.us>
11 Peter K. Lee <peter@corenova.com>";
12
13 import ietf-yang-types { prefix yang; }
14
15 revision 2016-09-12 {
16 description "Initial revision.";
17 }
18
Peter K. Lee4d936892016-09-13 11:59:21 -070019 /*
20 * Typedefs
21 */
22 typedef unique-identifier {
sb980529d242b12016-09-13 20:47:26 +020023 description "defines valid formats for external reference id";
24 type union {
25 type uint32 { range 1..max; }
26 type yang:uuid;
27 type inet:uri;
28 }
29 }
Peter K. Lee4d936892016-09-13 11:59:21 -070030 typedef bandwidth {
31 type uint32 {
32 range 1000000..max; // should be at least 1 Mbps?
sb980529d242b12016-09-13 20:47:26 +020033 }
Peter K. Lee4d936892016-09-13 11:59:21 -070034 units 'bps';
35 }
36 typedef vlan {
37 type uint16 { range 0..4095; }
38 }
39 typedef image {
40 type unique-identifier;
41 }
42 typedef controller-network {
43 type unique-identifier;
44 }
45 typedef site {
46 type unique-identifier;
47 }
48 typedef tenant-root-role {
49 type unique-identifier;
50 }
51 typedef slice-role {
52 type unique-identifier;
53 }
54 typedef site-deployment {
55 type unique-identifier;
56 }
57 typedef tenant-privilege {
58 type unique-identifier;
59 }
60 typedef tag {
61 type unique-identifier;
62 }
63 typedef user-credential {
64 type unique-identifier;
65 }
66 typedef invoice {
67 type unique-identifier;
68 }
69 typedef slice-privilege {
70 type unique-identifier;
71 }
72 typedef flavor {
73 type unique-identifier;
74 }
75 typedef port {
76 type unique-identifier;
77 }
78 typedef service-role {
79 type unique-identifier;
80 }
81 typedef controller-site {
82 type unique-identifier;
83 }
84 typedef controller-slice {
85 type unique-identifier;
86 }
87 typedef tenant-role {
88 type unique-identifier;
89 }
90 typedef slice {
91 type unique-identifier;
92 }
93 typedef network {
94 type unique-identifier;
95 }
96 typedef controller-role {
97 type unique-identifier;
98 }
99 typedef diag {
100 type unique-identifier;
101 }
102 typedef service-class {
103 type unique-identifier;
104 }
105 typedef tenant-attribute {
106 type unique-identifier;
107 }
108 typedef site-role {
109 type unique-identifier;
110 }
111 typedef subscriber {
112 type unique-identifier;
113 }
114 typedef instance {
115 type unique-identifier;
116 }
117 typedef charge {
118 type unique-identifier;
119 }
120 typedef program {
121 type unique-identifier;
122 }
123 typedef role {
124 type unique-identifier;
125 }
126 typedef usable-object {
127 type unique-identifier;
128 }
129 typedef node-label {
130 type unique-identifier;
131 }
132 typedef slice-credential {
133 type unique-identifier;
134 }
135 typedef node {
136 type unique-identifier;
137 }
138 typedef address-pool {
139 type unique-identifier;
140 }
141 typedef dashboard-view {
142 type unique-identifier;
143 }
144 typedef network-parameter {
145 type unique-identifier;
146 }
147 typedef image-deployments {
148 type unique-identifier;
149 }
150 typedef controller-user {
151 type unique-identifier;
152 }
153 typedef reserved-resource {
154 type unique-identifier;
155 }
156 typedef network-template {
157 type unique-identifier;
158 }
159 typedef controller-dashboard-view {
160 type unique-identifier;
161 }
162 typedef user-dashboard-view {
163 type unique-identifier;
164 }
165 typedef controller {
166 type unique-identifier;
167 }
168 typedef user {
169 type unique-identifier;
170 }
171 typedef deployment {
172 type unique-identifier;
173 }
174 typedef reservation {
175 type unique-identifier;
176 }
177 typedef site-privilege {
178 type unique-identifier;
179 }
180 typedef payment {
181 type unique-identifier;
182 }
183 typedef tenant {
184 type unique-identifier;
185 }
186 typedef network-slice {
187 type unique-identifier;
188 }
189 typedef account {
190 type unique-identifier;
191 }
192 typedef tenant-root {
193 type unique-identifier;
194 }
195 typedef service {
196 type unique-identifier;
197 }
198 typedef controller-slice-privilege {
199 type unique-identifier;
200 }
201 typedef site-credential {
202 type unique-identifier;
203 }
204 typedef deployment-privilege {
205 type unique-identifier;
206 }
207 typedef network-parameter-type {
208 type unique-identifier;
209 }
210 typedef provider {
211 type unique-identifier;
212 }
213 typedef tenant-with-container {
214 type unique-identifier;
215 }
216 typedef deployment-role {
217 type unique-identifier;
218 }
219 typedef project {
220 type unique-identifier;
221 }
222 typedef tenant-root-privilege {
223 type unique-identifier;
224 }
225 typedef slice-tag {
226 type unique-identifier;
227 }
228 typedef coarse-tenant {
229 type unique-identifier;
230 }
231 typedef router {
232 type unique-identifier;
233 }
234 typedef service-resource {
235 type unique-identifier;
236 }
237 typedef service-privilege {
238 type unique-identifier;
sb980529d242b12016-09-13 20:47:26 +0200239 }
240}