2 * Copyright (c) 2015 Huawei Technologies Co., Ltd. and others. All rights reserved.
\r
4 * This program and the accompanying materials are made available under the
\r
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
\r
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
\r
11 namespace "urn:opendaylight:params:xml:ns:yang:nemo:common";
\r
12 prefix "nemo-common";
\r
14 revision "2015-06-29" {
\r
16 "Initial revision.";
\r
19 /**********************
\r
21 **********************/
\r
22 typedef description {
\r
23 description "A human-readable description for a object.";
\r
31 "A generic string name type. Must start with a letter";
\r
33 pattern '[a-zA-Z]([a-zA-Z0-9\-_.])*';
\r
38 // UUID type from ietf-yang-types@2013-07-15
\r
41 pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-'
\r
42 + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}';
\r
45 "A Universally Unique IDentifier in the string representation
\r
46 defined in RFC 4122. The canonical representation uses
\r
47 lowercase characters.
\r
49 The following is an example of a UUID in string
\r
50 representation: f81d4fae-7dec-11d0-a765-00a0c91e6bf6";
\r
52 "RFC 4122: A Universally Unique IDentifier (UUID) URN
\r
58 description "A globally unique identifier";
\r
61 /*********************
\r
63 *********************/
\r
66 description "A unique ID for a parameterized object";
\r
69 typedef node-definition-id {
\r
71 description "A unique ID for a node definition.";
\r
73 typedef node-instance-id {
\r
75 description "A unique ID for a node instance.";
\r
78 typedef connection-definition-id {
\r
80 description "A unique ID for a connection definition.";
\r
82 typedef connection-instance-id {
\r
84 description "A unique ID for a connection instance.";
\r
87 typedef flow-definition-id {
\r
89 description "A unique ID for a flow definition.";
\r
91 typedef flow-instance-id {
\r
93 description "A unique ID for a flow instance.";
\r
96 typedef expected-definition-id {
\r
98 description "A unique ID for an expected definition.";
\r
100 typedef expected-instance-id {
\r
102 description "A unique ID for an expected instance.";
\r
105 typedef avoid-definition-id {
\r
107 description "A unique ID for an avoid definition.";
\r
109 typedef avoid-instance-id {
\r
111 description "A unique ID for an avoid instance.";
\r
114 typedef context-id {
\r
116 description "A unique ID for a context.";
\r
119 typedef intent-id {
\r
121 description "A unique ID for an intent.";
\r
126 description "A unique ID for a user.";
\r
131 /*********************
\r
133 *********************/
\r
134 typedef object-name {
\r
136 description "A name for a parameterized object";
\r
139 typedef node-instance-name {
\r
141 description "A name for a node instance.";
\r
144 typedef connection-instance-name {
\r
146 description "A name for a connection instance.";
\r
149 typedef flow-instance-name {
\r
151 description "A name for a flow instance.";
\r
154 typedef node-property-name {
\r
156 description "A name for a node property.";
\r
159 typedef connection-property-name {
\r
161 description "A name for a connection property.";
\r
164 typedef match-item-name {
\r
166 description "A name for a flow match item.";
\r
169 typedef property-name {
\r
171 description "A name for a property.";
\r
174 typedef parameter-name {
\r
176 description "A name for a parameter.";
\r
179 typedef action-definition-name {
\r
181 description "A name for an action definition.";
\r
183 typedef action-instance-name {
\r
185 description "A name for an action instance.";
\r
187 typedef condition-definition-name {
\r
189 description "A name for a condition definition.";
\r
191 typedef condition-instance-name {
\r
193 description "A name for a condition instance.";
\r
195 typedef condition-parameter-name {
\r
197 description "A name for a condition parameter.";
\r
199 typedef constraint-definition-name {
\r
201 description "A name for a constraint definition.";
\r
203 typedef constraint-instance-name {
\r
205 description "A name for a constraint instance.";
\r
207 typedef constraint-parameter-name {
\r
209 description "A name for a constraint parameter.";
\r
213 typedef data-name {
\r
215 description "A name for an action data.";
\r
218 typedef context-name {
\r
220 description "A name for an context";
\r
223 typedef intent-name {
\r
225 description "A name for an intent.";
\r
227 typedef user-name {
\r
229 description "A name for a user.";
\r
231 typedef expected-instance-name {
\r
233 description "A name for an expected instance.";
\r
235 typedef avoid-instance-name {
\r
237 description "A name for an avoid instance.";
\r
242 /*********************
\r
244 *********************/
\r
245 typedef node-definition-type {
\r
247 description "A type for a node.";
\r
249 typedef connection-definition-type {
\r
251 description "A type for a connection.";
\r
253 typedef flow-definition-type {
\r
255 description "A type for a flow.";
\r
257 typedef node-instance-type {
\r
259 description "A type for a node instance.";
\r
261 typedef connection-instance-type {
\r
263 description "A type for a connection instance.";
\r
265 typedef flow-instance-type {
\r
267 description "A type for a flow instance.";
\r