netconfcentral logo

ietf-microwave-radio-link@2017-10-23



  module ietf-microwave-radio-link {

    yang-version 1.1;

    namespace
      "urn:ietf:params:xml:ns:yang:ietf-microwave-radio-link";

    prefix mrl;

    import ietf-yang-types {
      prefix yang;
    }
    import ietf-interfaces {
      prefix if;
    }
    import ietf-interface-protection {
      prefix ifprot;
    }
    import iana-if-type {
      prefix ianaift;
    }

    organization
      "Internet Engineering Task Force (IETF) CCAMP WG";

    contact
      "WG List: <mailto:ccamp@ietf.org>

   ID-draft authors:
     Jonas Ahlberg (jonas.ahlberg@ericsson.com);
     Min Ye (amy.yemin@huawei.com);
     Xi Li (Xi.Li@neclab.eu);
     Koji Kawada (k-kawada@ah.jp.nec.com)
     Carlos J. Bernardos (cjbc@it.uc3m.es)
     Daniela Spreafico (daniela.spreafico@nokia.com)
     Marko Vaupotic (Marko.Vaupotic@aviatnet.com)";

    description
      "This is a module for the entities in
    a generic microwave system.";

    revision "2017-10-23" {
      description
        "Break out protection functionality to a generic module
     and update to follow the new NMDA style.";
      reference
        "";

    }

    revision "2017-06-21" {
      description
        "Updated draft revision with updates of some descriptions to
     increase clarity and some minor adjustments of the model.";
      reference
        "";

    }

    revision "2016-12-22" {
      description
        "Draft revision covering a complete scope for configuration
     and state data for radio link interfaces.";
      reference
        "";

    }

    revision "2016-10-29" {
      description "Draft revision.";
      reference
        "";

    }


    feature xpic {
      description
        "Indicates that the device supports XPIC.";
      reference
        "ETSI TR 102 311";

    }

    feature mimo {
      description
        "Indicates that the device supports MIMO.";
      reference
        "ETSI TR 102 311";

    }

    feature tdm {
      description
        "Indicates that the device supports TDM.";
    }

    identity radio-link-terminal {
      base ianaift:iana-interface-type;
      description
        "Interface identity for a radio link terminal.";
    }

    identity carrier-termination {
      base ianaift:iana-interface-type;
      description
        "Interface identity for a carrier termination.";
    }

    identity rlt-mode {
      base 
      description
        "A description of the mode in which the radio link
      terminal is configured. The format is X plus Y.
      X represent the number of bonded carrier terminations.
      Y represent the number of protecting carrier
      terminations.";
    }

    identity one-plus-zero {
      base rlt-mode;
      description
        "1 carrier termination only.";
    }

    identity one-plus-one {
      base rlt-mode;
      description
        "1 carrier termination
      and 1 protecting carrier termination.";
    }

    identity two-plus-zero {
      base rlt-mode;
      description
        "2 bonded carrier terminations.";
    }

    identity coding-modulation {
      base 
      description
        "The coding and modulation schemes.";
    }

    identity half-bpsk-strong {
      base coding-modulation;
      description
        "Half BPSK strong coding and modulation scheme.";
    }

    identity half-bpsk {
      base coding-modulation;
      description
        "Half BPSK coding and modulation scheme.";
    }

    identity half-bpsk-light {
      base coding-modulation;
      description
        "Half BPSK light coding and modulation scheme.";
    }

    identity bpsk-strong {
      base coding-modulation;
      description
        "BPSK strong coding and modulation scheme.";
    }

    identity bpsk {
      base coding-modulation;
      description
        "BPSK coding and modulation scheme.";
    }

    identity bpsk-light {
      base coding-modulation;
      description
        "BPSK light coding and modulation scheme.";
    }

    identity qpsk {
      base coding-modulation;
      description
        "QPSK coding and modulation scheme.";
    }

    identity qam-4-strong {
      base coding-modulation;
      description
        "4 QAM strong coding and modulation scheme.";
    }

    identity qam-4 {
      base coding-modulation;
      description
        "4 QAM coding and modulation scheme.";
    }

    identity qam-4-light {
      base coding-modulation;
      description
        "4 QAM light coding and modulation scheme.";
    }

    identity qam-16-strong {
      base coding-modulation;
      description
        "16 QAM strong coding and modulation scheme.";
    }

    identity qam-16 {
      base coding-modulation;
      description
        "16 QAM coding and modulation scheme.";
    }

    identity qam-16-light {
      base coding-modulation;
      description
        "16 QAM light coding and modulation scheme.";
    }

    identity qam-32-strong {
      base coding-modulation;
      description
        "32 QAM strong coding and modulation scheme.";
    }

    identity qam-32 {
      base coding-modulation;
      description
        "32 QAM coding and modulation scheme.";
    }

    identity qam-32-light {
      base coding-modulation;
      description
        "32 QAM light coding and modulation scheme.";
    }

    identity qam-64-strong {
      base coding-modulation;
      description
        "64 QAM strong coding and modulation scheme.";
    }

    identity qam-64 {
      base coding-modulation;
      description
        "64 QAM coding and modulation scheme.";
    }

    identity qam-64-light {
      base coding-modulation;
      description
        "64 QAM light coding and modulation scheme.";
    }

    identity qam-128-strong {
      base coding-modulation;
      description
        "128 QAM strong coding and modulation scheme.";
    }

    identity qam-128 {
      base coding-modulation;
      description
        "128 QAM coding and modulation scheme.";
    }

    identity qam-128-light {
      base coding-modulation;
      description
        "128 QAM light coding and modulation scheme.";
    }

    identity qam-256-strong {
      base coding-modulation;
      description
        "256 QAM strong coding and modulation scheme.";
    }

    identity qam-256 {
      base coding-modulation;
      description
        "256 QAM coding and modulation scheme.";
    }

    identity qam-256-light {
      base coding-modulation;
      description
        "256 QAM light coding and modulation scheme.";
    }

    identity qam-512-strong {
      base coding-modulation;
      description
        "512 QAM strong coding and modulation scheme.";
    }

    identity qam-512 {
      base coding-modulation;
      description
        "512 QAM coding and modulation scheme.";
    }

    identity qam-512-light {
      base coding-modulation;
      description
        "512 QAM light coding and modulation scheme.";
    }

    identity qam-1024-strong {
      base coding-modulation;
      description
        "1024 QAM strong coding and modulation scheme.";
    }

    identity qam-1024 {
      base coding-modulation;
      description
        "1024 QAM coding and modulation scheme.";
    }

    identity qam-1024-light {
      base coding-modulation;
      description
        "1024 QAM light coding and modulation scheme.";
    }

    identity qam-2048-strong {
      base coding-modulation;
      description
        "2048 QAM strong coding and modulation scheme.";
    }

    identity qam-2048 {
      base coding-modulation;
      description
        "2048 QAM coding and modulation scheme.";
    }

    identity qam-2048-light {
      base coding-modulation;
      description
        "2048 QAM light coding and modulation scheme.";
    }

    identity qam-4096-strong {
      base coding-modulation;
      description
        "4096 QAM strong coding and modulation scheme.";
    }

    identity qam-4096 {
      base coding-modulation;
      description
        "4096 QAM coding and modulation scheme.";
    }

    identity qam-4096-light {
      base coding-modulation;
      description
        "4096 QAM light coding and modulation scheme.";
    }

    identity tdm-type {
      base 
      description
        "A description of the type of TDM connection,
      also indicating the supported capacity of the
      connection.";
    }

    identity E1 {
      base tdm-type;
      description
        "E1 connection, 2,048 Mbit/s.";
    }

    identity STM-1 {
      base tdm-type;
      description
        "STM-1 connection, 155,52 Mbit/s.";
    }

    typedef power {
      type decimal64 {
        fraction-digits 1;
      }
      description
        "Type used for power values, selected and measured.";
    }

    augment /if:interfaces/if:interface {
      when
        "if:type = 'mrl:radio-link-terminal'";
      description
        "Addition of data nodes for radio link terminal to
       the standard Interface data model, for interfaces of
       the type 'radio-link-terminal'.";
      leaf id {
        type string;
        default "";
        description
          "ID of the radio link terminal. Used by far-end when
         checking that it's connected to the correct RLT.";
      }

      leaf mode {
        type identityref {
          base rlt-mode;
        }
        mandatory true;
        description
          "A description of the mode in which the radio link
         terminal is configured. The format is X plus Y.
         X represent the number of bonded carrier terminations.
         Y represent the number of protecting carrier
         terminations.";
      }

      leaf-list carrier-terminations {
        type if:interface-ref;
        must
          "/if:interfaces/if:interface[if:name = current()]"
            + "/if:type = 'mrl:carrier-termination'" {
          description
            "The type of interface must be
           'carrier-termination'.";
        }
        min-elements 1;
        description
          "A list of references to carrier terminations
         included in the radio link terminal.";
      }

      leaf-list rlp-groups {
        type leafref {
          path "/mrl:radio-link-protection-groups/mrl:protection-group/mrl:name";
        }
        description
          "A list of references to the carrier termination
         groups configured for radio link protection in this
         radio link terminal.";
      }

      leaf-list xpic-pairs {
        if-feature xpic;
        type leafref {
          path "/mrl:xpic-pairs/mrl:xpic-pair/mrl:name";
        }
        description
          "A list of references to the XPIC pairs used in this
         radio link terminal. One pair can be used by two
         terminals.";
        reference
          "ETSI TR 102 311";

      }

      leaf-list mimo-groups {
        if-feature mimo;
        type leafref {
          path "/mrl:mimo-groups/mrl:mimo-group/mrl:name";
        }
        description
          "A reference to the MIMO group used in this
         radio link terminal. One group can be used by more
         than one terminal.";
        reference
          "ETSI TR 102 311";

      }

      list tdm-connections {
        if-feature tdm;
        key "tdm-type";
        description
          "A list stating the number of active TDM connections
        of a specified tdm-type that is configured to be
        supported by the RLT.";
        leaf tdm-type {
          type identityref {
            base tdm-type;
          }
          description
            "The type of TDM connection, which also indicates
          the supported capacity.";
        }

        leaf tdm-connections {
          type uint16;
          mandatory true;
          description
            "Number of connections of the specified type.";
        }
      }  // list tdm-connections
    }

    augment /if:interfaces/if:interface {
      when
        "if:type = 'mrl:carrier-termination'";
      description
        "Addition of data nodes for carrier termination to
       the standard Interface data model, for interfaces
       of the type 'carrier-termination'.";
      leaf carrier-id {
        type string;
        default "A";
        description
          "ID of the carrier. (e.g. A, B, C or D)
         Used in XPIC & MIMO configurations to check that
         the carrier termination is connected to the correct
         far-end carrier termination. Should be the same
         carrier ID on both sides of the hop.
         Defaulted when not MIMO or XPIC.";
      }

      leaf tx-enabled {
        type boolean;
        default "false";
        description
          "Disables (false) or enables (true) the transmitter.
         Only applicable when the interface is enabled
         (interface:enabled = true) otherwise it's always
         disabled.";
      }

      leaf tx-oper-status {
        type enumeration {
          enum "off" {
            value 0;
            description
              "Transmitter is off.";
          }
          enum "on" {
            value 1;
            description "Transmitter is on.";
          }
          enum "standby" {
            value 2;
            description
              "Transmitter is in standby.";
          }
        }
        config false;
        description
          "Shows the operative status of the transmitter.";
      }

      leaf tx-frequency {
        type uint32;
        units "kHz";
        mandatory true;
        description
          "Selected transmitter frequency.";
      }

      leaf rx-frequency {
        type uint32;
        units "kHz";
        description
          "Selected receiver frequency.
         Overrides existing value in duplex-distance.
         Calculated from tx-frequency and duplex-distance if
         only duplex-distance is configured.
         Must match duplex-distance if both leaves are
         configured in a single operation.";
      }

      leaf duplex-distance {
        type uint32;
        units "kHz";
        description
          "Distance between Tx & Rx frequencies.
         Used to calculate rx-frequency when
         rx-frequency is not specifically configured.
         Overrides existing value in rx-frequency.
         Calculated from tx-frequency and rx-frequency if only
         rx-frequency is configured.
         Must match rx-frequency if both leaves are configured
         in a single operation.";
      }

      leaf channel-separation {
        type uint32;
        units "kHz";
        mandatory true;
        description
          "The amount of bandwidth allocated to a carrier. The distance
         between adjacent channels in a radio frequency channels
         arrangement";
        reference
          "ETSI EN 302 217-1";

      }

      leaf polarization {
        type enumeration {
          enum "horizontal" {
            value 0;
            description
              "Horizontal polarization.";
          }
          enum "vertical" {
            value 1;
            description
              "Vertical polarization.";
          }
          enum "not-specified" {
            value 2;
            description
              "Polarization not specified.";
          }
        }
        default "not-specified";
        description
          "Polarization - A textual description for info only.";
      }

      leaf power-mode {
        type enumeration {
          enum "rtpc" {
            value 0;
            description
              "Remote Transmit Power Control (RTPC).";
            reference
              "ETSI EN 302 217-1";

          }
          enum "atpc" {
            value 1;
            description
              "Automatic Transmit Power Control (ATPC).";
            reference
              "ETSI EN 302 217-1";

          }
        }
        mandatory true;
        description
          "A choice of Remote Transmit Power Control (RTPC)
         or Automatic Transmit Power Control (ATPC).";
      }

      leaf maximum-nominal-power {
        type power {
          fraction-digits 0;
          range "-99..40";
        }
        units "dBm";
        mandatory true;
        description
          "Selected output power in RTPC mode and selected
         maximum output power in ATPC mode. Minimum ouput
         power in ATPC mode is the same as the system
         capability, available-min-output-power.";
        reference
          "ETSI EN 302 217-1";

      }

      leaf atpc-lower-threshold {
        when "../power-mode = 'atpc'";
        type power {
          fraction-digits 0;
          range "-99..-30";
        }
        units "dBm";
        mandatory true;
        description
          "The lower threshold for the input power at far-end
         used in the ATPC mode.";
        reference
          "ETSI EN 302 217-1";

      }

      leaf atpc-upper-threshold {
        when "../power-mode = 'atpc'";
        type power {
          fraction-digits 0;
          range "-99..-30";
        }
        units "dBm";
        mandatory true;
        description
          "The upper threshold for the input power at far-end
         used in the ATPC mode.";
        reference
          "ETSI EN 302 217-1";

      }

      leaf actual-transmitted-level {
        type power {
          fraction-digits 0;
          range "-99..40";
        }
        units "dBm";
        config false;
        description
          "Actual transmitted power level (0.1 dBm resolution).";
        reference
          "ETSI EN 301 129";

      }

      leaf actual-received-level {
        type power {
          fraction-digits 0;
          range "-99..-20";
        }
        units "dBm";
        config false;
        description
          "Actual received power level (0.1 dBm resolution).";
        reference
          "ETSI EN 301 129";

      }

      leaf coding-modulation-mode {
        type enumeration {
          enum "single" {
            value 0;
            description
              "a single modulation order only.";
            reference
              "ETSI EN 302 217-1";

          }
          enum "adaptive" {
            value 1;
            description
              "Adaptive coding/modulation.";
            reference
              "ETSI EN 302 217-1";

          }
        }
        mandatory true;
        description
          "A selection of single or
         adaptive coding/modulation mode.";
      }

      leaf selected-cm {
        when
          "../coding-modulation-mode = 'single'";
        type identityref {
          base coding-modulation;
        }
        mandatory true;
        description
          "Selected the single coding/modulation.";
      }

      leaf selected-min-acm {
        when
          "../coding-modulation-mode = 'adaptive'";
        type identityref {
          base coding-modulation;
        }
        mandatory true;
        description
          "Selected minimum coding/modulation.
         Adaptive coding/modulation shall not go
         below this value.";
      }

      leaf selected-max-acm {
        when
          "../coding-modulation-mode = 'adaptive'";
        type identityref {
          base coding-modulation;
        }
        mandatory true;
        description
          "Selected maximum coding/modulation.
         Adaptive coding/modulation shall not go
         above this value.";
      }

      leaf actual-tx-cm {
        type identityref {
          base coding-modulation;
        }
        config false;
        description
          "Actual coding/modulation in transmitting direction.";
      }

      leaf actual-snir {
        type decimal64 {
          fraction-digits 1;
          range "0..99";
        }
        units "dB";
        config false;
        description
          "Actual signal to noise plus interference ratio.
         (0.1 dB resolution).";
      }

      leaf actual-xpi {
        if-feature xpic;
        type decimal64 {
          fraction-digits 1;
          range "0..99";
        }
        units "dB";
        config false;
        description
          "The actual carrier to cross-polar interference.
         Only valid if XPIC is enabled. (0.1 dB resolution).";
        reference
          "ETSI TR 102 311";

      }

      container ct-performance-thresholds {
        description
          "Specification of thresholds for when alarms should
         be sent and cleared for various performance counters.";
        leaf received-level-alarm-threshold {
          type power {
            fraction-digits 0;
            range "-99..-30";
          }
          units "dBm";
          default "-99";
          description
            "An alarm is sent when the received power level is
           below the specified threshold.";
          reference
            "ETSI EN 301 129";

        }

        leaf transmitted-level-alarm-threshold {
          type power {
            fraction-digits 0;
            range "-99..40";
          }
          units "dBm";
          default "-99";
          description
            "An alarm is sent when the transmitted power level
           is below the specified threshold.";
          reference
            "ETSI EN 301 129";

        }

        leaf ber-alarm-threshold {
          type enumeration {
            enum "10e-9" {
              value 0;
              description
                "Threshold at 10e-9.";
            }
            enum "10e-8" {
              value 1;
              description
                "Threshold at 10e-8.";
            }
            enum "10e-7" {
              value 2;
              description
                "Threshold at 10e-7.";
            }
            enum "10e-6" {
              value 3;
              description
                "Threshold at 10e-6.";
            }
            enum "10e-5" {
              value 4;
              description
                "Threshold at 10e-5.";
            }
            enum "10e-4" {
              value 5;
              description
                "Threshold at 10e-4.";
            }
            enum "10e-3" {
              value 6;
              description
                "Threshold at 10e-3.";
            }
            enum "10e-2" {
              value 7;
              description
                "Threshold at 10e-2.";
            }
            enum "10e-1" {
              value 8;
              description
                "Threshold at 10e-1.";
            }
          }
          default "10e-6";
          description
            "Specification of at which BER an alarm should
           be raised.";
          reference
            "ETSI EN 302 217-1";

        }
      }  // container ct-performance-thresholds

      leaf if-loop {
        type enumeration {
          enum "disabled" {
            value 0;
            description
              "Disables the IF Loop.";
          }
          enum "client" {
            value 1;
            description
              "Loops the signal back to the client side.";
          }
          enum "radio" {
            value 2;
            description
              "Loops the signal back to the radio side.";
          }
        }
        default "disabled";
        description
          "Enable (client/radio) or disable (disabled)
         the IF loop, which loops the signal back to
         the client side or the radio side.";
      }

      leaf rf-loop {
        type enumeration {
          enum "disabled" {
            value 0;
            description
              "Disables the RF Loop.";
          }
          enum "client" {
            value 1;
            description
              "Loops the signal back to the client side.";
          }
          enum "radio" {
            value 2;
            description
              "Loops the signal back to the radio side.";
          }
        }
        default "disabled";
        description
          "Enable (client/radio) or disable (disabled)
         the RF loop, which loops the signal back to
         the client side or the radio side.";
      }

      container capabilities {
        config false;
        description
          "Capabilities of the the installed equipment and
         some selected configurations.";
        leaf min-tx-frequency {
          type uint32;
          units "kHz";
          description
            "Minimum Tx frequency possible to use.";
        }

        leaf max-tx-frequency {
          type uint32;
          units "kHz";
          description
            "Maximum Tx frequency possible to use.";
        }

        leaf min-rx-frequency {
          type uint32;
          units "kHz";
          description
            "Minimum Rx frequency possible to use.";
        }

        leaf max-rx-frequency {
          type uint32;
          units "kHz";
          description
            "Maximum Tx frequency possible to use.";
        }

        leaf minimum-power {
          type power;
          units "dBm";
          description
            "The minimum output power supported.";
          reference
            "ETSI EN 302 217-1";

        }

        leaf maximum-available-power {
          type power;
          units "dBm";
          description
            "The maximum output power supported.";
          reference
            "ETSI EN 302 217-1";

        }

        leaf available-min-acm {
          type identityref {
            base coding-modulation;
          }
          description
            "Minimum coding-modulation possible to use.";
        }

        leaf available-max-acm {
          type identityref {
            base coding-modulation;
          }
          description
            "Maximum coding-modulation possible to use.";
        }
      }  // container capabilities

      container error-performance-statistics {
        config false;
        description
          "ITU-T G.826 error performance statistics relevant for
         a microwave/millimeter wave carrier.";
        leaf bbe {
          type yang:counter32;
          units "number of block errors";
          description
            "Number of Background Block Errors (BBE) during the
          interval. A BBE is an errored block not occurring as
          part of an SES.";
          reference
            "ITU-T G.826";

        }

        leaf es {
          type yang:counter32;
          units "seconds";
          description
            "Number of Errored Seconds (ES) since last reset.
           An ES is a one-second period with one or more errored
           blocks or at least one defect.";
          reference
            "ITU-T G.826";

        }

        leaf ses {
          type yang:counter32;
          units "seconds";
          description
            "Number of Severely Errored Seconds (SES) during the
           interval. SES is a one-second period which contains
           equal or more than 30% errored blocks or at least
           one defect. SES is a subset of ES.";
          reference
            "ITU-T G.826";

        }

        leaf uas {
          type yang:counter32;
          units "seconds";
          description
            "Number of Unavailable Seconds (UAS), that is, the
           total time that the node has been unavailable during
           a fixed measurement interval.";
          reference
            "ITU-T G.826";

        }
      }  // container error-performance-statistics

      container radio-performance-statistics {
        config false;
        description
          "ETSI EN 301 129 radio physical interface statistics relevant
         for a carrier termination.";
        leaf min-rltm {
          type power {
            fraction-digits 0;
            range "-99..-20";
          }
          units "dBm";
          description
            "Minimum received power level since last reset.";
          reference
            "ETSI EN 301 129";

        }

        leaf max-rltm {
          type power {
            fraction-digits 0;
            range "-99..-20";
          }
          units "dBm";
          description
            "Maximum received power level since last reset.";
          reference
            "ETSI EN 301 129";

        }

        leaf min-tltm {
          type power {
            fraction-digits 0;
            range "-99..40";
          }
          units "dBm";
          description
            "Minimum transmitted power level since last reset.";
          reference
            "ETSI EN 301 129";

        }

        leaf max-tltm {
          type power {
            fraction-digits 0;
            range "-99..40";
          }
          units "dBm";
          description
            "Maximum transmitted power level since last reset.";
          reference
            "ETSI EN 301 129";

        }
      }  // container radio-performance-statistics
    }

    container radio-link-protection-groups {
      description
        "Configuration of radio link protected groups (1+1) of
      carrier terminations in a radio link. More than one
      protected group per radio-link-terminal is allowed.";
      uses ifprot:protection-groups {
        refine protection-group/protection-members {
          must
            "/if:interfaces/if:interface[if:name = current()]"
              + "/if:type = 'mrl:carrier-termination'" {
            description
              "The type of a protection member must be
             'carrier-termination'.";
          }
        }

        refine protection-group/working-entity {
          must
            "/if:interfaces/if:interface[if:name =  current()]"
              + "/if:type = 'mrl:carrier-termination'" {
            description
              "The type of a working-entity must be
             'carrier-termination'.";
          }
        }
      }
    }  // container radio-link-protection-groups

    container xpic-pairs {
      if-feature xpic;
      description
        "Configuration of carrier termination pairs
       for operation in XPIC mode.";
      reference
        "ETSI TR 102 311";

      list xpic-pair {
        key "name";
        description
          "List of carrier termination pairs in XPIC mode.";
        leaf name {
          type string;
          description
            "Name used for identification of the XPIC pair.";
        }

        leaf enabled {
          type boolean;
          default "false";
          description
            "Enable(true)/disable(false) XPIC";
        }

        leaf-list xpic-members {
          type if:interface-ref;
          must
            "/if:interfaces/if:interface[if:name = current()]"
              + "/if:type = 'mrl:carrier-termination'" {
            description
              "The type of a xpic-member must be
            'carrier-termination'.";
          }
          min-elements 2;
          max-elements 2;
          description
            "Association to XPIC pairs used in the radio link
           terminal.";
        }
      }  // list xpic-pair
    }  // container xpic-pairs

    container mimo-groups {
      if-feature mimo;
      description
        "Configuration of carrier terminations
      for operation in MIMO mode.";
      reference
        "ETSI TR 102 311";

      list mimo-group {
        key "name";
        description
          "List of carrier terminations in MIMO mode.";
        leaf name {
          type string;
          description
            "Name used for identification of the MIMO group.";
        }

        leaf enabled {
          type boolean;
          default "false";
          description
            "Enable(true)/disable(false) MIMO";
        }

        leaf-list mimo-members {
          type if:interface-ref;
          must
            "/if:interfaces/if:interface[if:name = current()]"
              + "/if:type = 'mrl:carrier-termination'" {
            description
              "The type of a mimo-member must be
             'carrier-termination'.";
          }
          min-elements 2;
          description
            "Association to a MIMO group if used in the radio
           link terminal.";
        }
      }  // list mimo-group
    }  // container mimo-groups
  }  // module ietf-microwave-radio-link