Support of WG4 OpenFronthaul Management-Plane VES
[scp/oam/modeling.git] / data-model / yang / working / o-ran-sc / near-rt-ric / o-ran-sc-ric-gnb-status-v1.yang
1 module o-ran-sc-ric-gnb-status-v1 {
2   yang-version 1.1;
3   namespace "urn:o-ran-sc:yang:o-ran-sc-ric-gnb-status-v1";
4   prefix rgnb;
5
6   import o-ran-sc-ric-xapp-desc-v1 {
7     prefix rxad;
8   }
9   import o-ran-sc-root-v1 {
10     prefix root;
11   }
12   import o-ran-sc-types-v1 {
13     prefix ot;
14   }
15   import ietf-inet-types {
16     prefix inet;
17     reference
18       "RFC 6991: Common YANG Data Types";
19   }
20
21   organization
22     "O-RAN Software Community";
23   contact
24     "www.o-ran.org";
25   description
26     "This module defines the gNB status and other information visible to operators
27
28      Copyright 2021 the O-RAN Software Community.
29
30      Licensed under the Apache License, Version 2.0 (the 'License');
31      you may not use this file except in compliance with the License.
32      You may obtain a copy of the License at
33
34      http://www.apache.org/licenses/LICENSE-2.0
35
36      Unless required by applicable law or agreed to in writing, software
37      distributed under the License is distributed on an 'AS IS' BASIS,
38      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
39      See the License for the specific language governing permissions and
40      limitations under the License.";
41
42   revision 2020-02-25 {
43     description
44       "Dependency to a common and abstract root module added.";
45     reference
46       "O-RAN-OAM-architecture-Specification (O1)";
47   }
48   revision 2020-01-29 {
49     description
50       "initial revision";
51     reference
52       "O-RAN-OAM-Interface-Specification (O1)";
53   }
54
55   grouping nodeb-info {
56     uses root:control-base-grp;
57     leaf ip {
58       type inet:ip-address;
59       description
60         "The IP address of the node";
61     }
62     leaf port {
63       type inet:port-number;
64       description
65         "The port of the node";
66     }
67     leaf e2ap-protocol {
68       type ot:e2ap-protocol-type;
69       description
70         "Specifies the protocol type of the connection";
71     }
72     leaf connection-status {
73       type ot:connection-status-type;
74       description
75         "Specifies the connection type of the node";
76     }
77     leaf plmn-id {
78       type ot:sized-printable-string;
79       description
80         "PLMN id TODO: who is responsible for this identifier?";
81     }
82     leaf nb-id {
83       type ot:sized-printable-string;
84       description
85         "eNB id TODO: who is responsible for this identifier?";
86     }
87     leaf node {
88       type identityref {
89         base ot:control-element-type;
90       }
91       description
92         "The type of the node: eNB or gNB";
93     }
94     description
95       "Node information";
96   }
97
98   grouping ric-specific-grp {
99     container nodes {
100       config false;
101       list node {
102         key "identifier";
103         uses nodeb-info;
104         description
105           "The list of the gNBs currently discovered by RIC";
106       }
107       description
108         "State data container of the nodes";
109     }
110     description
111       "Root object for gNB status";
112   }
113
114   // Inherit from controlled-function
115
116   augment "/root:controlled-element/root:controlled-function" {
117     when "derived-from-or-self(./root:function-type, 'rxad:near-realtime-ran-intelligent-controller')";
118     uses ric-specific-grp;
119     description
120       "Inheritance from root object class.";
121   }
122 }