blob: 5953f2a0b055aff50be973aa63e363286ef219ce [file] [log] [blame]
garciadeblas54197362018-11-27 15:30:13 +01001/*
2 *
3 * Copyright 2018 CTTC
4 * Copyright 2018 Telefonica Investigacion y Desarrollo S.A.U.
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *
18 *
19 */
jdelacruz27797532018-09-18 19:16:16 +020020
jdelacruz27797532018-09-18 19:16:16 +020021module nsi {
22 //header information
23 yang-version 1;
garciadeblasc038a8d2019-04-03 13:35:27 +020024 namespace "urn:etsi:osm:yang:nsi";
jdelacruz27797532018-09-18 19:16:16 +020025 prefix "nsi";
26
27 import nst {
28 prefix "nst";
29 }
30
31 import nsr {
32 prefix "nsr";
33 }
34
garciadeblasc038a8d2019-04-03 13:35:27 +020035 import osm-project {
36 prefix "osm-project";
jdelacruz27797532018-09-18 19:16:16 +020037 }
38
garciadeblas54197362018-11-27 15:30:13 +010039 import netslice-instantiation-parameters {
40 prefix "netslice-instantiation-parameters";
jdelacruz27797532018-09-18 19:16:16 +020041 }
42
garciadeblasff4b9262018-10-19 14:31:56 +020043 import ietf-yang-types {
44 prefix "yang";
45 }
46
jdelacruz27797532018-09-18 19:16:16 +020047 //revision history
48 revision 2018-09-28 {
49 description "Initial version";
50 }
51
52 grouping nsi {
53 leaf id {
garciadeblasff4b9262018-10-19 14:31:56 +020054 description "Identifier for the NSI.";
55 type yang:uuid;
56 }
57
58 leaf name {
59 description "NSI name.";
60 type string;
61 mandatory true;
62 }
63
64 leaf short-name {
65 description "NSI short name.";
jdelacruz27797532018-09-18 19:16:16 +020066 type string;
67 }
garciadeblasff4b9262018-10-19 14:31:56 +020068
69 leaf description {
70 description "NSI description.";
71 type string;
72 }
73
jdelacruz27797532018-09-18 19:16:16 +020074 leaf nst-ref {
75 type leafref {
76 path "/nst:nst/nst:id";
77 }
garciadeblasff4b9262018-10-19 14:31:56 +020078 mandatory true;
jdelacruz27797532018-09-18 19:16:16 +020079 }
80
81 container instantiation-parameters {
garciadeblas54197362018-11-27 15:30:13 +010082 uses netslice-instantiation-parameters:netslice_params;
jdelacruz27797532018-09-18 19:16:16 +020083 }
84
85 container network-slice-template {
86 uses nst:network-slice;
87 }
88
89 list nsr-ref-list{
90 config false;
91 key "nsr-ref";
92 leaf nsr-ref {
93 description "Reference to instantiated NSR";
94 config false;
95 type leafref {
garciadeblasc038a8d2019-04-03 13:35:27 +020096 path "/osm-project:project/nsr:ns-instance-opdata/nsr:nsr/nsr:ns-instance-config-ref";
jdelacruz27797532018-09-18 19:16:16 +020097 }
98 }
99 }
100
garciadeblas54197362018-11-27 15:30:13 +0100101 list vlr-list{
jdelacruz27797532018-09-18 19:16:16 +0200102 config false;
garciadeblas54197362018-11-27 15:30:13 +0100103 key "id";
104 leaf id {
105 description "ID of instantiated VLR";
jdelacruz27797532018-09-18 19:16:16 +0200106 config false;
garciadeblas54197362018-11-27 15:30:13 +0100107 type yang:uuid;
jdelacruz27797532018-09-18 19:16:16 +0200108 }
109 }
110 }
111
112 list nsi{
113 key "id";
garciadeblasff4b9262018-10-19 14:31:56 +0200114 unique "name";
jdelacruz27797532018-09-18 19:16:16 +0200115 uses nsi;
116 }
117
118}