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: WG List: WG Chair: Lyndon Ong WG Chair: Giorgio Cazzaniga Editors: Thorsten Heinze Martin Skorupski "; description "

Version 2.02; outcome of the 10/2013 Nuremberg meeting.
Version 2.03; updates for Geneva 03-2014
Version 2.04; updates for Shanghai 09-2014
Version 2.05; input to Geneva 11-2014
Version 2.06; output from Geneva 11-2014
Version 2.07; using OpenProfile 3-2015
Version 2.08; output from Geneva 06-2015

"; 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 "

Choice of % or Number of errored blocks

"; } enum number-errored-blocks { description "

Number of % or blocks

"; } } description "

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.

"; } 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."; } }