blob: 4a14783a2e2d31f6f1228f8a49f7494e83cd1682 [file] [log] [blame]
module g.874.1-model {
namespace "urn:onf:params:xml:ns:yang:g.874.1-model";
prefix g.874.1-model;
import core-model {
prefix core-model;
}
import ietf-yang-types {
prefix yang;
}
organization "ONF (Open Networking Foundation) Open Transport Working Group - Wireless Transport Project";
contact "WG Web: <https://www.opennetworking.org/technical-communities/areas/specification/1931-optical-transport>
WG List: <mailto:wireless-transport@login.opennetworking.org>
WG Chair: Lyndon Ong
<mailto:lyong@ciena.com>
WG Chair: Giorgio Cazzaniga
<mailto:giorgio.cazzaniga@sm-optics.com>
Editors: Thorsten Heinze
<mailto:thorsten.heinze@telefonica.com>
Martin Skorupski
<mailto:martin.skorupski@highstreet-technologies.com>";
description "<p>Version 2.02; outcome of the 10/2013 Nuremberg meeting.<br>Version 2.03; updates for Geneva 03-2014<br>Version 2.04; updates for Shanghai 09-2014<br>Version 2.05; input to Geneva 11-2014<br>Version 2.06; output from Geneva 11-2014<br>Version 2.07; using OpenProfile 3-2015<br>Version 2.08; output from Geneva 06-2015</p>";
revision 2017-03-20 {
description "Initial version";
reference "ONF TR 532: A YANG Data Model for Wireless Networks.";
}
/***********************
* package object-classes
**********************/
grouping otn-current-data-g {
leaf timestamp {
type date-and-time;
description "The timestamp associated with when the current data was collected.";
}
uses q.822-current-data-g;
description "This object class is an abstract class from which the OTN layer-specific CurrentData object classes are inherited. This object class is a subclass of the Q.822 CurrentData object class, which in turn is a subclass of X.739 Scanner object class. It inherits the following attributes: scannerId, operationalState, granularityPeriod, administrativeState, suspectIntervalFlag, elapsedTime, observedObjectClass, and observedObjectInstance.";
}
grouping otn-history-data-g {
leaf suspect-interval-flag {
type boolean;
default false;
description "This attribute indicates that the data collected during the interval is suspect.";
}
uses q.822-history-data-g;
description "This object class is an abstract class from which the OTN layer-specific HistoryData object classes are inherited. ";
}
/***********************
* package type-definitions
**********************/
typedef directionality {
type enumeration {
enum sink {
description "none";
}
enum source {
description "none";
}
enum bidirectional {
description "none";
}
}
description "The enumeration with the options for directionality of the termination point.";
}
typedef gcc-access {
type enumeration {
enum gcc1 {
description "none";
}
enum gcc2 {
description "none";
}
enum gcc1-and-gcc2 {
description "none";
}
}
description "This enumeration indicates the GCC access represented by the entity.";
}
typedef operational-state {
type enumeration {
enum enabled {
description "none";
}
enum disabled {
description "none";
}
}
description "The list of valid operational states for the connection.";
}
typedef oper-type {
type enumeration {
enum revertive {
description "none";
}
enum non-revertive {
description "none";
}
}
description "The operation type associated with the protection mechanism (either non-revertive or revertive).";
}
typedef ext-cmd-operation {
type enumeration {
enum exercise {
description "none";
}
enum manual-switch {
description "none";
}
enum forced-switch {
description "none";
}
enum lockout {
description "none";
}
enum release-of-manual-switch {
description "none";
}
enum release-of-forced-switch {
description "none";
}
enum release-of-lockout {
description "none";
}
}
description "This enumeration contains the options for the actions that instruct the protection system for performing specific protection switching operations.";
}
typedef administrative-state {
type enumeration {
enum unlocked {
description "none";
}
enum locked {
description "none";
}
enum shutting-down {
description "none";
}
}
description "For more information on Administrative State, See ITU-T Recs. X.731 and M.3100.";
}
typedef oc-tk-nim-k-bit-rate {
type enumeration {
enum 2.5-g {
description "none";
}
enum 10-g {
description "none";
}
enum 40-g {
description "none";
}
enum 100-g {
description "none";
}
}
description "Provides an enumeration with the meaning of each 'k' value.";
}
typedef tim-det-mo {
type enumeration {
enum dapi {
description "none";
}
enum sapi {
description "none";
}
enum both {
description "none";
}
}
description "List of modes for trace identifier mismatch detection.";
}
typedef oc-tk-nim-problem-list {
type enumeration {
enum los-p {
description "Loss of Signal -- Payload";
}
enum oci {
description "Open Connection Indicator";
}
enum ssf-p {
description "Server Signal Failure -- Payload -- can not co-exist with SSF or SSF-O";
}
enum ssf-o {
description "Server Signal Failure -- Overhead; can not co-exist with SSF or SSF-P";
}
enum ssf {
description "Server Signal Failure; can not co-exist with SSF-P or SSF-O";
}
enum tim {
description "Trail Trace Identifier Mismatch";
}
enum deg {
description "Signal Degraded";
}
enum bdi {
description "Backward Defect Indication";
}
}
description "The valid list of problems for the entity.";
}
typedef tcm-monitoring {
type enumeration {
enum intrusive {
description "none";
}
enum non-intrusive {
description "none";
}
}
description "Monitoring types for the tandem connection monitoring function.";
}
typedef tcm-mode {
type enumeration {
enum operational {
description "none";
}
enum transparent {
description "none";
}
enum monitor {
description "none";
}
}
description "List of value modes for the sink side of the tandem connection monitoring function.";
}
typedef ops-mnk-ttp-k-bit-rate {
type enumeration {
enum 40-g {
description "none";
}
enum 100-g {
description "none";
}
}
description "Provides an enumeration with the meaning of each 'k' value.";
}
typedef ops-mnk-ttp-problem-list {
type enumeration {
enum los {
description "Loss of Signal";
}
enum lol {
description "Loss of Lane Alignment";
}
}
description "The valid list of problems for the entity.";
}
typedef op-sn-ttp-problem-list {
type enumeration {
enum los {
description "Loss of Signal";
}
}
description "The valid list of problems for the entity.";
}
typedef otm-n-k-bit-rates {
type enumeration {
enum 2.5-g {
description "none";
}
enum 10-g {
description "none";
}
enum 40-g {
description "none";
}
enum 2.5-10-g {
description "none";
}
enum 10-40-g {
description "none";
}
enum 2.5-10-40-g {
description "none";
}
}
description "Provides an enumeration with the meaning of each 'k' value.";
}
typedef domain-interface {
type enumeration {
enum intra-domain {
description "none";
}
enum inter-domain {
description "none";
}
}
description "This enumeration provides the options for the interface associated with OTMn.";
}
typedef otm-n-optical-reach {
type enumeration {
enum intra-office {
description "none";
}
enum shorthaul {
description "none";
}
enum longhaul {
description "none";
}
}
description "The valid options for reach of the optical cable.";
}
typedef apr-status {
type enumeration {
enum on {
description "none";
}
enum off {
description "none";
}
}
description "The enumeration of the options for the Automatic Power Reduction Status.";
}
typedef ot-sn-ttp-problem-list {
type enumeration {
enum bdi-p {
description "BDI-P (Backward Defect Indication - Payload); not co-exist with BDI-O or BDI";
}
enum bdi-o {
description "BDI-O (Backward Defect Indication - Overhead); not co-exist with BDI-P or BDI";
}
enum bdi {
description "BDI (Backward Defect Indication); not co-exist with BDI-P or BDI-O";
}
enum tim {
description "TIM (Trail Trace Identifier Mismatch);";
}
enum los-p {
description "-P (Loss of Signal - Payload); not co-exist with LOS-O or LOS";
}
enum los-o {
description "LOS-O (Loss of Signal - Overhead); not co-exist with LOS-P or LOS";
}
enum los {
description "LOS (Loss of Signal); not co-exist with LOS-P or LOS-O. ";
}
}
description "The valid list of problems for the entity.";
}
typedef ot-uk-ctp-adaptation {
type enumeration {
enum regular {
description "i.e. OPSM/OTUk-a, OCh[r]/OTUk-a";
}
enum none {
description "i.e. OPSM/OTUk-b, OCh[r]/OTUk-b";
}
enum vendor-specific {
description "i.e. OCh[r]/OTUk-v";
}
enum functionally-standardized {
description "i.e. OCh[r]/OTUkV";
}
}
description "The adaptation options for OTUk_ConnectionTermationPoints.";
}
typedef ot-uk-ctp-k-bit-rate {
type enumeration {
enum 2.5-g {
description "none";
}
enum 10-g {
description "none";
}
enum 40-g {
description "none";
}
enum 100-g {
description "none";
}
}
description "Provides an enumeration with the meaning of each 'k' value.";
}
typedef ot-uk-ctp-problem-list {
type enumeration {
enum lof {
description "Loss of Frame";
}
enum ais {
description "Alarm Indication Signal";
}
enum lom {
description "Loss of MultiFrame";
}
}
description "The valid list of problems for the entity.";
}
typedef ot-uk-ttp-problem-list {
type enumeration {
enum tim {
description "Trail Trace Identifier Mismatch";
}
enum deg {
description "Signal Degraded";
}
enum bdi {
description "Backward Defect Indication";
}
enum ssf {
description "Server Signal Failure";
}
}
description "The valid list of problems for the entity.";
}
typedef monitored-direction {
type enumeration {
enum sink {
description "none";
}
enum source {
description "none";
}
}
description "The enumeration with the options for directionality for nonintrusive monitoring.";
}
typedef deg-thr-type {
type enumeration {
enum percentage {
description "<p>Choice of % or Number of errored blocks</p>";
}
enum number-errored-blocks {
description "<p>Number of % or blocks</p>";
}
}
description "<p>The value of the threshold can be provisioned in terms of number of errored blocks or in terms of percentage of errored blocks. For percentage-based specification, in order to support provision of less than 1%, the specification consists of two fields. The first field indicates the granularity of percentage. For examples, in 1%, in 0.1%, or in 0.01%, etc. The second field indicates the multiple of the granularity. For number of errored block based, the value is a positive integer.</p>";
}
typedef link-type {
type enumeration {
enum dwdm {
description "none";
}
enum cwdm {
description "none";
}
enum no-wdm {
description "none";
}
}
description "none";
}
typedef application-identifier-type {
type enumeration {
enum standard {
description "none";
}
enum proprietary {
description "none";
}
}
description "none";
}
typedef printable-string {
type string;
description "none";
}
typedef date-and-time {
type string;
description "This primitive type defines the date and time according to the following structure:
'yyyyMMddhhmmss.s[Z|{+|-}HHMm]' where:
yyyy '0000'..'9999' year
MM '01'..'12' month
dd '01'..'31' day
hh '00'..'23' hour
mm '00'..'59' minute
ss '00'..'59' second
s '.0'..'.9' tenth of second (set to '.0' if EMS or NE cannot support this granularity)
Z 'Z' indicates UTC (rather than local time)
{+|-} '+' or '-' delta from UTC
HH '00'..'23' time zone difference in hours
Mm '00'..'59' time zone difference in minutes.";
}
typedef aps-channel {
type enumeration {
enum path {
description "none";
}
enum tcm1 {
description "none";
}
enum tcm2 {
description "none";
}
enum tcm3 {
description "none";
}
enum tcm4 {
description "none";
}
enum tcm5 {
description "none";
}
enum tcm6 {
description "none";
}
enum section {
description "none";
}
}
description "none";
}
typedef bit-string {
type string;
description "This primitive type defines a bit oriented string.
The size of the BitString will be defined in the valueRange property of the attribute; according to ASN.1 (X.680).
The semantic of each bit position will be defined in the Documentation field of the attribute.";
}
typedef delay-measurement-role {
type enumeration {
enum controller {
description "none";
}
enum responder {
description "none";
}
}
description "none";
}
typedef resize-operation-type {
type enumeration {
enum increase-bw {
description "Increase Bandwidth";
}
enum decrease-bw {
description "Decrease Bandwidth";
}
}
description "none";
}
typedef granularity-period-type {
type enumeration {
enum unknown {
description "none";
}
enum period-15-min {
description "none";
}
enum period-24-hours {
description "none";
}
}
description "The enumeration with the options for granularity period of the performance data.";
}
/***********************
* package illustrative-object-diagrams
**********************/
/***********************
* package imported-information-object-classes
**********************/
/***********************
* package q.822
**********************/
grouping q.822-current-data-g {
leaf suspect-interval-flag {
type boolean;
description "This attribute is used to indicate that the performance data for the current period may not be reliable. Some reasons for this to occur are:- Suspect data were detected by the actual resource doing data collection.- Transition of the administrativeState attribute to/from the 'lock' state.- Transition of the operationalState to/from the 'disabled' state.- Scheduler setting that inhibits the collection function.- The performance counters were reset during the interval.- The currentData (or subclass) object instance was created during the monitoring period.";
}
leaf elapsed-time {
type int64;
description "none";
}
uses x.739-scanner-g;
description "none";
}
grouping q.822-history-data-g {
leaf history-data-id {
type string;
description "none";
}
leaf period-end-time {
type yang:date-and-time;
description "none";
}
leaf granularity-period {
type granularity-period-type;
description "none";
}
uses x.721-top-g;
description "none";
}
/***********************
* package x.739
**********************/
grouping x.739-scanner-g {
leaf scanner-id {
type string;
description "none";
}
leaf granularity-period {
type granularity-period-type;
description "none";
}
leaf administrative-state {
type core-model:administrative-state;
description "none";
}
uses x.721-top-g;
description "none";
}
/***********************
* package x.721
**********************/
grouping x.721-top-g {
leaf object-class {
type object-identifier;
description "ObjectClass ::= CHOICE{ globalForm [0] OBJECT IDENTIFIER,
localForm [1] INTEGER}";
}
leaf name-binding {
type object-identifier;
description "none";
}
description "This is the top level of managed object class hierarchy and every other managed object class is a specialization of either this generic class (top) or a specialization of subclass of top. The parameter miscellaneousError is to be used when a processing failure has occurred and the error condition encountered does not match any of object's defined specific error types.";
}
/***********************
* package imported-data-types
**********************/
typedef object-instance {
type string;
description "none";
}
typedef name {
type string;
description "none";
}
typedef object-identifier {
type string;
description "none";
}
typedef generalized-time {
type string;
description "none";
}
typedef time-period {
type string;
description "This primitive Type is imported from X.739.";
}
}