8ad209546bc8535d4ca4f8305a078de2934efc08
[ccsdk/features.git] /
1 module photonic-media {
2
3     namespace "urn:onf:params:xml:ns:yang:otsi-interface";
4     prefix otsi-interface;
5
6     import core-model {
7         prefix core-model;
8     }
9
10     import tapi-photonic-media{
11         prefix tapi-photonic-media;
12     }
13
14     import tapi-oam{
15          prefix tapi-oam;
16     }
17
18     import ietf-yang-types {
19         prefix yang;
20     }
21
22     organization "ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project";
23     contact "WG Web: <https://www.opennetworking.org/software-defined-standards/models-apis/>
24              WG List:  <mailto:wireless-transport@login.opennetworking.org>
25              WG Chair: Lyndon Ong
26                        <mailto:lyong@ciena.com>
27              WG Chair: Giorgio Cazzaniga
28                        <mailto:giorgio.cazzaniga@sm-optics.com>
29              Editors:  Thorsten Heinze
30                        <mailto:thorsten.heinze@telefonica.com>
31                        Shrikanth Malavalli Divakar
32                        <mailto:shrikanth.divakar@wipro.com>";
33     description "This module contains a collection of YANG definitions for managing Optical networks.
34         This model is for vendor agnostic management of Optical Transport.";
35
36     revision 2018-09-24 {
37         description "Version 1.0";
38         reference "ONF TR-XXX: A YANG Data Model for Optical Transport.";
39     }
40
41     /***********************
42     * package type-definitions
43     **********************/
44     typedef severity-type {
45         type enumeration {
46             enum non-alarmed {
47                 description "none";
48             }
49             enum warning {
50                 description "none";
51             }
52             enum minor {
53                 description "none";
54             }
55             enum major {
56                 description "none";
57             }
58             enum critical {
59                 description "none";
60             }
61         }
62         description "According to ITU-T M.3160";
63     }
64
65
66     grouping otsi-interface-performance-type-g{
67         container fec-properties-pac{
68             uses tapi-photonic-media:fec-properties-pac-g;
69             description "none";
70         }
71         description "none";
72     }
73
74     grouping otsi-interface-current-performance-type-g {
75         container performance-data {
76             config false;
77             uses otsi-interface-performance-type-g;
78             description "none";
79         }
80         uses tapi-oam:pm-current-data-g;
81         description "Turns performance information into current performance information by inheriting from TAPI OAM current  data.";
82     }
83
84     grouping otsi-interface-historical-performance-type-g {
85         container performance-data {
86             config false;
87             uses otsi-interface-performance-type-g;
88             description "none";
89         }
90         uses tapi-oam:pm-history-data-g;
91         description "Turns performance information into historical performance information by inheriting from TAPI OAM History data.";
92     }
93
94     grouping otsi-interface-current-performance-g {
95         list current-performance-data-list {
96             key 'local-id';
97             config false;
98             min-elements 1;
99             max-elements 2;
100             uses otsi-interface-current-performance-type-g;
101             description "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";
102         }
103         description "Aggregated performance information of the air interface at a particular moment.";
104     }
105
106     grouping otsi-interface-historical-performances-g {
107         list historical-performance-data-list {
108             key 'local-id';
109             config false;
110             uses otsi-interface-historical-performance-type-g;
111             description "none";
112         }
113         description "Aggregated performance information of the air interface for a pre-defined measurement interval.";
114     }
115
116     grouping otsi-interface-current-problem-type-g {
117         leaf problem-name {
118             type string;
119             default "Problem name not specified.";
120             config false;
121             description "Name of the alarm according to AirInterface::AirInterfaceCapability::supportedAlarms";
122         }
123         uses otsi-current-problem-g;
124         description "none";
125     }
126
127     grouping otsi-interface-current-problems-g {
128         list current-problem-list {
129             key 'sequence-number';
130             config false;
131             uses otsi-interface-current-problem-type-g;
132             description "none";
133         }
134         description "none";
135     }
136
137     /***********************
138     * package object-classes
139     **********************/
140     /***********************
141     * package otsi-interface
142     **********************/
143     list otsi-interface-pac {
144         key 'layer-protocol';
145         leaf layer-protocol {
146             type leafref {
147                 path '/core-model:network-element/core-model:ltp/core-model:lp/core-model:uuid';
148             }
149             description "CoreModel-CoreNetworkModule-ObjectClasses:NetworkElement/_ltpRefList/_lpList/uuid";
150         }
151         container otsi-interface-capability {
152             config false;
153              uses tapi-photonic-media:otsi-capability-pac-g;
154             description "none";
155         }
156         container otsi-interface-configuration {
157              uses tapi-photonic-media:otsi-termination-config-pac-g;
158             description "none";
159         }
160         container otsi-interface-status {
161             config false;
162             uses tapi-photonic-media:otsi-termination-pac-g;
163             description "none";
164         }
165         container otsi-interface-current-problems {
166             config false;
167             uses otsi-interface-current-problems-g;
168             description "none";
169         }
170         container otsi-interface-current-performance {
171             config false;
172             uses otsi-interface-current-performance-g;
173             description "none";
174         }
175         container otsi-interface-historical-performances {
176             config false;
177             uses otsi-interface-historical-performances-g;
178             description "none";
179         }
180         description "none";
181     }
182
183     /***********************
184     * package super-classes
185     **********************/
186         grouping otsi-current-problem-g {
187             leaf sequence-number {
188                 type int32;
189                 config false;
190                 description "Unique sequence number of the current problem object.";
191             }
192             leaf time-stamp {
193                 type yang:date-and-time;
194                 default "2017-01-01T00:00:00.0Z";
195                 config false;
196                 description "Time and date of the problem.  ";
197             }
198             leaf problem-severity {
199                 type severity-type;
200                 default warning;
201                 config false;
202                 description "Severity of the alarm.";
203             }
204             description "none";
205         }
206
207 }