f8fe3e33c95d2516b6569526b0d69aea0fdedf46
[unimgr.git] / legato-api / src / main / yang / mef-services.yang
1 module mef-services {\r
2   namespace "http://metroethernetforum.org/ns/yang/mef-services";\r
3   prefix mef-services;\r
4   import ietf-yang-types {\r
5     prefix yang;\r
6   }\r
7   import mef-types {\r
8     prefix mef-types;\r
9   }\r
10   import mef-global {\r
11     prefix mef-global;\r
12   }\r
13   import mef-interfaces {\r
14     prefix mef-interfaces;\r
15   }\r
16   organization "Metro Ethernet Forum";\r
17   contact\r
18     "Web URL: http://metroethernetforum.org/\r
19      E-mail:  mibs@metroethernetforum.org\r
20      Postal:  Metro Ethernet Forum\r
21               6033 W. Century Boulevard, Suite 1107\r
22               Los Angeles, CA 90045\r
23               U.S.A.\r
24      Phone:   +1 310-642-2800\r
25      Fax:     +1 310-642-2808";\r
26   description\r
27     "This module implements the Carrier Ethernet Services as\r
28      defined in MEF 10.3, MEF 6.2, and MEF 7.2.\r
29       \r
30      Reference Overview:\r
31       A number of base documents have been used to create the\r
32       MEF Services YANG Module. The\r
33       following are the abbreviations for the baseline documents:\r
34       [RFC 6991] refers to IETF RFC 6991 'Common YANG Data Types',\r
35       2013-07-15 \r
36       [RFC 6643] refers to IETF RFC 6643 'Translation of Structure\r
37       of Management Information\r
38       Version 2 (SMIv2) MIB Modules to YANG Modules', 2011-11-25 \r
39       [802.1AB] refers to 'Station and Media Access Control\r
40       Connectivity Discovery', IEEE 802.1AB-2009, September 2009\r
41       [802.1q] refers to IEEE 802.1Q-2011 'IEEE Standard for Local\r
42       and metropolitan area networks --Media Access Control (MAC)\r
43       Bridges and Virtual Bridged Local Area Networks, August 2011\r
44       [802-2001] refers to 'IEEE Standard for Local and Metropolitan\r
45       Area Networks: Overview and Architecture', IEEE 802-2001,\r
46       February 2002\r
47       [MEF10.3] refers to MEF 10.3\r
48       'Ethernet Services Attributes Phase 3', October 2013\r
49       [MEF6.2] refers to MEF 6.2\r
50       'EVC Ethernet Services Defintions Phase 3', August 2014\r
51       [MEF40] refers to MEF 40\r
52       'UNI and EVC Definition of Managed Objects', April 2013\r
53       [MEF45] refers to MEF 45 'Multi-CEN L2CP', August 2014\r
54       [MEF7.2] refers to MEF 7.2\r
55       'Carrier Ethernet Management Information Model', April 2013\r
56       [MEF7.3] refers to MEF 7.3\r
57       'Carrier Ethernet Management Information Model',\r
58       Working Draft #1 2015\r
59       [RFC 2737] refers to IETF RFC 2737 'Entity MIB (Version 2)',\r
60       December 1999\r
61       [RFC 2863] refers to IETF RFC 2863 'The Interfaces Group MIB',\r
62       June 2000\r
63       [RFC 3419] refers to IETF RFC 3419\r
64       'Textual Conventions for Transport Addresses', December 2002\r
65       [Y.1731] refers to ITU-T Y.1731\r
66       'OAM functions and mechanisms for Ethernet based networks',\r
67       July 2011\r
68       [Q.840.1] refers to ITU-T Q.840.1\r
69       'Requirements and analysis for NMS-EMS management interface\r
70       of Ethernet over Transport and Metro Ethernet\r
71       Network(EoT/MEN)' March 2007";\r
72   revision 2015-05-26 {\r
73     description\r
74       "Formal Project Review Draft 1.";\r
75     reference "EVC Ethernet Services Definitions YANG Modules " +\r
76             "(MEF XX), TBD";\r
77   }\r
78   container mef-services {\r
79     description\r
80       "MEF Services";\r
81     list mef-service {\r
82       must "(not(/mef-global:mef-global/mef-global:svc-providers)" +\r
83             " and " +\r
84             "not(./sp-id)) or " +\r
85             "(/mef-global:mef-global/mef-global:svc-providers and " +\r
86             "./sp-id)" {\r
87         error-message "If the Service Providers list has been " +\r
88                 "populated, a Service Provider ID must be " +\r
89                 "configured for a Service.";\r
90         description\r
91           "A Service sees a single Service Provider. This must " +\r
92           "statement is effectively a 'mandatory true' when " +\r
93           "the Global Service Providers list is being used.";\r
94       }\r
95       key "svc-id";\r
96       unique "evc/evc-id";\r
97       description\r
98         "Metro Ethernet Forum's Ethernet Services.";\r
99       container evc {\r
100         must "not(sls-uni-inclusions) or " +\r
101                 "(sls-uni-inclusions and not(sls-uni-exclusions))" {\r
102           error-message "The EVC Performance SLS Exclusions and " +\r
103                 "Inclusions List cannot both be configured for " +\r
104                 "an EVC.";\r
105           description\r
106             "The EVC Performance SLS Exclusions and Inclusions " +\r
107             "List cannot both be configured for an EVC.";\r
108         }\r
109         must "(evc-type != 'rooted-multipoint') or " +\r
110                 "((evc-type = 'rooted-multipoint') and " +\r
111                 "not(sls-uni-exclusions) )" {\r
112           error-message "If EVC Type is Rooted-Multipoint, " +\r
113                 "sls-uni-inclusions must be used instead of " +\r
114                 "sls-uni-exclusions.";\r
115           description\r
116             "If EVC Type is Rooted-Multipoint, " +\r
117             "sls-uni-inclusions must be used instead of " +\r
118             "sls-uni-exclusions.";\r
119         }\r
120         description\r
121           "Ethernet Virtual Circuit(EVC) Configuration and Status.";\r
122         container unis {\r
123           description\r
124             "EVC Per Universal Network Interface(UNI) " +\r
125             "Configuration and Status.";\r
126           list uni {\r
127             must "not(evc-uni-ce-vlans/evc-uni-ce-vlan[2]) or " +\r
128                     "../../preserve-ce-vlan-id = 'true'" {\r
129               error-message "When more than one CE-VLAN-ID is " +\r
130                     "mapped to an EVC at a UNI, the EVC must have " +\r
131                     "CE-VLAN ID Preservation Enabled.";\r
132               description\r
133                 "When more than one CE-VLAN-ID is mapped to " +\r
134                 "an EVC at a UNI, the EVC must have CE-VLAN ID " +\r
135                 "Preservation Enabled.";\r
136             }\r
137             must "/mef-interfaces:mef-interfaces/mef-interfaces:" +\r
138                     "unis/mef-interfaces:uni" +\r
139                     "[mef-interfaces:uni-id = current()/" +\r
140                     "mef-services:uni-id]" +\r
141                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
142                     "max-svc-frame-size >= current()/../../" +\r
143                     "mef-services:max-svc-frame-size]" {\r
144               error-message "The value of the EVC Maximum " +\r
145                     "Service Frame Size must be less than " +\r
146                     "or equal to all the UNI Maximum Service " +\r
147                     "Frame Sizes.";\r
148               description\r
149                 "The value of the EVC Maximum Service Frame " +\r
150                 "Size must be less than or equal to all the " +\r
151                 "UNI Maximum Service Frame Sizes.";\r
152             }\r
153             must "(/mef-interfaces:mef-interfaces/mef-interfaces:" +\r
154                     "unis/mef-interfaces:uni" +\r
155                     "[mef-interfaces:uni-id = current()/" +\r
156                     "mef-services:uni-id]" +\r
157                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
158                     "bundling-enabled = 'true']) or " +\r
159                     "(/mef-interfaces:mef-interfaces/" +\r
160                     "mef-interfaces:unis/mef-interfaces:uni" +\r
161                     "[mef-interfaces:uni-id = current()/" +\r
162                     "mef-services:uni-id]" +\r
163                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
164                     "all-to-one-bundling-enabled = 'true']) or " +\r
165                     "not(evc-uni-ce-vlans/evc-uni-ce-vlan[2])" {\r
166               error-message "If both Bundling and All-to-One " +\r
167                     "Bundling are disabled for a UNI, only one " +\r
168                     "CE VLAN ID can be configured for a specific " +\r
169                     "EVC on that UNI.";\r
170               description\r
171                 "If both Bundling and All-to-One Bundling are " +\r
172                 "disabled for a UNI, only one CE VLAN ID can be " +\r
173                 "configured for a specific EVC on that UNI.";\r
174             }\r
175             must "(/mef-interfaces:mef-interfaces/mef-interfaces:" +\r
176                     "unis/mef-interfaces:uni" +\r
177                     "[mef-interfaces:uni-id = current()/" +\r
178                     "mef-services:uni-id]" +\r
179                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
180                     "all-to-one-bundling-enabled = 'false']) or " +\r
181                     "(count(/mef-services:mef-services/" +\r
182                     "mef-service/evc/unis/uni[uni-id = " +\r
183                     "current()/uni-id]) = 1)" {\r
184               error-message "If All-to-One Bundling is enabled " +\r
185                     "for any UNI in an EVC, all CE-VLAN IDs " +\r
186                     "mapped to any EVC for that UNI must map " +\r
187                     "to the same EVC ID.";\r
188               description\r
189                 "If All-to-One Bundling is enabled for any UNI " +\r
190                 "in an EVC, all CE-VLAN IDs mapped to any EVC " +\r
191                 "for that UNI must map to the same EVC ID.";\r
192             }\r
193             must "((/mef-interfaces:mef-interfaces/" +\r
194                     "mef-interfaces:unis/mef-interfaces:uni" +\r
195                     "[mef-interfaces:uni-id = current()/" +\r
196                     "mef-services:uni-id]" +\r
197                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
198                     "ingress-bw-profile-per-uni]) or " +\r
199                     "(/mef-services:mef-services/mef-service/" +\r
200                     "evc/unis/uni" +\r
201                     "[uni-id = current()/mef-services:uni-id]" +\r
202                     "/ingress-bwp-flows-per-cos) or " +\r
203                     "(/mef-services:mef-services/mef-service/" +\r
204                     "evc/unis/uni" +\r
205                     "[uni-id = current()/mef-services:uni-id]" +\r
206                     "/ingress-bw-profile-per-evc)) or " +\r
207                     "not(/mef-interfaces:mef-interfaces/" +\r
208                     "mef-interfaces:unis/mef-interfaces:uni" +\r
209                     "[mef-interfaces:uni-id = current()/" +\r
210                     "mef-services:uni-id]" +\r
211                     "/mef-interfaces:ingress-envelopes)" {\r
212               error-message "If no Ingress Bandwidth Profiles " +\r
213                     "are specied for this UNI (BW Profile " +\r
214                     "Per UNI, BWP Flows Per CoS, nor BW Profile " +\r
215                     "Per EVC), then the UNI Ingress Envelopes " +\r
216                     "list must be empty.";\r
217               description\r
218                 "If no Ingress Bandwidth Profiles are specied " +\r
219                 "for this UNI (BW Profile Per UNI, BWP Flows " +\r
220                 "Per CoS, nor BW Profile Per EVC), then the " +\r
221                 "UNI Ingress Envelopes list must be empty.";\r
222             }\r
223             must "((/mef-interfaces:mef-interfaces/" +\r
224                     "mef-interfaces:unis/mef-interfaces:uni" +\r
225                     "[mef-interfaces:uni-id = current()/" +\r
226                     "mef-services:uni-id]" +\r
227                     "[mef-interfaces:uni-id/../mef-interfaces:" +\r
228                     "egress-bw-profile-per-uni]) or " +\r
229                     "(/mef-services:mef-services/mef-service/" +\r
230                     "evc/unis/uni" +\r
231                     "[uni-id = current()/mef-services:uni-id]" +\r
232                     "/egress-bwp-flows-per-eec) or " +\r
233                     "(/mef-services:mef-services/mef-service/" +\r
234                     "evc/unis/uni" +\r
235                     "[uni-id = current()/mef-services:uni-id]" +\r
236                     "/egress-bw-profile-per-evc)) or " +\r
237                     "not(/mef-interfaces:mef-interfaces/" +\r
238                     "mef-interfaces:unis/mef-interfaces:uni" +\r
239                     "[mef-interfaces:uni-id = current()/" +\r
240                     "mef-services:uni-id]" +\r
241                     "/mef-interfaces:egress-envelopes)" {\r
242               error-message "If no Egress Bandwidth Profiles are " +\r
243                     "specied for this UNI (BW Profile Per UNI, " +\r
244                     "BWP Flows Per EEC, nor BW Profile Per EVC), " +\r
245                     "then the UNI Egress Envelopes list must be " +\r
246                     "empty.";\r
247               description\r
248                 "If no Egress Bandwidth Profiles are specied " +\r
249                 "for this UNI (BW Profile Per UNI, BWP Flows " +\r
250                 "Per EEC, nor BW Profile Per EVC), then the UNI " +\r
251                 "Egress Envelopes list must be empty.";\r
252             }\r
253             must "not(./ingress-bw-profile-per-evc) or " +\r
254                     "((./ingress-bw-profile-per-evc) and " +\r
255                     "not(./ingress-bwp-flows-per-cos))" {\r
256               error-message "If there is a per EVC Ingress " +\r
257                     "Bandwidth Profile on an EVC, then there " +\r
258                     "cannot be any per Class of Service Ingress " +\r
259                     "Bandwidth Profiles on that EVC.";\r
260               description\r
261                 "If there is a per EVC Ingress Bandwidth Profile " +\r
262                 "on an EVC, then there cannot be any per " +\r
263                 "Class of Service Ingress Bandwidth Profiles " +\r
264                 "on that EVC.";\r
265             }\r
266             must "not(./egress-bw-profile-per-evc) or " +\r
267                     "((./egress-bw-profile-per-evc) and " +\r
268                     "not(./egress-bwp-flows-per-eec))" {\r
269               error-message "If there is a per EVC Egress " +\r
270                     "Bandwidth Profile on an EVC, then there " +\r
271                     "cannot be any per Egress Equivalence " +\r
272                     "Class Identifier Bandwidth Profiles on " +\r
273                     "that EVC.";\r
274               description\r
275                 "If there is a per EVC Egress Bandwidth " +\r
276                 "Profile on an EVC, then there cannot be " +\r
277                 "any per Egress Equivalence Class Identifier " +\r
278                 "Bandwidth Profiles on that EVC.";\r
279             }\r
280             must "not(/mef-interfaces:mef-interfaces/" +\r
281                     "mef-interfaces:unis/mef-interfaces:uni" +\r
282                     "[mef-interfaces:uni-id = current()/" +\r
283                     "mef-services:uni-id]" +\r
284                     "/mef-interfaces:ingress-bw-profile-" +\r
285                     "per-uni) or " +\r
286                     "(/mef-global:mef-global/mef-global:" +\r
287                     "profiles/mef-global:ingress-bwp-flows/" +\r
288                     "mef-global:bwp-flow" +\r
289                     "[mef-global:bw-profile = /mef-interfaces:" +\r
290                     "mef-interfaces/mef-interfaces:unis/" +\r
291                     "mef-interfaces:uni" +\r
292                     "[mef-interfaces:uni-id = current()/" +\r
293                     "mef-services:uni-id]" +\r
294                     "/mef-interfaces:ingress-bw-profile-per-uni]" +\r
295                     "[mef-global:cir = 0]) or " +\r
296                     "(/mef-global:mef-global/mef-global:" +\r
297                     "profiles/mef-global:ingress-bwp-flows/" +\r
298                     "mef-global:bwp-flow" +\r
299                     "[mef-global:bw-profile = /mef-interfaces:" +\r
300                     "mef-interfaces/mef-interfaces:unis/" +\r
301                     "mef-interfaces:uni" +\r
302                     "[mef-interfaces:uni-id = current()/" +\r
303                     "mef-services:uni-id]" +\r
304                     "/mef-interfaces:ingress-bw-profile-per-uni]" +\r
305                     "[mef-global:cbs >= current()/../../" +\r
306                     "max-svc-frame-size])" {\r
307               error-message "Ingress Bandwidth Profile Per UNI: " +\r
308                     "If CIR > 0, CBS must be greater than or " +\r
309                     "equal to the EVC Max Service Frame Size " +\r
310                     "for the EVC.";\r
311               description\r
312                 "Ingress Bandwidth Profile Per UNI: If CIR > 0, " +\r
313                 "CBS must be greater than or equal to the " +\r
314                 "EVC Max Service Frame Size for the EVC.";\r
315             }\r
316             must "not(/mef-interfaces:mef-interfaces/" +\r
317                     "mef-interfaces:unis/mef-interfaces:uni" +\r
318                     "[mef-interfaces:uni-id = current()/" +\r
319                     "mef-services:uni-id]" +\r
320                     "/mef-interfaces:egress-bw-profile-per-uni) " +\r
321                     "or " +\r
322                     "(/mef-global:mef-global/mef-global:profiles/" +\r
323                     "mef-global:egress-bwp-flows/mef-global:" +\r
324                     "bwp-flow" +\r
325                     "[mef-global:bw-profile = /mef-interfaces:" +\r
326                     "mef-interfaces/mef-interfaces:unis/" +\r
327                     "mef-interfaces:uni" +\r
328                     "[mef-interfaces:uni-id = current()/" +\r
329                     "mef-services:uni-id]" +\r
330                     "/mef-interfaces:egress-bw-profile-per-uni]" +\r
331                     "[mef-global:cir = 0]) or " +\r
332                     "(/mef-global:mef-global/mef-global:profiles/" +\r
333                     "mef-global:ingress-bwp-flows/mef-global:" +\r
334                     "bwp-flow" +\r
335                     "[mef-global:bw-profile = /mef-interfaces:" +\r
336                     "mef-interfaces/mef-interfaces:unis/" +\r
337                     "mef-interfaces:uni" +\r
338                     "[mef-interfaces:uni-id = current()/" +\r
339                     "mef-services:uni-id]" +\r
340                     "/mef-interfaces:egress-bw-profile-per-uni]" +\r
341                     "[mef-global:cbs >= current()/../../" +\r
342                     "max-svc-frame-size])" {\r
343               error-message "Egress Bandwidth Profile Per UNI: " +\r
344                     "If CIR > 0, CBS must be greater than or " +\r
345                     "equal to the EVC Max Service Frame Size " +\r
346                     "for the EVC.";\r
347               description\r
348                 "Egress Bandwidth Profile Per UNI: If CIR > 0, " +\r
349                 "CBS must be greater than or equal to the " +\r
350                 "EVC Max Service Frame Size for the EVC.";\r
351             }\r
352             must "not(/mef-interfaces:mef-interfaces/" +\r
353                     "mef-interfaces:unis/mef-interfaces:uni" +\r
354                     "[mef-interfaces:uni-id = current()/" +\r
355                     "mef-services:uni-id]" +\r
356                     "/mef-interfaces:ingress-envelopes) or " +\r
357                     "(/mef-global:mef-global/mef-global:" +\r
358                     "profiles/mef-global:ingress-bwp-flows/" +\r
359                     "mef-global:bwp-flow" +\r
360                     "[mef-global:bw-profile = /mef-interfaces:" +\r
361                     "mef-interfaces/mef-interfaces:unis/" +\r
362                     "mef-interfaces:uni" +\r
363                     "[mef-interfaces:uni-id = current()/" +\r
364                     "mef-services:uni-id]" +\r
365                     "/mef-interfaces:ingress-envelopes/" +\r
366                     "mef-interfaces:envelope/mef-interfaces:" +\r
367                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
368                     "mef-interfaces:bw-profile]" +\r
369                     "[mef-global:cir = 0]) or " +\r
370                     "(/mef-global:mef-global/mef-global:" +\r
371                     "profiles/mef-global:ingress-bwp-flows/" +\r
372                     "mef-global:bwp-flow" +\r
373                     "[mef-global:bw-profile = /mef-interfaces:" +\r
374                     "mef-interfaces/mef-interfaces:unis/" +\r
375                     "mef-interfaces:uni" +\r
376                     "[mef-interfaces:uni-id = current()/" +\r
377                     "mef-services:uni-id]" +\r
378                     "/mef-interfaces:ingress-envelopes/" +\r
379                     "mef-interfaces:envelope/mef-interfaces:" +\r
380                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
381                     "mef-interfaces:bw-profile]" +\r
382                     "[mef-global:cbs >= current()/../../" +\r
383                     "max-svc-frame-size])" {\r
384               error-message "Ingress Bandwidth Profile Envelope: " +\r
385                     "If CIR > 0, CBS must be greater than or " +\r
386                     "equal to the EVC Max Service Frame Size " +\r
387                     "for the EVC.";\r
388               description\r
389                 "Ingress Bandwidth Profile Envelope: " +\r
390                 "If CIR > 0, CBS must be greater than " +\r
391                 "or equal to the EVC Max Service Frame " +\r
392                 "Size for the EVC.";\r
393             }\r
394             must "not(/mef-interfaces:mef-interfaces/" +\r
395                     "mef-interfaces:unis/mef-interfaces:uni" +\r
396                     "[mef-interfaces:uni-id = current()/" +\r
397                     "mef-services:uni-id]" +\r
398                     "/mef-interfaces:egress-envelopes) or " +\r
399                     "(/mef-global:mef-global/mef-global:" +\r
400                     "profiles/mef-global:egress-bwp-flows/" +\r
401                     "mef-global:bwp-flow" +\r
402                     "[mef-global:bw-profile = " +\r
403                     "/mef-interfaces:mef-interfaces/" +\r
404                     "mef-interfaces:unis/mef-interfaces:uni" +\r
405                     "[mef-interfaces:uni-id = current()/" +\r
406                     "mef-services:uni-id]" +\r
407                     "/mef-interfaces:egress-envelopes/" +\r
408                     "mef-interfaces:envelope/mef-interfaces:" +\r
409                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
410                     "mef-interfaces:bw-profile]" +\r
411                     "[mef-global:cir = 0]) or " +\r
412                     "(/mef-global:mef-global/mef-global:" +\r
413                     "profiles/mef-global:egress-bwp-flows/" +\r
414                     "mef-global:bwp-flow" +\r
415                     "[mef-global:bw-profile = /mef-interfaces:" +\r
416                     "mef-interfaces/mef-interfaces:unis/" +\r
417                     "mef-interfaces:uni" +\r
418                     "[mef-interfaces:uni-id = current()/" +\r
419                     "mef-services:uni-id]" +\r
420                     "/mef-interfaces:egress-envelopes/" +\r
421                     "mef-interfaces:envelope/mef-interfaces:" +\r
422                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
423                     "mef-interfaces:bw-profile]" +\r
424                     "[mef-global:cbs >= current()/../../" +\r
425                     "max-svc-frame-size])" {\r
426               error-message "Egress Bandwidth Profile " +\r
427                     "Envelope: If CIR > 0, CBS must be greater " +\r
428                     "than or equal to the EVC Max Service Frame " +\r
429                     "Size for the EVC.";\r
430               description\r
431                 "Egress Bandwidth Profile Envelope: If CIR > 0, " +\r
432                 "CBS must be greater than or equal to the " +\r
433                 "EVC Max Service Frame Size for the EVC.";\r
434             }\r
435             must "not(/mef-interfaces:mef-interfaces/" +\r
436                     "mef-interfaces:unis/mef-interfaces:uni" +\r
437                     "[mef-interfaces:uni-id = current()/" +\r
438                     "mef-services:uni-id]" +\r
439                     "/mef-interfaces:ingress-bw-profile-per-uni) " +\r
440                     "or " +\r
441                     "(/mef-global:mef-global/mef-global:profiles/" +\r
442                     "mef-global:ingress-bwp-flows/mef-global:" +\r
443                     "bwp-flow" +\r
444                     "[mef-global:bw-profile = /mef-interfaces:" +\r
445                     "mef-interfaces/mef-interfaces:unis/" +\r
446                     "mef-interfaces:uni" +\r
447                     "[mef-interfaces:uni-id = current()/" +\r
448                     "mef-services:uni-id]/mef-interfaces:" +\r
449                     "ingress-bw-profile-per-uni]" +\r
450                     "[mef-global:eir = 0]) or " +\r
451                     "(/mef-global:mef-global/mef-global:profiles/" +\r
452                     "mef-global:ingress-bwp-flows/" +\r
453                     "mef-global:bwp-flow" +\r
454                     "[mef-global:bw-profile = /mef-interfaces:" +\r
455                     "mef-interfaces/mef-interfaces:unis/" +\r
456                     "mef-interfaces:uni" +\r
457                     "[mef-interfaces:uni-id = current()/" +\r
458                     "mef-services:uni-id]" +\r
459                     "/mef-interfaces:ingress-bw-profile-per-uni]" +\r
460                     "[mef-global:ebs >= current()/../../" +\r
461                     "max-svc-frame-size])" {\r
462               error-message "Ingress Bandwidth Profile Per UNI: " +\r
463                     "If EIR > 0, EBS must be greater than or " +\r
464                     "equal to the EVC Max Service Frame Size " +\r
465                     "for the EVC.";\r
466               description\r
467                 "Ingress Bandwidth Profile Per UNI: If EIR > 0, " +\r
468                 "EBS must be greater than or equal to the " +\r
469                 "EVC Max Service Frame Size for the EVC.";\r
470             }\r
471             must "not(/mef-interfaces:mef-interfaces/" +\r
472                     "mef-interfaces:unis/mef-interfaces:uni" +\r
473                     "[mef-interfaces:uni-id = current()/" +\r
474                     "mef-services:uni-id]" +\r
475                     "/mef-interfaces:egress-bw-profile-" +\r
476                     "per-uni) or " +\r
477                     "(/mef-global:mef-global/mef-global:" +\r
478                     "profiles/mef-global:egress-bwp-flows/" +\r
479                     "mef-global:bwp-flow" +\r
480                     "[mef-global:bw-profile = /mef-interfaces:" +\r
481                     "mef-interfaces/mef-interfaces:unis/" +\r
482                     "mef-interfaces:uni" +\r
483                     "[mef-interfaces:uni-id = current()/" +\r
484                     "mef-services:uni-id]/mef-interfaces:" +\r
485                     "egress-bw-profile-per-uni]" +\r
486                     "[mef-global:eir = 0]) or " +\r
487                     "(/mef-global:mef-global/mef-global:" +\r
488                     "profiles/mef-global:ingress-bwp-flows/" +\r
489                     "mef-global:bwp-flow" +\r
490                     "[mef-global:bw-profile = /mef-interfaces:" +\r
491                     "mef-interfaces/mef-interfaces:unis/" +\r
492                     "mef-interfaces:uni" +\r
493                     "[mef-interfaces:uni-id = current()/" +\r
494                     "mef-services:uni-id]/mef-interfaces:" +\r
495                     "egress-bw-profile-per-uni]" +\r
496                     "[mef-global:ebs >= current()/../../" +\r
497                     "max-svc-frame-size])" {\r
498               error-message "Egress Bandwidth Profile Per UNI: " +\r
499                     "If EIR > 0, EBS must be greater than or " +\r
500                     "equal to the EVC Max Service Frame Size " +\r
501                     "for the EVC.";\r
502               description\r
503                 "Egress Bandwidth Profile Per UNI: If EIR > 0, " +\r
504                 "EBS must be greater than or equal to the " +\r
505                 "EVC Max Service Frame Size for the EVC.";\r
506             }\r
507             must "not(/mef-interfaces:mef-interfaces/" +\r
508                     "mef-interfaces:" +\r
509                     "unis/mef-interfaces:uni" +\r
510                     "[mef-interfaces:uni-id = current()/" +\r
511                     "mef-services:uni-id]" +\r
512                     "/mef-interfaces:ingress-envelopes) or " +\r
513                     "(/mef-global:mef-global/mef-global:profiles/" +\r
514                     "mef-global:ingress-bwp-flows/mef-global:" +\r
515                     "bwp-flow" +\r
516                     "[mef-global:bw-profile = /mef-interfaces:" +\r
517                     "mef-interfaces/mef-interfaces:unis/" +\r
518                     "mef-interfaces:uni" +\r
519                     "[mef-interfaces:uni-id = current()/" +\r
520                     "mef-services:uni-id]" +\r
521                     "/mef-interfaces:ingress-envelopes/" +\r
522                     "mef-interfaces:envelope/mef-interfaces:" +\r
523                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
524                     "mef-interfaces:bw-profile]" +\r
525                     "[mef-global:eir = 0]) or " +\r
526                     "(/mef-global:mef-global/mef-global:profiles/" +\r
527                     "mef-global:ingress-bwp-flows/mef-global:" +\r
528                     "bwp-flow" +\r
529                     "[mef-global:bw-profile = /mef-interfaces:" +\r
530                     "mef-interfaces/mef-interfaces:unis/" +\r
531                     "mef-interfaces:uni" +\r
532                     "[mef-interfaces:uni-id = current()/" +\r
533                     "mef-services:uni-id]" +\r
534                     "/mef-interfaces:ingress-envelopes/" +\r
535                     "mef-interfaces:envelope/mef-interfaces:" +\r
536                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
537                     "mef-interfaces:bw-profile]" +\r
538                     "[mef-global:ebs >= current()/../../" +\r
539                     "max-svc-frame-size])" {\r
540               error-message "Ingress Bandwidth Profile Envelope: " +\r
541                     "If EIR > 0, EBS must be greater than or " +\r
542                     "equal to the EVC Max Service Frame Size " +\r
543                     "for the EVC.";\r
544               description\r
545                 "Ingress Bandwidth Profile Envelope: " +\r
546                 "If EIR > 0, EBS must be greater than or equal " +\r
547                 "to the EVC Max Service Frame Size for the EVC.";\r
548             }\r
549             must "not(/mef-interfaces:mef-interfaces/" +\r
550                     "mef-interfaces:unis/mef-interfaces:uni" +\r
551                     "[mef-interfaces:uni-id = current()/" +\r
552                     "mef-services:uni-id]" +\r
553                     "/mef-interfaces:egress-envelopes) or " +\r
554                     "(/mef-global:mef-global/mef-global:" +\r
555                     "profiles/mef-global:egress-bwp-flows/" +\r
556                     "mef-global:bwp-flow" +\r
557                     "[mef-global:bw-profile = /mef-interfaces:" +\r
558                     "mef-interfaces/mef-interfaces:unis/" +\r
559                     "mef-interfaces:uni" +\r
560                     "[mef-interfaces:uni-id = current()/" +\r
561                     "mef-services:uni-id]" +\r
562                     "/mef-interfaces:egress-envelopes/" +\r
563                     "mef-interfaces:envelope/mef-interfaces:" +\r
564                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
565                     "mef-interfaces:bw-profile]" +\r
566                     "[mef-global:eir = 0]) or " +\r
567                     "(/mef-global:mef-global/mef-global:profiles/" +\r
568                     "mef-global:egress-bwp-flows/mef-global:" +\r
569                     "bwp-flow" +\r
570                     "[mef-global:bw-profile = /mef-interfaces:" +\r
571                     "mef-interfaces/mef-interfaces:unis/" +\r
572                     "mef-interfaces:uni" +\r
573                     "[mef-interfaces:uni-id = current()/" +\r
574                     "mef-services:uni-id]" +\r
575                     "/mef-interfaces:egress-envelopes/" +\r
576                     "mef-interfaces:envelope/mef-interfaces:" +\r
577                     "bwp-flows/mef-interfaces:bwp-flow/" +\r
578                     "mef-interfaces:bw-profile]" +\r
579                     "[mef-global:ebs >= current()/../../" +\r
580                     "max-svc-frame-size])" {\r
581               error-message "Egress Bandwidth Profile Envelope: " +\r
582                     "If EIR > 0, EBS must be greater than or " +\r
583                     "equal to the EVC Max Service Frame Size " +\r
584                     "for the EVC.";\r
585               description\r
586                 "Egress Bandwidth Profile Envelope: " +\r
587                 "If EIR > 0, EBS must be greater than or " +\r
588                 "equal to the EVC Max Service Frame Size " +\r
589                 "for the EVC.";\r
590             }\r
591             key "uni-id";\r
592             description\r
593               "EVC Flow Points and EVC-UNI List defines the " +\r
594               "roles of each UNI in the Service. One UNI can " +\r
595               "be used by 0 or more EVCs.";\r
596             reference "[MEF10.3] Section 8.3. " +\r
597                     "[MEF7.3] Section 12.2.2.";\r
598             container evc-uni-ce-vlans {\r
599               description\r
600                 "EVC Per UNI CE-VLAN IDs.";\r
601               list evc-uni-ce-vlan {\r
602                 key "vid";\r
603                 description\r
604                   "A list of the CE-VLAN IDs mapped to this UNI " +\r
605                   "for this EVC.";\r
606                 reference "[MEF10.3] Section 8.6.1, [R24] " +\r
607                         "[R25], Section 9.10.2, Section 9.12, " +\r
608                         "[R76], [R81].";\r
609                 leaf vid {\r
610                   type leafref {\r
611                     path "/mef-interfaces:mef-interfaces/" +\r
612                             "mef-interfaces:unis/" +\r
613                             "mef-interfaces:uni" +\r
614                             "[mef-interfaces:uni-id = " +\r
615                             "current()/../../../uni-id]" +\r
616                             "/mef-interfaces:ce-vlans/" +\r
617                             "mef-interfaces:ce-vlan/" +\r
618                             "mef-interfaces:vid";\r
619                   }\r
620                   must "not(current()/../../" +\r
621                         "evc-uni-ce-vlan[2]) or " +\r
622                         "(count(../../../../uni/evc-uni-ce-vlans/" +\r
623                         "evc-uni-ce-vlan" +\r
624                         "[vid = current()]) = " +\r
625                         "count(../../../../uni))" {\r
626                     error-message "If more than one CE-VLAN ID " +\r
627                             "is configured for a UNI as part of " +\r
628                             "an EVC, every CE VLAN-ID mapped to " +\r
629                             "that EVC must be configured for all " +\r
630                             "UNIs within that EVC.";\r
631                     description\r
632                       "If more than one CE-VLAN ID is configured " +\r
633                       "for a UNI as part of an EVC, every " +\r
634                       "CE VLAN-ID mapped to that EVC must be " +\r
635                       "configured for all UNIs within that EVC.";\r
636                   }\r
637                   description\r
638                     "VLAN Identifier.";\r
639                 }\r
640               }\r
641             }\r
642             container ingress-bwp-flows-per-cos {\r
643               presence "Use Ingress Bandwidth Profiles Per CoS";\r
644               description\r
645                 "EVC Per UNI Class of Service Identifiers " +\r
646                 "corresponding to this EVC's Ingress Bandwidth " +\r
647                 "Profile Flows.";\r
648               leaf coupling-enabled {\r
649                 type boolean;\r
650                 default "false";\r
651                 description\r
652                   "EVC Per UNI Envelope Coupling Flag (CF) " +\r
653                   "attribute.";\r
654                 reference "[MEF10.3] Section 12.1.";\r
655               }\r
656               list bwp-flow-per-cos {\r
657                 key "cos-name";\r
658                 description\r
659                   "EVC Per UNI: The list of Class of Service " +\r
660                   "Identifiers corresponding to this UNI's " +\r
661                   "Ingress Bandwidth Profile Flow.";\r
662                 leaf cos-name {\r
663                   type leafref {\r
664                     path "/mef-global:mef-global/mef-global:" +\r
665                             "profiles/mef-global:cos-names/" +\r
666                             "mef-global:cos-name/mef-global:name";\r
667                   }\r
668                   description\r
669                     "EVC Per UNI: Class of Service Identifier " +\r
670                     "for this Bandwidth Profile Flow.";\r
671                   reference "[MEF7.3] Section 12.1.2.";\r
672                 }\r
673                 leaf bw-profile {\r
674                   type leafref {\r
675                     path "/mef-interfaces:mef-interfaces/" +\r
676                             "mef-interfaces:unis/" +\r
677                             "mef-interfaces:uni" +\r
678                             "[mef-interfaces:uni-id = " +\r
679                             "current()/../../../uni-id]" +\r
680                             "/mef-interfaces:ingress-envelopes/" +\r
681                             "mef-interfaces:envelope/" +\r
682                             "mef-interfaces:env-id";\r
683                   }\r
684                   mandatory true;\r
685                   description\r
686                     "EVC Per UNI: Ingress Bandwidth Profile " +\r
687                     "Envelope Per CoS ID. If this parameter " +\r
688                     "is not configured (ie. 'No') this " +\r
689                     "setting is configured else at the " +\r
690                     "UNI Level.";\r
691                   reference "[MEF10.3] Section 10.6, Table 28. " +\r
692                         "[MEF7.3] Section 12.1.2.";\r
693                 }\r
694               }\r
695             }\r
696             container egress-bwp-flows-per-eec {\r
697               presence "Using Egress Bandwidth Profiles Per " +\r
698                     "Egress Equivalence Class";\r
699               description\r
700                 "EVC Per UNI: The Egress Equivalence Class " +\r
701                 "Identifiers corresponding to this EVC's Egress " +\r
702                 "Bandwidth Profile Flows.";\r
703               leaf coupling-enabled {\r
704                 type boolean;\r
705                 default "false";\r
706                 description\r
707                   "EVC Per UNI: The Envelope Coupling Flag (CF) " +\r
708                   "attribute.";\r
709                 reference "[MEF10.3] Section 12.1.";\r
710               }\r
711               list bwp-flow-per-eec {\r
712                 key "eec-name";\r
713                 description\r
714                   "EVC Per UNI: The list of Egress Equivalence " +\r
715                   "Class Identifiers corresponding to this " +\r
716                   "EVC's Egress Bandwidth Profile Flow.";\r
717                 leaf eec-name {\r
718                   type leafref {\r
719                     path "/mef-global:mef-global/mef-global:" +\r
720                             "profiles/mef-global:eec-names/" +\r
721                             "mef-global:eec-name/mef-global:name";\r
722                   }\r
723                   description\r
724                     "EVC Per UNI: Egress Equivalence Class " +\r
725                     "Identifier for this Bandwidth Profile Flow.";\r
726                   reference "[MEF7.3] Section 12.1.2.";\r
727                 }\r
728                 leaf bw-profile {\r
729                   type leafref {\r
730                     path "/mef-interfaces:mef-interfaces/" +\r
731                             "mef-interfaces:unis/" +\r
732                             "mef-interfaces:uni" +\r
733                             "[mef-interfaces:uni-id = " +\r
734                             "current()/../../../uni-id]" +\r
735                             "/mef-interfaces:egress-envelopes/" +\r
736                             "mef-interfaces:envelope/" +\r
737                             "mef-interfaces:env-id";\r
738                   }\r
739                   mandatory true;\r
740                   description\r
741                     "EVC Per UNI: Egress Bandwidth Profile " +\r
742                     "Envelope Per Equivance Class. If this " +\r
743                     "parameter is not configured (ie. 'No') " +\r
744                     "this setting is configured else at the " +\r
745                     "UNI Level.";\r
746                   reference "[MEF10.3] Section 10.6, Table 28. " +\r
747                         "[MEF7.3] Section 12.1.2.";\r
748                 }\r
749               }\r
750             }\r
751             container status {\r
752               description\r
753                 "EVC Per UNI: This status group is related to " +\r
754                 "the MEF 7.3 Service Endpoint";\r
755               leaf oper-state-enabled {\r
756                 type boolean;\r
757                 default "false";\r
758                 config false;\r
759                 description\r
760                   "EVC Per UNI: Operational Status of the " +\r
761                   "Virtual Connection as Enabled/Disabled.";\r
762                 reference "[MEF15]. [MEF7.3] Section 11.2.1.";\r
763               }\r
764               leaf available-status {\r
765                 type mef-types:svc-endpoint-availability-type;\r
766                 default "not-installed";\r
767                 config false;\r
768                 description\r
769                   "EVC Per UNI: Availability Status of the " +\r
770                   "Virtual Connection.";\r
771                 reference "[MEF15]. [MEF7.3] Section 11.2.1.";\r
772               }\r
773             }\r
774             leaf uni-id {\r
775               type leafref {\r
776                 path "/mef-interfaces:mef-interfaces/" +\r
777                         "mef-interfaces:unis/mef-interfaces:uni/" +\r
778                         "mef-interfaces:uni-id";\r
779               }\r
780               description\r
781                 "EVC Per UNI: The UNI ID paired with the EVC ID " +\r
782                 "in the containing list.";\r
783               reference "[MEF10.3] Section 8.3, Section 10.1.  " +\r
784                     "[MEF7.3] Section 12.1.2.";\r
785             }\r
786             leaf role {\r
787               type mef-types:evc-uni-role-type;\r
788               mandatory true;\r
789               description\r
790                 "EVC Per UNI: The UNI Role MUST have the value " +\r
791                 "of either 'root' or 'leaf'.";\r
792               reference "[MEF10.3] [R4], [R5], [R10], [R11], " +\r
793                     "[R12]. [MEF7.3] Section 12.2.2.";\r
794             }\r
795             leaf admin-state-enabled {\r
796               type boolean;\r
797               default "true";\r
798               description\r
799                 "EVC Per UNI: Locked/Unlocked is inconsistent " +\r
800                 "with Oper Status and will be confusing.";\r
801               reference "[MEF15]. [MEF7.3] Section 11.2.1.";\r
802             }\r
803             leaf color-id {\r
804               type mef-types:cos-color-identifier-type;\r
805               description\r
806                 "EVC Per UNI: The Color Identifier for " +\r
807                 "Service Frames.";\r
808               reference "[MEF10.3] Section 10.3. " +\r
809                     "[MEF7.3] Section 12.1.2.";\r
810             }\r
811             leaf data-svc-frm-cos {\r
812               type leafref {\r
813                 path "/mef-global:mef-global/mef-global:profiles/" +\r
814                         "mef-global:cos/mef-global:cos-profile/" +\r
815                         "mef-global:id";\r
816               }\r
817               must "not(/mef-global:mef-global/mef-global:" +\r
818                     "profiles/mef-global:cos/" +\r
819                     "mef-global:cos-profile" +\r
820                     "[mef-global:id = current()]" +\r
821                     "/mef-global:cos-pcp) or " +\r
822                     "((/mef-global:mef-global/mef-global:" +\r
823                     "profiles/mef-global:cos/" +\r
824                     "mef-global:cos-profile" +\r
825                     "[mef-global:id = current()]" +\r
826                     "/mef-global:cos-pcp) and " +\r
827                     "((../color-id = 'pcp') or " +\r
828                     "(../color-id = 'dei')) )" {\r
829                 error-message "When the Class of Service " +\r
830                         "Identifier is based on PCP for a " +\r
831                         "given EVC at a given UNI, the Color " +\r
832                         "Identifier must be based on either " +\r
833                         "DEI or PCP.";\r
834                 description\r
835                   "When the Class of Service Identifier is " +\r
836                   "based on PCP for a given EVC at a given UNI, " +\r
837                   "the Color Identifier must be based on either " +\r
838                   "DEI or PCP.";\r
839               }\r
840               must "not(/mef-global:mef-global/mef-global:" +\r
841                     "profiles/mef-global:cos/mef-global:" +\r
842                     "cos-profile" +\r
843                     "[mef-global:id = current()]/mef-global:" +\r
844                     "cos-dscp) or " +\r
845                     "((/mef-global:mef-global/mef-global:" +\r
846                     "profiles/mef-global:cos/mef-global:" +\r
847                     "cos-profile" +\r
848                     "[mef-global:id = current()]/mef-global:" +\r
849                     "cos-dscp) and " +\r
850                     "(../color-id = 'dscp'))" {\r
851                 error-message "When the Class of Service " +\r
852                         "Identifier is based on DSCP for a " +\r
853                         "given EVC at a given UNI, the Color " +\r
854                         "Identifier must be based DSCP.";\r
855                 description\r
856                   "When the Class of Service Identifier is based " +\r
857                   "on DSCP for a given EVC at a given UNI, the " +\r
858                   "Color Identifier must be based DSCP.";\r
859               }\r
860               description\r
861                 "EVC Per UNI: Ingress Data Service Frame " +\r
862                 "CoS Profile.";\r
863               reference "[MEF10.3] Section 8.8, Section 10.2. " +\r
864                     "[MEF7.3] Section 12.1.2.";\r
865             }\r
866             leaf l2cp-svc-frm-cos {\r
867               type leafref {\r
868                 path "/mef-global:mef-global/mef-global:" +\r
869                         "profiles/mef-global:l2cp-cos/mef-global:" +\r
870                         "l2cp-profile/mef-global:id";\r
871               }\r
872               description\r
873                 "EVC Per UNI: Ingress Layer 2 Control Protocol " +\r
874                 "Processing.";\r
875               reference "[MEF10.3] Section 8.8, Section 10.2. " +\r
876                     "[MEF7.3] Section 12.1.2.";\r
877             }\r
878             leaf soam-svc-frm-cos {\r
879               type leafref {\r
880                 path "/mef-global:mef-global/mef-global:profiles/" +\r
881                         "mef-global:cos/mef-global:cos-profile/" +\r
882                         "mef-global:id";\r
883               }\r
884               must "(not(.) and not(../data-svc-frm-cos)) or " +\r
885                     "(. = ../data-svc-frm-cos)" {\r
886                 error-message "For a given EVC at a given UNI, " +\r
887                         "the basis for the Class of Service " +\r
888                         "Identifier for ingress SOAM Service " +\r
889                         "Frames must be the same as that for " +\r
890                         "ingress Data Service Frames.";\r
891                 description\r
892                   "For a given EVC at a given UNI, the basis " +\r
893                   "for the Class of Service Identifier for " +\r
894                   "ingress SOAM Service Frames must be the " +\r
895                   "same as that for ingress Data Service Frames.";\r
896               }\r
897               description\r
898                 "EVC Per UNI: Ingress SOAM Service Frames.";\r
899               reference "[MEF7.3] Section 12.1.2.";\r
900             }\r
901             leaf data-svc-frm-eec {\r
902               type leafref {\r
903                 path "/mef-global:mef-global/mef-global:profiles/" +\r
904                         "mef-global:eec/mef-global:eec-profile/" +\r
905                         "mef-global:id";\r
906               }\r
907               must "not(/mef-global:mef-global/mef-global:" +\r
908                     "profiles/mef-global:eec/mef-global:" +\r
909                     "eec-profile" +\r
910                     "[mef-global:id = current()]" +\r
911                     "/mef-global:eec-pcp) or " +\r
912                     "((/mef-global:mef-global/mef-global:" +\r
913                     "profiles/mef-global:eec/mef-global:" +\r
914                     "eec-profile" +\r
915                     "[mef-global:id = current()]" +\r
916                     "/mef-global:eec-pcp) and " +\r
917                     "((../color-id = 'pcp') or " +\r
918                     "(../color-id = 'dei')) )" {\r
919                 error-message "When the Egress Equivalence " +\r
920                         "Class Identifier is based on PCP " +\r
921                         "for a given EVC at a given UNI, " +\r
922                         "the Color Identifier must be based " +\r
923                         "on either DEI or PCP.";\r
924                 description\r
925                   "When the Egress Equivalence Class Identifier " +\r
926                   "is based on PCP for a given EVC at a " +\r
927                   "given UNI, the Color Identifier must " +\r
928                   "be based on either DEI or PCP.";\r
929               }\r
930               must "not(/mef-global:mef-global/mef-global:" +\r
931                     "profiles/mef-global:eec/mef-global:" +\r
932                     "eec-profile" +\r
933                     "[mef-global:id = current()]" +\r
934                     "/mef-global:eec-dscp) or " +\r
935                     "((/mef-global:mef-global/mef-global:" +\r
936                     "profiles/mef-global:eec/mef-global:" +\r
937                     "eec-profile" +\r
938                     "[mef-global:id = current()]" +\r
939                     "/mef-global:eec-dscp) and " +\r
940                     "(../color-id = 'dscp'))" {\r
941                 error-message "When the Egress Equivalence " +\r
942                         "Class Identifier is based on DSCP for " +\r
943                         "a given EVC at a given UNI, the Color " +\r
944                         "Identifier must be based DSCP.";\r
945                 description\r
946                   "When the Egress Equivalence Class Identifier " +\r
947                   "is based on DSCP for a given EVC at a given " +\r
948                   "UNI, the Color Identifier must be based DSCP.";\r
949               }\r
950               description\r
951                 "EVC Per UNI: Egress Data Service Frame Processing.";\r
952               reference "[MEF10.3] Section 10.4. " +\r
953                     "[MEF7.3] Section 12.1.2.";\r
954             }\r
955             leaf l2cp-svc-frm-eec {\r
956               type leafref {\r
957                 path "/mef-global:mef-global/mef-global:profiles/" +\r
958                         "mef-global:l2cp-eec/mef-global:" +\r
959                         "l2cp-profile/mef-global:id";\r
960               }\r
961               description\r
962                 "EVC Per UNI: Egress Layer 2 Control Protocol " +\r
963                 "Processing.";\r
964               reference "[MEF10.3] Section 10.4. " +\r
965                     "[MEF7.3] Section 12.1.2.";\r
966             }\r
967             leaf soam-svc-frm-eec {\r
968               type leafref {\r
969                 path "/mef-global:mef-global/mef-global:" +\r
970                         "profiles/mef-global:eec/mef-global:" +\r
971                         "eec-profile/mef-global:id";\r
972               }\r
973               must "(not(.) and not(../data-svc-frm-eec)) or " +\r
974                     "(. = ../data-svc-frm-eec)" {\r
975                 error-message "For a given EVC at a given UNI, " +\r
976                         "the basis for the Egress Equivalence " +\r
977                         "Class Identifier for egress SOAM " +\r
978                         "Service Frames must be the same as " +\r
979                         "that for egress Data Service Frames.";\r
980                 description\r
981                   "For a given EVC at a given UNI, the basis " +\r
982                   "for the Egress Equivalence Class Identifier " +\r
983                   "for egress SOAM Service Frames must be " +\r
984                   "the same as that for egress Data " +\r
985                   "Service Frames.";\r
986               }\r
987               description\r
988                 "EVC Per UNI: Egress SOAM Service Frames.";\r
989               reference "[MEF10.3] Section 10.4. " +\r
990                     "[MEF7.3] Section 12.1.2.";\r
991             }\r
992             leaf ingress-bw-profile-per-evc {\r
993               type leafref {\r
994                 path "/mef-interfaces:mef-interfaces/" +\r
995                         "mef-interfaces:unis/" +\r
996                         "mef-interfaces:uni" +\r
997                         "[mef-interfaces:uni-id = " +\r
998                         "current()/../uni-id]" +\r
999                         "/mef-interfaces:ingress-envelopes/" +\r
1000                         "mef-interfaces:envelope/" +\r
1001                         "mef-interfaces:env-id";\r
1002               }\r
1003               description\r
1004                 "EVC Per UNI: Ingress Bandwidth Profile " +\r
1005                 "Envelope Per EVC. If this parameter is " +\r
1006                 "not configured (ie. 'No') this setting " +\r
1007                 "is configured else at the UNI Level.";\r
1008               reference "[MEF10.3] Section 10.5. " +\r
1009                     "[MEF7.3] Section 12.1.2.";\r
1010             }\r
1011             leaf egress-bw-profile-per-evc {\r
1012               type leafref {\r
1013                 path "/mef-interfaces:mef-interfaces/" +\r
1014                         "mef-interfaces:unis/" +\r
1015                         "mef-interfaces:uni" +\r
1016                         "[mef-interfaces:uni-id = " +\r
1017                         "current()/../uni-id]" +\r
1018                         "/mef-interfaces:egress-envelopes/" +\r
1019                         "mef-interfaces:envelope/mef-interfaces:" +\r
1020                         "env-id";\r
1021               }\r
1022               description\r
1023                 "EVC Per UNI: Egress Bandwidth Profile Envelope " +\r
1024                 "Per EVC. If this parameter is not configured " +\r
1025                 "(ie. 'No') this setting is configured else at " +\r
1026                 "the UNI Level.";\r
1027               reference "[MEF10.3] Section 10.7. " +\r
1028                     "[MEF7.3] Section 12.1.2.";\r
1029             }\r
1030             leaf src-mac-addr-limit-enabled {\r
1031               type boolean;\r
1032               default "false";\r
1033               description\r
1034                 "EVC Per UNI: Source MAC Address Limit " +\r
1035                 "Enable / Disable. If Enabled, the values " +\r
1036                 "for the Source MAC Address Limit and Source " +\r
1037                 "MAC Address Interval must be set.";\r
1038               reference "[MEF10.3] Section 10.9. " +\r
1039                     "[MEF7.3] Section 12.1.2.";\r
1040             }\r
1041             leaf src-mac-addr-limit {\r
1042               type uint32 {\r
1043                 range "1..max";\r
1044               }\r
1045               description\r
1046                 "EVC Per UNI: Source MAC Address Limit. " +\r
1047                 "This value is used when the Source MAC Address " +\r
1048                 "Limit Enabled is true.";\r
1049               reference "[MEF10.3] Section 10.9.";\r
1050             }\r
1051             leaf src-mac-addr-limit-interval {\r
1052               type yang:timeticks;\r
1053               default "0";\r
1054               description\r
1055                 "EVC Per UNI: Source MAC Address Limit " +\r
1056                 "Interval. This value is used when the " +\r
1057                 "Source MAC Address Limit Enabled is true.";\r
1058               reference "[MEF10.3] Section 10.9.";\r
1059             }\r
1060             leaf test-meg-enabled {\r
1061               type boolean;\r
1062               default "false";\r
1063               description\r
1064                 "EVC Per UNI: Test MEG Enabled / Disabled.";\r
1065               reference "[MEF10.3] Section 10.10. " +\r
1066                     "[MEF7.3] Section 12.1.2.";\r
1067             }\r
1068             leaf test-meg {\r
1069               type mef-types:identifier45;\r
1070               description\r
1071                 "EVC Per UNI: Test MEG Identifier.";\r
1072               reference "[MEF7.3] Section 12.1.2.";\r
1073             }\r
1074             leaf subscriber-meg-mip-enabled {\r
1075               type boolean;\r
1076               default "false";\r
1077               description\r
1078                 "EVC Per UNI: Subscriber MEG MIP " +\r
1079                 "Enabled / Disabled.";\r
1080               reference "[MEF10.3] Section 10.11. " +\r
1081                     "[MEF7.3] Section 12.1.2.";\r
1082             }\r
1083             leaf subscriber-meg-mip {\r
1084               type mef-types:identifier45;\r
1085               description\r
1086                 "EVC Per UNI: Subscriber MEG MIP Identifier.";\r
1087               reference "[MEF7.3] Section 12.1.2.";\r
1088             }\r
1089           }\r
1090         }\r
1091         container status {\r
1092           description\r
1093             "This status group is related to the MEF 7.3 Virtual " +\r
1094             "Connection";\r
1095           leaf oper-state-enabled {\r
1096             type boolean;\r
1097             default "false";\r
1098             config false;\r
1099             description\r
1100               "EVC Operational Status of the Virtual Connection " +\r
1101               "as Enabled/Disabled.";\r
1102             reference "[MEF7.3] Section 11.1.1.";\r
1103           }\r
1104           leaf available-status {\r
1105             type mef-types:virt-cx-availability-type;\r
1106             default "not-installed";\r
1107             config false;\r
1108             description\r
1109               "EVC Availability Status of the Virtual Connection.";\r
1110             reference "[MEF7.3] Section 11.1.1.";\r
1111           }\r
1112         }\r
1113         container sls-inclusions-by-cos {\r
1114           description\r
1115             "SLS Inclusions by CoS: For this EVC, the following " +\r
1116             "CoS Names/Labels are applicable.";\r
1117           list sls-inclusion-by-cos {\r
1118             key "cos-name";\r
1119             description\r
1120               "CoS Name.";\r
1121             leaf cos-name {\r
1122               type leafref {\r
1123                 path "/mef-global:mef-global/mef-global:profiles/" +\r
1124                         "mef-global:cos-names/mef-global:" +\r
1125                         "cos-name/mef-global:name";\r
1126               }\r
1127               description\r
1128                 "EVC: This attribute identifies the name of " +\r
1129                 "a class of service (CoS) instance to be used " +\r
1130                 "for EVC Performance.";\r
1131             }\r
1132           }\r
1133         }\r
1134         container sls-uni-inclusions {\r
1135           presence "EVC: Defines the EVC Flow Points (UNI) Pairs " +\r
1136                 "that must conform to the EVC's SLS Performance " +\r
1137                 "Metrics.";\r
1138           description\r
1139             "SLS UNI Inclusions List. The following pairs of UNI " +\r
1140             "Interconnections are to required to meet the " +\r
1141             "SLS Performance Objectives. Configing both SLS " +\r
1142             "UNI Inclusions and SLS UNI Exclusions is not " +\r
1143             "permitted.";\r
1144           list sls-uni-inclusion-set {\r
1145             must "uni-id1 != uni-id2" {\r
1146               error-message "The two UNI IDs for a given " +\r
1147                     "inclusion cannot be the same.";\r
1148               description\r
1149                 "The two UNI IDs for a given inclusion " +\r
1150                 "cannot be the same.";\r
1151             }\r
1152             must "(../../evc-type != 'rooted-multipoint') or " +\r
1153                     "((../../evc-type = 'rooted-multipoint') " +\r
1154                     "and " +\r
1155                     "not((../../unis/uni[uni-id = " +\r
1156                     "current()/uni-id1]/role = 'leaf') and " +\r
1157                     "(../../unis/uni[uni-id = current()/uni-id2]" +\r
1158                     "/role = 'leaf')))" {\r
1159               error-message "If EVC Type is Rooted-Multipoint, " +\r
1160                     "sls-uni-inclusion UNI Pairs cannot both " +\r
1161                     "be role 'leaf'.";\r
1162               description\r
1163                 "If EVC Type is Rooted-Multipoint, " +\r
1164                 "sls-uni-inclusion UNI Pairs cannot " +\r
1165                 "both be role 'leaf'.";\r
1166             }\r
1167             key "pm-type pm-id uni-id1 uni-id2";\r
1168             description\r
1169               "EVC: Defines the EVC Flow Points (UNI) Pairs that " +\r
1170               "must conform to the EVC's SLS Performance " +\r
1171               "Metrics. Use of this list indicates that a " +\r
1172               "complete set of UNI Pairs has been specified " +\r
1173               "for the Performance Metrics defined in the " +\r
1174               "selected SLS.";\r
1175             leaf pm-type {\r
1176               type leafref {\r
1177                 path "/mef-global:mef-global/mef-global:slss/" +\r
1178                         "mef-global:sls" +\r
1179                         "[mef-global:sls-id = current()/../../../" +\r
1180                         "evc-performance-sls]" +\r
1181                         "/mef-global:perf-objs/mef-global:" +\r
1182                         "perf-obj/mef-global:pm-type";\r
1183               }\r
1184               description\r
1185                 "EVC: Performance Metric.";\r
1186               reference "[MEF10.3] Section 8.8.";\r
1187             }\r
1188             leaf pm-id {\r
1189               type leafref {\r
1190                 path "/mef-global:mef-global/mef-global:slss/" +\r
1191                         "mef-global:sls" +\r
1192                         "[mef-global:sls-id = current()/../../../" +\r
1193                         "evc-performance-sls]" +\r
1194                         "/mef-global:perf-objs/mef-global:perf-obj" +\r
1195                         "[mef-global:pm-type = current()/../" +\r
1196                         "pm-type]" +\r
1197                         "/mef-global:pm-id";\r
1198               }\r
1199               description\r
1200                 "EVC: This is a friendly name for specific " +\r
1201                 "performance profile.";\r
1202             }\r
1203             leaf uni-id1 {\r
1204               type leafref {\r
1205                 path "../../../unis/uni/uni-id";\r
1206               }\r
1207               description\r
1208                 "EVC: The UNI ID paired with the EVC ID in the " +\r
1209                 "containing list.";\r
1210               reference "[MEF10.3] Section 8.3, Section 10.1.  " +\r
1211                     "[MEF7.3] Section 12.1.2.";\r
1212             }\r
1213             leaf uni-id2 {\r
1214               type leafref {\r
1215                 path "../../../unis/uni/uni-id";\r
1216               }\r
1217               description\r
1218                 "EVC: The UNI ID paired with the EVC ID in the " +\r
1219                 "containing list.";\r
1220               reference "[MEF10.3] Section 8.3, Section 10.1.  " +\r
1221                     "[MEF7.3] Section 12.1.2.";\r
1222             }\r
1223           }\r
1224         }\r
1225         container sls-uni-exclusions {\r
1226           presence "Not all EVC Flow Points (UNI) must conform " +\r
1227                 "to the EVC SLS Performance Metrics.";\r
1228           description\r
1229             "EVC: Not all EVC Flow Points (UNI) must conform to " +\r
1230             "the EVC SLS Performance Metrics. Use of this " +\r
1231             "list indicates that all UNI Pairs EXCEPT for " +\r
1232             "the ones indicated (per Performance Metric) must " +\r
1233             "conform to the SLS.";\r
1234           list sls-uni-exclusion-set {\r
1235             must "uni-id1 != uni-id2" {\r
1236               error-message "The two UNI IDs for a given " +\r
1237                     "exclusion cannot be the same.";\r
1238               description\r
1239                 "The two UNI IDs for a given exclusion cannot " +\r
1240                 "be the same as these pairs are invalid as " +\r
1241                 "defined in MEF 10.3.";\r
1242             }\r
1243             key "pm-type pm-id uni-id1 uni-id2";\r
1244             description\r
1245               "SLS UNI Exclusions List. The following pairs " +\r
1246               "of UNI Interconnections are not required " +\r
1247               "meet the SLS Performance Objectives. " +\r
1248               "Configing both SLS UNI Inclusions and SLS " +\r
1249               "UNI Exclusions is not permitted.";\r
1250             leaf pm-type {\r
1251               type leafref {\r
1252                 path "/mef-global:mef-global/mef-global:" +\r
1253                         "slss/mef-global:sls" +\r
1254                         "[mef-global:sls-id = current()/../../../" +\r
1255                         "evc-performance-sls]" +\r
1256                         "/mef-global:perf-objs/mef-global:" +\r
1257                         "perf-obj/mef-global:pm-type";\r
1258               }\r
1259               description\r
1260                 "EVC: Performance Metric.";\r
1261               reference "[MEF10.3] Section 8.8.";\r
1262             }\r
1263             leaf pm-id {\r
1264               type leafref {\r
1265                 path "/mef-global:mef-global/mef-global:slss/" +\r
1266                         "mef-global:sls" +\r
1267                         "[mef-global:sls-id = current()/../../../" +\r
1268                         "evc-performance-sls]" +\r
1269                         "/mef-global:perf-objs/mef-global:perf-obj" +\r
1270                         "[mef-global:pm-type = current()/../" +\r
1271                         "pm-type]" +\r
1272                         "/mef-global:pm-id";\r
1273               }\r
1274               description\r
1275                 "EVC: This is a friendly name for specific " +\r
1276                 "performance profile.";\r
1277             }\r
1278             leaf uni-id1 {\r
1279               type leafref {\r
1280                 path "../../../unis/uni/uni-id";\r
1281               }\r
1282               description\r
1283                 "EVC: The UNI ID paired with the EVC ID in the " +\r
1284                 "containing list.";\r
1285               reference "[MEF10.3] Section 8.3, Section 10.1.  " +\r
1286                     "[MEF7.3] Section 12.1.2.";\r
1287             }\r
1288             leaf uni-id2 {\r
1289               type leafref {\r
1290                 path "../../../unis/uni/uni-id";\r
1291               }\r
1292               description\r
1293                 "EVC: The UNI ID paired with the EVC ID in the " +\r
1294                 "containing list.";\r
1295               reference "[MEF10.3] Section 8.3, Section 10.1.  " +\r
1296                     "[MEF7.3] Section 12.1.2.";\r
1297             }\r
1298           }\r
1299         }\r
1300         leaf evc-id {\r
1301           type mef-types:evc-id-type;\r
1302           mandatory true;\r
1303           description\r
1304             "The EVC ID must be unique across all EVCs in the CEN." +\r
1305             " The EVC ID must be non-NULL.";\r
1306           reference "[MEF10.3] Section 8.2 [R7]. " +\r
1307                 "[MEF7.3] Section 11.1.1, Section 12.2.2.";\r
1308         }\r
1309         leaf evc-status {\r
1310           type mef-types:evc-status-type;\r
1311           default "inactive";\r
1312           config false;\r
1313           description\r
1314             "EVC Operational Status.";\r
1315           reference "[MEF16] Section 5.3.";\r
1316         }\r
1317         leaf evc-type {\r
1318           type mef-types:evc-type;\r
1319           must "(. != 'point-to-point') or " +\r
1320                 "((. = 'point-to-point') and " +\r
1321                 "(count(../unis/uni[role = 'leaf']) = 0))" {\r
1322             error-message "If EVC Type is Point-to-Point, all " +\r
1323                     "UNI Roles must be root.";\r
1324             description\r
1325               "If EVC Type is Point-to-Point, all UNI Roles must " +\r
1326               "be root.";\r
1327           }\r
1328           must "(. != 'multipoint-to-multipoint') or " +\r
1329                 "((. = 'multipoint-to-multipoint') and " +\r
1330                 "(count(../unis/uni[role = 'leaf']) = 0))" {\r
1331             error-message "If EVC Type is " +\r
1332                     "Multipoint-to-Multipoint, all UNI Roles " +\r
1333                     "must be root.";\r
1334             description\r
1335               "If EVC Type is Multipoint-to-Multipoint, all UNI " +\r
1336               "Roles must be root.";\r
1337           }\r
1338           must "(. != 'rooted-multipoint') or " +\r
1339                 "((. = 'rooted-multipoint') and " +\r
1340                 "(count(../unis/uni[role = 'root']) > 0) )" {\r
1341             error-message "If EVC Type is Rooted-Multipoint, one " +\r
1342                     "or more UNI Roles must be root.";\r
1343             description\r
1344               "If EVC Type is Rooted-Multipoint, one or more " +\r
1345               "UNI Roles must be root.";\r
1346           }\r
1347           must "(. != 'point-to-point') or " +\r
1348                 "((. = 'point-to-point') and " +\r
1349                 "(count(../unis/uni) = 2))" {\r
1350             error-message "If EVC Type is Point-to-Point, there " +\r
1351                     "must be exactly 2 UNI configured for the EVC.";\r
1352             description\r
1353               "If EVC Type is Point-to-Point, there must be " +\r
1354               "exactly 2 UNI configured for the EVC.";\r
1355           }\r
1356           must "(. != 'multipoint-to-multipoint') or " +\r
1357                 "((. = 'multipoint-to-multipoint') and " +\r
1358                 "(count(../unis/uni) > 1) and " +\r
1359                 "(count(../unis/uni) <= ../max-uni-count))" {\r
1360             error-message "If EVC Type is " +\r
1361                     "Multipoint-to-Multipoint, " +\r
1362                     "there must be 2 or more UNI configured " +\r
1363                     "for the EVC.";\r
1364             description\r
1365               "If EVC Type is Multipoint-to-Multipoint, " +\r
1366               "there must be 2 or more UNI configured for " +\r
1367               "the EVC.";\r
1368           }\r
1369           must "(. != 'rooted-multipoint') or " +\r
1370                 "((. = 'rooted-multipoint') and " +\r
1371                 "(count(../unis/uni) > 1) and " +\r
1372                 "(count(../unis/uni) <= ../max-uni-count))" {\r
1373             error-message "If EVC Type is Rooted-Multipoint, " +\r
1374                     "there must be 2 or more UNI configured for the EVC.";\r
1375             description\r
1376               "If EVC Type is Rooted-Multipoint, there must " +\r
1377               "be 2 or more UNI configured for the EVC.";\r
1378           }\r
1379           must "(. != 'point-to-point') or " +\r
1380                 "((. = 'point-to-point') and " +\r
1381                 "(../max-uni-count = 2))" {\r
1382             error-message "If EVC Type is Point-to-Point, " +\r
1383                     "the value of max-uni-count must be 2.";\r
1384             description\r
1385               "If EVC Type is Point-to-Point, the value of " +\r
1386               "max-uni-count must be 2.";\r
1387           }\r
1388           must "(. != 'multipoint-to-multipoint') or " +\r
1389                 "((. = 'multipoint-to-multipoint') and " +\r
1390                 "(../max-uni-count > 2))" {\r
1391             error-message "If EVC Type is " +\r
1392                     "Multipoint-to-Multipoint, the value of " +\r
1393                     "max-uni-count must be at least 3.";\r
1394             description\r
1395               "If EVC Type is Multipoint-to-Multipoint, the " +\r
1396               "value of max-uni-count must be at least 3.";\r
1397           }\r
1398           must "(. != 'rooted-multipoint') or " +\r
1399                 "((. = 'rooted-multipoint') and " +\r
1400                 "(../max-uni-count > 2))" {\r
1401             error-message "If EVC Type is Rooted-Multipoint, " +\r
1402                     "the value of max-uni-count must be at " +\r
1403                     "least 3.";\r
1404             description\r
1405               "If EVC Type is Rooted-Multipoint, the value " +\r
1406               "of max-uni-count must be at least 3.";\r
1407           }\r
1408           mandatory true;\r
1409           description\r
1410             "This EVC attribute describes the EVC as either " +\r
1411             "Multipoint-To-Multipoint, Point-To-Point, or " +\r
1412             "Rooted-Multipoint.";\r
1413           reference "[MEF10.3] Section 8.1, [R4], [R5], " +\r
1414                 "[R10], [R11], [R12], [R13] and [R14]. " +\r
1415                 "[MEF7.3] Section 12.2.2.";\r
1416         }\r
1417         leaf admin-state-enabled {\r
1418           type boolean;\r
1419           default "true";\r
1420           description\r
1421             "EVC: Locked/Unlocked is inconsistent with " +\r
1422             "Oper Status and will be confusing.";\r
1423           reference "[MEF15]. [MEF7.3] Section 11.1.1.";\r
1424         }\r
1425         leaf elastic-enabled {\r
1426           type boolean;\r
1427           default "true";\r
1428           description\r
1429             "EVC: Elastic Enabled/Disabled.";\r
1430           reference "[MEF7.3] Section 11.1.1.";\r
1431         }\r
1432         leaf elastic-service {\r
1433           type mef-types:identifier45;\r
1434           description\r
1435             "EVC: Related to CE4Cloud Information Model.";\r
1436           reference "[MEF7.3] Section 11.1.1.";\r
1437         }\r
1438         leaf max-uni-count {\r
1439           type uint32 {\r
1440             range "2..max";\r
1441           }\r
1442           must "(. > 2) or ((. = 2) and " +\r
1443                 "(../evc-type = 'point-to-point'))" {\r
1444             error-message "If EVC Type is Point-to-Point, the " +\r
1445                     "max-uni-count value must be 2.";\r
1446             description\r
1447               "If EVC Type is Point-to-Point, the max-uni-count " +\r
1448               "value must be 2.";\r
1449           }\r
1450           must "(. = 2) or ((. > 2) and " +\r
1451                 "((../evc-type = 'multipoint-to-multipoint') or " +\r
1452                 "(../evc-type = 'rooted-multipoint')))" {\r
1453             error-message "If EVC Type is " +\r
1454                     "Multipoint-to-Multipoint or " +\r
1455                     "Rooted-Multipoint, the max-uni-count value " +\r
1456                     "must be at least 3.";\r
1457             description\r
1458               "If EVC Type is Multipoint-to-Multipoint or " +\r
1459               "Rooted-Multipoint, the max-uni-count value " +\r
1460               "must be at least 3.";\r
1461           }\r
1462           default "2";\r
1463           description\r
1464             "EVC:The Maximum Number of UNIs this EVC can be " +\r
1465             "configured for (Default 2).If EVC Type is " +\r
1466             "Multipoint-to-Multipoint or Rooted-Multipoint, " +\r
1467             "the max-uni-count value must be at least 3. " +\r
1468             "This value must be 2 for point-to-point mode.";\r
1469           reference "[MEF10.3] [R14]. [MEF7.3] Section 12.2.2.";\r
1470         }\r
1471         leaf preserve-ce-vlan-id {\r
1472           type boolean;\r
1473           default "false";\r
1474           description\r
1475             "EVC:An EVC with more than one CE-VLAN ID mapping " +\r
1476             "to it must have the same list of CE-VLAN IDs " +\r
1477             "mapping to the EVC at each UNI in the EVC.";\r
1478           reference "[MEF10.3] Section 8.6.1, [R24] [R25], " +\r
1479                 "Section 9.10.2, Section 9.12, [R81], Figure 20. " +\r
1480                 "[MEF7.3] Section 12.2.2.";\r
1481         }\r
1482         leaf cos-preserve-ce-vlan-id {\r
1483           type boolean;\r
1484           default "false";\r
1485           description\r
1486             "EVC: Preserve CE-VLAN ID for CoS.";\r
1487           reference "[MEF10.3] Section 8.6.2, [R26]. " +\r
1488                 "[MEF7.3] Section 12.2.2.";\r
1489         }\r
1490         leaf evc-performance-sls {\r
1491           type leafref {\r
1492             path "/mef-global:mef-global/mef-global:slss/" +\r
1493                     "mef-global:sls/mef-global:sls-id";\r
1494           }\r
1495           description\r
1496             "EVC: EVC-specific performance objectives and " +\r
1497             "parameters. Note that an SLS can also specify " +\r
1498             "performance objectives spanning more than one EVC. " +\r
1499             "By default, all the UNI associated with the EVC " +\r
1500             "have this SLS applied for them.";\r
1501           reference "[MEF10.3] Section 8.8, Section 10. " +\r
1502                 "[MEF7.3] Section 12.2.2.";\r
1503         }\r
1504         leaf unicast-svc-frm-delivery {\r
1505           type mef-types:data-svc-frame-delivery-type;\r
1506           default "unconditional";\r
1507           description\r
1508             "EVC: Unicast Data Service Frame Delivery Mode " +\r
1509             "(unconditional[default], conditional, or discard).";\r
1510           reference "[MEF10.3] Section 8.5.2,[R16], [R17], " +\r
1511                 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";\r
1512         }\r
1513         leaf multicast-svc-frm-delivery {\r
1514           type mef-types:data-svc-frame-delivery-type;\r
1515           default "unconditional";\r
1516           description\r
1517             "EVC: Multicast Data Service Frame Delivery Mode " +\r
1518             "(unconditional[default], conditional, or discard).";\r
1519           reference "[MEF10.3] Section 8.5.2, [R16], [R18], " +\r
1520                 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";\r
1521         }\r
1522         leaf broadcast-svc-frm-delivery {\r
1523           type mef-types:data-svc-frame-delivery-type;\r
1524           default "unconditional";\r
1525           description\r
1526             "EVC: Broadcast Data Service Frame Delivery Mode " +\r
1527             "(unconditional[default], conditional, or discard).";\r
1528           reference "[MEF10.3] Section 8.5.2, [R16], [R19], " +\r
1529                 "Section 8.8, Section 11. [MEF7.3] Section 12.2.2.";\r
1530         }\r
1531         leaf evc-meg-id {\r
1532           type mef-types:identifier45;\r
1533           description\r
1534             "EVC: Identifies the Maintenance Entity Group (MEG) " +\r
1535             "for this EVC.";\r
1536           reference "[MEF7.3] Section 12.2.2. MEF 35.1.";\r
1537         }\r
1538         leaf max-svc-frame-size {\r
1539           type mef-types:max-svc-frame-size-type;\r
1540           default "1600";\r
1541           description\r
1542             "EVC: This attribute describes the maximum service " +\r
1543             "frame size for the EVC.";\r
1544           reference "[MEF10.3] Section 8.9, Section 9.7, [R71], " +\r
1545                 "[MEF6.2] Section 8.2.2 and MEF 22.1: [D2]. " +\r
1546                 "[MEF7.3] Section 12.2.2.";\r
1547         }\r
1548       }\r
1549       leaf svc-id {\r
1550         type mef-types:retail-svc-id-type;\r
1551         description\r
1552           "The MEF Service ID is a simple key used to " +\r
1553           "distinguish MEF Service Configuration Groups.";\r
1554         reference "[MEF10.3] Section 7.";\r
1555       }\r
1556       leaf sp-id {\r
1557         when "/mef-global:mef-global/mef-global:svc-providers" {\r
1558           description\r
1559             "Only configure when the Global Service Providers " +\r
1560             "list has been populated.";\r
1561         }\r
1562         type leafref {\r
1563           path "/mef-global:mef-global/mef-global:svc-providers/" +\r
1564                 "mef-global:svc-provider/mef-global:sp-id";\r
1565         }\r
1566         description\r
1567           "The MEF Service Provider ID must be globally unique " +\r
1568           "as all CENs and Subscribers must be supported by a " +\r
1569           "specific Service Provider(SP). A SP can support " +\r
1570           "multiple CENs.";\r
1571         reference "[MEF10.3] Section 7.";\r
1572       }\r
1573       leaf svc-type {\r
1574         type mef-types:mef-service-type;\r
1575         must "(. != 'epl') or ((. = 'epl') and " +\r
1576                 "(count(/mef-interfaces:mef-interfaces/" +\r
1577                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1578                 "[mef-interfaces:uni-id = current()/../" +\r
1579                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1580                 "uni/mef-services:uni-id]" +\r
1581                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1582                 "svc-mux-enabled = 'true']) = 0))" {\r
1583           error-message "For EPL, Service Multiplexing must be " +\r
1584                 "disabled for all UNIs in the EVC UNI List.";\r
1585           description\r
1586             "For EPL, Service Multiplexing must be disabled for " +\r
1587             "all UNIs in the EVC UNI List.";\r
1588         }\r
1589         must "(. != 'epl') or ((. = 'epl') and " +\r
1590                 "(count(/mef-interfaces:mef-interfaces/" +\r
1591                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1592                 "[mef-interfaces:uni-id = current()/../" +\r
1593                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1594                 "uni/mef-services:uni-id]" +\r
1595                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1596                 "bundling-enabled = 'true']) = 0))" {\r
1597           error-message "For EPL, Bundling must be disabled for " +\r
1598                 "all UNIs in the EVC UNI List.";\r
1599           description\r
1600             "For EPL, Bundling must be disabled for all UNIs in " +\r
1601             "the EVC UNI List.";\r
1602         }\r
1603         must "(. != 'epl') or ((. = 'epl') and " +\r
1604                 "(count(/mef-interfaces:mef-interfaces/" +\r
1605                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1606                 "[mef-interfaces:uni-id = current()/../" +\r
1607                 "mef-services:evc/mef-services:unis/" +\r
1608                 "mef-services:uni/mef-services:uni-id]" +\r
1609                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1610                 "all-to-one-bundling-enabled = 'false']) = 0))" {\r
1611           error-message "For EPL, All-to-One Bundling must be " +\r
1612                 "enabled for all UNIs in the EVC UNI List.";\r
1613           description\r
1614             "For EPL, All-to-One Bundling must be enabled for " +\r
1615             "all UNIs in the EVC UNI List.";\r
1616         }\r
1617         must "(. != 'epl') or ((. = 'epl') and " +\r
1618                 "(count(/mef-interfaces:mef-interfaces/" +\r
1619                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1620                 "[mef-interfaces:uni-id = current()/../" +\r
1621                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1622                 "uni/mef-services:uni-id]" +\r
1623                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1624                 "max-evc-count != 1]) = 0))" {\r
1625           error-message "For EPL, Max EVC Count must be 1 for " +\r
1626                 "all UNIs in the EVC UNI List.";\r
1627           description\r
1628             "For EPL, Max EVC Count must be 1 for all UNIs " +\r
1629             "in the EVC UNI List.";\r
1630         }\r
1631         must "(. != 'epl') or ((. = 'epl') and " +\r
1632                 "(count(../evc/unis/uni/egress-bwp-flows-per-eec/" +\r
1633                 "bwp-flow-per-eec) = 0))" {\r
1634           error-message "For EPL, Egress Bandwidth Profile per " +\r
1635                 "Egress Equivalence Class cannot be set for " +\r
1636                 "all UNIs in the EVC per UNI List.";\r
1637           description\r
1638             "For EPL, Egress Bandwidth Profile per Egress " +\r
1639             "Equivalence Class cannot be set for all UNIs in the " +\r
1640             "EVC per UNI List.";\r
1641         }\r
1642         must "(. != 'epl') or ((. = 'epl') and " +\r
1643                 "(count(../evc/unis/uni" +\r
1644                 "[src-mac-addr-limit-enabled = 'true']) = 0) )" {\r
1645           error-message "For EPL, Source MAC Address Limit must " +\r
1646                 "be disabled.";\r
1647           description\r
1648             "For EPL, Source MAC Address Limit must be disabled.";\r
1649         }\r
1650         must "(. != 'epl') or ((. = 'epl') and " +\r
1651                 "(../evc/evc-type = 'point-to-point'))" {\r
1652           error-message "For EPL, EVC Type must be Point-to-Point.";\r
1653           description\r
1654             "For EPL, EVC Type must be Point-to-Point.";\r
1655         }\r
1656         must "(. != 'epl') or ((. = 'epl') and " +\r
1657                 "(../evc/unicast-svc-frm-delivery = " +\r
1658                 "'unconditional'))" {\r
1659           error-message "For EPL, unicast-svc-frm-delivery " +\r
1660                 "must be unconditional.";\r
1661           description\r
1662             "For EPL, unicast-svc-frm-delivery must be " +\r
1663             "unconditional.";\r
1664         }\r
1665         must "(. != 'epl') or ((. = 'epl') and " +\r
1666                 "(../evc/multicast-svc-frm-delivery = " +\r
1667                 "'unconditional'))" {\r
1668           error-message "For EPL, multicast-svc-frm-delivery " +\r
1669                 "must be unconditional.";\r
1670           description\r
1671             "For EPL, multicast-svc-frm-delivery must be " +\r
1672             "unconditional.";\r
1673         }\r
1674         must "(. != 'epl') or ((. = 'epl') and " +\r
1675                 "(../evc/broadcast-svc-frm-delivery = " +\r
1676                 "'unconditional'))" {\r
1677           error-message "For EPL, broadcast-svc-frm-delivery " +\r
1678                 "must be unconditional.";\r
1679           description\r
1680             "For EPL, broadcast-svc-frm-delivery must be " +\r
1681             "unconditional.";\r
1682         }\r
1683         must "(. != 'epl') or ((. = 'epl') and " +\r
1684                 "(../evc/preserve-ce-vlan-id = 'true'))" {\r
1685           error-message "For EPL, CE-VLAN ID Preservation " +\r
1686                 "must be enabled.";\r
1687           description\r
1688             "For EPL, CE-VLAN ID Preservation must be enabled.";\r
1689         }\r
1690         must "(. != 'epl') or ((. = 'epl') and " +\r
1691                 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {\r
1692           error-message "For EPL, CE-VLAN ID CoS Preservation " +\r
1693                 "must be enabled.";\r
1694           description\r
1695             "For EPL, CE-VLAN ID CoS Preservation must be enabled.";\r
1696         }\r
1697         must "(. != 'evpl') or ((. = 'evpl') and " +\r
1698                 "(count(/mef-interfaces:mef-interfaces/" +\r
1699                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1700                 "[mef-interfaces:uni-id = current()/../" +\r
1701                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1702                 "uni/mef-services:uni-id]" +\r
1703                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1704                 "all-to-one-bundling-enabled = 'true']) = 0))" {\r
1705           error-message "For EVPL, All-to-One Bundling must be " +\r
1706                 "disabled for all UNIs in the EVC UNI List.";\r
1707           description\r
1708             "For EVPL, All-to-One Bundling must be disabled for " +\r
1709             "all UNIs in the EVC UNI List.";\r
1710         }\r
1711         must "(. != 'evpl') or ((. = 'evpl') and " +\r
1712                 "((../evc/unicast-svc-frm-delivery != " +\r
1713                 "'unconditional') or " +\r
1714                 "(../evc/multicast-svc-frm-delivery != " +\r
1715                 "'unconditional') or " +\r
1716                 "(../evc/broadcast-svc-frm-delivery != " +\r
1717                 "'unconditional') or " +\r
1718                 "count(../evc/unis/uni" +\r
1719                 "[src-mac-addr-limit-enabled = 'true']) = 0))" {\r
1720           error-message "For EVPL, Source MAC Address Limit must " +\r
1721                 "be disabled for all UNIs in the EVC per " +\r
1722                 "UNI List if all 3 -svc-frm-delivery values " +\r
1723                 "are unconditional.";\r
1724           description\r
1725             "For EVPL, Source MAC Address Limit must be disabled " +\r
1726             "for all UNIs in the EVC per UNI List if all " +\r
1727             "3 -svc-frm-delivery values are unconditional.";\r
1728         }\r
1729         must "(. != 'evpl') or ((. = 'evpl') and " +\r
1730                 "(../evc/evc-type = 'point-to-point'))" {\r
1731           error-message "For EVPL, EVC Type must be Point-to-Point.";\r
1732           description\r
1733             "For EVPL, EVC Type must be Point-to-Point.";\r
1734         }\r
1735         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1736                 "(count(/mef-interfaces:mef-interfaces/" +\r
1737                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1738                 "[mef-interfaces:uni-id = current()/../" +\r
1739                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1740                 "uni/mef-services:uni-id]" +\r
1741                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1742                 "svc-mux-enabled = 'true']) = 0))" {\r
1743           error-message "For EP-LAN, Service Multiplexing must " +\r
1744                 "be disabled for all UNIs in the EVC UNI List.";\r
1745           description\r
1746             "For EP-LAN, Service Multiplexing must be disabled " +\r
1747             "for all UNIs in the EVC UNI List.";\r
1748         }\r
1749         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1750                 "(count(/mef-interfaces:mef-interfaces/" +\r
1751                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1752                 "[mef-interfaces:uni-id = current()/../" +\r
1753                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1754                 "uni/mef-services:uni-id]" +\r
1755                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1756                 "bundling-enabled = 'true']) = 0))" {\r
1757           error-message "For EP-LAN, Bundling must be disabled " +\r
1758                 "for all UNIs in the EVC UNI List.";\r
1759           description\r
1760             "For EP-LAN, Bundling must be disabled for all UNIs " +\r
1761             "in the EVC UNI List.";\r
1762         }\r
1763         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1764                 "(count(/mef-interfaces:mef-interfaces/" +\r
1765                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1766                 "[mef-interfaces:uni-id = current()/../" +\r
1767                 "mef-services:evc/mef-services:unis/" +\r
1768                 "mef-services:uni/mef-services:uni-id]" +\r
1769                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1770                 "all-to-one-bundling-enabled = 'false']) = 0))" {\r
1771           error-message "For EP-LAN, All-to-One Bundling " +\r
1772                 "must be enabled for all UNIs in the " +\r
1773                 "EVC UNI List.";\r
1774           description\r
1775             "For EP-LAN, All-to-One Bundling must be enabled " +\r
1776             "for all UNIs in the EVC UNI List.";\r
1777         }\r
1778         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1779                 "(count(/mef-interfaces:mef-interfaces/" +\r
1780                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1781                 "[mef-interfaces:uni-id = current()/../" +\r
1782                 "mef-services:evc/mef-services:unis/" +\r
1783                 "mef-services:uni/mef-services:uni-id]" +\r
1784                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1785                 "max-evc-count != 1]) = 0))" {\r
1786           error-message "For EP-LAN, Max EVC Count must be 1 " +\r
1787                 "for all UNIs in the EVC UNI List.";\r
1788           description\r
1789             "For EP-LAN, Max EVC Count must be 1 for all UNIs in " +\r
1790             "the EVC UNI List.";\r
1791         }\r
1792         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1793                 "(../evc/evc-type = 'multipoint-to-multipoint'))" {\r
1794           error-message "For EP-LAN, EVC Type must be " +\r
1795                 "Multipoint-to-Multipoint.";\r
1796           description\r
1797             "For EP-LAN, EVC Type must be " +\r
1798             "Multipoint-to-Multipoint.";\r
1799         }\r
1800         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1801                 "(../evc/preserve-ce-vlan-id = 'true'))" {\r
1802           error-message "For EP-LAN, CE-VLAN ID Preservation " +\r
1803                 "must be enabled.";\r
1804           description\r
1805             "For EP-LAN, CE-VLAN ID Preservation must be enabled.";\r
1806         }\r
1807         must "(. != 'eplan') or ((. = 'eplan') and " +\r
1808                 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {\r
1809           error-message "For EP-LAN, CE-VLAN ID CoS Preservation " +\r
1810                 "must be enabled.";\r
1811           description\r
1812             "For EP-LAN, CE-VLAN ID CoS Preservation must be " +\r
1813             "enabled.";\r
1814         }\r
1815         must "(. != 'evplan') or ((. = 'evplan') and " +\r
1816                 "(../evc/evc-type = 'multipoint-to-multipoint'))" {\r
1817           error-message "For EVP-LAN, EVC Type must be " +\r
1818                 "Multipoint-to-Multipoint.";\r
1819           description\r
1820             "For EVP-LAN, EVC Type must be " +\r
1821             "Multipoint-to-Multipoint.";\r
1822         }\r
1823         must "(. != 'evplan') or ((. = 'evplan') and " +\r
1824                 "(count(/mef-interfaces:mef-interfaces/" +\r
1825                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1826                 "[mef-interfaces:uni-id = current()/../" +\r
1827                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1828                 "uni/mef-services:uni-id]" +\r
1829                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1830                 "all-to-one-bundling-enabled = 'true']) = 0))" {\r
1831           error-message "For EVP-LAN, All-to-One Bundling must " +\r
1832                 "be disabled for all UNIs in the EVC UNI List.";\r
1833           description\r
1834             "For EVP-LAN, All-to-One Bundling must be disabled " +\r
1835             "for all UNIs in the EVC UNI List.";\r
1836         }\r
1837         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1838                 "(count(/mef-interfaces:mef-interfaces/" +\r
1839                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1840                 "[mef-interfaces:uni-id = current()/../" +\r
1841                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1842                 "uni/mef-services:uni-id]" +\r
1843                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1844                 "svc-mux-enabled = 'true']) = 0))" {\r
1845           error-message "For EP-TREE, Service Multiplexing " +\r
1846                 "must be disabled for all UNIs in the " +\r
1847                 "EVC UNI List.";\r
1848           description\r
1849             "For EP-TREE, Service Multiplexing must be disabled " +\r
1850             "for all UNIs in the EVC UNI List.";\r
1851         }\r
1852         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1853                 "(count(/mef-interfaces:mef-interfaces/" +\r
1854                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1855                 "[mef-interfaces:uni-id = current()/../" +\r
1856                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1857                 "uni/mef-services:uni-id]" +\r
1858                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1859                 "bundling-enabled = 'true']) = 0))" {\r
1860           error-message "For EP-TREE, Bundling must be disabled " +\r
1861                 "for all UNIs in the EVC UNI List.";\r
1862           description\r
1863             "For EP-TREE, Bundling must be disabled for all UNIs " +\r
1864             "in the EVC UNI List.";\r
1865         }\r
1866         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1867                 "(count(/mef-interfaces:mef-interfaces/" +\r
1868                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1869                 "[mef-interfaces:uni-id = current()/../" +\r
1870                 "mef-services:evc/mef-services:unis/" +\r
1871                 "mef-services:uni/mef-services:uni-id]" +\r
1872                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1873                 "all-to-one-bundling-enabled = 'false']) = 0))" {\r
1874           error-message "For EP-TREE, All-to-One Bundling must " +\r
1875                 "be enabled for all UNIs in the EVC UNI List.";\r
1876           description\r
1877             "For EP-TREE, All-to-One Bundling must be enabled " +\r
1878             "for all UNIs in the EVC UNI List.";\r
1879         }\r
1880         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1881                 "(count(/mef-interfaces:mef-interfaces/" +\r
1882                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1883                 "[mef-interfaces:uni-id = current()/../" +\r
1884                 "mef-services:evc/mef-services:unis/" +\r
1885                 "mef-services:uni/mef-services:uni-id]" +\r
1886                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1887                 "max-evc-count != 1]) = 0))" {\r
1888           error-message "For EP-TREE, Max EVC Count must be 1 " +\r
1889                 "for all UNIs in the EVC UNI List.";\r
1890           description\r
1891             "For EP-TREE, Max EVC Count must be 1 for all UNIs " +\r
1892             "in the EVC UNI List.";\r
1893         }\r
1894         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1895                 "(../evc/evc-type = 'rooted-multipoint'))" {\r
1896           error-message "For EP-TREE, EVC Type must be " +\r
1897                 "Rooted-Multipoint.";\r
1898           description\r
1899             "For EP-TREE, EVC Type must be Rooted-Multipoint.";\r
1900         }\r
1901         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1902                 "(../evc/preserve-ce-vlan-id = 'true'))" {\r
1903           error-message "For EP-TREE, CE-VLAN ID Preservation " +\r
1904                 "must be enabled.";\r
1905           description\r
1906             "For EP-TREE, CE-VLAN ID Preservation must be enabled.";\r
1907         }\r
1908         must "(. != 'eptree') or ((. = 'eptree') and " +\r
1909                 "(../evc/cos-preserve-ce-vlan-id = 'true'))" {\r
1910           error-message "For EP-TREE, CE-VLAN ID " +\r
1911                 "CoS Preservation must be enabled.";\r
1912           description\r
1913             "For EP-TREE, CE-VLAN ID CoS Preservation must be " +\r
1914             "enabled.";\r
1915         }\r
1916         must "(. != 'evptree') or ((. = 'evptree') and " +\r
1917                 "(count(/mef-interfaces:mef-interfaces/" +\r
1918                 "mef-interfaces:unis/mef-interfaces:uni" +\r
1919                 "[mef-interfaces:uni-id = current()/../" +\r
1920                 "mef-services:evc/mef-services:unis/mef-services:" +\r
1921                 "uni/mef-services:uni-id]" +\r
1922                 "[mef-interfaces:uni-id/../mef-interfaces:" +\r
1923                 "all-to-one-bundling-enabled = 'true']) = 0))" {\r
1924           error-message "For EVP-TREE, All-to-One Bundling " +\r
1925                 "must be disabled for all UNIs in the EVC UNI List.";\r
1926           description\r
1927             "For EVP-TREE, All-to-One Bundling must be disabled " +\r
1928             "for all UNIs in the EVC UNI List.";\r
1929         }\r
1930         must "(. != 'evptree') or ((. = 'evptree') and " +\r
1931                 "(../evc/evc-type = 'rooted-multipoint'))" {\r
1932           error-message "For EVP-TREE, EVC Type must be " +\r
1933                 "Rooted-Multipoint.";\r
1934           description\r
1935             "For EVP-TREE, EVC Type must be Rooted-Multipoint.";\r
1936         }\r
1937         description\r
1938           "The MEF Service Type.";\r
1939       }\r
1940       leaf user-label {\r
1941         type mef-types:identifier45;\r
1942         description\r
1943           "This MEF user label is set by the user to a value " +\r
1944           "that is easier to identify than the Service ID.";\r
1945       }\r
1946       leaf svc-entity {\r
1947         type mef-types:service-entity-type;\r
1948         default "evc";\r
1949         description\r
1950           "MEF Service Entity.";\r
1951         reference "[MEF12.2] Table 3.";\r
1952       }\r
1953     }\r
1954   }\r
1955 }