blob: f6205712d135ff6d1a9d526efc000c2e7ade1262 [file] [log] [blame]
Toru Furusawa28988892017-10-30 17:28:40 -07001module tapi-oam {
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -08002 namespace "urn:onf:otcc:yang:tapi-oam";
Toru Furusawa28988892017-10-30 17:28:40 -07003 prefix tapi-oam;
4 import tapi-common {
5 prefix tapi-common;
6 }
7 import tapi-connectivity {
8 prefix tapi-connectivity;
9 }
10 import tapi-topology {
11 prefix tapi-topology;
12 }
Yuta HIGUCHI80d0bbd2018-02-28 11:13:11 -080013 organization "ONF OTCC (Open Transport Configuration & Control) Project";
14 contact "
15 Project Web: <https://wiki.opennetworking.org/display/OTCC/TAPI>
16 Project List: <mailto:transport-api@opennetworking.org>
17 Editor: Karthik Sethuraman
18 <mailto:karthik.sethuraman@necam.com>";
19 description "
20 This module contains TAPI OAM Model definitions.
21 Source: TapiOam.uml
22 Copyright (c) 2018 Open Networking Foundation (ONF). All rights reserved.
23 License: This module is distributed under the Apache License 2.0";
24 revision 2018-02-16 {
25 description "ONF Transport API version 2.0.1
26 This YANG module has been generated from the TAPI UML Model using the IISOMI-Eagle xmi2yang mapping tool version .
27 <https://wiki.opennetworking.org/display/OIMT/IISOMI>
28 Changes in this revision: <https://github.com/OpenNetworkingFoundation/Snowmass-ONFOpenTransport/blob/develop/change-log.md>";
29 reference "ONF-TR-527, ONF-TR-512, ONF-TR-531, RFC 6020, RFC 6087 and ONF TAPI UML model
30 <https://github.com/OpenNetworkingFoundation/Snowmass-ONFOpenTransport/tree/develop/UML>";
Toru Furusawa28988892017-10-30 17:28:40 -070031 }
32 augment "/tapi-common:context" {
33 uses oam-context;
34 description "Augments the base TAPI Context with OamService information";
35 }
36 augment "/tapi-common:context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point" {
37 uses mep-mip-list;
38 description "none";
39 }
40 augment "/tapi-common:context/tapi-topology:topology/tapi-topology:node/tapi-topology:owned-node-edge-point/tapi-connectivity:connection-end-point" {
41 uses mep-mip-list;
42 description "none";
43 }
44 /***********************
45 * package object-classes
46 **********************/
47 grouping mep {
48 leaf-list on-demand-measurement-job {
49 type leafref {
50 path '/tapi-common:context/tapi-oam:oam-service/tapi-oam:end-point/tapi-oam:on-demand-measurement-job/tapi-oam:local-id';
51 }
52 config false;
53 description "none";
54 }
55 leaf-list pro-active-measurement-job {
56 type leafref {
57 path '/tapi-common:context/tapi-oam:oam-service/tapi-oam:end-point/tapi-oam:pro-active-measurement-job/tapi-oam:local-id';
58 }
59 config false;
60 description "none";
61 }
62 leaf layer-protocol-name {
63 type tapi-common:layer-protocol-name;
64 config false;
65 description "none";
66 }
67 leaf meg-identifier {
68 type string;
69 config false;
70 description "none";
71 }
72 leaf mep-identifier {
73 type string;
74 config false;
75 description "none";
76 }
77 leaf-list peer-mep-identifier {
78 type string;
79 config false;
80 min-elements 1;
81 description "none";
82 }
83 leaf monitored-direction {
84 type tapi-common:termination-direction;
85 description "none";
86 }
87 uses tapi-common:local-class;
88 description "none";
89 }
90 grouping on-demand-measurement-job {
Toru Furusawa28988892017-10-30 17:28:40 -070091 uses tapi-common:local-class;
wu6a418d22018-02-02 01:49:21 -050092 uses tapi-common:admin-state-pac;
Toru Furusawa28988892017-10-30 17:28:40 -070093 description "none";
94 }
95 grouping pro-active-measurement-job {
Toru Furusawa28988892017-10-30 17:28:40 -070096 uses tapi-common:local-class;
wu6a418d22018-02-02 01:49:21 -050097 uses tapi-common:admin-state-pac;
Toru Furusawa28988892017-10-30 17:28:40 -070098 description "none";
99 }
100 grouping meg {
101 list me {
102 key 'local-id';
103 config false;
104 min-elements 1;
105 uses me;
106 description "none";
107 }
108 list mep {
109 key 'local-id';
110 config false;
111 uses mep;
112 description "1. ME may have 0 MEPs (case of transit domains where at least 1 MIP is present)
113 2. ME may have 1 MEP (case of edge domaind, where the peer MEP is ouside the managed domain)
114 3. ME may have 2 MEPs";
115 }
116 list mip {
117 key 'local-id';
118 config false;
119 uses mip;
120 description "ME may 0, 1, or more MIPs";
121 }
122 leaf meg-level {
123 type uint64;
124 config false;
125 description "none";
126 }
127 uses tapi-common:resource-spec;
128 description "none";
129 }
130 grouping me {
131 leaf-list mep {
132 type leafref {
133 path '/tapi-common:context/tapi-oam:meg/tapi-oam:mep/tapi-oam:local-id';
134 }
135 config false;
136 max-elements 2;
137 description "none";
138 }
139 leaf-list mip {
140 type leafref {
141 path '/tapi-common:context/tapi-oam:meg/tapi-oam:mip/tapi-oam:local-id';
142 }
143 config false;
144 description "none";
145 }
146 leaf connection-route {
147 type leafref {
148 path '/tapi-common:context/tapi-connectivity:connection/tapi-connectivity:route/tapi-connectivity:local-id';
149 }
150 config false;
151 description "none";
152 }
153 uses tapi-common:local-class;
154 description "none";
155 }
156 grouping mip {
157 leaf layer-protocol-name {
158 type tapi-common:layer-protocol-name;
159 config false;
160 description "none";
161 }
162 uses tapi-common:local-class;
163 description "none";
164 }
165 grouping oam-service {
166 leaf meg {
167 type leafref {
168 path '/tapi-common:context/tapi-oam:meg/tapi-oam:uuid';
169 }
170 config false;
171 description "none";
172 }
173 list end-point {
174 key 'local-id';
175 min-elements 1;
176 uses oam-service-end-point;
177 description "none";
178 }
179 uses tapi-common:service-spec;
180 description "none";
181 }
182 grouping oam-context {
183 list oam-service {
184 key 'uuid';
185 uses oam-service;
186 description "none";
187 }
188 list meg {
189 key 'uuid';
190 config false;
191 uses meg;
192 description "none";
193 }
194 description "none";
195 }
196 grouping oam-service-end-point {
197 leaf service-interface-point {
198 type leafref {
199 path '/tapi-common:context/tapi-common:service-interface-point/tapi-common:uuid';
200 }
201 description "none";
202 }
203 leaf connectivity-service-end-point {
204 type leafref {
205 path '/tapi-common:context/tapi-connectivity:connectivity-service/tapi-connectivity:end-point/tapi-connectivity:local-id';
206 }
207 description "none";
208 }
209 list pro-active-measurement-job {
210 key 'local-id';
211 uses pro-active-measurement-job;
212 description "none";
213 }
214 list on-demand-measurement-job {
215 key 'local-id';
216 uses on-demand-measurement-job;
217 description "none";
218 }
219 leaf associated-mep {
220 type leafref {
221 path '/tapi-common:context/tapi-oam:meg/tapi-oam:mep/tapi-oam:local-id';
222 }
223 config false;
224 description "none";
225 }
226 leaf direction {
227 type tapi-common:port-direction;
228 config false;
229 description "none";
230 }
231 uses tapi-common:local-class;
232 description "none";
233 }
234 grouping mep-mip-list {
235 leaf-list mip {
236 type leafref {
237 path '/tapi-common:context/tapi-oam:meg/tapi-oam:mip/tapi-oam:local-id';
238 }
239 description "none";
240 }
241 leaf-list mep {
242 type leafref {
243 path '/tapi-common:context/tapi-oam:meg/tapi-oam:mep/tapi-oam:local-id';
244 }
245 description "none";
246 }
247 description "none";
248 }
249
250 /***********************
251 * package interfaces
252 **********************/
253 rpc abort-measurement-job {
254 description "none";
255 }
256 rpc disable-pro-active-measurement-job {
257 description "none";
258 }
259 rpc enable-pro-active-measurement-job {
260 description "none";
261 }
262 rpc establish-measurement-job {
263 description "none";
264 }
265 rpc get-contained-measurement-jobs {
266 description "none";
267 }
268 rpc terminate-measurement-job {
269 description "none";
270 }
271 rpc get-all-contained-meg {
272 description "none";
273 }
274
275}