1 module org-openroadm-common-types {
2 namespace "http://org/openroadm/common-types";
3 prefix org-openroadm-common-types;
10 "YANG definitions of common types.
12 Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
13 AT&T Intellectual Property. All other rights reserved.
15 Redistribution and use in source and binary forms, with or without modification,
16 are permitted provided that the following conditions are met:
18 * Redistributions of source code must retain the above copyright notice, this
19 list of conditions and the following disclaimer.
20 * Redistributions in binary form must reproduce the above copyright notice,
21 this list of conditions and the following disclaimer in the documentation and/or
22 other materials provided with the distribution.
23 * Neither the Members of the Open ROADM MSA Agreement nor the names of its
24 contributors may be used to endorse or promote products derived from this software
25 without specific prior written permission.
27 THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
28 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
29 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
30 IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
31 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
32 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
33 OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
34 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 POSSIBILITY OF SUCH DAMAGE";
59 identity och-rate-identity {
61 "A unique och rate identification";
65 base och-rate-identity;
67 "Identity for 200G Rate";
71 base och-rate-identity;
73 "Identity for 100G Rate";
77 base och-rate-identity;
79 "Identity for 10.7G Rate";
83 base och-rate-identity;
85 "Identity for 11.1G Rate";
104 "Identifier for node type
106 2. xpdr for Transponder, Regen
107 3. ila for in-line amplifier
108 4. extplug for external plugable";
111 typedef node-id-type {
114 pattern "([a-zA-Z][a-zA-Z0-9-]{5,18}[a-zA-Z0-9])" {
116 "A node-id must be 7 to 63 characters in length.
117 A node-id can contain letters, numbers, and hyphens.
118 The first character must be a letter.
119 The last character must be a letter or number.";
123 "Globally unique identifer for a device.";
126 typedef xpdr-node-types {
145 "Identifier for Xponder node type
150 5. Regenerator based on unidirectional model";
153 typedef frequency-THz {
159 "Frequency value in THz.";
162 typedef frequency-GHz {
168 "Frequency value in GHz.";
177 "Power value in dBm.";
186 "Power ratio in dB.";
193 units "ps/(km[1/2])";
195 "Polarization Mode Dispersion expressed in ps/km(1/2).";
198 typedef amplifier-types {
205 "identifier for amplifier type
206 1. standard for amplifier as defined initially in the ROADM MSA specifications
207 To be completed if/when additional amplifier types are required ";
210 typedef line-amplifier-control-mode {
220 "Identifies the line amplifier control mode, either off or gain.";
223 typedef amplifier-gain-range {
225 enum "gain-range-1" {
228 enum "gain-range-2" {
231 enum "gain-range-3" {
234 enum "gain-range-4" {
239 "Operational mode for the amplifier:
240 this parameter allows modeling different operational modes (gain ranges) ,notably for switched-gain amplifiers.
241 It indicates which performance model shall be used by the path feasibility engine.
242 For standard amplifier, or when performance evaluation is based on incremental noise, use gain-range-1.
243 When performance evaluation is based on advanced parameters, specify used gain-range (1 to 4).
244 Up to release 2.1, only gain-range-1 is to be used (default value) ";
264 enum "indeterminate" {
269 "Severity, based on X.733 perceived severity";
272 typedef activate-notification-type {
277 "software or database activation";
282 "commit the software or database.
283 For software activate, this event can happen in the following scenarios:
284 1) immediately when user issue db-activate command without rollBackTimer
285 or if the rollBackTimer is specified as 00-00-00;
286 2) when user issue cancel-rollback-timer before it expires and with accept=true.
287 For database activate, this event can occur in the following scenarios:
288 1) immediately when user issue db-activate command without rollBackTimer
289 or if the rollBackTimer is specified as 00-00-00;
290 2) when user issue cancel-rollback-timer before it expires and with accept=true.";
295 "cancel the database or software activation operation.
296 For software activate, this event can happen in the following cases:
297 1) when the rollBackTimer expires;
298 2) when the user issues cancel-rollback-timer with accept=false.
299 For database activate, this event can happen in the following cases:
300 1) when the rollBackTimer expires;
301 2) when the user issues cancel-rollback-timer with accept=false.";
305 "Type of notification on software or database activation events";
321 typedef extended-rpc-status {
337 typedef openroadm-version-type {
366 "OpenROADM version enum type";
369 typedef lifecycle-state {
395 enum "deploy-failed" {
398 enum "undeploy-failed" {
411 enum "outOfService" {
419 "State that indicates whether the resource is able to provide fullfill its role - carry traffic, etc.";
422 typedef optic-types {
433 typedef equipment-type-enum {
441 enum "shelfProcessor" {
444 enum "crossConnect" {
459 typedef optical-control-mode {
472 "Optical Control Mode: identifies specific algorithm related to power management and general optical control.";
473 reference "openroadm.org: Open ROADM MSA Specification.";
484 enum "bidirectional" {
487 enum "notApplicable" {
495 enum "notApplicable" {
507 typedef wavelength-duplication-type {
512 "The SRG cannot handle wavelength duplication. Attempting to provision a connection on this SRG that uses the same wavelength as an existing service will result in failure.";
514 enum "one-per-degree" {
517 "The SRG can handle wavelength duplication, but only one per degree. Attempting to provision a connection on this SRG that uses the same wavelength as an existing service will succeed, so long as the connections are not using the same degree.";
521 "One per srg is applied to C/D add/drop group
522 one per degree is applied to C/D/C add drop group";
527 enum "roadm-internal" {
530 enum "roadm-external" {
533 enum "xpdr-network" {
542 enum "switch-network" {
545 enum "switch-client" {
548 enum "ila-external" {
551 enum "ila-internal" {
557 typedef modulation-format {
562 "binary phase-shift keying";
567 "DC dual-polarization binary phase-shift keying";
572 "quadrature phase-shift keying";
577 "dual-polarization binary phase-shift keying";
582 "quadrature amplitude modulation 16";
587 "dual-polarization quadrature amplitude modulation 16";
592 "DC dual-polarization quadrature amplitude modulation 16";
597 "quadrature amplitude modulation 8";
602 "dual-polarization quadrature amplitude modulation 8";
607 "DC dual-polarization quadrature amplitude modulation 8";
614 grouping physical-location {
633 grouping rpc-response-status {
638 "Successful or Failed";
640 leaf status-message {
643 "Gives a more detailed status";
647 grouping extended-rpc-response-status {
649 type extended-rpc-status;
652 "Successful, Failed or In-progress";
654 leaf status-message {
657 "Gives a more detailed status.";
661 grouping equipment-type {
663 type equipment-type-enum;
672 "Populated with equipment type when enum value is set to vendorExtension";