2 namespace "http://metroethernetforum.org/ns/yang/mef-services";
4 import ietf-yang-types { prefix yang; }
5 import ietf-inet-types { prefix inet; }
6 import mef-types { prefix mef-types; }
7 import mef-global { prefix mef-global; }
8 import mef-interfaces { prefix mef-interfaces; }
9 import yang-ext {prefix ext; revision-date "2013-07-09";}
11 organization "Metro Ethernet Forum";
13 "Web URL: http://metroethernetforum.org/ E-mail: mibs@metroethernetforum.org
14 Postal: Metro Ethernet Forum 6033 W. Century Boulevard, Suite
15 1107 Los Angeles, CA 90045 U.S.A. Phone: +1 310-642-2800 Fax:
18 "This module implements the Carrier Ethernet Services as defined
19 in MEF 10.3, MEF 6.2, and MEF 7.2. Reference Overview: A number
20 of base documents have been used to create the MEF Services YANG
21 Module. The following are the abbreviations for the baseline documents:
22 [RFC 6991] refers to IETF RFC 6991 'Common YANG Data Types', 2013-07-15
23 [RFC 6643] refers to IETF RFC 6643 'Translation of Structure of
24 Management Information Version 2 (SMIv2) MIB Modules to YANG Modules',
25 2011-11-25 [802.1AB] refers to 'Station and Media Access Control
26 Connectivity Discovery', IEEE 802.1AB-2009, September 2009 [802.1q]
27 refers to IEEE 802.1Q-2011 'IEEE Standard for Local and metropolitan
28 area networks --Media Access Control (MAC) Bridges and Virtual
29 Bridged Local Area Networks, August 2011 [802-2001] refers to
30 'IEEE Standard for Local and Metropolitan Area Networks: Overview
31 and Architecture', IEEE 802-2001, February 2002 [MEF10.3] refers
32 to MEF 10.3 'Ethernet Services Attributes Phase 3', October 2013
33 [MEF6.2] refers to MEF 6.2 'EVC Ethernet Services Defintions Phase
34 3', August 2014 [MEF40] refers to MEF 40 'UNI and EVC Definition
35 of Managed Objects', April 2013 [MEF45] refers to MEF 45 'Multi-CEN
36 L2CP', August 2014 [MEF7.2] refers to MEF 7.2 'Carrier Ethernet
37 Management Information Model', April 2013 [MEF7.3] refers to MEF
38 7.3 'Carrier Ethernet Management Information Model', Working Draft
39 #1 2015 [RFC 2737] refers to IETF RFC 2737 'Entity MIB (Version
40 2)', December 1999 [RFC 2863] refers to IETF RFC 2863 'The Interfaces
41 Group MIB', June 2000 [RFC 3419] refers to IETF RFC 3419 'Textual
42 Conventions for Transport Addresses', December 2002 [Y.1731] refers
43 to ITU-T Y.1731 'OAM functions and mechanisms for Ethernet based
44 networks', July 2011 [Q.840.1] refers to ITU-T Q.840.1 'Requirements
45 and analysis for NMS-EMS management interface of Ethernet over
46 Transport and Metro Ethernet Network(EoT/MEN)' March 2007";
49 "Formal Project Review Draft 1.";
50 reference "EVC Ethernet Services Definitions YANG Modules " +
54 container mef-services {
58 must "(not(/mef-global:mef-global/mef-global:svc-providers)" +
61 "(/mef-global:mef-global/mef-global:svc-providers and " +
63 error-message "If the Service Providers list has been " +
64 "populated, a Service Provider ID must be " +
65 "configured for a Service.";
67 "A Service sees a single Service Provider. This must " +
68 "statement is effectively a 'mandatory true' when " +
69 "the Global Service Providers list is being used.";
73 unique "ipvc/ipvc-id";
75 "Metro Ethernet Forum's Ethernet Services.";
76 choice mef-service-choice {
81 key "uni-id ip-uni-id";
84 path "/mef-interfaces:mef-interfaces/" +
85 "mef-interfaces:unis/mef-interfaces:uni/" +
86 "mef-interfaces:uni-id";
90 type mef-types:identifier45;
92 leaf ingress-bw-profile {
93 type mef-types:identifier45;
96 container evc-uni-ce-vlans {
98 "EVC Per UNI CE-VLAN IDs.";
99 list evc-uni-ce-vlan {
102 "A list of the CE-VLAN IDs mapped to this UNI " +
104 reference "[MEF10.3] Section 8.6.1, [R24] " +
105 "[R25], Section 9.10.2, Section 9.12, " +
109 path "/mef-interfaces:mef-interfaces/" +
110 "mef-interfaces:unis/" +
111 "mef-interfaces:uni" +
112 "[mef-interfaces:uni-id = " +
113 "current()/../../../uni-id]" +
114 "/mef-interfaces:ce-vlans/" +
115 "mef-interfaces:ce-vlan/" +
116 "mef-interfaces:vid";
127 type mef-types:evc-id-type;
131 type mef-types:ipvc-type;
135 "This IPVC attribute describes the IPVC as either " +
136 "Cloud-access, Multipoint, or " +
137 "Rooted-Multipoint.";
144 must "not(sls-uni-inclusions) or " +
145 "(sls-uni-inclusions and not(sls-uni-exclusions))" {
146 error-message "The EVC Performance SLS Exclusions and " +
147 "Inclusions List cannot both be configured for " +
150 "The EVC Performance SLS Exclusions and Inclusions " +
151 "List cannot both be configured for an EVC.";
153 must "(evc-type != 'rooted-multipoint') or " +
154 "((evc-type = 'rooted-multipoint') and " +
155 "not(sls-uni-exclusions) )" {
156 error-message "If EVC Type is Rooted-Multipoint, " +
157 "sls-uni-inclusions must be used instead of " +
158 "sls-uni-exclusions.";
160 "If EVC Type is Rooted-Multipoint, " +
161 "sls-uni-inclusions must be used instead of " +
162 "sls-uni-exclusions.";
165 "Ethernet Virtual Circuit(EVC) Configuration and Status.";
168 "EVC Per Universal Network Interface(UNI) " +
169 "Configuration and Status.";
171 must "not(evc-uni-ce-vlans/evc-uni-ce-vlan[2]) or " +
172 "../../preserve-ce-vlan-id = 'true'" {
173 error-message "When more than one CE-VLAN-ID is " +
174 "mapped to an EVC at a UNI, the EVC must have " +
175 "CE-VLAN ID Preservation Enabled.";
177 "When more than one CE-VLAN-ID is mapped to " +
178 "an EVC at a UNI, the EVC must have CE-VLAN ID " +
179 "Preservation Enabled.";
181 must "/mef-interfaces:mef-interfaces/mef-interfaces:" +
182 "unis/mef-interfaces:uni" +
183 "[mef-interfaces:uni-id = current()/" +
184 "mef-services:uni-id]" +
185 "[mef-interfaces:uni-id/../mef-interfaces:" +
186 "max-svc-frame-size >= current()/../../" +
187 "mef-services:max-svc-frame-size]" {
188 error-message "The value of the EVC Maximum " +
189 "Service Frame Size must be less than " +
190 "or equal to all the UNI Maximum Service " +
193 "The value of the EVC Maximum Service Frame " +
194 "Size must be less than or equal to all the " +
195 "UNI Maximum Service Frame Sizes.";
197 must "(/mef-interfaces:mef-interfaces/mef-interfaces:" +
198 "unis/mef-interfaces:uni" +
199 "[mef-interfaces:uni-id = current()/" +
200 "mef-services:uni-id]" +
201 "[mef-interfaces:uni-id/../mef-interfaces:" +
202 "bundling-enabled = 'true']) or " +
203 "(/mef-interfaces:mef-interfaces/" +
204 "mef-interfaces:unis/mef-interfaces:uni" +
205 "[mef-interfaces:uni-id = current()/" +
206 "mef-services:uni-id]" +
207 "[mef-interfaces:uni-id/../mef-interfaces:" +
208 "all-to-one-bundling-enabled = 'true']) or " +
209 "not(evc-uni-ce-vlans/evc-uni-ce-vlan[2])" {
210 error-message "If both Bundling and All-to-One " +
211 "Bundling are disabled for a UNI, only one " +
212 "CE VLAN ID can be configured for a specific " +
215 "If both Bundling and All-to-One Bundling are " +
216 "disabled for a UNI, only one CE VLAN ID can be " +
217 "configured for a specific EVC on that UNI.";
219 must "(/mef-interfaces:mef-interfaces/mef-interfaces:" +
220 "unis/mef-interfaces:uni" +
221 "[mef-interfaces:uni-id = current()/" +
222 "mef-services:uni-id]" +
223 "[mef-interfaces:uni-id/../mef-interfaces:" +
224 "all-to-one-bundling-enabled = 'false']) or " +
225 "(count(/mef-services:mef-services/" +
226 "mef-service/evc/unis/uni[uni-id = " +
227 "current()/uni-id]) = 1)" {
228 error-message "If All-to-One Bundling is enabled " +
229 "for any UNI in an EVC, all CE-VLAN IDs " +
230 "mapped to any EVC for that UNI must map " +
231 "to the same EVC ID.";
233 "If All-to-One Bundling is enabled for any UNI " +
234 "in an EVC, all CE-VLAN IDs mapped to any EVC " +
235 "for that UNI must map to the same EVC ID.";
237 must "((/mef-interfaces:mef-interfaces/" +
238 "mef-interfaces:unis/mef-interfaces:uni" +
239 "[mef-interfaces:uni-id = current()/" +
240 "mef-services:uni-id]" +
241 "[mef-interfaces:uni-id/../mef-interfaces:" +
242 "ingress-bw-profile-per-uni]) or " +
243 "(/mef-services:mef-services/mef-service/" +
245 "[uni-id = current()/mef-services:uni-id]" +
246 "/ingress-bwp-flows-per-cos) or " +
247 "(/mef-services:mef-services/mef-service/" +
249 "[uni-id = current()/mef-services:uni-id]" +
250 "/ingress-bw-profile-per-evc)) or " +
251 "not(/mef-interfaces:mef-interfaces/" +
252 "mef-interfaces:unis/mef-interfaces:uni" +
253 "[mef-interfaces:uni-id = current()/" +
254 "mef-services:uni-id]" +
255 "/mef-interfaces:ingress-envelopes)" {
256 error-message "If no Ingress Bandwidth Profiles " +
257 "are specied for this UNI (BW Profile " +
258 "Per UNI, BWP Flows Per CoS, nor BW Profile " +
259 "Per EVC), then the UNI Ingress Envelopes " +
260 "list must be empty.";
262 "If no Ingress Bandwidth Profiles are specied " +
263 "for this UNI (BW Profile Per UNI, BWP Flows " +
264 "Per CoS, nor BW Profile Per EVC), then the " +
265 "UNI Ingress Envelopes list must be empty.";
267 must "((/mef-interfaces:mef-interfaces/" +
268 "mef-interfaces:unis/mef-interfaces:uni" +
269 "[mef-interfaces:uni-id = current()/" +
270 "mef-services:uni-id]" +
271 "[mef-interfaces:uni-id/../mef-interfaces:" +
272 "egress-bw-profile-per-uni]) or " +
273 "(/mef-services:mef-services/mef-service/" +
275 "[uni-id = current()/mef-services:uni-id]" +
276 "/egress-bwp-flows-per-eec) or " +
277 "(/mef-services:mef-services/mef-service/" +
279 "[uni-id = current()/mef-services:uni-id]" +
280 "/egress-bw-profile-per-evc)) or " +
281 "not(/mef-interfaces:mef-interfaces/" +
282 "mef-interfaces:unis/mef-interfaces:uni" +
283 "[mef-interfaces:uni-id = current()/" +
284 "mef-services:uni-id]" +
285 "/mef-interfaces:egress-envelopes)" {
286 error-message "If no Egress Bandwidth Profiles are " +
287 "specied for this UNI (BW Profile Per UNI, " +
288 "BWP Flows Per EEC, nor BW Profile Per EVC), " +
289 "then the UNI Egress Envelopes list must be " +
292 "If no Egress Bandwidth Profiles are specied " +
293 "for this UNI (BW Profile Per UNI, BWP Flows " +
294 "Per EEC, nor BW Profile Per EVC), then the UNI " +
295 "Egress Envelopes list must be empty.";
297 must "not(./ingress-bw-profile-per-evc) or " +
298 "((./ingress-bw-profile-per-evc) and " +
299 "not(./ingress-bwp-flows-per-cos))" {
300 error-message "If there is a per EVC Ingress " +
301 "Bandwidth Profile on an EVC, then there " +
302 "cannot be any per Class of Service Ingress " +
303 "Bandwidth Profiles on that EVC.";
305 "If there is a per EVC Ingress Bandwidth Profile " +
306 "on an EVC, then there cannot be any per " +
307 "Class of Service Ingress Bandwidth Profiles " +
310 must "not(./egress-bw-profile-per-evc) or " +
311 "((./egress-bw-profile-per-evc) and " +
312 "not(./egress-bwp-flows-per-eec))" {
313 error-message "If there is a per EVC Egress " +
314 "Bandwidth Profile on an EVC, then there " +
315 "cannot be any per Egress Equivalence " +
316 "Class Identifier Bandwidth Profiles on " +
319 "If there is a per EVC Egress Bandwidth " +
320 "Profile on an EVC, then there cannot be " +
321 "any per Egress Equivalence Class Identifier " +
322 "Bandwidth Profiles on that EVC.";
324 must "not(/mef-interfaces:mef-interfaces/" +
325 "mef-interfaces:unis/mef-interfaces:uni" +
326 "[mef-interfaces:uni-id = current()/" +
327 "mef-services:uni-id]" +
328 "/mef-interfaces:ingress-bw-profile-" +
330 "(/mef-global:mef-global/mef-global:" +
331 "profiles/mef-global:ingress-bwp-flows/" +
332 "mef-global:bwp-flow" +
333 "[mef-global:bw-profile = /mef-interfaces:" +
334 "mef-interfaces/mef-interfaces:unis/" +
335 "mef-interfaces:uni" +
336 "[mef-interfaces:uni-id = current()/" +
337 "mef-services:uni-id]" +
338 "/mef-interfaces:ingress-bw-profile-per-uni]" +
339 "[mef-global:cir = 0]) or " +
340 "(/mef-global:mef-global/mef-global:" +
341 "profiles/mef-global:ingress-bwp-flows/" +
342 "mef-global:bwp-flow" +
343 "[mef-global:bw-profile = /mef-interfaces:" +
344 "mef-interfaces/mef-interfaces:unis/" +
345 "mef-interfaces:uni" +
346 "[mef-interfaces:uni-id = current()/" +
347 "mef-services:uni-id]" +
348 "/mef-interfaces:ingress-bw-profile-per-uni]" +
349 "[mef-global:cbs >= current()/../../" +
350 "max-svc-frame-size])" {
351 error-message "Ingress Bandwidth Profile Per UNI: " +
352 "If CIR > 0, CBS must be greater than or " +
353 "equal to the EVC Max Service Frame Size " +
356 "Ingress Bandwidth Profile Per UNI: If CIR > 0, " +
357 "CBS must be greater than or equal to the " +
358 "EVC Max Service Frame Size for the EVC.";
360 must "not(/mef-interfaces:mef-interfaces/" +
361 "mef-interfaces:unis/mef-interfaces:uni" +
362 "[mef-interfaces:uni-id = current()/" +
363 "mef-services:uni-id]" +
364 "/mef-interfaces:egress-bw-profile-per-uni) " +
366 "(/mef-global:mef-global/mef-global:profiles/" +
367 "mef-global:egress-bwp-flows/mef-global:" +
369 "[mef-global:bw-profile = /mef-interfaces:" +
370 "mef-interfaces/mef-interfaces:unis/" +
371 "mef-interfaces:uni" +
372 "[mef-interfaces:uni-id = current()/" +
373 "mef-services:uni-id]" +
374 "/mef-interfaces:egress-bw-profile-per-uni]" +
375 "[mef-global:cir = 0]) or " +
376 "(/mef-global:mef-global/mef-global:profiles/" +
377 "mef-global:ingress-bwp-flows/mef-global:" +
379 "[mef-global:bw-profile = /mef-interfaces:" +
380 "mef-interfaces/mef-interfaces:unis/" +
381 "mef-interfaces:uni" +
382 "[mef-interfaces:uni-id = current()/" +
383 "mef-services:uni-id]" +
384 "/mef-interfaces:egress-bw-profile-per-uni]" +
385 "[mef-global:cbs >= current()/../../" +
386 "max-svc-frame-size])" {
387 error-message "Egress Bandwidth Profile Per UNI: " +
388 "If CIR > 0, CBS must be greater than or " +
389 "equal to the EVC Max Service Frame Size " +
392 "Egress Bandwidth Profile Per UNI: If CIR > 0, " +
393 "CBS must be greater than or equal to the " +
394 "EVC Max Service Frame Size for the EVC.";
396 must "not(/mef-interfaces:mef-interfaces/" +
397 "mef-interfaces:unis/mef-interfaces:uni" +
398 "[mef-interfaces:uni-id = current()/" +
399 "mef-services:uni-id]" +
400 "/mef-interfaces:ingress-envelopes) or " +
401 "(/mef-global:mef-global/mef-global:" +
402 "profiles/mef-global:ingress-bwp-flows/" +
403 "mef-global:bwp-flow" +
404 "[mef-global:bw-profile = /mef-interfaces:" +
405 "mef-interfaces/mef-interfaces:unis/" +
406 "mef-interfaces:uni" +
407 "[mef-interfaces:uni-id = current()/" +
408 "mef-services:uni-id]" +
409 "/mef-interfaces:ingress-envelopes/" +
410 "mef-interfaces:envelope/mef-interfaces:" +
411 "bwp-flows/mef-interfaces:bwp-flow/" +
412 "mef-interfaces:bw-profile]" +
413 "[mef-global:cir = 0]) or " +
414 "(/mef-global:mef-global/mef-global:" +
415 "profiles/mef-global:ingress-bwp-flows/" +
416 "mef-global:bwp-flow" +
417 "[mef-global:bw-profile = /mef-interfaces:" +
418 "mef-interfaces/mef-interfaces:unis/" +
419 "mef-interfaces:uni" +
420 "[mef-interfaces:uni-id = current()/" +
421 "mef-services:uni-id]" +
422 "/mef-interfaces:ingress-envelopes/" +
423 "mef-interfaces:envelope/mef-interfaces:" +
424 "bwp-flows/mef-interfaces:bwp-flow/" +
425 "mef-interfaces:bw-profile]" +
426 "[mef-global:cbs >= current()/../../" +
427 "max-svc-frame-size])" {
428 error-message "Ingress Bandwidth Profile Envelope: " +
429 "If CIR > 0, CBS must be greater than or " +
430 "equal to the EVC Max Service Frame Size " +
433 "Ingress Bandwidth Profile Envelope: " +
434 "If CIR > 0, CBS must be greater than " +
435 "or equal to the EVC Max Service Frame " +
438 must "not(/mef-interfaces:mef-interfaces/" +
439 "mef-interfaces:unis/mef-interfaces:uni" +
440 "[mef-interfaces:uni-id = current()/" +
441 "mef-services:uni-id]" +
442 "/mef-interfaces:egress-envelopes) or " +
443 "(/mef-global:mef-global/mef-global:" +
444 "profiles/mef-global:egress-bwp-flows/" +
445 "mef-global:bwp-flow" +
446 "[mef-global:bw-profile = " +
447 "/mef-interfaces:mef-interfaces/" +
448 "mef-interfaces:unis/mef-interfaces:uni" +
449 "[mef-interfaces:uni-id = current()/" +
450 "mef-services:uni-id]" +
451 "/mef-interfaces:egress-envelopes/" +
452 "mef-interfaces:envelope/mef-interfaces:" +
453 "bwp-flows/mef-interfaces:bwp-flow/" +
454 "mef-interfaces:bw-profile]" +
455 "[mef-global:cir = 0]) or " +
456 "(/mef-global:mef-global/mef-global:" +
457 "profiles/mef-global:egress-bwp-flows/" +
458 "mef-global:bwp-flow" +
459 "[mef-global:bw-profile = /mef-interfaces:" +
460 "mef-interfaces/mef-interfaces:unis/" +
461 "mef-interfaces:uni" +
462 "[mef-interfaces:uni-id = current()/" +
463 "mef-services:uni-id]" +
464 "/mef-interfaces:egress-envelopes/" +
465 "mef-interfaces:envelope/mef-interfaces:" +
466 "bwp-flows/mef-interfaces:bwp-flow/" +
467 "mef-interfaces:bw-profile]" +
468 "[mef-global:cbs >= current()/../../" +
469 "max-svc-frame-size])" {
470 error-message "Egress Bandwidth Profile " +
471 "Envelope: If CIR > 0, CBS must be greater " +
472 "than or equal to the EVC Max Service Frame " +
475 "Egress Bandwidth Profile Envelope: If CIR > 0, " +
476 "CBS must be greater than or equal to the " +
477 "EVC Max Service Frame Size for the EVC.";
479 must "not(/mef-interfaces:mef-interfaces/" +
480 "mef-interfaces:unis/mef-interfaces:uni" +
481 "[mef-interfaces:uni-id = current()/" +
482 "mef-services:uni-id]" +
483 "/mef-interfaces:ingress-bw-profile-per-uni) " +
485 "(/mef-global:mef-global/mef-global:profiles/" +
486 "mef-global:ingress-bwp-flows/mef-global:" +
488 "[mef-global:bw-profile = /mef-interfaces:" +
489 "mef-interfaces/mef-interfaces:unis/" +
490 "mef-interfaces:uni" +
491 "[mef-interfaces:uni-id = current()/" +
492 "mef-services:uni-id]/mef-interfaces:" +
493 "ingress-bw-profile-per-uni]" +
494 "[mef-global:eir = 0]) or " +
495 "(/mef-global:mef-global/mef-global:profiles/" +
496 "mef-global:ingress-bwp-flows/" +
497 "mef-global:bwp-flow" +
498 "[mef-global:bw-profile = /mef-interfaces:" +
499 "mef-interfaces/mef-interfaces:unis/" +
500 "mef-interfaces:uni" +
501 "[mef-interfaces:uni-id = current()/" +
502 "mef-services:uni-id]" +
503 "/mef-interfaces:ingress-bw-profile-per-uni]" +
504 "[mef-global:ebs >= current()/../../" +
505 "max-svc-frame-size])" {
506 error-message "Ingress Bandwidth Profile Per UNI: " +
507 "If EIR > 0, EBS must be greater than or " +
508 "equal to the EVC Max Service Frame Size " +
511 "Ingress Bandwidth Profile Per UNI: If EIR > 0, " +
512 "EBS must be greater than or equal to the " +
513 "EVC Max Service Frame Size for the EVC.";
515 must "not(/mef-interfaces:mef-interfaces/" +
516 "mef-interfaces:unis/mef-interfaces:uni" +
517 "[mef-interfaces:uni-id = current()/" +
518 "mef-services:uni-id]" +
519 "/mef-interfaces:egress-bw-profile-" +
521 "(/mef-global:mef-global/mef-global:" +
522 "profiles/mef-global:egress-bwp-flows/" +
523 "mef-global:bwp-flow" +
524 "[mef-global:bw-profile = /mef-interfaces:" +
525 "mef-interfaces/mef-interfaces:unis/" +
526 "mef-interfaces:uni" +
527 "[mef-interfaces:uni-id = current()/" +
528 "mef-services:uni-id]/mef-interfaces:" +
529 "egress-bw-profile-per-uni]" +
530 "[mef-global:eir = 0]) or " +
531 "(/mef-global:mef-global/mef-global:" +
532 "profiles/mef-global:ingress-bwp-flows/" +
533 "mef-global:bwp-flow" +
534 "[mef-global:bw-profile = /mef-interfaces:" +
535 "mef-interfaces/mef-interfaces:unis/" +
536 "mef-interfaces:uni" +
537 "[mef-interfaces:uni-id = current()/" +
538 "mef-services:uni-id]/mef-interfaces:" +
539 "egress-bw-profile-per-uni]" +
540 "[mef-global:ebs >= current()/../../" +
541 "max-svc-frame-size])" {
542 error-message "Egress Bandwidth Profile Per UNI: " +
543 "If EIR > 0, EBS must be greater than or " +
544 "equal to the EVC Max Service Frame Size " +
547 "Egress Bandwidth Profile Per UNI: If EIR > 0, " +
548 "EBS must be greater than or equal to the " +
549 "EVC Max Service Frame Size for the EVC.";
551 must "not(/mef-interfaces:mef-interfaces/" +
553 "unis/mef-interfaces:uni" +
554 "[mef-interfaces:uni-id = current()/" +
555 "mef-services:uni-id]" +
556 "/mef-interfaces:ingress-envelopes) or " +
557 "(/mef-global:mef-global/mef-global:profiles/" +
558 "mef-global:ingress-bwp-flows/mef-global:" +
560 "[mef-global:bw-profile = /mef-interfaces:" +
561 "mef-interfaces/mef-interfaces:unis/" +
562 "mef-interfaces:uni" +
563 "[mef-interfaces:uni-id = current()/" +
564 "mef-services:uni-id]" +
565 "/mef-interfaces:ingress-envelopes/" +
566 "mef-interfaces:envelope/mef-interfaces:" +
567 "bwp-flows/mef-interfaces:bwp-flow/" +
568 "mef-interfaces:bw-profile]" +
569 "[mef-global:eir = 0]) or " +
570 "(/mef-global:mef-global/mef-global:profiles/" +
571 "mef-global:ingress-bwp-flows/mef-global:" +
573 "[mef-global:bw-profile = /mef-interfaces:" +
574 "mef-interfaces/mef-interfaces:unis/" +
575 "mef-interfaces:uni" +
576 "[mef-interfaces:uni-id = current()/" +
577 "mef-services:uni-id]" +
578 "/mef-interfaces:ingress-envelopes/" +
579 "mef-interfaces:envelope/mef-interfaces:" +
580 "bwp-flows/mef-interfaces:bwp-flow/" +
581 "mef-interfaces:bw-profile]" +
582 "[mef-global:ebs >= current()/../../" +
583 "max-svc-frame-size])" {
584 error-message "Ingress Bandwidth Profile Envelope: " +
585 "If EIR > 0, EBS must be greater than or " +
586 "equal to the EVC Max Service Frame Size " +
589 "Ingress Bandwidth Profile Envelope: " +
590 "If EIR > 0, EBS must be greater than or equal " +
591 "to the EVC Max Service Frame Size for the EVC.";
593 must "not(/mef-interfaces:mef-interfaces/" +
594 "mef-interfaces:unis/mef-interfaces:uni" +
595 "[mef-interfaces:uni-id = current()/" +
596 "mef-services:uni-id]" +
597 "/mef-interfaces:egress-envelopes) or " +
598 "(/mef-global:mef-global/mef-global:" +
599 "profiles/mef-global:egress-bwp-flows/" +
600 "mef-global:bwp-flow" +
601 "[mef-global:bw-profile = /mef-interfaces:" +
602 "mef-interfaces/mef-interfaces:unis/" +
603 "mef-interfaces:uni" +
604 "[mef-interfaces:uni-id = current()/" +
605 "mef-services:uni-id]" +
606 "/mef-interfaces:egress-envelopes/" +
607 "mef-interfaces:envelope/mef-interfaces:" +
608 "bwp-flows/mef-interfaces:bwp-flow/" +
609 "mef-interfaces:bw-profile]" +
610 "[mef-global:eir = 0]) or " +
611 "(/mef-global:mef-global/mef-global:profiles/" +
612 "mef-global:egress-bwp-flows/mef-global:" +
614 "[mef-global:bw-profile = /mef-interfaces:" +
615 "mef-interfaces/mef-interfaces:unis/" +
616 "mef-interfaces:uni" +
617 "[mef-interfaces:uni-id = current()/" +
618 "mef-services:uni-id]" +
619 "/mef-interfaces:egress-envelopes/" +
620 "mef-interfaces:envelope/mef-interfaces:" +
621 "bwp-flows/mef-interfaces:bwp-flow/" +
622 "mef-interfaces:bw-profile]" +
623 "[mef-global:ebs >= current()/../../" +
624 "max-svc-frame-size])" {
625 error-message "Egress Bandwidth Profile Envelope: " +
626 "If EIR > 0, EBS must be greater than or " +
627 "equal to the EVC Max Service Frame Size " +
630 "Egress Bandwidth Profile Envelope: " +
631 "If EIR > 0, EBS must be greater than or " +
632 "equal to the EVC Max Service Frame Size " +
637 "EVC Flow Points and EVC-UNI List defines the " +
638 "roles of each UNI in the Service. One UNI can " +
639 "be used by 0 or more EVCs.";
640 reference "[MEF10.3] Section 8.3. " +
641 "[MEF7.3] Section 12.2.2.";
642 container evc-uni-ce-vlans {
644 "EVC Per UNI CE-VLAN IDs.";
645 list evc-uni-ce-vlan {
648 "A list of the CE-VLAN IDs mapped to this UNI " +
650 reference "[MEF10.3] Section 8.6.1, [R24] " +
651 "[R25], Section 9.10.2, Section 9.12, " +
655 path "/mef-interfaces:mef-interfaces/" +
656 "mef-interfaces:unis/" +
657 "mef-interfaces:uni" +
658 "[mef-interfaces:uni-id = " +
659 "current()/../../../uni-id]" +
660 "/mef-interfaces:ce-vlans/" +
661 "mef-interfaces:ce-vlan/" +
662 "mef-interfaces:vid";
664 must "not(current()/../../" +
665 "evc-uni-ce-vlan[2]) or " +
666 "(count(../../../../uni/evc-uni-ce-vlans/" +
668 "[vid = current()]) = " +
669 "count(../../../../uni))" {
670 error-message "If more than one CE-VLAN ID " +
671 "is configured for a UNI as part of " +
672 "an EVC, every CE VLAN-ID mapped to " +
673 "that EVC must be configured for all " +
674 "UNIs within that EVC.";
676 "If more than one CE-VLAN ID is configured " +
677 "for a UNI as part of an EVC, every " +
678 "CE VLAN-ID mapped to that EVC must be " +
679 "configured for all UNIs within that EVC.";
686 leaf ingress-bw-profile {
687 type mef-types:identifier45;
689 container ingress-bwp-flows-per-cos {
690 presence "Use Ingress Bandwidth Profiles Per CoS";
692 "EVC Per UNI Class of Service Identifiers " +
693 "corresponding to this EVC's Ingress Bandwidth " +
695 leaf coupling-enabled {
699 "EVC Per UNI Envelope Coupling Flag (CF) " +
701 reference "[MEF10.3] Section 12.1.";
703 list bwp-flow-per-cos {
706 "EVC Per UNI: The list of Class of Service " +
707 "Identifiers corresponding to this UNI's " +
708 "Ingress Bandwidth Profile Flow.";
711 path "/mef-global:mef-global/mef-global:" +
712 "profiles/mef-global:cos-names/" +
713 "mef-global:cos-name/mef-global:name";
716 "EVC Per UNI: Class of Service Identifier " +
717 "for this Bandwidth Profile Flow.";
718 reference "[MEF7.3] Section 12.1.2.";
722 path "/mef-interfaces:mef-interfaces/" +
723 "mef-interfaces:unis/" +
724 "mef-interfaces:uni" +
725 "[mef-interfaces:uni-id = " +
726 "current()/../../../uni-id]" +
727 "/mef-interfaces:ingress-envelopes/" +
728 "mef-interfaces:envelope/" +
729 "mef-interfaces:env-id";
733 "EVC Per UNI: Ingress Bandwidth Profile " +
734 "Envelope Per CoS ID. If this parameter " +
735 "is not configured (ie. 'No') this " +
736 "setting is configured else at the " +
738 reference "[MEF10.3] Section 10.6, Table 28. " +
739 "[MEF7.3] Section 12.1.2.";
743 container egress-bwp-flows-per-eec {
744 presence "Using Egress Bandwidth Profiles Per " +
745 "Egress Equivalence Class";
747 "EVC Per UNI: The Egress Equivalence Class " +
748 "Identifiers corresponding to this EVC's Egress " +
749 "Bandwidth Profile Flows.";
750 leaf coupling-enabled {
754 "EVC Per UNI: The Envelope Coupling Flag (CF) " +
756 reference "[MEF10.3] Section 12.1.";
758 list bwp-flow-per-eec {
761 "EVC Per UNI: The list of Egress Equivalence " +
762 "Class Identifiers corresponding to this " +
763 "EVC's Egress Bandwidth Profile Flow.";
766 path "/mef-global:mef-global/mef-global:" +
767 "profiles/mef-global:eec-names/" +
768 "mef-global:eec-name/mef-global:name";
771 "EVC Per UNI: Egress Equivalence Class " +
772 "Identifier for this Bandwidth Profile Flow.";
773 reference "[MEF7.3] Section 12.1.2.";
777 path "/mef-interfaces:mef-interfaces/" +
778 "mef-interfaces:unis/" +
779 "mef-interfaces:uni" +
780 "[mef-interfaces:uni-id = " +
781 "current()/../../../uni-id]" +
782 "/mef-interfaces:egress-envelopes/" +
783 "mef-interfaces:envelope/" +
784 "mef-interfaces:env-id";
788 "EVC Per UNI: Egress Bandwidth Profile " +
789 "Envelope Per Equivance Class. If this " +
790 "parameter is not configured (ie. 'No') " +
791 "this setting is configured else at the " +
793 reference "[MEF10.3] Section 10.6, Table 28. " +
794 "[MEF7.3] Section 12.1.2.";
800 "EVC Per UNI: This status group is related to " +
801 "the MEF 7.3 Service Endpoint";
802 leaf oper-state-enabled {
807 "EVC Per UNI: Operational Status of the " +
808 "Virtual Connection as Enabled/Disabled.";
809 reference "[MEF15]. [MEF7.3] Section 11.2.1.";
811 leaf available-status {
812 type mef-types:svc-endpoint-availability-type;
813 default "not-installed";
816 "EVC Per UNI: Availability Status of the " +
817 "Virtual Connection.";
818 reference "[MEF15]. [MEF7.3] Section 11.2.1.";
823 path "/mef-interfaces:mef-interfaces/" +
824 "mef-interfaces:unis/mef-interfaces:uni/" +
825 "mef-interfaces:uni-id";
828 "EVC Per UNI: The UNI ID paired with the EVC ID " +
829 "in the containing list.";
830 reference "[MEF10.3] Section 8.3, Section 10.1. " +
831 "[MEF7.3] Section 12.1.2.";
834 type mef-types:evc-uni-role-type;
837 "EVC Per UNI: The UNI Role MUST have the value " +
838 "of either 'root' or 'leaf'.";
839 reference "[MEF10.3] [R4], [R5], [R10], [R11], " +
840 "[R12]. [MEF7.3] Section 12.2.2.";
842 leaf admin-state-enabled {
846 "EVC Per UNI: Locked/Unlocked is inconsistent " +
847 "with Oper Status and will be confusing.";
848 reference "[MEF15]. [MEF7.3] Section 11.2.1.";
851 type mef-types:cos-color-identifier-type;
853 "EVC Per UNI: The Color Identifier for " +
855 reference "[MEF10.3] Section 10.3. " +
856 "[MEF7.3] Section 12.1.2.";
858 leaf data-svc-frm-cos {
860 path "/mef-global:mef-global/mef-global:profiles/" +
861 "mef-global:cos/mef-global:cos-profile/" +
864 must "not(/mef-global:mef-global/mef-global:" +
865 "profiles/mef-global:cos/" +
866 "mef-global:cos-profile" +
867 "[mef-global:id = current()]" +
868 "/mef-global:cos-pcp) or " +
869 "((/mef-global:mef-global/mef-global:" +
870 "profiles/mef-global:cos/" +
871 "mef-global:cos-profile" +
872 "[mef-global:id = current()]" +
873 "/mef-global:cos-pcp) and " +
874 "((../color-id = 'pcp') or " +
875 "(../color-id = 'dei')) )" {
876 error-message "When the Class of Service " +
877 "Identifier is based on PCP for a " +
878 "given EVC at a given UNI, the Color " +
879 "Identifier must be based on either " +
882 "When the Class of Service Identifier is " +
883 "based on PCP for a given EVC at a given UNI, " +
884 "the Color Identifier must be based on either " +
887 must "not(/mef-global:mef-global/mef-global:" +
888 "profiles/mef-global:cos/mef-global:" +
890 "[mef-global:id = current()]/mef-global:" +
892 "((/mef-global:mef-global/mef-global:" +
893 "profiles/mef-global:cos/mef-global:" +
895 "[mef-global:id = current()]/mef-global:" +
897 "(../color-id = 'dscp'))" {
898 error-message "When the Class of Service " +
899 "Identifier is based on DSCP for a " +
900 "given EVC at a given UNI, the Color " +
901 "Identifier must be based DSCP.";
903 "When the Class of Service Identifier is based " +
904 "on DSCP for a given EVC at a given UNI, the " +
905 "Color Identifier must be based DSCP.";
908 "EVC Per UNI: Ingress Data Service Frame " +
910 reference "[MEF10.3] Section 8.8, Section 10.2. " +
911 "[MEF7.3] Section 12.1.2.";
913 leaf l2cp-svc-frm-cos {
915 path "/mef-global:mef-global/mef-global:" +
916 "profiles/mef-global:l2cp-cos/mef-global:" +
917 "l2cp-profile/mef-global:id";
920 "EVC Per UNI: Ingress Layer 2 Control Protocol " +
922 reference "[MEF10.3] Section 8.8, Section 10.2. " +
923 "[MEF7.3] Section 12.1.2.";
925 leaf soam-svc-frm-cos {
927 path "/mef-global:mef-global/mef-global:profiles/" +
928 "mef-global:cos/mef-global:cos-profile/" +
931 must "(not(.) and not(../data-svc-frm-cos)) or " +
932 "(. = ../data-svc-frm-cos)" {
933 error-message "For a given EVC at a given UNI, " +
934 "the basis for the Class of Service " +
935 "Identifier for ingress SOAM Service " +
936 "Frames must be the same as that for " +
937 "ingress Data Service Frames.";
939 "For a given EVC at a given UNI, the basis " +
940 "for the Class of Service Identifier for " +
941 "ingress SOAM Service Frames must be the " +
942 "same as that for ingress Data Service Frames.";
945 "EVC Per UNI: Ingress SOAM Service Frames.";
946 reference "[MEF7.3] Section 12.1.2.";
948 leaf data-svc-frm-eec {
950 path "/mef-global:mef-global/mef-global:profiles/" +
951 "mef-global:eec/mef-global:eec-profile/" +
954 must "not(/mef-global:mef-global/mef-global:" +
955 "profiles/mef-global:eec/mef-global:" +
957 "[mef-global:id = current()]" +
958 "/mef-global:eec-pcp) or " +
959 "((/mef-global:mef-global/mef-global:" +
960 "profiles/mef-global:eec/mef-global:" +
962 "[mef-global:id = current()]" +
963 "/mef-global:eec-pcp) and " +
964 "((../color-id = 'pcp') or " +
965 "(../color-id = 'dei')) )" {
966 error-message "When the Egress Equivalence " +
967 "Class Identifier is based on PCP " +
968 "for a given EVC at a given UNI, " +
969 "the Color Identifier must be based " +
970 "on either DEI or PCP.";
972 "When the Egress Equivalence Class Identifier " +
973 "is based on PCP for a given EVC at a " +
974 "given UNI, the Color Identifier must " +
975 "be based on either DEI or PCP.";
977 must "not(/mef-global:mef-global/mef-global:" +
978 "profiles/mef-global:eec/mef-global:" +
980 "[mef-global:id = current()]" +
981 "/mef-global:eec-dscp) or " +
982 "((/mef-global:mef-global/mef-global:" +
983 "profiles/mef-global:eec/mef-global:" +
985 "[mef-global:id = current()]" +
986 "/mef-global:eec-dscp) and " +
987 "(../color-id = 'dscp'))" {
988 error-message "When the Egress Equivalence " +
989 "Class Identifier is based on DSCP for " +
990 "a given EVC at a given UNI, the Color " +
991 "Identifier must be based DSCP.";
993 "When the Egress Equivalence Class Identifier " +
994 "is based on DSCP for a given EVC at a given " +
995 "UNI, the Color Identifier must be based DSCP.";
998 "EVC Per UNI: Egress Data Service Frame Processing.";
999 reference "[MEF10.3] Section 10.4. " +
1000 "[MEF7.3] Section 12.1.2.";
1002 leaf l2cp-svc-frm-eec {
1004 path "/mef-global:mef-global/mef-global:profiles/" +
1005 "mef-global:l2cp-eec/mef-global:" +
1006 "l2cp-profile/mef-global:id";
1009 "EVC Per UNI: Egress Layer 2 Control Protocol " +
1011 reference "[MEF10.3] Section 10.4. " +
1012 "[MEF7.3] Section 12.1.2.";
1014 leaf soam-svc-frm-eec {
1016 path "/mef-global:mef-global/mef-global:" +
1017 "profiles/mef-global:eec/mef-global:" +
1018 "eec-profile/mef-global:id";
1020 must "(not(.) and not(../data-svc-frm-eec)) or " +
1021 "(. = ../data-svc-frm-eec)" {
1022 error-message "For a given EVC at a given UNI, " +
1023 "the basis for the Egress Equivalence " +
1024 "Class Identifier for egress SOAM " +
1025 "Service Frames must be the same as " +
1026 "that for egress Data Service Frames.";
1028 "For a given EVC at a given UNI, the basis " +
1029 "for the Egress Equivalence Class Identifier " +
1030 "for egress SOAM Service Frames must be " +
1031 "the same as that for egress Data " +
1035 "EVC Per UNI: Egress SOAM Service Frames.";
1036 reference "[MEF10.3] Section 10.4. " +
1037 "[MEF7.3] Section 12.1.2.";
1039 leaf ingress-bw-profile-per-evc {
1041 path "/mef-interfaces:mef-interfaces/" +
1042 "mef-interfaces:unis/" +
1043 "mef-interfaces:uni" +
1044 "[mef-interfaces:uni-id = " +
1045 "current()/../uni-id]" +
1046 "/mef-interfaces:ingress-envelopes/" +
1047 "mef-interfaces:envelope/" +
1048 "mef-interfaces:env-id";
1051 "EVC Per UNI: Ingress Bandwidth Profile " +
1052 "Envelope Per EVC. If this parameter is " +
1053 "not configured (ie. 'No') this setting " +
1054 "is configured else at the UNI Level.";
1055 reference "[MEF10.3] Section 10.5. " +
1056 "[MEF7.3] Section 12.1.2.";
1058 leaf egress-bw-profile-per-evc {
1060 path "/mef-interfaces:mef-interfaces/" +
1061 "mef-interfaces:unis/" +
1062 "mef-interfaces:uni" +
1063 "[mef-interfaces:uni-id = " +
1064 "current()/../uni-id]" +
1065 "/mef-interfaces:egress-envelopes/" +
1066 "mef-interfaces:envelope/mef-interfaces:" +
1070 "EVC Per UNI: Egress Bandwidth Profile Envelope " +
1071 "Per EVC. If this parameter is not configured " +
1072 "(ie. 'No') this setting is configured else at " +
1074 reference "[MEF10.3] Section 10.7. " +
1075 "[MEF7.3] Section 12.1.2.";
1077 leaf src-mac-addr-limit-enabled {
1081 "EVC Per UNI: Source MAC Address Limit " +
1082 "Enable / Disable. If Enabled, the values " +
1083 "for the Source MAC Address Limit and Source " +
1084 "MAC Address Interval must be set.";
1085 reference "[MEF10.3] Section 10.9. " +
1086 "[MEF7.3] Section 12.1.2.";
1088 leaf src-mac-addr-limit {
1093 "EVC Per UNI: Source MAC Address Limit. " +
1094 "This value is used when the Source MAC Address " +
1095 "Limit Enabled is true.";
1096 reference "[MEF10.3] Section 10.9.";
1098 leaf src-mac-addr-limit-interval {
1099 type yang:timeticks;
1102 "EVC Per UNI: Source MAC Address Limit " +
1103 "Interval. This value is used when the " +
1104 "Source MAC Address Limit Enabled is true.";
1105 reference "[MEF10.3] Section 10.9.";
1107 leaf test-meg-enabled {
1111 "EVC Per UNI: Test MEG Enabled / Disabled.";
1112 reference "[MEF10.3] Section 10.10. " +
1113 "[MEF7.3] Section 12.1.2.";
1116 type mef-types:identifier45;
1118 "EVC Per UNI: Test MEG Identifier.";
1119 reference "[MEF7.3] Section 12.1.2.";
1121 leaf subscriber-meg-mip-enabled {
1125 "EVC Per UNI: Subscriber MEG MIP " +
1126 "Enabled / Disabled.";
1127 reference "[MEF10.3] Section 10.11. " +
1128 "[MEF7.3] Section 12.1.2.";
1130 leaf subscriber-meg-mip {
1131 type mef-types:identifier45;
1133 "EVC Per UNI: Subscriber MEG MIP Identifier.";
1134 reference "[MEF7.3] Section 12.1.2.";
1140 "This status group is related to the MEF 7.3 Virtual " +
1142 leaf oper-state-enabled {
1147 "EVC Operational Status of the Virtual Connection " +
1148 "as Enabled/Disabled.";
1149 reference "[MEF7.3] Section 11.1.1.";
1151 leaf available-status {
1152 type mef-types:virt-cx-availability-type;
1153 default "not-installed";
1156 "EVC Availability Status of the Virtual Connection.";
1157 reference "[MEF7.3] Section 11.1.1.";
1160 container sls-inclusions-by-cos {
1162 "SLS Inclusions by CoS: For this EVC, the following " +
1163 "CoS Names/Labels are applicable.";
1164 list sls-inclusion-by-cos {
1170 path "/mef-global:mef-global/mef-global:profiles/" +
1171 "mef-global:cos-names/mef-global:" +
1172 "cos-name/mef-global:name";
1175 "EVC: This attribute identifies the name of " +
1176 "a class of service (CoS) instance to be used " +
1177 "for EVC Performance.";
1181 container sls-uni-inclusions {
1182 presence "EVC: Defines the EVC Flow Points (UNI) Pairs " +
1183 "that must conform to the EVC's SLS Performance " +
1186 "SLS UNI Inclusions List. The following pairs of UNI " +
1187 "Interconnections are to required to meet the " +
1188 "SLS Performance Objectives. Configing both SLS " +
1189 "UNI Inclusions and SLS UNI Exclusions is not " +
1191 list sls-uni-inclusion-set {
1192 must "uni-id1 != uni-id2" {
1193 error-message "The two UNI IDs for a given " +
1194 "inclusion cannot be the same.";
1196 "The two UNI IDs for a given inclusion " +
1197 "cannot be the same.";
1199 must "(../../evc-type != 'rooted-multipoint') or " +
1200 "((../../evc-type = 'rooted-multipoint') " +
1202 "not((../../unis/uni[uni-id = " +
1203 "current()/uni-id1]/role = 'leaf') and " +
1204 "(../../unis/uni[uni-id = current()/uni-id2]" +
1205 "/role = 'leaf')))" {
1206 error-message "If EVC Type is Rooted-Multipoint, " +
1207 "sls-uni-inclusion UNI Pairs cannot both " +
1210 "If EVC Type is Rooted-Multipoint, " +
1211 "sls-uni-inclusion UNI Pairs cannot " +
1212 "both be role 'leaf'.";
1214 key "pm-type pm-id uni-id1 uni-id2";
1216 "EVC: Defines the EVC Flow Points (UNI) Pairs that " +
1217 "must conform to the EVC's SLS Performance " +
1218 "Metrics. Use of this list indicates that a " +
1219 "complete set of UNI Pairs has been specified " +
1220 "for the Performance Metrics defined in the " +
1224 path "/mef-global:mef-global/mef-global:slss/" +
1226 "[mef-global:sls-id = current()/../../../" +
1227 "evc-performance-sls]" +
1228 "/mef-global:perf-objs/mef-global:" +
1229 "perf-obj/mef-global:pm-type";
1232 "EVC: Performance Metric.";
1233 reference "[MEF10.3] Section 8.8.";
1237 path "/mef-global:mef-global/mef-global:slss/" +
1239 "[mef-global:sls-id = current()/../../../" +
1240 "evc-performance-sls]" +
1241 "/mef-global:perf-objs/mef-global:perf-obj" +
1242 "[mef-global:pm-type = current()/../" +
1244 "/mef-global:pm-id";
1247 "EVC: This is a friendly name for specific " +
1248 "performance profile.";
1252 path "../../../unis/uni/uni-id";
1255 "EVC: The UNI ID paired with the EVC ID in the " +
1257 reference "[MEF10.3] Section 8.3, Section 10.1. " +
1258 "[MEF7.3] Section 12.1.2.";
1262 path "../../../unis/uni/uni-id";
1265 "EVC: The UNI ID paired with the EVC ID in the " +
1267 reference "[MEF10.3] Section 8.3, Section 10.1. " +
1268 "[MEF7.3] Section 12.1.2.";
1272 container sls-uni-exclusions {
1273 presence "Not all EVC Flow Points (UNI) must conform " +
1274 "to the EVC SLS Performance Metrics.";
1276 "EVC: Not all EVC Flow Points (UNI) must conform to " +
1277 "the EVC SLS Performance Metrics. Use of this " +
1278 "list indicates that all UNI Pairs EXCEPT for " +
1279 "the ones indicated (per Performance Metric) must " +
1280 "conform to the SLS.";
1281 list sls-uni-exclusion-set {
1282 must "uni-id1 != uni-id2" {
1283 error-message "The two UNI IDs for a given " +
1284 "exclusion cannot be the same.";
1286 "The two UNI IDs for a given exclusion cannot " +
1287 "be the same as these pairs are invalid as " +
1288 "defined in MEF 10.3.";
1290 key "pm-type pm-id uni-id1 uni-id2";
1292 "SLS UNI Exclusions List. The following pairs " +
1293 "of UNI Interconnections are not required " +
1294 "meet the SLS Performance Objectives. " +
1295 "Configing both SLS UNI Inclusions and SLS " +
1296 "UNI Exclusions is not permitted.";
1299 path "/mef-global:mef-global/mef-global:" +
1300 "slss/mef-global:sls" +
1301 "[mef-global:sls-id = current()/../../../" +
1302 "evc-performance-sls]" +
1303 "/mef-global:perf-objs/mef-global:" +
1304 "perf-obj/mef-global:pm-type";
1307 "EVC: Performance Metric.";
1308 reference "[MEF10.3] Section 8.8.";
1312 path "/mef-global:mef-global/mef-global:slss/" +
1314 "[mef-global:sls-id = current()/../../../" +
1315 "evc-performance-sls]" +
1316 "/mef-global:perf-objs/mef-global:perf-obj" +
1317 "[mef-global:pm-type = current()/../" +
1319 "/mef-global:pm-id";
1322 "EVC: This is a friendly name for specific " +
1323 "performance profile.";
1327 path "../../../unis/uni/uni-id";
1330 "EVC: The UNI ID paired with the EVC ID in the " +
1332 reference "[MEF10.3] Section 8.3, Section 10.1. " +
1333 "[MEF7.3] Section 12.1.2.";
1337 path "../../../unis/uni/uni-id";
1340 "EVC: The UNI ID paired with the EVC ID in the " +
1342 reference "[MEF10.3] Section 8.3, Section 10.1. " +
1343 "[MEF7.3] Section 12.1.2.";
1348 type mef-types:evc-id-type;
1351 "The EVC ID must be unique across all EVCs in the CEN." +
1352 " The EVC ID must be non-NULL.";
1353 reference "[MEF10.3] Section 8.2 [R7]. " +
1354 "[MEF7.3] Section 11.1.1, Section 12.2.2.";
1357 type mef-types:evc-status-type;
1360 "EVC Operational Status.";
1361 reference "[MEF16] Section 5.3.";
1364 type mef-types:evc-type;
1365 must "(. != 'point-to-point') or " +
1366 "((. = 'point-to-point') and " +
1367 "(count(../unis/uni[role = 'leaf']) = 0))" {
1368 error-message "If EVC Type is Point-to-Point, all " +
1369 "UNI Roles must be root.";
1371 "If EVC Type is Point-to-Point, all UNI Roles must " +
1374 must "(. != 'multipoint-to-multipoint') or " +
1375 "((. = 'multipoint-to-multipoint') and " +
1376 "(count(../unis/uni[role = 'leaf']) = 0))" {
1377 error-message "If EVC Type is " +
1378 "Multipoint-to-Multipoint, all UNI Roles " +
1381 "If EVC Type is Multipoint-to-Multipoint, all UNI " +
1382 "Roles must be root.";
1384 must "(. != 'rooted-multipoint') or " +
1385 "((. = 'rooted-multipoint') and " +
1386 "(count(../unis/uni[role = 'root']) > 0) )" {
1387 error-message "If EVC Type is Rooted-Multipoint, one " +
1388 "or more UNI Roles must be root.";
1390 "If EVC Type is Rooted-Multipoint, one or more " +
1391 "UNI Roles must be root.";
1393 must "(. != 'point-to-point') or " +
1394 "((. = 'point-to-point') and " +
1395 "(count(../unis/uni) = 2))" {
1396 error-message "If EVC Type is Point-to-Point, there " +
1397 "must be exactly 2 UNI configured for the EVC.";
1399 "If EVC Type is Point-to-Point, there must be " +
1400 "exactly 2 UNI configured for the EVC.";
1402 must "(. != 'multipoint-to-multipoint') or " +
1403 "((. = 'multipoint-to-multipoint') and " +
1404 "(count(../unis/uni) > 1) and " +
1405 "(count(../unis/uni) <= ../max-uni-count))" {
1406 error-message "If EVC Type is " +
1407 "Multipoint-to-Multipoint, " +
1408 "there must be 2 or more UNI configured " +
1411 "If EVC Type is Multipoint-to-Multipoint, " +
1412 "there must be 2 or more UNI configured for " +
1415 must "(. != 'rooted-multipoint') or " +
1416 "((. = 'rooted-multipoint') and " +
1417 "(count(../unis/uni) > 1) and " +
1418 "(count(../unis/uni) <= ../max-uni-count))" {
1419 error-message "If EVC Type is Rooted-Multipoint, " +
1420 "there must be 2 or more UNI configured for the EVC.";
1422 "If EVC Type is Rooted-Multipoint, there must " +
1423 "be 2 or more UNI configured for the EVC.";
1425 must "(. != 'point-to-point') or " +
1426 "((. = 'point-to-point') and " +
1427 "(../max-uni-count = 2))" {
1428 error-message "If EVC Type is Point-to-Point, " +
1429 "the value of max-uni-count must be 2.";
1431 "If EVC Type is Point-to-Point, the value of " +
1432 "max-uni-count must be 2.";
1434 must "(. != 'multipoint-to-multipoint') or " +
1435 "((. = 'multipoint-to-multipoint') and " +
1436 "(../max-uni-count > 2))" {
1437 error-message "If EVC Type is " +
1438 "Multipoint-to-Multipoint, the value of " +
1439 "max-uni-count must be at least 3.";
1441 "If EVC Type is Multipoint-to-Multipoint, the " +
1442 "value of max-uni-count must be at least 3.";
1444 must "(. != 'rooted-multipoint') or " +
1445 "((. = 'rooted-multipoint') and " +
1446 "(../max-uni-count > 2))" {
1447 error-message "If EVC Type is Rooted-Multipoint, " +
1448 "the value of max-uni-count must be at " +
1451 "If EVC Type is Rooted-Multipoint, the value " +
1452 "of max-uni-count must be at least 3.";
1456 "This EVC attribute describes the EVC as either " +
1457 "Multipoint-To-Multipoint, Point-To-Point, or " +
1458 "Rooted-Multipoint.";
1459 reference "[MEF10.3] Section 8.1, [R4], [R5], " +
1460 "[R10], [R11], [R12], [R13] and [R14]. " +
1461 "[MEF7.3] Section 12.2.2.";
1463 leaf admin-state-enabled {
1467 "EVC: Locked/Unlocked is inconsistent with " +
1468 "Oper Status and will be confusing.";
1469 reference "[MEF15]. [MEF7.3] Section 11.1.1.";
1471 leaf elastic-enabled {
1475 "EVC: Elastic Enabled/Disabled.";
1476 reference "[MEF7.3] Section 11.1.1.";
1478 leaf elastic-service {
1479 type mef-types:identifier45;
1481 "EVC: Related to CE4Cloud Information Model.";
1482 reference "[MEF7.3] Section 11.1.1.";
1484 leaf max-uni-count {
1488 must "(. > 2) or ((. = 2) and " +
1489 "(../evc-type = 'point-to-point'))" {
1490 error-message "If EVC Type is Point-to-Point, the " +
1491 "max-uni-count value must be 2.";
1493 "If EVC Type is Point-to-Point, the max-uni-count " +
1496 must "(. = 2) or ((. > 2) and " +
1497 "((../evc-type = 'multipoint-to-multipoint') or " +
1498 "(../evc-type = 'rooted-multipoint')))" {
1499 error-message "If EVC Type is " +
1500 "Multipoint-to-Multipoint or " +
1501 "Rooted-Multipoint, the max-uni-count value " +
1502 "must be at least 3.";
1504 "If EVC Type is Multipoint-to-Multipoint or " +
1505 "Rooted-Multipoint, the max-uni-count value " +
1506 "must be at least 3.";
1510 "EVC:The Maximum Number of UNIs this EVC can be " +
1511 "configured for (Default 2).If EVC Type is " +
1512 "Multipoint-to-Multipoint or Rooted-Multipoint, " +
1513 "the max-uni-count value must be at least 3. " +
1514 "This value must be 2 for point-to-point mode.";
1515 reference "[MEF10.3] [R14]. [MEF7.3] Section 12.2.2.";
1517 leaf preserved-vlan {
1520 leaf preserve-ce-vlan-id {
1524 "EVC:An EVC with more than one CE-VLAN ID mapping " +
1525 "to it must have the same list of CE-VLAN IDs " +
1526 "mapping to the EVC at each UNI in the EVC.";
1527 reference "[MEF10.3] Section 8.6.1, [R24] [R25], " +
1528 "Section 9.10.2, Section 9.12, [R81], Figure 20. " +
1529 "[MEF7.3] Section 12.2.2.";
1531 leaf cos-preserve-ce-vlan-id {
1535 "EVC: Preserve CE-VLAN ID for CoS.";
1536 reference "[MEF10.3] Section 8.6.2, [R26]. " +
1537 "[MEF7.3] Section 12.2.2.";
1539 leaf evc-performance-sls {
1541 path "/mef-global:mef-global/mef-global:slss/" +
1542 "mef-global:sls/mef-global:sls-id";
1545 "EVC: EVC-specific performance objectives and " +
1546 "parameters. Note that an SLS can also specify " +
1547 "performance objectives spanning more than one EVC. " +
1548 "By default, all the UNI associated with the EVC " +
1549 "have this SLS applied for them.";
1550 reference "[MEF10.3] Section 8.8, Section 10. " +
1551 "[MEF7.3] Section 12.2.2.";
1553 leaf unicast-svc-frm-delivery {
1554 type mef-types:data-svc-frame-delivery-type;
1555 default "unconditional";
1557 "EVC: Unicast Data Service Frame Delivery Mode " +
1558 "(unconditional[default], conditional, or discard).";
1559 reference "[MEF10.3] Section 8.5.2,[R16], [R17], " +
1560 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";
1562 leaf multicast-svc-frm-delivery {
1563 type mef-types:data-svc-frame-delivery-type;
1564 default "unconditional";
1566 "EVC: Multicast Data Service Frame Delivery Mode " +
1567 "(unconditional[default], conditional, or discard).";
1568 reference "[MEF10.3] Section 8.5.2, [R16], [R18], " +
1569 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";
1571 leaf broadcast-svc-frm-delivery {
1572 type mef-types:data-svc-frame-delivery-type;
1573 default "unconditional";
1575 "EVC: Broadcast Data Service Frame Delivery Mode " +
1576 "(unconditional[default], conditional, or discard).";
1577 reference "[MEF10.3] Section 8.5.2, [R16], [R19], " +
1578 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";
1581 type mef-types:identifier45;
1583 "EVC: Identifies the Maintenance Entity Group (MEG) " +
1585 reference "[MEF7.3] Section 12.2.2. MEF 35.1.";
1587 leaf max-svc-frame-size {
1588 type mef-types:max-svc-frame-size-type;
1591 "EVC: This attribute describes the maximum service " +
1592 "frame size for the EVC.";
1593 reference "[MEF10.3] Section 8.9, Section 9.7, [R71], " +
1594 "[MEF6.2] Section 8.2.2 and MEF 22.1: [D2]. " +
1595 "[MEF7.3] Section 12.2.2.";
1601 type mef-types:retail-svc-id-type;
1603 "The MEF Service ID is a simple key used to " +
1604 "distinguish MEF Service Configuration Groups.";
1605 reference "[MEF10.3] Section 7.";
1608 when "/mef-global:mef-global/mef-global:svc-providers" {
1610 "Only configure when the Global Service Providers " +
1611 "list has been populated.";
1614 path "/mef-global:mef-global/mef-global:svc-providers/" +
1615 "mef-global:svc-provider/mef-global:sp-id";
1618 "The MEF Service Provider ID must be globally unique " +
1619 "as all CENs and Subscribers must be supported by a " +
1620 "specific Service Provider(SP). A SP can support " +
1622 reference "[MEF10.3] Section 7.";
1625 type mef-types:mef-service-type;
1626 must "(. != 'epl') or ((. = 'epl') and " +
1627 "(count(/mef-interfaces:mef-interfaces/" +
1628 "mef-interfaces:unis/mef-interfaces:uni" +
1629 "[mef-interfaces:uni-id = current()/../" +
1630 "mef-services:evc/mef-services:unis/mef-services:" +
1631 "uni/mef-services:uni-id]" +
1632 "[mef-interfaces:uni-id/../mef-interfaces:" +
1633 "svc-mux-enabled = 'true']) = 0))" {
1634 error-message "For EPL, Service Multiplexing must be " +
1635 "disabled for all UNIs in the EVC UNI List.";
1637 "For EPL, Service Multiplexing must be disabled for " +
1638 "all UNIs in the EVC UNI List.";
1640 must "(. != 'epl') or ((. = 'epl') and " +
1641 "(count(/mef-interfaces:mef-interfaces/" +
1642 "mef-interfaces:unis/mef-interfaces:uni" +
1643 "[mef-interfaces:uni-id = current()/../" +
1644 "mef-services:evc/mef-services:unis/mef-services:" +
1645 "uni/mef-services:uni-id]" +
1646 "[mef-interfaces:uni-id/../mef-interfaces:" +
1647 "bundling-enabled = 'true']) = 0))" {
1648 error-message "For EPL, Bundling must be disabled for " +
1649 "all UNIs in the EVC UNI List.";
1651 "For EPL, Bundling must be disabled for all UNIs in " +
1652 "the EVC UNI List.";
1654 must "(. != 'epl') or ((. = 'epl') and " +
1655 "(count(/mef-interfaces:mef-interfaces/" +
1656 "mef-interfaces:unis/mef-interfaces:uni" +
1657 "[mef-interfaces:uni-id = current()/../" +
1658 "mef-services:evc/mef-services:unis/" +
1659 "mef-services:uni/mef-services:uni-id]" +
1660 "[mef-interfaces:uni-id/../mef-interfaces:" +
1661 "all-to-one-bundling-enabled = 'false']) = 0))" {
1662 error-message "For EPL, All-to-One Bundling must be " +
1663 "enabled for all UNIs in the EVC UNI List.";
1665 "For EPL, All-to-One Bundling must be enabled for " +
1666 "all UNIs in the EVC UNI List.";
1668 must "(. != 'epl') or ((. = 'epl') and " +
1669 "(count(/mef-interfaces:mef-interfaces/" +
1670 "mef-interfaces:unis/mef-interfaces:uni" +
1671 "[mef-interfaces:uni-id = current()/../" +
1672 "mef-services:evc/mef-services:unis/mef-services:" +
1673 "uni/mef-services:uni-id]" +
1674 "[mef-interfaces:uni-id/../mef-interfaces:" +
1675 "max-evc-count != 1]) = 0))" {
1676 error-message "For EPL, Max EVC Count must be 1 for " +
1677 "all UNIs in the EVC UNI List.";
1679 "For EPL, Max EVC Count must be 1 for all UNIs " +
1680 "in the EVC UNI List.";
1682 must "(. != 'epl') or ((. = 'epl') and " +
1683 "(count(../evc/unis/uni/egress-bwp-flows-per-eec/" +
1684 "bwp-flow-per-eec) = 0))" {
1685 error-message "For EPL, Egress Bandwidth Profile per " +
1686 "Egress Equivalence Class cannot be set for " +
1687 "all UNIs in the EVC per UNI List.";
1689 "For EPL, Egress Bandwidth Profile per Egress " +
1690 "Equivalence Class cannot be set for all UNIs in the " +
1691 "EVC per UNI List.";
1693 must "(. != 'epl') or ((. = 'epl') and " +
1694 "(count(../evc/unis/uni" +
1695 "[src-mac-addr-limit-enabled = 'true']) = 0) )" {
1696 error-message "For EPL, Source MAC Address Limit must " +
1699 "For EPL, Source MAC Address Limit must be disabled.";
1701 must "(. != 'epl') or ((. = 'epl') and " +
1702 "(../evc/evc-type = 'point-to-point'))" {
1703 error-message "For EPL, EVC Type must be Point-to-Point.";
1705 "For EPL, EVC Type must be Point-to-Point.";
1707 must "(. != 'epl') or ((. = 'epl') and " +
1708 "(../evc/unicast-svc-frm-delivery = " +
1709 "'unconditional'))" {
1710 error-message "For EPL, unicast-svc-frm-delivery " +
1711 "must be unconditional.";
1713 "For EPL, unicast-svc-frm-delivery must be " +
1716 must "(. != 'epl') or ((. = 'epl') and " +
1717 "(../evc/multicast-svc-frm-delivery = " +
1718 "'unconditional'))" {
1719 error-message "For EPL, multicast-svc-frm-delivery " +
1720 "must be unconditional.";
1722 "For EPL, multicast-svc-frm-delivery must be " +
1725 must "(. != 'epl') or ((. = 'epl') and " +
1726 "(../evc/broadcast-svc-frm-delivery = " +
1727 "'unconditional'))" {
1728 error-message "For EPL, broadcast-svc-frm-delivery " +
1729 "must be unconditional.";
1731 "For EPL, broadcast-svc-frm-delivery must be " +
1734 must "(. != 'epl') or ((. = 'epl') and " +
1735 "(../evc/preserve-ce-vlan-id = 'true'))" {
1736 error-message "For EPL, CE-VLAN ID Preservation " +
1739 "For EPL, CE-VLAN ID Preservation must be enabled.";
1741 must "(. != 'epl') or ((. = 'epl') and " +
1742 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {
1743 error-message "For EPL, CE-VLAN ID CoS Preservation " +
1746 "For EPL, CE-VLAN ID CoS Preservation must be enabled.";
1748 must "(. != 'evpl') or ((. = 'evpl') and " +
1749 "(count(/mef-interfaces:mef-interfaces/" +
1750 "mef-interfaces:unis/mef-interfaces:uni" +
1751 "[mef-interfaces:uni-id = current()/../" +
1752 "mef-services:evc/mef-services:unis/mef-services:" +
1753 "uni/mef-services:uni-id]" +
1754 "[mef-interfaces:uni-id/../mef-interfaces:" +
1755 "all-to-one-bundling-enabled = 'true']) = 0))" {
1756 error-message "For EVPL, All-to-One Bundling must be " +
1757 "disabled for all UNIs in the EVC UNI List.";
1759 "For EVPL, All-to-One Bundling must be disabled for " +
1760 "all UNIs in the EVC UNI List.";
1762 must "(. != 'evpl') or ((. = 'evpl') and " +
1763 "((../evc/unicast-svc-frm-delivery != " +
1764 "'unconditional') or " +
1765 "(../evc/multicast-svc-frm-delivery != " +
1766 "'unconditional') or " +
1767 "(../evc/broadcast-svc-frm-delivery != " +
1768 "'unconditional') or " +
1769 "count(../evc/unis/uni" +
1770 "[src-mac-addr-limit-enabled = 'true']) = 0))" {
1771 error-message "For EVPL, Source MAC Address Limit must " +
1772 "be disabled for all UNIs in the EVC per " +
1773 "UNI List if all 3 -svc-frm-delivery values " +
1774 "are unconditional.";
1776 "For EVPL, Source MAC Address Limit must be disabled " +
1777 "for all UNIs in the EVC per UNI List if all " +
1778 "3 -svc-frm-delivery values are unconditional.";
1780 must "(. != 'evpl') or ((. = 'evpl') and " +
1781 "(../evc/evc-type = 'point-to-point'))" {
1782 error-message "For EVPL, EVC Type must be Point-to-Point.";
1784 "For EVPL, EVC Type must be Point-to-Point.";
1786 must "(. != 'eplan') or ((. = 'eplan') and " +
1787 "(count(/mef-interfaces:mef-interfaces/" +
1788 "mef-interfaces:unis/mef-interfaces:uni" +
1789 "[mef-interfaces:uni-id = current()/../" +
1790 "mef-services:evc/mef-services:unis/mef-services:" +
1791 "uni/mef-services:uni-id]" +
1792 "[mef-interfaces:uni-id/../mef-interfaces:" +
1793 "svc-mux-enabled = 'true']) = 0))" {
1794 error-message "For EP-LAN, Service Multiplexing must " +
1795 "be disabled for all UNIs in the EVC UNI List.";
1797 "For EP-LAN, Service Multiplexing must be disabled " +
1798 "for all UNIs in the EVC UNI List.";
1800 must "(. != 'eplan') or ((. = 'eplan') and " +
1801 "(count(/mef-interfaces:mef-interfaces/" +
1802 "mef-interfaces:unis/mef-interfaces:uni" +
1803 "[mef-interfaces:uni-id = current()/../" +
1804 "mef-services:evc/mef-services:unis/mef-services:" +
1805 "uni/mef-services:uni-id]" +
1806 "[mef-interfaces:uni-id/../mef-interfaces:" +
1807 "bundling-enabled = 'true']) = 0))" {
1808 error-message "For EP-LAN, Bundling must be disabled " +
1809 "for all UNIs in the EVC UNI List.";
1811 "For EP-LAN, Bundling must be disabled for all UNIs " +
1812 "in the EVC UNI List.";
1814 must "(. != 'eplan') or ((. = 'eplan') and " +
1815 "(count(/mef-interfaces:mef-interfaces/" +
1816 "mef-interfaces:unis/mef-interfaces:uni" +
1817 "[mef-interfaces:uni-id = current()/../" +
1818 "mef-services:evc/mef-services:unis/" +
1819 "mef-services:uni/mef-services:uni-id]" +
1820 "[mef-interfaces:uni-id/../mef-interfaces:" +
1821 "all-to-one-bundling-enabled = 'false']) = 0))" {
1822 error-message "For EP-LAN, All-to-One Bundling " +
1823 "must be enabled for all UNIs in the " +
1826 "For EP-LAN, All-to-One Bundling must be enabled " +
1827 "for all UNIs in the EVC UNI List.";
1829 must "(. != 'eplan') or ((. = 'eplan') and " +
1830 "(count(/mef-interfaces:mef-interfaces/" +
1831 "mef-interfaces:unis/mef-interfaces:uni" +
1832 "[mef-interfaces:uni-id = current()/../" +
1833 "mef-services:evc/mef-services:unis/" +
1834 "mef-services:uni/mef-services:uni-id]" +
1835 "[mef-interfaces:uni-id/../mef-interfaces:" +
1836 "max-evc-count != 1]) = 0))" {
1837 error-message "For EP-LAN, Max EVC Count must be 1 " +
1838 "for all UNIs in the EVC UNI List.";
1840 "For EP-LAN, Max EVC Count must be 1 for all UNIs in " +
1841 "the EVC UNI List.";
1843 must "(. != 'eplan') or ((. = 'eplan') and " +
1844 "(../evc/evc-type = 'multipoint-to-multipoint'))" {
1845 error-message "For EP-LAN, EVC Type must be " +
1846 "Multipoint-to-Multipoint.";
1848 "For EP-LAN, EVC Type must be " +
1849 "Multipoint-to-Multipoint.";
1851 must "(. != 'eplan') or ((. = 'eplan') and " +
1852 "(../evc/preserve-ce-vlan-id = 'true'))" {
1853 error-message "For EP-LAN, CE-VLAN ID Preservation " +
1856 "For EP-LAN, CE-VLAN ID Preservation must be enabled.";
1858 must "(. != 'eplan') or ((. = 'eplan') and " +
1859 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {
1860 error-message "For EP-LAN, CE-VLAN ID CoS Preservation " +
1863 "For EP-LAN, CE-VLAN ID CoS Preservation must be " +
1866 must "(. != 'evplan') or ((. = 'evplan') and " +
1867 "(../evc/evc-type = 'multipoint-to-multipoint'))" {
1868 error-message "For EVP-LAN, EVC Type must be " +
1869 "Multipoint-to-Multipoint.";
1871 "For EVP-LAN, EVC Type must be " +
1872 "Multipoint-to-Multipoint.";
1874 must "(. != 'evplan') or ((. = 'evplan') and " +
1875 "(count(/mef-interfaces:mef-interfaces/" +
1876 "mef-interfaces:unis/mef-interfaces:uni" +
1877 "[mef-interfaces:uni-id = current()/../" +
1878 "mef-services:evc/mef-services:unis/mef-services:" +
1879 "uni/mef-services:uni-id]" +
1880 "[mef-interfaces:uni-id/../mef-interfaces:" +
1881 "all-to-one-bundling-enabled = 'true']) = 0))" {
1882 error-message "For EVP-LAN, All-to-One Bundling must " +
1883 "be disabled for all UNIs in the EVC UNI List.";
1885 "For EVP-LAN, All-to-One Bundling must be disabled " +
1886 "for all UNIs in the EVC UNI List.";
1888 must "(. != 'eptree') or ((. = 'eptree') and " +
1889 "(count(/mef-interfaces:mef-interfaces/" +
1890 "mef-interfaces:unis/mef-interfaces:uni" +
1891 "[mef-interfaces:uni-id = current()/../" +
1892 "mef-services:evc/mef-services:unis/mef-services:" +
1893 "uni/mef-services:uni-id]" +
1894 "[mef-interfaces:uni-id/../mef-interfaces:" +
1895 "svc-mux-enabled = 'true']) = 0))" {
1896 error-message "For EP-TREE, Service Multiplexing " +
1897 "must be disabled for all UNIs in the " +
1900 "For EP-TREE, Service Multiplexing must be disabled " +
1901 "for all UNIs in the EVC UNI List.";
1903 must "(. != 'eptree') or ((. = 'eptree') and " +
1904 "(count(/mef-interfaces:mef-interfaces/" +
1905 "mef-interfaces:unis/mef-interfaces:uni" +
1906 "[mef-interfaces:uni-id = current()/../" +
1907 "mef-services:evc/mef-services:unis/mef-services:" +
1908 "uni/mef-services:uni-id]" +
1909 "[mef-interfaces:uni-id/../mef-interfaces:" +
1910 "bundling-enabled = 'true']) = 0))" {
1911 error-message "For EP-TREE, Bundling must be disabled " +
1912 "for all UNIs in the EVC UNI List.";
1914 "For EP-TREE, Bundling must be disabled for all UNIs " +
1915 "in the EVC UNI List.";
1917 must "(. != 'eptree') or ((. = 'eptree') and " +
1918 "(count(/mef-interfaces:mef-interfaces/" +
1919 "mef-interfaces:unis/mef-interfaces:uni" +
1920 "[mef-interfaces:uni-id = current()/../" +
1921 "mef-services:evc/mef-services:unis/" +
1922 "mef-services:uni/mef-services:uni-id]" +
1923 "[mef-interfaces:uni-id/../mef-interfaces:" +
1924 "all-to-one-bundling-enabled = 'false']) = 0))" {
1925 error-message "For EP-TREE, All-to-One Bundling must " +
1926 "be enabled for all UNIs in the EVC UNI List.";
1928 "For EP-TREE, All-to-One Bundling must be enabled " +
1929 "for all UNIs in the EVC UNI List.";
1931 must "(. != 'eptree') or ((. = 'eptree') and " +
1932 "(count(/mef-interfaces:mef-interfaces/" +
1933 "mef-interfaces:unis/mef-interfaces:uni" +
1934 "[mef-interfaces:uni-id = current()/../" +
1935 "mef-services:evc/mef-services:unis/" +
1936 "mef-services:uni/mef-services:uni-id]" +
1937 "[mef-interfaces:uni-id/../mef-interfaces:" +
1938 "max-evc-count != 1]) = 0))" {
1939 error-message "For EP-TREE, Max EVC Count must be 1 " +
1940 "for all UNIs in the EVC UNI List.";
1942 "For EP-TREE, Max EVC Count must be 1 for all UNIs " +
1943 "in the EVC UNI List.";
1945 must "(. != 'eptree') or ((. = 'eptree') and " +
1946 "(../evc/evc-type = 'rooted-multipoint'))" {
1947 error-message "For EP-TREE, EVC Type must be " +
1948 "Rooted-Multipoint.";
1950 "For EP-TREE, EVC Type must be Rooted-Multipoint.";
1952 must "(. != 'eptree') or ((. = 'eptree') and " +
1953 "(../evc/preserve-ce-vlan-id = 'true'))" {
1954 error-message "For EP-TREE, CE-VLAN ID Preservation " +
1957 "For EP-TREE, CE-VLAN ID Preservation must be enabled.";
1959 must "(. != 'eptree') or ((. = 'eptree') and " +
1960 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {
1961 error-message "For EP-TREE, CE-VLAN ID " +
1962 "CoS Preservation must be enabled.";
1964 "For EP-TREE, CE-VLAN ID CoS Preservation must be " +
1967 must "(. != 'evptree') or ((. = 'evptree') and " +
1968 "(count(/mef-interfaces:mef-interfaces/" +
1969 "mef-interfaces:unis/mef-interfaces:uni" +
1970 "[mef-interfaces:uni-id = current()/../" +
1971 "mef-services:evc/mef-services:unis/mef-services:" +
1972 "uni/mef-services:uni-id]" +
1973 "[mef-interfaces:uni-id/../mef-interfaces:" +
1974 "all-to-one-bundling-enabled = 'true']) = 0))" {
1975 error-message "For EVP-TREE, All-to-One Bundling " +
1976 "must be disabled for all UNIs in the EVC UNI List.";
1978 "For EVP-TREE, All-to-One Bundling must be disabled " +
1979 "for all UNIs in the EVC UNI List.";
1981 must "(. != 'evptree') or ((. = 'evptree') and " +
1982 "(../evc/evc-type = 'rooted-multipoint'))" {
1983 error-message "For EVP-TREE, EVC Type must be " +
1984 "Rooted-Multipoint.";
1986 "For EVP-TREE, EVC Type must be Rooted-Multipoint.";
1989 "The MEF Service Type.";
1992 type mef-types:identifier45;
1994 "This MEF user label is set by the user to a value " +
1995 "that is easier to identify than the Service ID.";
1998 type mef-types:service-entity-type;
2001 "MEF Service Entity.";
2002 reference "[MEF12.2] Table 3.";
2006 path "/mef-global:mef-global/mef-global:tenants-instances/mef-global:tenant-list/mef-global:name";
2012 augment "/mef-services:mef-services/mef-services:mef-service/mef-services:mef-service-choice/mef-services:evc-choice/mef-services:evc" {
2013 ext:augment-identifier "evc-elan";
2014 leaf elan-id {type string;}
2017 leaf port-id {type string;}
2021 augment "/mef-services:mef-services/mef-services:mef-service/mef-services:mef-service-choice/mef-services:ipvc-choice/mef-services:ipvc" {
2022 ext:augment-identifier "ipvc-vpn";
2023 leaf vpn-id {type string;}
2025 key "uni-id ip-uni-id";
2026 leaf uni-id {type mef-types:identifier45;}
2027 leaf ip-uni-id {type mef-types:identifier45;}
2028 leaf elan-id {type string;}
2029 leaf elan-port {type string;}
2032 leaf subnet {type string;}