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;
18 import org-openroadm-common-types {
19 prefix org-openroadm-common-types;
20 revision-date 2016-10-14;
22 import org-openroadm-resource-types {
23 prefix org-openroadm-resource-types;
31 "YANG definitions of common service types.
33 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
34 AT&T Intellectual Property. All other rights reserved.
36 Redistribution and use in source and binary forms, with or without modification,
37 are permitted provided that the following conditions are met:
39 * Redistributions of source code must retain the above copyright notice, this
40 list of conditions and the following disclaimer.
41 * Redistributions in binary form must reproduce the above copyright notice,
42 this list of conditions and the following disclaimer in the documentation and/or
43 other materials provided with the distribution.
44 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
45 contributors may be used to endorse or promote products derived from this software
46 without specific prior written permission.
48 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
49 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
50 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
51 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
52 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
53 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
54 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
55 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
56 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
57 POSSIBILITY OF SUCH DAMAGE";
64 grouping configuration-response-common {
65 container configuration-response-common {
74 leaf response-message {
77 leaf ack-final-indicator {
84 grouping response-parameters {
85 container response-parameters {
86 uses org-openroadm-routing-constraints:routing-constraints;
90 grouping service-endpoint {
95 "Format of the requested service: Ethernet, OTU, etc.";
98 when "../service-format!='OMS'"{
99 description "service rate not applicable when service
100 format is roadmline";
105 "Rate of the requested service in GBps";
113 uses org-openroadm-resource-types:device-id;
115 container tx-direction {
120 container rx-direction {
126 type org-openroadm-common-types:optic-types;
130 "Needed for communication with DWDM pluggable";
134 "Node id. This is reported against the service, but may not get reflected in the service in the network.";
137 type inet:ip-address;
139 "Router IP Address. This is reported against the service, but may not get reflected in the service in the network.";
144 "URL needed for communication with DWDM pluggable. This is reported against the service, but may not get reflected in the service in the network.";
151 "Label for service endpoint, defined by the user";
155 typedef rpc-actions {
156 description "rpc-actions include all the rpc methods";
158 enum service-create {
161 enum service-feasibility-check {
164 enum service-delete {
167 enum equipment-notification {
170 enum temp-service-create {
173 enum temp-service-delete {
179 enum service-reconfigure {
182 enum service-restoration {
185 enum service-reversion {
188 enum service-reroute {
191 enum service-reroute-confirm {
194 enum network-re-optimization {
200 grouping sdnc-request-header {
201 container sdnc-request-header {
208 leaf notification-url {
211 leaf request-system-id{
217 grouping service-port {
219 leaf port-device-name {
243 grouping service-lgx {
245 leaf lgx-device-name {
254 leaf lgx-port-shelf {
260 grouping service-tail {
262 container tail-roadm {
264 "ROADM on which the transponder is connected to (TID, IP Address,
266 uses org-openroadm-resource-types:device-id;
268 container xponder-port {
270 "Muxponder port used in tail, that will get used as a service endpoint.";
271 leaf circuit-pack-name {
278 leaf tail-roadm-port-aid {
281 "This will provide the transponder port needed to inter-city ROADM
284 leaf tail-roadm-port-rack-location {
287 "Transponder's location";
292 grouping service-information {
294 type yang:date-and-time;
296 "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";
299 type yang:date-and-time;
301 "Date and time service to be removed";
307 "NC code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
312 "NCI code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
314 leaf secondary-nci-code {
317 "NC code applied to wavelength service only.This is reported against the service, but may not get reflected in the service in the network.";
322 "To be included in ticket information.This is reported against the service, but may not get reflected in the service in the network.";
324 leaf customer-contact {
327 "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.";
329 leaf operator-contact {
332 "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.";
340 "Identifier for the service to be created in
341 the ROADM network, e.g., CLFI, CLCI, etc.";
347 "To be used by the ROADM controller to identify the routing
348 constraints received from planning application (PED).";
350 uses sdnc-request-header;
351 leaf connection-type {
352 type connection-type;
357 leaf lifecycle-state {
358 type org-openroadm-common-types:lifecycle-state;
360 "Lifecycle State of service. Whether it is planned, deployed, in maintenance, etc.";
362 leaf administrative-state {
363 type org-openroadm-common-types:state;
365 "Administrative State: Intended state of service";
367 leaf operational-state {
368 type org-openroadm-common-types:state;
371 "Operational State: Actual state of service";
374 type service-condition;
376 "Service Condition: Additional information about the state of the service. Only sent when applicable.";
378 container service-a-end {
379 uses service-endpoint;
381 container service-z-end {
382 uses service-endpoint;
384 uses org-openroadm-routing-constraints:routing-constraints;
385 uses service-information;
389 "Latency on service";
391 leaf-list fiber-span-srlgs {
394 "Shared risk link group identifiers";
396 list equipment-srgs {
398 uses org-openroadm-resource-types:srg-number;
400 leaf-list supporting-service-name {
402 "The service name that this runs over top. If connection-type is service, then this is the related
403 connection-type = infrastructure service, for example.";
407 uses org-openroadm-topology:topology;
411 grouping service-notification-result {
415 "Identifier for the service e.g., CLFI, CLCI, etc.";
419 type yang:date-and-time;
421 "Actual date and time (if successful)";
425 typedef service-format {
451 typedef service-notification-types {
453 enum "service-create-result" {
456 enum "service-reconfigure-result" {
459 enum "service-delete-result" {
462 enum "service-roll-result" {
465 enum "service-revert-result" {
468 enum "service-reroute-result" {
471 enum "service-restoration-result" {
475 enum "service-feasibility-check-result" {
481 typedef connection-type {
486 enum "infrastructure" {
495 typedef service-condition {
497 enum "restored-temporarily" {
500 enum "re-routed-temporarily" {
503 enum "activated-for-service" {
506 enum "activated-for-further-check" {
509 enum "activated-for-troubleshooting-failure" {