add python compatibility module
[ccsdk/apps.git] / sdnr / model / yang / core-model@2017-03-20.yang
1 module core-model {
2     namespace "urn:onf:params:xml:ns:yang:core-model";
3     prefix core-model;
4     organization "ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project";
5     contact "WG Web: <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
6              WG List:  <mailto:wireless-transport@login.opennetworking.org>
7              WG Chair: Lyndon Ong
8                        <mailto:lyong@ciena.com>
9              WG Chair: Giorgio Cazzaniga
10                        <mailto:giorgio.cazzaniga@sm-optics.com>
11              Editors:  Thorsten Heinze
12                        <mailto:thorsten.heinze@telefonica.com>
13                        Martin Skorupski
14                        <mailto:martin.skorupski@highstreet-technologies.com>";
15     description "This module contains a collection of YANG definitions for managing wireless networks.";
16     revision 2017-03-20 {
17         description "Initial version";
18         reference "ONF TR 532: A YANG Data Model for Wireless Networks.";
19     }
20     /***********************
21     * package core-network-model
22     **********************/ 
23         /***********************
24         * package type-definitions
25         **********************/ 
26             /***********************
27             * package resilience
28             **********************/ 
29                 typedef protection-reason {
30                     type enumeration {
31                         enum wait-to-revert {
32                             description "removed";
33                         }
34                         enum signal-degrade {
35                             description "removed";
36                         }
37                         enum signal-fail {
38                             description "removed";
39                         }
40                     }
41                     description "removed";
42                 }
43                 typedef route-selection-control {
44                     type enumeration {
45                         enum normal {
46                             description "removed";
47                         }
48                         enum manual {
49                             description "removed";
50                         }
51                         enum forced {
52                             description "removed";
53                         }
54                         enum lock-out {
55                             description "removed";
56                         }
57                     }
58                     description "removed";
59                 }
60                 typedef route-selection-reason {
61                     type enumeration {
62                         enum wait-to-revert {
63                             description "removed";
64                         }
65                         enum signal-degrade {
66                             description "removed";
67                         }
68                         enum signal-fail {
69                             description "removed";
70                         }
71                         enum normal {
72                             description "removed";
73                         }
74                         enum manual {
75                             description "removed";
76                         }
77                         enum forced {
78                             description "removed";
79                         }
80                         enum lock-out {
81                             description "removed";
82                         }
83                     }
84                     description "removed";
85                 }
86                 typedef switch-control {
87                     type enumeration {
88                         enum normal {
89                             description "removed";
90                         }
91                         enum manual {
92                             description "removed";
93                         }
94                         enum forced {
95                             description "removed";
96                         }
97                     }
98                     description "none";
99                 }
100                 typedef switch-state-reason {
101                     type enumeration {
102                         enum wait-to-revert {
103                             description "removed";
104                         }
105                         enum signal-degrade {
106                             description "removed";
107                         }
108                         enum signal-fail {
109                             description "removed";
110                         }
111                         enum normal {
112                             description "removed";
113                         }
114                         enum manual {
115                             description "removed";
116                         }
117                         enum forced {
118                             description "removed";
119                         }
120                     }
121                     description "removed";
122                 }
123                 typedef reversion-mode {
124                     type enumeration {
125                         enum revertive {
126                             description "removed";
127                         }
128                         enum non-revertive {
129                             description "removed";
130                         }
131                     }
132                     description "removed";
133                 }
134                 grouping global-pac-g {
135                     uses global-class-g;
136                     description "removed";
137                 }
138                 grouping local-pac-g {
139                     uses local-class-g;
140                     description "removed";
141                 }
142                 typedef protection-type {
143                     type string;
144                     description "removed";
145                 }
146
147             typedef layer-protocol-name {
148                 type string;
149                 description "removed";
150             }
151             typedef port-role {
152                 type string;
153                 description "removed";
154             }
155             typedef port-direction {
156                 type enumeration {
157                     enum bidirectional {
158                         description "removed";
159                     }
160                     enum input {
161                         description "removed";
162                     }
163                     enum output {
164                         description "removed";
165                     }
166                     enum unidentified-or-unknown {
167                         description "removed";
168                     }
169                 }
170                 description "removed";
171             }
172             typedef forwarding-direction {
173                 type enumeration {
174                     enum bidirectional {
175                         description "removed";
176                     }
177                     enum unidirectional {
178                         description "removed";
179                     }
180                     enum undefined-or-unknown {
181                         description "removed";
182                     }
183                 }
184                 description "removed";
185             }
186             typedef termination-direction {
187                 type enumeration {
188                     enum bidirectional {
189                         description "removed";
190                     }
191                     enum sink {
192                         description "removed";
193                     }
194                     enum source {
195                         description "removed";
196                     }
197                     enum undefined-or-unknown {
198                         description "removed";
199                     }
200                 }
201                 description "removed";
202             }
203             typedef extended-termination-direction {
204                 type enumeration {
205                     enum bidirectional {
206                         description "removed";
207                     }
208                     enum sink {
209                         description "removed";
210                     }
211                     enum source {
212                         description "removed";
213                     }
214                     enum undefined-or-unknown {
215                         description "removed";
216                     }
217                     enum contra-direction-sink {
218                         description "removed";
219                     }
220                     enum contra-direction-source {
221                         description "removed";
222                     }
223                 }
224                 description "removed";
225             }
226             typedef termination-state {
227                 type enumeration {
228                     enum lp-can-never-terminate {
229                         description "removed";
230                     }
231                     enum lt-not-terminated {
232                         description "removed";
233                     }
234                     enum terminated-server-to-client-flow {
235                         description "removed";
236                     }
237                     enum terminated-client-to-server-flow {
238                         description "removed";
239                     }
240                     enum terminated-bidirectional {
241                         description "removed";
242                     }
243                     enum lt-permenantly-terminated {
244                         description "removed";
245                     }
246                     enum termination-state-unknown {
247                         description "removed";
248                     }
249                 }
250                 description "removed";
251             }
252
253         /***********************
254         * package object-classes
255         **********************/ 
256             /***********************
257             * package resilience
258             **********************/ 
259                 grouping configuration-and-switch-controller-g {
260                     leaf switch-rule {
261                         type to-be-defined;
262                         description "removed";
263                     }
264                     leaf-list fc-switch {
265                         type leafref {
266                             path '/forwarding-construct/fc-switch/uuid';
267                         }
268                         description "removed";
269                     }
270                     container control-parameters {
271                         uses control-parameters-pac-g;
272                         description "removed";
273                     }
274                     leaf-list profile-proxy {
275                         type string;
276                         description "removed";
277                     }
278                     container local-pac {
279                         uses local-pac-g;
280                         description "none";
281                     }
282                     container global-pac {
283                         uses global-pac-g;
284                         description "none";
285                     }
286                     leaf is-frozen {
287                         type boolean;
288                         description "removed";
289                     }
290                     leaf is-coordinated-switching-both-ends {
291                         type boolean;
292                         description "removed";
293                     }
294                     leaf-list subordinate-controller {
295                         type leafref {
296                             path '/network-element/ltp/lp/config-and-switch-controller/switch-rule';
297                         }
298                         description "removed";
299                     }
300                     description "removed";
301                 }
302                 grouping control-parameters-pac-g {
303                     leaf reversion-mode {
304                         type reversion-mode;
305                         description "removed";
306                     }
307                     leaf wait-to-revert-time {
308                         type int64;
309                         default 15;
310                         description "removed";
311                     }
312                     leaf prot-type {
313                         type protection-type;
314                         description "removed";
315                     }
316                     leaf hold-off-time {
317                         type int64;
318                         description "removed";
319                     }
320                     leaf network-scheme-specification {
321                         type string;
322                         description "none";
323                     }
324                     description "removed";
325                 }
326                 grouping fc-switch-g {
327                     leaf hold-off-time {
328                         type int64;
329                         description "removed";
330                     }
331                     leaf prot-type {
332                         type protection-type;
333                         description "removed";
334                     }
335                     leaf reversion-mode {
336                         type reversion-mode;
337                         description "removed";
338                     }
339                     leaf-list selected-fc-port {
340                         type leafref {
341                             path '/forwarding-construct/fc-port/uuid';
342                         }
343                         description "removed";
344                     }
345                     leaf-list profile-proxy {
346                         type string;
347                         description "removed";
348                     }
349                     container internal-configuration-and-switch-control {
350                         uses configuration-and-switch-controller-g;
351                         description "removed";
352                     }
353                     leaf switch-control {
354                         type switch-control;
355                         description "removed";
356                     }
357                     leaf switch-selects-ports {
358                         type port-direction;
359                         description "removed";
360                     }
361                     leaf switch-selection-reason {
362                         type switch-state-reason;
363                         config false;
364                         description "removed";
365                     }
366                     container control-parameters {
367                         uses control-parameters-pac-g;
368                         description "none";
369                     }
370                     leaf wait-to-restore-time {
371                         type int64;
372                         description "removed";
373                     }
374                     uses local-class-g;
375                     description "removed";
376                 }
377
378             grouping forwarding-domain-g {
379                 leaf-list layer-protocol-name {
380                     type layer-protocol-name;
381                     min-elements 1;
382                     description "removed";
383                 }
384                 leaf-list lower-level-fd {
385                     type leafref {
386                         path '/network-element/fd/uuid';
387                     }
388                     description "removed";
389                 }
390                 leaf-list fc {
391                     type leafref {
392                         path '/forwarding-construct/uuid';
393                     }
394                     description "removed";
395                 }
396                 leaf-list ltp {
397                     type leafref {
398                         path '/network-element/ltp/uuid';
399                     }
400                     description "removed";
401                 }
402                 leaf-list lower-level-link {
403                     type string;
404                     description "removed";
405                 }
406                 uses global-class-g;
407                 description "removed";
408             }
409             grouping forwarding-construct-g {
410                 leaf layer-protocol-name {
411                     type layer-protocol-name;
412                     description "removed";
413                 }
414                 leaf-list lower-level-fc {
415                     type leafref {
416                         path '/forwarding-construct/uuid';
417                     }
418                     description "removed";
419                 }
420                 leaf-list fc-route {
421                     type string;
422                     description "removed";
423                 }
424                 list fc-port {
425                     key 'uuid';
426                     min-elements 2;
427                     uses fc-port-g;
428                     description "removed";
429                 }
430                 list fc-switch {
431                     key 'uuid';
432                     uses fc-switch-g;
433                     description "removed";
434                 }
435                 leaf forwarding-direction {
436                     type forwarding-direction;
437                     description "removed";
438                 }
439                 leaf is-protection-lock-out {
440                     if-feature protection-exclude-server;
441                     type boolean;
442                     description "removed";
443                 }
444                 leaf service-priority {
445                     type int64;
446                     description "removed";
447                 }
448                 leaf-list supported-link {
449                     type string;
450                     description "removed";
451                 }
452                 uses global-class-g;
453                 description "removed";
454             }
455             container network-element {
456                 presence  "";
457                 list fd {
458                     key 'uuid';
459                     uses forwarding-domain-g;
460                     description "removed";
461                 }
462                 list ltp {
463                     key 'uuid';
464                     uses logical-termination-point-g;
465                     description "removed";
466                 }
467                 uses global-class-g;
468                 description "removed";
469             }
470             list forwarding-construct {
471                 key 'uuid';
472                 uses forwarding-construct-g;
473                 description "none";
474             }
475             grouping fc-port-g {
476                 leaf-list ltp {
477                     type leafref {
478                         path '/network-element/ltp/uuid';
479                     }
480                     max-elements 2;
481                     description "removed";
482                 }
483                 leaf role {
484                     type port-role;
485                     description "removed";
486                 }
487                 leaf fc-port-direction {
488                     type port-direction;
489                     description "removed";
490                 }
491                 leaf is-protection-lock-out {
492                     if-feature protection-exclude-fc-port;
493                     type boolean;
494                     description "removed";
495                 }
496                 leaf selection-priority {
497                     type int64;
498                     description "removed";
499                 }
500                 leaf is-internal-port {
501                     type boolean;
502                     config false;
503                     description "removed";
504                 }
505                 leaf-list fc-route-feeds-fc-port-egress {
506                     type string;
507                     description "removed";
508                 }
509                 uses local-class-g;
510                 description "removed";
511             }
512             grouping layer-protocol-g {
513                 leaf layer-protocol-name {
514                     type layer-protocol-name;
515                     description "removed";
516                 }
517                 leaf configured-client-capacity {
518                     type to-be-defined;
519                     description "removed";
520                 }
521                 leaf lp-direction {
522                     type termination-direction;
523                     description "removed";
524                 }
525                 leaf termination-state {
526                     type termination-state;
527                     description "removed";
528                 }
529                 list config-and-switch-controller {
530                     key 'switch-rule';
531                     uses configuration-and-switch-controller-g;
532                     description "removed";
533                 }
534                 leaf is-protection-lock-out {
535                     if-feature protection-exclude-ltp;
536                     type boolean;
537                     description "removed";
538                 }
539                 leaf fc-blocks-signal-to-lp {
540                     type string;
541                     description "none";
542                 }
543                 uses local-class-g;
544                 description "removed";
545             }
546             grouping logical-termination-point-g {
547                 leaf-list server-ltp {
548                     type leafref {
549                         path '/network-element/ltp/uuid';
550                     }
551                     description "removed";
552                 }
553                 leaf-list client-ltp {
554                     type leafref {
555                         path '/network-element/ltp/uuid';
556                     }
557                     description "removed";
558                 }
559                 list lp {
560                     key 'uuid';
561                     min-elements 1;
562                     uses layer-protocol-g;
563                     description "removed";
564                 }
565                 leaf connected-ltp {
566                     type leafref {
567                         path '/network-element/ltp/uuid';
568                     }
569                     description "removed";
570                 }
571                 leaf peer-ltp {
572                     type leafref {
573                         path '/network-element/ltp/uuid';
574                     }
575                     description "removed";
576                 }
577                 leaf-list physical-port-reference {
578                     type string;
579                     description "removed";
580                 }
581                 leaf-list ltp-in-other-view {
582                     type leafref {
583                         path '/network-element/ltp/uuid';
584                     }
585                     description "removed";
586                 }
587                 leaf ltp-direction {
588                     type termination-direction;
589                     description "removed";
590                 }
591                 uses global-class-g;
592                 description "removed";
593             }
594             feature protection-exclude-server {
595                 description "In protection context if server of protection where entire server is to be excluded from use for protection.";
596             }
597             feature protection-exclude-fc-port {
598                 description "In protection context where the FcPort is to be excluded from use for protection.";
599             }
600             feature protection-exclude-ltp {
601                 description "In protection context if LTP of protection where entire LTP is to be excluded from use for protection.";
602             }
603
604         /***********************
605         * package diagrams
606         **********************/ 
607
608         /***********************
609         * package associations
610         **********************/ 
611
612
613     /***********************
614     * package core-foundation-model
615     **********************/ 
616         /***********************
617         * package type-definitions
618         **********************/ 
619             typedef date-and-time {
620                 type string;
621                 description "removed";
622             }
623             typedef bit-string {
624                 type string;
625                 description "removed";
626             }
627             typedef real {
628                 type string;
629                 description "removed";
630             }
631             typedef printable-string {
632                 type string;
633                 description "removed";
634             }
635             typedef to-be-defined {
636                 type string;
637                 description "removed";
638             }
639
640         /***********************
641         * package super-classes-and-common-packages
642         **********************/ 
643             /***********************
644             * package object-classes
645             **********************/ 
646                 grouping name-g {
647                     list name {
648                         key 'value-name';
649                         min-elements 1;
650                         uses name-and-value-g;
651                         description "removed";
652                     }
653                     description "removed";
654                 }
655                 grouping global-class-g {
656                     list local-id {
657                         key 'value-name';
658                         uses name-and-value-g;
659                         description "removed";
660                     }
661                     leaf uuid {
662                         type universal-id;
663                         description "removed";
664                     }
665                     uses name-g;
666                     uses label-g;
667                     uses extension-g;
668                     uses state-pac-g;
669                     description "removed";
670                 }
671                 grouping local-class-g {
672                     list local-id {
673                         key 'value-name';
674                         min-elements 1;
675                         uses name-and-value-g;
676                         description "removed";
677                     }
678                     leaf uuid {
679                         type universal-id;
680                         description "A global identifier for the LocalClass, which is used as reference.";
681                     }
682                     uses name-g;
683                     uses label-g;
684                     uses extension-g;
685                     uses state-pac-g;
686                     description "removed";
687                 }
688                 grouping label-g {
689                     list label {
690                         key 'value-name';
691                         uses name-and-value-g;
692                         description "removed";
693                     }
694                     description "removed";
695                 }
696                 grouping extension-g {
697                     list extension {
698                         key 'value-name';
699                         uses name-and-value-g;
700                         description "removed";
701                     }
702                     description "removed";
703                 }
704                 grouping universal-id-authority-g {
705                     leaf uuid {
706                         type universal-id;
707                         description "removed";
708                     }
709                     description "removed";
710                 }
711                 grouping name-and-value-authority-g {
712                     leaf uuid {
713                         type universal-id;
714                         description "removed";
715                     }
716                     description "removed";
717                 }
718                 grouping conditional-package-g {
719                     uses extension-g;
720                     uses label-g;
721                     description "removed";
722                 }
723
724             /***********************
725             * package type-definitions
726             **********************/ 
727                 grouping name-and-value-g {
728                     leaf value-name {
729                         type string;
730                         description "removed";
731                     }
732                     leaf value {
733                         type string;
734                         description "removed";
735                     }
736                     description "removed";
737                 }
738                 typedef universal-id {
739                     type string;
740                     description "removed";
741                 }
742                 grouping address-g {
743                     leaf address-name {
744                         type string;
745                         description "removed";
746                     }
747                     list address-element {
748                         key 'uuid';
749                         uses address-element-g;
750                         description "removed";
751                     }
752                     description "removed";
753                 }
754                 grouping local-id-and-class-g {
755                     leaf class-of-instance {
756                         type string;
757                         description "removed";
758                     }
759                     container local-id {
760                         uses name-and-value-g;
761                         description "removed";
762                     }
763                     description "removed";
764                 }
765                 grouping name-and-class-g {
766                     leaf class-of-instance {
767                         type string;
768                         description "removed";
769                     }
770                     container name {
771                         uses name-and-value-g;
772                         description "removed";
773                     }
774                     description "removed";
775                 }
776                 grouping address-element-g {
777                     leaf address-element-name {
778                         type string;
779                         description "removed";
780                     }
781                     container local-id {
782                         uses local-id-and-class-g;
783                         description "removed";
784                     }
785                     leaf uuid {
786                         type universal-id;
787                         description "removed";
788                     }
789                     container name {
790                         uses name-and-class-g;
791                         description "removed";
792                     }
793                     leaf arbitrary-element {
794                         type string;
795                         description "removed";
796                     }
797                     description "removed";
798                 }
799
800
801         /***********************
802         * package state-model
803         **********************/ 
804             /***********************
805             * package object-classes
806             **********************/ 
807                 grouping state-pac-g {
808                     leaf operational-state {
809                         type operational-state;
810                         config false;
811                         description "removed";
812                     }
813                     leaf administrative-control {
814                         type administrative-control;
815                         description "removed";
816                     }
817                     leaf administrative-state {
818                         type administrative-state;
819                         config false;
820                         description "removed";
821                     }
822                     leaf lifecycle-state {
823                         type lifecycle-state;
824                         description "removed";
825                     }
826                     description "removed";
827                 }
828
829             /***********************
830             * package type-definitions
831             **********************/ 
832                 typedef operational-state {
833                     type enumeration {
834                         enum disabled {
835                             description "removed";
836                         }
837                         enum enabled {
838                             description "removed";
839                         }
840                     }
841                     description "removed";
842                 }
843                 typedef administrative-state {
844                     type enumeration {
845                         enum locked {
846                             description "removed";
847                         }
848                         enum unlocked {
849                             description "removed";
850                         }
851                     }
852                     description "removed";
853                 }
854                 typedef administrative-control {
855                     type enumeration {
856                         enum unlock {
857                             description "removed";
858                         }
859                         enum lock-passive {
860                             description "removed";
861                         }
862                         enum lock-active {
863                             description "removed";
864                         }
865                         enum lock-immediate {
866                             description "removed";
867                         }
868                     }
869                     description "removed
870                         removed";
871                 }
872                 typedef extended-admin-state {
873                     type enumeration {
874                         enum locked {
875                             description "removed";
876                         }
877                         enum unlocked {
878                             description "removed";
879                         }
880                         enum shutting-down-active {
881                             description "removed";
882                         }
883                         enum shutting-down-passive {
884                             description "removed";
885                         }
886                     }
887                     description "removed";
888                 }
889                 typedef lifecycle-state {
890                     type enumeration {
891                         enum planned {
892                             description "removed";
893                         }
894                         enum potential {
895                             description "removed";
896                         }
897                         enum installed {
898                             description "removed";
899                         }
900                         enum pending-removal {
901                             description "removed";
902                         }
903                     }
904                     description "removed";
905                 }
906
907
908
909     /***********************
910     * package core-operations-model
911     **********************/ 
912         /***********************
913         * package pattern
914         **********************/ 
915             /***********************
916             * package data-types
917             **********************/ 
918                 typedef action-verbs {
919                     type enumeration {
920                         enum create-post-add {
921                             description "none";
922                         }
923                         enum set-update-put-modify-write-add {
924                             description "none";
925                         }
926                         enum get-read {
927                             description "none";
928                         }
929                         enum delete-remove {
930                             description "none";
931                         }
932                     }
933                     description "none";
934                 }
935                 typedef test-type {
936                     type string;
937                     description "none";
938                 }
939                 typedef activity-directive {
940                     type enumeration {
941                         enum structure-is-not {
942                             description "none";
943                         }
944                         enum new-structure-and-values {
945                             description "none";
946                         }
947                         enum incremental-structure-and-values {
948                             description "none";
949                         }
950                         enum only-values-in-existing-structure {
951                             description "none";
952                         }
953                         enum defined-by-verb {
954                             description "none";
955                         }
956                     }
957                     description "none";
958                 }
959
960             /***********************
961             * package diagrams
962             **********************/ 
963                 typedef action-effort {
964                     type enumeration {
965                         enum best-effort {
966                             description "none";
967                         }
968                         enum exact-match {
969                             description "none";
970                         }
971                     }
972                     description "none";
973                 }
974                 typedef pause-resume-rule {
975                     type enumeration {
976                         enum no-pause-possible {
977                             description "none";
978                         }
979                     }
980                     description "none";
981                 }
982
983             /***********************
984             * package object-classes
985             **********************/ 
986                 grouping general-directives-g {
987                     description "none";
988                 }
989                 grouping necessary-initial-condition-constraints-g {
990                     leaf is-not {
991                         type boolean;
992                         description "none";
993                     }
994                     description "none";
995                 }
996                 grouping operation-details-g {
997                     leaf action-verb {
998                         type action-verbs;
999                         description "none";
1000                     }
1001                     list necessary-initialcondition-constraints {
1002                         key 'is-not';
1003                         uses necessary-initial-condition-constraints-g;
1004                         description "none";
1005                     }
1006                     description "none";
1007                 }
1008                 container operation-envelope {
1009                     presence  "";
1010                     list operation-set {
1011                         key 'effort-and-action';
1012                         min-elements 1;
1013                         uses operation-set-g;
1014                         description "none";
1015                     }
1016                     container generaldirectives {
1017                         uses general-directives-g;
1018                         description "none";
1019                     }
1020                     container operationidentifiers {
1021                         uses operation-identifiers-g;
1022                         description "none";
1023                     }
1024                     description "none";
1025                 }
1026                 grouping operation-identifiers-g {
1027                     description "none";
1028                 }
1029                 grouping operation-set-g {
1030                     leaf-list after-operation-set {
1031                         type action-effort;
1032                         description "none";
1033                     }
1034                     leaf-list before-operation-set {
1035                         type action-effort;
1036                         description "none";
1037                     }
1038                     leaf effort-and-action {
1039                         type action-effort;
1040                         description "none";
1041                     }
1042                     leaf pause-resume-rule {
1043                         type pause-resume-rule;
1044                         description "none";
1045                     }
1046                     leaf-list operationset {
1047                         type action-effort;
1048                         description "none";
1049                     }
1050                     leaf is-short-lived {
1051                         type boolean;
1052                         default true;
1053                         description "none";
1054                     }
1055                     list operation-details {
1056                         key 'action-verb';
1057                         min-elements 1;
1058                         uses operation-details-g;
1059                         description "none";
1060                     }
1061                     description "none";
1062                 }
1063
1064
1065
1066     /***********************
1067     * package core-physical-model-initial
1068     **********************/ 
1069         /***********************
1070         * package rule-models
1071         **********************/ 
1072             /***********************
1073             * package connector-rules
1074             **********************/ 
1075                 /***********************
1076                 * package object-classes
1077                 **********************/ 
1078                     grouping connector-in-holder-g {
1079                         leaf connector-on-equipment-for-holder {
1080                             type universal-id;
1081                             description "none";
1082                         }
1083                         uses connector-g;
1084                         description "removed";
1085                     }
1086                     grouping connector-cable-end-g {
1087                         leaf connector-on-equipment-for-cable {
1088                             type universal-id;
1089                             description "none";
1090                         }
1091                         uses connector-g;
1092                         description "removed";
1093                     }
1094                     grouping connector-on-equipment-for-cable-g {
1095                         leaf connector-cable-end {
1096                             type universal-id;
1097                             description "none";
1098                         }
1099                         uses connector-g;
1100                         description "removed";
1101                     }
1102                     grouping connector-on-equipment-for-holder-g {
1103                         leaf connector-in-holder {
1104                             type universal-id;
1105                             description "none";
1106                         }
1107                         uses connector-g;
1108                         description "removed";
1109                     }
1110
1111
1112
1113         /***********************
1114         * package equipment-detail
1115         **********************/ 
1116             /***********************
1117             * package object-classes
1118             **********************/ 
1119                 /***********************
1120                 * package dynamic-details
1121                 **********************/ 
1122                     grouping function-enablers-g {
1123                         leaf power-state {
1124                             type to-be-defined;
1125                             description "none";
1126                         }
1127                         description "removed";
1128                     }
1129                     grouping mechanical-functions-g {
1130                         leaf rotation-speed {
1131                             type to-be-defined;
1132                             description "none";
1133                         }
1134                         description "removed";
1135                     }
1136                     grouping physical-properties-g {
1137                         leaf temperature {
1138                             type to-be-defined;
1139                             description "none";
1140                         }
1141                         description "removed";
1142                     }
1143                     grouping holder-monitors-g {
1144                         leaf is-active {
1145                             type boolean;
1146                             description "none";
1147                         }
1148                         leaf is-actual-mismatch-with-expected {
1149                             type boolean;
1150                             description "none";
1151                         }
1152                         leaf aggregate-function {
1153                             type string;
1154                             description "none";
1155                         }
1156                         description "removed";
1157                     }
1158                     grouping location-g {
1159                         container equipment-location {
1160                             uses address-g;
1161                             description "none";
1162                         }
1163                         container geographical-location {
1164                             uses address-g;
1165                             description "none";
1166                         }
1167                         description "none";
1168                     }
1169
1170                 /***********************
1171                 * package invariant-details
1172                 **********************/ 
1173                     grouping category-g {
1174                         leaf category {
1175                             type equipment-category;
1176                             description "none";
1177                         }
1178                         description "removed";
1179                     }
1180                     grouping equipment-instance-g {
1181                         leaf manufacture-date {
1182                             type string;
1183                             description "none";
1184                         }
1185                         leaf serial-number {
1186                             type string;
1187                             description "none";
1188                         }
1189                         leaf asset-instance-identifier {
1190                             type string;
1191                             description "none";
1192                         }
1193                         description "removed";
1194                     }
1195                     grouping equipment-type-g {
1196                         leaf description {
1197                             type string;
1198                             description "none";
1199                         }
1200                         leaf model-identifier {
1201                             type string;
1202                             description "none";
1203                         }
1204                         leaf part-type-identifier {
1205                             type string;
1206                             description "none";
1207                         }
1208                         leaf type-name {
1209                             type string;
1210                             description "none";
1211                         }
1212                         leaf version {
1213                             type string;
1214                             description "none";
1215                         }
1216                         description "removed";
1217                     }
1218                     grouping holder-structure-g {
1219                         leaf holder-category {
1220                             type holder-category;
1221                             description "none";
1222                         }
1223                         leaf is-captive {
1224                             type boolean;
1225                             description "none";
1226                         }
1227                         leaf is-guided {
1228                             type boolean;
1229                             description "none";
1230                         }
1231                         leaf is-quantized-space {
1232                             type boolean;
1233                             description "none";
1234                         }
1235                         description "removed";
1236                     }
1237                     grouping manufactured-thing-g {
1238                         container manufacturer-properties {
1239                             uses manufacturer-properties-g;
1240                             description "none";
1241                         }
1242                         container equipment-type {
1243                             uses equipment-type-g;
1244                             description "none";
1245                         }
1246                         container equipment-instance {
1247                             uses equipment-instance-g;
1248                             description "none";
1249                         }
1250                         container operator-augmented-equipment-type {
1251                             uses operator-augmented-equipment-type-g;
1252                             description "none";
1253                         }
1254                         description "removed";
1255                     }
1256                     grouping manufacturer-properties-g {
1257                         leaf manufacturer-identifier {
1258                             type string;
1259                             description "none";
1260                         }
1261                         leaf manufacturer-name {
1262                             type string;
1263                             description "none";
1264                         }
1265                         description "removed";
1266                     }
1267                     grouping mechanical-features-g {
1268                         description "removed";
1269                     }
1270                     grouping operator-augmented-equipment-type-g {
1271                         leaf asset-type-identifier {
1272                             type string;
1273                             description "none";
1274                         }
1275                         description "removed";
1276                     }
1277                     grouping physical-characteristics-g {
1278                         leaf weight-characteristics {
1279                             type to-be-defined;
1280                             description "none";
1281                         }
1282                         leaf fire-characteristics {
1283                             type to-be-defined;
1284                             description "none";
1285                         }
1286                         leaf materials {
1287                             type to-be-defined;
1288                             description "none";
1289                         }
1290                         description "removed";
1291                     }
1292                     grouping physical-rating-g {
1293                         leaf thermal-rating {
1294                             type to-be-defined;
1295                             description "none";
1296                         }
1297                         leaf power-rating {
1298                             type to-be-defined;
1299                             description "none";
1300                         }
1301                         description "removed";
1302                     }
1303                     grouping position-g {
1304                         leaf relative-position {
1305                             type to-be-defined;
1306                             description "none";
1307                         }
1308                         description "removed";
1309                     }
1310                     grouping spatial-properties-of-type-g {
1311                         leaf height {
1312                             type to-be-defined;
1313                             description "none";
1314                         }
1315                         leaf width {
1316                             type to-be-defined;
1317                             description "none";
1318                         }
1319                         leaf length {
1320                             type to-be-defined;
1321                             description "none";
1322                         }
1323                         description "removed";
1324                     }
1325                     grouping swapability-g {
1326                         leaf is-hot-swappable {
1327                             type boolean;
1328                             default true;
1329                             description "none";
1330                         }
1331                         description "removed";
1332                     }
1333
1334
1335
1336         /***********************
1337         * package equipment-pattern-structure
1338         **********************/ 
1339             /***********************
1340             * package object-classes
1341             **********************/ 
1342                 grouping cable-g {
1343                     list connector {
1344                         key 'uuid';
1345                         min-elements 1;
1346                         uses connector-g;
1347                         description "none";
1348                     }
1349                     container manufactured-thing {
1350                         uses manufactured-thing-g;
1351                         description "none";
1352                     }
1353                     container physical-characteristics {
1354                         uses physical-characteristics-g;
1355                         description "none";
1356                     }
1357                     container mechanical-features {
1358                         uses mechanical-features-g;
1359                         description "none";
1360                     }
1361                     container spatial-properties-of-type {
1362                         uses spatial-properties-of-type-g;
1363                         description "none";
1364                     }
1365                     uses global-class-g;
1366                     description "removed";
1367                 }
1368                 grouping connector-g {
1369                     leaf connector {
1370                         type string;
1371                         description "none";
1372                     }
1373                     list pin {
1374                         key 'position';
1375                         min-elements 1;
1376                         uses pin-g;
1377                         description "none";
1378                     }
1379                     leaf orientation {
1380                         type connector-and-pin-orientation;
1381                         description "none";
1382                     }
1383                     container manufactured-thing {
1384                         uses manufactured-thing-g;
1385                         description "none";
1386                     }
1387                     container position {
1388                         uses position-g;
1389                         description "none";
1390                     }
1391                     container mechanical-features {
1392                         uses mechanical-features-g;
1393                         description "none";
1394                     }
1395                     container pin-layout {
1396                         uses pin-layout-g;
1397                         description "none";
1398                     }
1399                     leaf connector-type {
1400                         type to-be-defined;
1401                         description "none";
1402                     }
1403                     uses local-class-g;
1404                     uses group-of-pins-g;
1405                     description "removed";
1406                 }
1407                 grouping equipment-g {
1408                     list connector {
1409                         key 'uuid';
1410                         uses connector-g;
1411                         description "none";
1412                     }
1413                     list contained-holder {
1414                         key 'uuid';
1415                         uses holder-g;
1416                         description "none";
1417                     }
1418                     list exposed-cable {
1419                         key 'uuid';
1420                         uses cable-g;
1421                         description "none";
1422                     }
1423                     container manufactured-thing {
1424                         uses manufactured-thing-g;
1425                         description "none";
1426                     }
1427                     container spatial-properties-of-type {
1428                         uses spatial-properties-of-type-g;
1429                         description "none";
1430                     }
1431                     container mechanical-features {
1432                         uses mechanical-features-g;
1433                         description "none";
1434                     }
1435                     container physical-properties {
1436                         uses physical-properties-g;
1437                         description "none";
1438                     }
1439                     container function-enablers {
1440                         uses function-enablers-g;
1441                         description "none";
1442                     }
1443                     container mechanical-functions {
1444                         uses mechanical-functions-g;
1445                         description "none";
1446                     }
1447                     container physical-characteristics {
1448                         uses physical-characteristics-g;
1449                         description "none";
1450                     }
1451                     container swapability {
1452                         uses swapability-g;
1453                         description "none";
1454                     }
1455                     container category {
1456                         uses category-g;
1457                         description "none";
1458                     }
1459                     container physical-rating {
1460                         uses physical-rating-g;
1461                         description "none";
1462                     }
1463                     leaf is-field-replaceable {
1464                         type boolean;
1465                         default true;
1466                         config false;
1467                         description "removed";
1468                     }
1469                     leaf-list function-block {
1470                         type string;
1471                         description "none";
1472                     }
1473                     container expected-equipment {
1474                         uses expected-equipment-g;
1475                         description "none";
1476                     }
1477                     container actual-equipment {
1478                         uses actual-equipment-g;
1479                         description "none";
1480                     }
1481                     container location {
1482                         uses location-g;
1483                         description "none";
1484                     }
1485                     uses global-class-g;
1486                     description "removed";
1487                 }
1488                 list equipment {
1489                     key 'uuid';
1490                     uses equipment-g;
1491                                 description "none";
1492 }
1493                 grouping holder-g {
1494                     leaf-list connector {
1495                         type leafref {
1496                             path '/equipment/exposed-cable/connector/uuid';
1497                         }
1498                         description "none";
1499                     }
1500                     leaf occupying-fru {
1501                         type leafref {
1502                             path '/equipment/uuid';
1503                         }
1504                         description "removed";
1505                     }
1506                     container spatial-properties-of-type {
1507                         uses spatial-properties-of-type-g;
1508                         description "none";
1509                     }
1510                     container holder-monitors {
1511                         uses holder-monitors-g;
1512                         description "none";
1513                     }
1514                     container holder-location {
1515                         uses address-g;
1516                         description "none";
1517                     }
1518                     container position {
1519                         uses position-g;
1520                         description "none";
1521                     }
1522                     container holder-structure {
1523                         uses holder-structure-g;
1524                         description "none";
1525                     }
1526                     container physical-rating {
1527                         uses physical-rating-g;
1528                         description "none";
1529                     }
1530                     leaf-list supported-equipment {
1531                         type string;
1532                         min-elements 1;
1533                         description "none";
1534                     }
1535                     container expected-holder {
1536                         uses expected-holder-g;
1537                         description "none";
1538                     }
1539                     container actual-holder {
1540                         uses actual-holder-g;
1541                         description "none";
1542                     }
1543                     uses local-class-g;
1544                     description "removed";
1545                 }
1546
1547             /***********************
1548             * package data-types
1549             **********************/ 
1550                 typedef connector-and-pin-orientation {
1551                     type enumeration {
1552                         enum male {
1553                             description "removed";
1554                         }
1555                         enum female {
1556                             description "removed";
1557                         }
1558                         enum symmetric-neutral {
1559                             description "removed";
1560                         }
1561                     }
1562                     description "removed";
1563                 }
1564                 typedef equipment-category {
1565                     type enumeration {
1566                         enum subrack {
1567                             description "removed";
1568                         }
1569                         enum circuit-pack {
1570                             description "removed";
1571                         }
1572                         enum small-formfactor-pluggable {
1573                             description "removed";
1574                         }
1575                         enum stand-alone-unit {
1576                             description "removed";
1577                         }
1578                         enum rack {
1579                             description "removed";
1580                         }
1581                     }
1582                     description "removed";
1583                 }
1584                 typedef holder-category {
1585                     type enumeration {
1586                         enum slot {
1587                             description "removed";
1588                         }
1589                     }
1590                     description "removed";
1591                 }
1592
1593
1594         /***********************
1595         * package expected-and-actual
1596         **********************/ 
1597             /***********************
1598             * package object-classes
1599             **********************/ 
1600                 grouping actual-holder-g {
1601                     description "removed";
1602                 }
1603                 grouping expected-holder-g {
1604                     description "removed";
1605                 }
1606                 grouping actual-equipment-g {
1607                     description "removed";
1608                 }
1609                 grouping expected-equipment-g {
1610                     description "removed";
1611                 }
1612
1613
1614         /***********************
1615         * package connector-and-pin
1616         **********************/ 
1617             /***********************
1618             * package object-classes
1619             **********************/ 
1620                 grouping pin-g {
1621                     leaf position {
1622                         type leafref {
1623                             path '/equipment/exposed-cable/connector/position/relative-position';
1624                         }
1625                         description "none";
1626                     }
1627                     leaf orientation {
1628                         type connector-and-pin-orientation;
1629                         description "none";
1630                     }
1631                     description "removed";
1632                 }
1633                 grouping pin-group-g {
1634                     leaf-list pin {
1635                         type leafref {
1636                             path '/equipment/exposed-cable/connector/pin/position';
1637                         }
1638                         min-elements 1;
1639                         description "none";
1640                     }
1641                     uses port-g;
1642                     uses group-of-pins-g;
1643                     description "removed";
1644                 }
1645                 grouping pin-layout-g {
1646                     list position {
1647                         key 'relative-position';
1648                         min-elements 1;
1649                         uses position-g;
1650                         description "none";
1651                     }
1652                     description "removed";
1653                 }
1654                 grouping port-g {
1655                     description "removed";
1656                 }
1657                 grouping signal-ref-pt-g {
1658                     leaf ltp {
1659                         type leafref {
1660                             path '/network-element/ltp/uuid';
1661                         }
1662                         description "none";
1663                     }
1664                     leaf-list elemental-signals {
1665                         type universal-id;
1666                         min-elements 1;
1667                         description "none";
1668                     }
1669                     description "removed";
1670                 }
1671                 grouping signal-ref-pt-group-g {
1672                     leaf pin-group {
1673                         type universal-id;
1674                         description "none";
1675                     }
1676                     leaf-list signal-ref-pt {
1677                         type universal-id;
1678                         min-elements 1;
1679                         description "none";
1680                     }
1681                     uses port-g;
1682                     description "removed";
1683                 }
1684                 grouping elemental-signals-g {
1685                     leaf-list pin {
1686                         type leafref {
1687                             path '/equipment/exposed-cable/connector/pin/position';
1688                         }
1689                         min-elements 1;
1690                         description "none";
1691                     }
1692                     description "removed";
1693                 }
1694                 grouping group-of-pins-g {
1695                     description "removed";
1696                 }
1697
1698
1699
1700 }