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";
51 grouping physical-location {
86 "Identifier for node type
88 2. xpdr for Transponder, Regen
89 3. ila for in-line amplifier
90 4. extplug for external plugable";
93 typedef node-id-type {
96 pattern "([a-zA-Z][a-zA-Z0-9-]{5,18}[a-zA-Z0-9])" {
98 "A node-id must be 7 to 63 characters in length.
99 A node-id can contain letters, numbers, and hyphens.
100 The first character must be a letter.
101 The last character must be a letter or number.";
105 "Globally unique identifer for a device.";
108 typedef xpdr-node-types {
127 "Identifier for Xponder node type
132 5. Regenerator based on unidirectional model";
135 typedef frequency-THz {
137 "Frequency value in THz.";
144 typedef frequency-GHz {
146 "Frequency value in GHz.";
155 "Power value in dBm.";
164 "Power ratio in dB.";
173 "Polarization Mode Dispersion expressed in ps/km(1/2).";
177 units "ps/(km[1/2])";
180 typedef amplifier-types {
187 "identifier for amplifier type
188 1. standard for amplifier as defined initially in the ROADM MSA specifications
189 To be completed if/when additional amplifier types are required ";
192 typedef line-amplifier-control-mode {
194 "Identifies the line amplifier control mode, either off or gain.";
205 typedef amplifier-gain-range {
207 "Operational mode for the amplifier:
208 this parameter allows modeling different operational modes (gain ranges) ,notably for switched-gain amplifiers.
209 It indicates which performance model shall be used by the path feasibility engine.
210 For standard amplifier, or when performance evaluation is based on incremental noise, use gain-range-1.
211 When performance evaluation is based on advanced parameters, specify used gain-range (1 to 4).
212 Up to release 2.1, only gain-range-1 is to be used (default value) ";
214 enum "gain-range-1" {
217 enum "gain-range-2" {
220 enum "gain-range-3" {
223 enum "gain-range-4" {
231 "Severity, based on X.733 perceived severity";
248 enum "indeterminate" {
254 typedef activate-notification-type {
256 "Type of notification on software or database activation events";
261 "software or database activation";
266 "commit the software or database.
267 For software activate, this event can happen in the following scenarios:
268 1) immediately when user issue db-activate command without rollBackTimer
269 or if the rollBackTimer is specified as 00-00-00;
270 2) when user issue cancel-rollback-timer before it expires and with accept=true.
271 For database activate, this event can occur in the following scenarios:
272 1) immediately when user issue db-activate command without rollBackTimer
273 or if the rollBackTimer is specified as 00-00-00;
274 2) when user issue cancel-rollback-timer before it expires and with accept=true.";
279 "cancel the database or software activation operation.
280 For software activate, this event can happen in the following cases:
281 1) when the rollBackTimer expires;
282 2) when the user issues cancel-rollback-timer with accept=false.
283 For database activate, this event can happen in the following cases:
284 1) when the rollBackTimer expires;
285 2) when the user issues cancel-rollback-timer with accept=false.";
303 grouping rpc-response-status {
308 "Successful or Failed";
310 leaf status-message {
313 "Gives a more detailed status";
317 typedef extended-rpc-status {
333 grouping extended-rpc-response-status {
335 type extended-rpc-status;
338 "Successful, Failed or In-progress";
340 leaf status-message {
343 "Gives a more detailed status.";
347 typedef lifecycle-state {
380 "State that indicates whether the resource is able to provide fullfill its role - carry traffic, etc.";
385 enum "outOfService" {
394 typedef optic-types {
405 grouping equipment-type {
407 type equipment-type-enum;
413 "Populated with equipment type when enum value is set to vendorExtension";
420 typedef equipment-type-enum {
428 enum "shelfProcessor" {
431 enum "crossConnect" {
446 typedef optical-control-mode {
448 "Optical Control Mode: identifies specific algorithm related to power management and general optical control.";
460 reference "openroadm.org: Open ROADM MSA Specification.";
471 enum "bidirectional" {
474 enum "notApplicable" {
482 enum "notApplicable" {
494 typedef wavelength-duplication-type {
496 "One per srg is applied to C/D add/drop group
497 one per degree is applied to C/D/C add drop group";
501 "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.";
504 enum "one-per-degree" {
506 "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.";
514 enum "roadm-internal" {
517 enum "roadm-external" {
520 enum "xpdr-network" {
529 enum "switch-network" {
532 enum "switch-client" {
535 enum "ila-external" {
538 enum "ila-internal" {
544 identity och-rate-identity {
546 "A unique och rate identification";
550 base och-rate-identity;
552 "Identity for 200G Rate";
556 base och-rate-identity;
558 "Identity for 100G Rate";
562 base och-rate-identity;
564 "Identity for 10.7G Rate";
568 base och-rate-identity;
570 "Identity for 11.1G Rate";
573 typedef modulation-format {
578 "binary phase-shift keying";
583 "DC dual-polarization binary phase-shift keying";
588 "quadrature phase-shift keying";
593 "dual-polarization binary phase-shift keying";
598 "quadrature amplitude modulation 16";
603 "dual-polarization quadrature amplitude modulation 16";
608 "DC dual-polarization quadrature amplitude modulation 16";
613 "quadrature amplitude modulation 8";
618 "dual-polarization quadrature amplitude modulation 8";
623 "DC dual-polarization quadrature amplitude modulation 8";