1 module org-openroadm-common-service-types {
2 namespace "http://org/openroadm/common/service/types";
3 prefix org-openroadm-common-service-types;
5 import ietf-yang-types {
8 import ietf-inet-types {
11 import org-openroadm-routing-constraints {
12 prefix org-openroadm-routing-constraints;
13 revision-date 2016-10-14;
15 import org-openroadm-topology {
16 prefix org-openroadm-topology;
17 revision-date 2016-10-14;
19 import org-openroadm-common-types {
20 prefix org-openroadm-common-types;
21 revision-date 2016-10-14;
23 import org-openroadm-resource-types {
24 prefix org-openroadm-resource-types;
25 revision-date 2016-10-14;
33 "YANG definitions of common service types.
35 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
36 AT&T Intellectual Property. All other rights reserved.
38 Redistribution and use in source and binary forms, with or without modification,
39 are permitted provided that the following conditions are met:
41 * Redistributions of source code must retain the above copyright notice, this
42 list of conditions and the following disclaimer.
43 * Redistributions in binary form must reproduce the above copyright notice,
44 this list of conditions and the following disclaimer in the documentation and/or
45 other materials provided with the distribution.
46 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
47 contributors may be used to endorse or promote products derived from this software
48 without specific prior written permission.
50 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
51 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
52 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
53 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
54 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
55 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
56 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
57 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
58 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
59 POSSIBILITY OF SUCH DAMAGE";
66 grouping configuration-response-common {
67 container configuration-response-common {
76 leaf response-message {
79 leaf ack-final-indicator {
86 grouping response-parameters {
87 container response-parameters {
88 uses org-openroadm-routing-constraints:routing-constraints;
92 grouping service-endpoint {
97 "Format of the requested service: Ethernet, OTU, etc.";
100 when "../service-format!='OMS'"{
101 description "service rate not applicable when service
102 format is roadmline";
107 "Rate of the requested service in GBps";
115 uses org-openroadm-resource-types:device-id;
117 container tx-direction {
122 container rx-direction {
128 type org-openroadm-common-types:optic-types;
132 "Needed for communication with DWDM pluggable";
136 "Node id. This is reported against the service, but may not get reflected in the service in the network.";
139 type inet:ip-address;
141 "Router IP Address. This is reported against the service, but may not get reflected in the service in the network.";
146 "URL needed for communication with DWDM pluggable. This is reported against the service, but may not get reflected in the service in the network.";
153 "Label for service endpoint, defined by the user";
157 typedef rpc-actions {
158 description "rpc-actions include all the rpc methods";
160 enum service-create {
163 enum service-feasibility-check {
166 enum service-delete {
169 enum equipment-notification {
172 enum temp-service-create {
175 enum temp-service-delete {
181 enum service-reconfigure {
184 enum service-restoration {
187 enum service-reversion {
190 enum service-reroute {
193 enum service-reroute-confirm {
196 enum network-re-optimization {
202 grouping sdnc-request-header {
203 container sdnc-request-header {
210 leaf notification-url {
213 leaf request-system-id{
219 grouping service-port {
221 leaf port-device-name {
245 grouping service-lgx {
247 leaf lgx-device-name {
256 leaf lgx-port-shelf {
262 grouping service-tail {
264 container tail-roadm {
266 "ROADM on which the transponder is connected to (TID, IP Address,
268 uses org-openroadm-resource-types:device-id;
270 container xponder-port {
272 "Muxponder port used in tail, that will get used as a service endpoint.";
273 leaf circuit-pack-name {
280 leaf tail-roadm-port-aid {
283 "This will provide the transponder port needed to inter-city ROADM
286 leaf tail-roadm-port-rack-location {
289 "Transponder's location";
294 grouping service-information {
296 type yang:date-and-time;
298 "Date and time service to be turn up. If time is not specified for a given date, default to midnight. Service turned up immediately if no due date is specified";
301 type yang:date-and-time;
303 "Date and time service to be removed";
309 "NC code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
314 "NCI code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
316 leaf secondary-nci-code {
319 "NC code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
324 "To be included in ticket information.This is reported against the service, but may not get reflected in the service in the network.";
326 leaf customer-contact {
329 "Customer contact information To be included in ticket information. This is reported against the service, but may not get reflected in the service in the network.";
331 leaf operator-contact {
334 "Operator contact information to be included in ticket information. This is reported against the service, but may not get reflected in the service in the network.";
342 "Identifier for the service to be created in
343 the ROADM network, e.g., CLFI, CLCI, etc.";
349 "To be used by the ROADM controller to identify the routing
350 constraints received from planning application (PED).";
352 uses sdnc-request-header;
353 leaf connection-type {
354 type connection-type;
359 leaf lifecycle-state {
360 type org-openroadm-common-types:lifecycle-state;
362 "Lifecycle State of service. Whether it is planned, deployed, in maintenance, etc.";
364 leaf administrative-state {
365 type org-openroadm-common-types:state;
367 "Administrative State: Intended state of service";
369 leaf operational-state {
370 type org-openroadm-common-types:state;
373 "Operational State: Actual state of service";
376 type service-condition;
378 "Service Condition: Additional information about the state of the service. Only sent when applicable.";
380 container service-a-end {
381 uses service-endpoint;
383 container service-z-end {
384 uses service-endpoint;
386 uses org-openroadm-routing-constraints:routing-constraints;
387 uses service-information;
391 "Latency on service";
393 leaf-list fiber-span-srlgs {
396 "Shared risk link group identifiers";
398 list equipment-srgs {
400 uses org-openroadm-resource-types:srg-number;
402 leaf-list supporting-service-name {
404 "The service name that this runs over top. If connection-type is service, then this is the related
405 connection-type = infrastructure service, for example.";
409 uses org-openroadm-topology:topology;
413 grouping service-notification-result {
417 "Identifier for the service e.g., CLFI, CLCI, etc.";
421 type yang:date-and-time;
423 "Actual date and time (if successful)";
427 typedef service-format {
453 typedef service-notification-types {
455 enum "service-create-result" {
458 enum "service-reconfigure-result" {
461 enum "service-delete-result" {
464 enum "service-roll-result" {
467 enum "service-revert-result" {
470 enum "service-reroute-result" {
473 enum "service-restoration-result" {
477 enum "service-feasibility-check-result" {
483 typedef connection-type {
488 enum "infrastructure" {
497 typedef service-condition {
499 enum "restored-temporarily" {
502 enum "re-routed-temporarily" {
505 enum "activated-for-service" {
508 enum "activated-for-further-check" {
511 enum "activated-for-troubleshooting-failure" {