bbf-vdsl

This module contains a collection of YANG definitions for supporting the Broadband Forum requirements on management of Very High...

  • Version: 2020-10-13

    bbf-vdsl@2020-10-13


    
      module bbf-vdsl {
    
        yang-version 1.1;
    
        namespace "urn:bbf:yang:bbf-vdsl";
    
        prefix bbf-vdsl;
    
        include bbf-vdsl-base-body;
        include bbf-vdsl-test-mode-body;
        include bbf-vdsl-base;
        include bbf-vdsl-line;
        include bbf-vdsl-inventory-body;
        include bbf-vdsl-xtu;
        include bbf-vdsl-data-rate-profile-body;
        include bbf-vdsl-service-profiles;
        include bbf-vdsl-line-spectrum-profile-body;
        include bbf-vdsl-mode-specific-psd-profile-body;
        include bbf-vdsl-upstream-power-back-off-profile-body;
        include bbf-vdsl-downstream-power-back-off-profile-body;
        include bbf-vdsl-radio-frequency-interference-profile-body;
        include bbf-vdsl-spectrum-profiles;
        include bbf-vdsl-noise-margin-profile-body;
        include bbf-vdsl-impulse-noise-protection-delay-profile-body;
        include bbf-vdsl-virtual-noise-profile-body;
        include bbf-vdsl-sos-profile-body;
        include bbf-vdsl-impulse-noise-monitoring-profile-body;
        include bbf-vdsl-re-initialization-policy-profile-body;
        include bbf-vdsl-vectoring-profile-body;
        include bbf-vdsl-data-gathering-profile-body;
        include bbf-vdsl-quality-profiles;
        include bbf-vdsl-line-status-body;
        include bbf-vdsl-xtu-line-status-body;
        include bbf-vdsl-xtu-band-status-body;
        include bbf-vdsl-xtu-channel-status-body;
        include bbf-vdsl-status-monitoring;
        include bbf-vdsl-xtu-line-performance-body;
        include bbf-vdsl-xtu-channel-performance-body;
        include bbf-vdsl-performance-management;
        include bbf-vdsl-xtu-line-threshold-profile-body;
        include bbf-vdsl-xtu-channel-threshold-profile-body;
        include bbf-vdsl-threshold-management;
        include bbf-vdsl-threshold-crossing-alert-body;
        include bbf-vdsl-xtu-sub-carrier-status-body;
        include bbf-vdsl-xtu-data-gathering-report-body;
        include bbf-vdsl-test-diagnostics;
        include bbf-vdsl-pointers;
        include bbf-vdsl-availability;
    
        organization
          "Broadband Forum <https://www.broadband-forum.org>
    Common YANG Work Area";
    
        contact
          "Comments or questions about this Broadband Forum YANG module
    should be directed to <mailto:help@broadband-forum.org>.
    
    Editor:      Ken Kerpez, ASSIA, Inc.
    
    Editor:      Joey Boyd, ADTRAN
    
    PS Leader:   Sowrirajan Padmanabhan, Nokia
    
    PS Leader:   Joey Boyd, ADTRAN
    
    WA Director: Sven Ooghe, Nokia
    
    WA Director: Joey Boyd, ADTRAN";
    
        description
          "This module contains a collection of YANG definitions for
    supporting the Broadband Forum requirements on management of Very
    High-speed Digital Subscriber Line (VDSL) interfaces as defined
    in ITU-T G.993.x, ITU-T G.997.1 and BBF TR-252. As such, this
    module is specific to access network equipment (e.g.,
    BBF-specified Access Nodes and FTTdp DPUs).
    
    Copyright (c) 2016-2020 Broadband Forum
    
    Redistribution and use in source and binary forms, with or
    without modification, are permitted provided that the following
    conditions are met:
    
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    
    2. Redistributions in binary form must reproduce the above
       copyright notice, this list of conditions and the following
       disclaimer in the documentation and/or other materials
       provided with the distribution.
    
    3. Neither the name of the copyright holder nor the names of its
       contributors may be used to endorse or promote products
       derived from this software without specific prior written
       permission.
    
    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
    CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
    CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
    NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
    LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
    CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
    STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
    ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    
    The above license is used as a license under copyright only.
    Please reference the Forum IPR Policy for patent licensing terms
    <https://www.broadband-forum.org/ipr-policy>.
    
    Any moral rights which are necessary to exercise under the above
    license grant are also deemed granted under this license.
    
    This version of this YANG module is part of TR-355a3; see
    the TR itself for full legal notices.";
    
        revision "2020-10-13" {
          description
            "Amendment 3.
    * Approval Date:    2020-10-13
    * Publication Date: 2020-10-13.";
          reference
            "TR-355a3: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-3.pdf>";
    
        }
    
        revision "2019-10-21" {
          description
            "Amendment 2 Corrigendum 1.
    * Approval Date:    2019-10-21
    * Publication Date: 2019-10-21.";
          reference
            "TR-355a2c1: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-2.pdf>";
    
        }
    
        revision "2019-06-11" {
          description
            "Amendment 2.
    * Approval Date:    2019-06-11
    * Publication Date: 2019-06-11.";
          reference
            "TR-355a2: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Amendment-2.pdf>";
    
        }
    
        revision "2018-10-01" {
          description
            "Amendment 1.
    * Approval Date:    2018-10-01
    * Publication Date: 2018-10-01.";
          reference
            "TR-355a1: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Amendment-1.pdf>";
    
        }
    
        revision "2017-11-27" {
          description
            "Corrigendum 2 (fixes to the previous revision).
    * Approval Date:    see revision date above.
    * Publication Date: 2018-01-19.";
          reference
            "TR-355c2: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Corrigendum-2.pdf>";
    
        }
    
        revision "2017-03-13" {
          description
            "Corrigendum 1 (fixes to the initial revision).
    * Approval Date:    see revision date above.
    * Publication Date: 2017-04-12.";
          reference
            "TR-355c1: YANG Modules for FTTdp Management
            	  <https://www.broadband-forum.org/technical/download/
            		 TR-355_Corrigendum-1.pdf>";
    
        }
    
        revision "2016-07-18" {
          description
            "Initial revision.
    * Approval Date:    see revision date above.
    * Publication Date: 2016-08-05.";
          reference
            "TR-355: YANG Modules for FTTdp Management
            	<https://www.broadband-forum.org/technical/download/
            		 TR-355.pdf>";
    
        }
    
    
        // features
    
        feature virtual-noise {
          description
            "Indicates support for virtual noise.";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; Virtual Noise Profile.";
    
        }
    
        feature sos {
          description
            "Indicates support for Save Our Showtime (SOS).";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; SOS Profile.";
    
        }
    
        feature impulse-noise-monitoring {
          description
            "Indicates support for impulse noise monitoring.";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; Impulse Noise Monitoring Profile.";
    
        }
    
        feature re-initialization-policy {
          description
            "Indicates support for re-initialization policy.";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; Re-initialization Policy Profile.";
    
        }
    
        feature vectoring {
          description
            "Indicates support for vectoring.";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; Vectoring Profile.";
    
        }
    
        feature data-gathering {
          description
            "Indicates support for data gathering.";
          reference
            "Broadband Forum TR-252i3 - 5.7 DSL Quality Management
            related profiles; Data Gathering Profile.";
    
        }
    
        feature data-rate-profile-leftr {
          description
            "Indicates support for the configuration of Low Error-Free
    Throughput Rate (LEFTR) as part of the data rate profile.";
        }
    
        feature maxeftr {
          description
            "Indicates support for Maximum Error Free Throughput Rate
    (MAXEFTR).";
        }
    
        feature successful-sra {
          description
            "Indicates support for reporting successful Seamless Rate
    Adaptation (SRA).";
        }
    
        feature vdsl2-lr {
          description
            "Indicates support for VDSL2 Long Reach (VDSL2-LR).";
        }
    
        feature strongfext {
          description
            "Indicates support for Strong Far-End Crosstalk (STRONGFEXT).";
        }
    
        feature performance-24hr {
          description
            "Indicates that collection of 24 hour performance intervals
    is supported.";
        }
    
        feature availability {
          description
            "Indicates support for retrieving availability of a VDSL
    interface.";
        }
    
        // identities
    
        identity vdsl-threshold-crossing-alert {
          description
            "Base identity for VDSL threshold crossing alerts (TCA).
    
    This identity is abstract and is not be used for a
    threshold crossing alert.";
        }
    
        identity vdsl-15min-threshold-crossing-alert {
          base vdsl-threshold-crossing-alert;
          description
            "A threshold crossing alert associated with performance
    counters collected over the current 15 minute interval
    for xDSL Transceiver Unit - Central office (xDSL Transceiver
    Unit - Central office (xTU-C))/xTU-R channels and lines.
    
    This identity is abstract and is not be used for a
    threshold crossing alert.";
        }
    
        identity vdsl-24hr-threshold-crossing-alert {
          base vdsl-threshold-crossing-alert;
          description
            "A threshold crossing alert associated with performance
    counters collected over the current 24 hour interval
    for xDSL Transceiver Unit - Central office (xDSL Transceiver
    Unit - Central office (xTU-C))/xTU-R channels and lines.
    
    This identity is abstract and is not be used for a
    threshold crossing alert.";
        }
    
        identity xtu-c-15min-channel-code-violations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of channel code violations during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This TCA
    is optional.";
        }
    
        identity xtu-c-15min-channel-forward-error-corrections-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of forward-error-corrections during the current 15
    minute interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-c-15min-channel-uncorrected-dtus-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of received uncorrected Data Transfer Units (DTU)
    during the current 15 minute interval has exceeded the
    configured xDSL Transceiver Unit - Central office (xTU-C)
    threshold. This threshold crossing alert is optional.";
        }
    
        identity xtu-c-15min-line-forward-error-correction-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line forward error correction seconds during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-15min-line-errored-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Errored Seconds (ES) during the current 15
    minute interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-severely-errored-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Severely Errored Seconds (SES) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-loss-of-signal-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Loss of Signal Seconds (LOSS) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-15min-line-unavailable-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Unavailable Seconds (UAS) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-leftr-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Low Error-Free Throughput Rate (LEFTR)
    defect seconds during the current 15 minute interval has
    exceeded the configured xDSL Transceiver Unit - Central office
    (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-full-initializations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line full initializations during the current
    15 minute interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-failed-full-initializations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line failed full initializations during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-15min-line-fast-initializations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line fast initializations during the current 15
    minute interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-c-15min-line-failed-fast-initializations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line failed fast initializations during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-15min-line-spontaneous-interruptions-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line spontaneous interuptions during the current
    15 minute interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-r-15min-channel-code-violations-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of channel code violations during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold. This TCA is
    optional.";
        }
    
        identity xtu-r-15min-channel-forward-error-corrections-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of forward-error-corrections during the current 15
    minute interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold. This TCA is optional.";
        }
    
        identity xtu-r-15min-channel-uncorrected-dtus-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of received uncorrected Data Transfer Units (DTU)
    during the current 15 minute interval has exceeded the
    configured xDSL Transceiver Unit - Remote side (xTU-R)
    threshold. This threshold crossing alert is optional.";
        }
    
        identity xtu-r-15min-line-forward-error-correction-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line forward error correction seconds during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-r-15min-line-errored-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Errored Seconds (ES) during the current 15
    minute interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-15min-line-severely-errored-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Severely Errored Seconds (SES) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-15min-line-loss-of-signal-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Loss of Signal Seconds (LOSS) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-r-15min-line-unavailable-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Unavailable Seconds (UAS) during the
    current 15 minute interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-15min-line-leftr-seconds-tca {
          base vdsl-15min-threshold-crossing-alert;
          description
            "The number of line Low Error-Free Throughput Rate (LEFTR)
    defect seconds during the current 15 minute interval has
    exceeded the configured xDSL Transceiver Unit - Remote side
    (xTU-R) threshold.";
        }
    
        identity xtu-c-24hr-channel-code-violations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of channel code violations during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-24hr-channel-forward-error-corrections-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of forward-error-corrections during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-c-24hr-channel-uncorrected-dtus-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of received uncorrected DTUs during the current
    24 hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-c-24hr-line-forward-error-correction-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line forward error correction seconds during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-24hr-line-errored-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Errored Seconds (ES) during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-24hr-line-severely-errored-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Severely Errored Seconds (SES) during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-24hr-line-loss-of-signal-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Loss of Signal Seconds (LOSS) during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-24hr-line-unavailable-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Unavailable Seconds (UAS) during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-24hr-line-leftr-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Low Error-Free Throughput Rate (LEFTR)
    defect seconds during the current 24 hour interval has exceeded
    the configured xDSL Transceiver Unit - Central office (xTU-C)
    threshold.";
        }
    
        identity xtu-c-24hr-line-full-initializations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line full initializations during the current
    24 hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-24hr-line-failed-full-initializations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line failed full initializations during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold.";
        }
    
        identity xtu-c-24hr-line-fast-initializations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line fast initializations during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-c-24hr-line-failed-fast-initializations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line failed fast initializations during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Central office (xTU-C) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-c-24hr-line-spontaneous-interruptions-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line spontaneous interuptions during the current
    24 hour interval has exceeded the configured xDSL Transceiver
    Unit - Central office (xTU-C) threshold. This threshold
    crossing alert is optional.";
        }
    
        identity xtu-r-24hr-channel-code-violations-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of channel code violations during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold. This threshold crossing
    alert is optional.";
        }
    
        identity xtu-r-24hr-channel-forward-error-corrections-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of forward-error-corrections during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold. This threshold crossing
    alert is optional.";
        }
    
        identity xtu-r-24hr-channel-uncorrected-dtus-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of received uncorrected Data Transfer Units (DTU)
    during the current 24 hour interval has exceeded the configured
    xDSL Transceiver Unit - Remote side (xTU-R) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-r-24hr-line-forward-error-correction-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line forward error correction seconds during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-r-24hr-line-errored-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Errored Seconds (ES) during the current 24
    hour interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-24hr-line-severely-errored-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Severely Errored Seconds (SES) during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-24hr-line-loss-of-signal-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Loss of Signal Seconds (LOSS) during the
    current 24 hour interval has exceeded the configured xDSL
    Transceiver Unit - Remote side (xTU-R) threshold. This
    threshold crossing alert is optional.";
        }
    
        identity xtu-r-24hr-line-unavailable-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Unavailable Seconds (UAS) during the current
    24 hour interval has exceeded the configured xDSL Transceiver
    Unit - Remote side (xTU-R) threshold.";
        }
    
        identity xtu-r-24hr-line-leftr-seconds-tca {
          base vdsl-24hr-threshold-crossing-alert;
          description
            "The number of line Low Error-Free Throughput Rate (LEFTR)
    defect seconds during the current 24 hour interval has exceeded
    the configured xDSL Transceiver Unit - Remote side (xTU-R)
    threshold.";
        }
    
        // typedefs
        typedef sub-carrier-index {
          type uint16 {
            range "0..8191";
          }
          description
            "Identifies a sub-carrier.";
        }
    
        typedef vce-port-index {
          type union {
            type enumeration {
              enum "undefined" {
                value 0;
                description
                  "The value of the Vectoring Control Entity (VCE) port
    index is undefined.";
              }
            }
            type uint16 {
              range "1..65535";
            }
          }
          description
            "For the line in a vectored group, the Vectoring Control Entity
    (VCE) port index is the physical index that uniquely identifies
    the VCE port to which the line is connected. It is an integer
    from 1 to the maximum number of lines supported by the VCE.";
        }
    
        typedef line-identifier {
          type string {
            length "1..64";
          }
          description "Identifies a line.";
        }
    
        typedef performance-15min-history-interval {
          type uint8 {
            range "1..96";
          }
          description
            "Defines the range of 15 minute intervals and defines
    the position of the interval relative to the current interval
    where 1 is the most recent interval.";
        }
    
        typedef performance-24hr-history-interval {
          type uint8 {
            range "1..28";
          }
          description
            "Defines the range of 24 hour intervals and defines
    the position of the interval relative to the current interval
    where 1 is the most recent interval.";
        }
    
        typedef performance-15min-interval {
          type uint8 {
            range "0..96";
          }
          description
            "Defines the range of 15 minute intervals.";
        }
    
        typedef performance-24hr-interval {
          type uint8 {
            range "0..28";
          }
          description
            "Defines the range of 24 hour intervals.";
        }
    
        typedef xts-descriptor {
          type enumeration {
            enum "xts1" {
              value 0;
              description
                "Regional standards. The transmission system is recommended
    to be used for ATIS-0600413.";
            }
            enum "xts2" {
              value 1;
              description
                "Regional standards. The transmission system is recommended
    to be used for Annex C of ETSI TS 101 388.";
            }
            enum "xts3" {
              value 2;
              description
                "G.992.1 operation over POTS non-overlapped spectrum
    (Annex A of [ITU-T G.992.1]).";
            }
            enum "xts4" {
              value 3;
              description
                "G.992.1 operation over POTS overlapped spectrum
    (Annex A of [ITU-T G.992.1]).";
            }
            enum "xts5" {
              value 4;
              description
                "G.992.1 operation over ISDN non-overlapped spectrum
    (Annex B of [ITU-T G.992.1]).";
            }
            enum "xts6" {
              value 5;
              description
                "G.992.1 operation over ISDN overlapped spectrum
    (Annex B of [ITU-T G.992.1]).";
            }
            enum "xts7" {
              value 6;
              description
                "G.992.1 operation in conjunction with TCM ISDN
    non-overlapped spectrum (Annex C of [ITU T G.992.1]).";
            }
            enum "xts8" {
              value 7;
              description
                "G.992.1 operation in conjunction with TCM ISDN
    overlapped spectrum (Annex C of [ITU T G.992.1]).";
            }
            enum "xts9" {
              value 8;
              description
                "G.992.2 operation over POTS non-overlapped spectrum
    (Annex A of [ITU-T G.992.2]).";
            }
            enum "xts10" {
              value 9;
              description
                "G.992.2 operation over POTS overlapped spectrum
    (Annex B of [ITU-T G.992.2]).";
            }
            enum "xts11" {
              value 10;
              description
                "G.992.2 operation in conjunction with TCM ISDN
    non-overlapped spectrum (Annex C of [ITU T G.992.2]).";
            }
            enum "xts12" {
              value 11;
              description
                "G.992.2 operation in conjunction with TCM ISDN
    overlapped spectrum (Annex C of [ITU T G.992.2]).";
            }
            enum "xts19" {
              value 12;
              description
                "G.992.3 operation over POTS non-overlapped spectrum
    (Annex A of [ITU-T G.992.3]).";
            }
            enum "xts20" {
              value 13;
              description
                "G.992.3 operation over POTS overlapped spectrum
    (Annex A of [ITU-T G.992.3]).";
            }
            enum "xts21" {
              value 14;
              description
                "G.992.3 operation over ISDN non-overlapped spectrum
    (Annex B of [ITU-T G.992.3]).";
            }
            enum "xts22" {
              value 15;
              description
                "G.992.3 operation over ISDN overlapped spectrum
    (Annex B of [ITU-T G.992.3]).";
            }
            enum "xts23" {
              value 16;
              description
                "G.992.3 operation in conjunction with TCM ISDN
    non-overlapped spectrum (Annex C of [ITU T G.992.3]).";
            }
            enum "xts24" {
              value 17;
              description
                "G.992.3 operation in conjunction with TCM ISDN
    overlapped spectrum (Annex C of [ITU T G.992.3]).";
            }
            enum "xts25" {
              value 18;
              description
                "G.992.4 operation over POTS non-overlapped spectrum
    (Annex A of [ITU-T G.992.4]).";
            }
            enum "xts26" {
              value 19;
              description
                "G.992.4 operation over POTS overlapped spectrum
    (Annex A of [ITU-T G.992.4]).";
            }
            enum "xts29" {
              value 20;
              description
                "G.992.3 all digital mode operation with non-overlapped
    spectrum (Annex I of [ITU T G.992.3]).";
            }
            enum "xts30" {
              value 21;
              description
                "G.992.3 all digital mode operation with overlapped
    spectrum (Annex I of [ITU T G.992.3]).";
            }
            enum "xts31" {
              value 22;
              description
                "G.992.3 all digital mode operation with non-overlapped
    spectrum (Annex J of [ITU T G.992.3]).";
            }
            enum "xts32" {
              value 23;
              description
                "G.992.3 all digital mode operation with overlapped
    spectrum (Annex J of [ITU T G.992.3]).";
            }
            enum "xts33" {
              value 24;
              description
                "G.992.4 all digital mode operation with non-overlapped
    spectrum (Annex I of [ITU T G.992.4]).";
            }
            enum "xts34" {
              value 25;
              description
                "G.992.4 all digital mode operation with overlapped
    spectrum (Annex I of [ITU T G.992.4]).";
            }
            enum "xts35" {
              value 26;
              description
                "G.992.3 reach extended operation over POTS, Mode 1
    (non-overlapped, wide upstream)
    (Annex L of [ITU-T G.992.3]).";
            }
            enum "xts36" {
              value 27;
              description
                "G.992.3 reach extended operation over POTS, Mode 2
    (non-overlapped, narrow upstream)
    (Annex L of [ITU-T G.992.3]).";
            }
            enum "xts37" {
              value 28;
              description
                "G.992.3 reach extended operation over POTS, Mode 3
    (overlapped, wide upstream)
    (Annex L of [ITU-T G.992.3]).";
            }
            enum "xts38" {
              value 29;
              description
                "G.992.3 reach extended operation over POTS, Mode 4
    (overlapped, narrow upstream)
    (Annex L of [ITU-T G.992.3]).";
            }
            enum "xts39" {
              value 30;
              description
                "G.992.3 extended upstream operation over POTS
    non-overlapped spectrum (Annex M of [ITU-T G.992.3]).";
            }
            enum "xts40" {
              value 31;
              description
                "G.992.3 extended upstream operation over POTS
    overlapped spectrum (Annex M of [ITU T G.992.3]).";
            }
            enum "xts41" {
              value 32;
              description
                "G.992.5 operation over POTS non-overlapped spectrum
    (Annex A of [ITU-T G.992.5]).";
            }
            enum "xts42" {
              value 33;
              description
                "G.992.5 operation over POTS overlapped spectrum
    (Annex A of [ITU-T G.992.5]).";
            }
            enum "xts43" {
              value 34;
              description
                "G.992.5 operation over ISDN non-overlapped spectrum
    (Annex B of [ITU-T G.992.5]).";
            }
            enum "xts44" {
              value 35;
              description
                "G.992.5 operation over ISDN overlapped spectrum
    (Annex B of [ITU-T G.992.5]).";
            }
            enum "xts45" {
              value 36;
              description
                "G.992.5 operation in conjunction with TCM ISDN
    non-overlapped spectrum (Annex C of [ITU T G.992.5]).";
            }
            enum "xts46" {
              value 37;
              description
                "G.992.5 operation in conjunction with TCM ISDN
    overlapped spectrum (Annex C of [ITU T G.992.5]).";
            }
            enum "xts47" {
              value 38;
              description
                "G.992.5 all digital mode operation with non-overlapped
    spectrum (Annex I of [ITU T G.992.5]).";
            }
            enum "xts48" {
              value 39;
              description
                "G.992.5 all digital mode operation with overlapped
    spectrum (Annex I of [ITU T G.992.5]).";
            }
            enum "xts49" {
              value 40;
              description
                "G.992.5 all digital mode operation with non-overlapped
    spectrum (Annex J of [ITU T G.992.5]).";
            }
            enum "xts50" {
              value 41;
              description
                "G.992.5 all digital mode operation with overlapped
    spectrum (Annex J of [ITU T G.992.5]).";
            }
            enum "xts51" {
              value 42;
              description
                "G.992.5 extended upstream operation over POTS
    non-overlapped spectrum (Annex M of [ITU-T G.992.5]).";
            }
            enum "xts52" {
              value 43;
              description
                "G.992.5 extended upstream operation over POTS
    overlapped spectrum (Annex M of [ITU T G.992.5]).";
            }
            enum "xts57" {
              value 44;
              description
                "G.993.2 Region A (North America)
    (Annex A of [ITU-T G.993.2]).";
            }
            enum "xts58" {
              value 45;
              description
                "G.993.2 Region B (Europe)
    (Annex B of [ITU-T G.993.2]).";
            }
            enum "xts59" {
              value 46;
              description
                "G.993.2 Region C (Japan)
    (Annex C of [ITU-T G.993.2]).";
            }
            enum "xts60" {
              value 47;
              description
                "G.993.2 Region N (China)
    (Annex N of [ITU-T G.993.2]).";
            }
          }
          description
            "This defines the transmission system types to be
    allowed by the near-end xDSL Transceiver Unit (xTU) on this
    line.";
          reference
            "ITU-T G.997.1 clause 7.3.1.1.1 xTU transmission system
            enabling (XTSE)";
    
        }
    
        typedef us0mask-descriptor {
          type union {
            type enumeration {
              enum "all" {
                value 0;
                description
                  "Select all US0 masks.";
              }
            }
            type bits {
              bit o1b1 {
                position 0;
                description
                  "Octet 1 bit 1, EU-32.";
              }
              bit o1b2 {
                position 1;
                description
                  "Octet 1 bit 2, EU-36.";
              }
              bit o1b3 {
                position 2;
                description
                  "Octet 1 bit 3, EU-40.";
              }
              bit o1b4 {
                position 3;
                description
                  "Octet 1 bit 4, EU-44.";
              }
              bit o1b5 {
                position 4;
                description
                  "Octet 1 bit 5, EU-48.";
              }
              bit o1b6 {
                position 5;
                description
                  "Octet 1 bit 6, EU-52.";
              }
              bit o1b7 {
                position 6;
                description
                  "Octet 1 bit 7, EU-56.";
              }
              bit o1b8 {
                position 7;
                description
                  "Octet 1 bit 8, EU-60.";
              }
              bit o2b1 {
                position 8;
                description
                  "Octet 2 bit 1, EU-64.";
              }
              bit o2b2 {
                position 9;
                description
                  "Octet 2 bit 2, EU-128.";
              }
              bit o3b1 {
                position 16;
                description
                  "Octet 3 bit 1, ADLU-32.";
              }
              bit o3b2 {
                position 17;
                description
                  "Octet 3 bit 2, ADLU-36.";
              }
              bit o3b3 {
                position 18;
                description
                  "Octet 3 bit 3, ADLU-40.";
              }
              bit o3b4 {
                position 19;
                description
                  "Octet 3 bit 4, ADLU-44.";
              }
              bit o3b5 {
                position 20;
                description
                  "Octet 3 bit 5, ADLU-48.";
              }
              bit o3b6 {
                position 21;
                description
                  "Octet 3 bit 6, ADLU-52.";
              }
              bit o3b7 {
                position 22;
                description
                  "Octet 3 bit 7, ADLU-56.";
              }
              bit o3b8 {
                position 23;
                description
                  "Octet 3 bit 8, ADLU-60.";
              }
              bit o4b1 {
                position 24;
                description
                  "Octet 4 bit 1, ADLU-64.";
              }
              bit o4b2 {
                position 25;
                description
                  "Octet 4 bit 2, ADLU-128.";
              }
            }
          }
          description
            "Defines us0mask so it can be used for both configuration in
    line-spectrum-profile and status in line-xtu-status.
    This contains the US0 PSD masks for the near-end xDSL
    Transceiver Unit (xTU) on the line. This parameter is only
    defined for Annex A of [ITU-T G.993.2]. It is represented as a
    bitmap (0 or false if not allowed, and 1 or true if allowed)
    with the definitions of Table 7-8 of [ITU-T G.997.1].";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.18 VDSL2 US0 PSD masks
            (US0MASK)";
    
        }
    
        typedef limitmask-descriptor {
          type bits {
            bit o1b1 {
              position 0;
              description
                "Octet 1, bit 1; Profile class 8.";
            }
            bit o1b2 {
              position 1;
              description
                "Octet 1, bit 2; Profile class 8.";
            }
            bit o1b3 {
              position 2;
              description
                "Octet 1, bit 3; Profile class 8.";
            }
            bit o1b4 {
              position 3;
              description
                "Octet 1, bit 4; Profile class 8.";
            }
            bit o2b1 {
              position 8;
              description
                "Octet 2, bit 1; Profile class 8.";
            }
            bit o2b2 {
              position 9;
              description
                "Octet 2, bit 2; Profile class 8.";
            }
            bit o3b1 {
              position 16;
              description
                "Octet 3, bit 1; Profile class 12.";
            }
            bit o3b2 {
              position 17;
              description
                "Octet 3, bit 2; Profile class 12.";
            }
            bit o3b3 {
              position 18;
              description
                "Octet 3, bit 3; Profile class 12.";
            }
            bit o3b4 {
              position 19;
              description
                "Octet 3, bit 4; Profile class 12.";
            }
            bit o4b1 {
              position 24;
              description
                "Octet 4, bit 1; Profile class 12.";
            }
            bit o4b2 {
              position 25;
              description
                "Octet 4, bit 2; Profile class 12.";
            }
            bit o5b1 {
              position 32;
              description
                "Octet 5, bit 1; Profile class 17.";
            }
            bit o5b2 {
              position 33;
              description
                "Octet 5, bit 2; Profile class 17.";
            }
            bit o5b3 {
              position 34;
              description
                "Octet 5, bit 3; Profile class 17.";
            }
            bit o5b4 {
              position 35;
              description
                "Octet 5, bit 4; Profile class 17.";
            }
            bit o6b1 {
              position 40;
              description
                "Octet 6, bit 1; Profile class 17.";
            }
            bit o6b2 {
              position 41;
              description
                "Octet 6, bit 2; Profile class 17.";
            }
            bit o7b1 {
              position 48;
              description
                "Octet 7, bit 1; Profile class 30.";
            }
            bit o7b2 {
              position 49;
              description
                "Octet 7, bit 2; Profile class 30.";
            }
            bit o7b3 {
              position 50;
              description
                "Octet 7, bit 3; Profile class 30.";
            }
            bit o8b1 {
              position 56;
              description
                "Octet 8, bit 1; Profile class 30.";
            }
            bit o8b2 {
              position 57;
              description
                "Octet 8, bit 2; Profile class 30.";
            }
            bit o9b1 {
              position 64;
              description
                "Octet 9, bit 1; Profile class 35.";
            }
            bit o9b2 {
              position 65;
              description
                "Octet 9, bit 2; Profile class 35.";
            }
            bit o9b3 {
              position 66;
              description
                "Octet 9, bit 3; Profile class 35.";
            }
          }
          description
            "This contains the G.993.2 limit Power Spectral Density (PSD)
    masks of the selected PSD mask class, enabled by the near-end
    xDSL Transceiver Unit (xTU) on this line for each class of
    profiles.
    
    See Table 7-7 of ITU-T G.997.1 for the definition of each
    bit.";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.16 VDSL2 limit PSD masks
            and band plans enabling (LIMITMASK)";
    
        }
    
        typedef classmask-descriptor {
          type enumeration {
            enum "none" {
              value 0;
              description
                "No class mask selected.";
            }
            enum "class1" {
              value 1;
              description
                "Classmask 1 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class2" {
              value 2;
              description
                "Classmask 2 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class3" {
              value 3;
              description
                "Classmask 3 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class5" {
              value 4;
              description
                "Classmask 5 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class6" {
              value 5;
              description
                "Classmask 6 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class8" {
              value 6;
              description
                "Classmask 8 of Table 7-7 of ITU-T G.997.1.";
            }
            enum "class9" {
              value 7;
              description
                "Classmask 9 of Table 7-7 of ITU-T G.997.1.";
            }
          }
          description
            "One CLASSMASK parameter is defined per the G.993.2 Annex
    enabled in the xDSL Transmission System Enabling (XTSE). It
    selects a single Power Spectral Density (PSD) mask class
    per the G.993.2 Annex that is activated at the VDSL
    Transceiver Unit - central Office (VTU-O). The coding is as
    indicated in Table 7-6 of [ITU-T G.997.1].";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.15 VDSL2 PSD mask class
            selection (CLASSMASK)";
    
        }
    
        typedef profiles {
          type bits {
            bit profile-8a {
              position 1;
              description "G.993.2 profile 8a.";
            }
            bit profile-8b {
              position 2;
              description "G.993.2 profile 8b.";
            }
            bit profile-8c {
              position 3;
              description "G.993.2 profile 8c.";
            }
            bit profile-8d {
              position 4;
              description "G.993.2 profile 8d.";
            }
            bit profile-12a {
              position 5;
              description "G.993.2 profile 12a.";
            }
            bit profile-12b {
              position 6;
              description "G.993.2 profile 12b.";
            }
            bit profile-17a {
              position 7;
              description "G.993.2 profile 17a.";
            }
            bit profile-30a {
              position 8;
              description "G.993.2 profile 30a.";
            }
            bit profile-35b {
              position 9;
              description "G.993.2 profile 35b.";
            }
          }
          description "VDSL2 profiles.";
          reference
            "ITU-T G.993.2.";
    
        }
    
        typedef band {
          type enumeration {
            enum "upstream" {
              value 0;
              description
                "Transmission from the xDSL Transceiver Unit - Remote side
    (xTU-R) to the xDSL Transceiver Unit - Central office
    (xTU-C) (refers to the single upstream band for
    ADSL/ADSL2/ADSL2plus or to all upstream traffic for
    VDSL2).";
            }
            enum "downstream" {
              value 1;
              description
                "Transmission from the xDSL Transceiver Unit - Central
    office (xTU-R) to the xDSL Transceiver Unit - Remote side
    (xTU-C) (refers to the single downstream band for
    ADSL/ADSL2/ADSL2plus or to all downstream traffic for
    VDSL2).";
            }
            enum "us0" {
              value 2;
              description "Upstream band 0.";
            }
            enum "us1" {
              value 3;
              description "Upstream band 1.";
            }
            enum "us2" {
              value 4;
              description "Upstream band 2.";
            }
            enum "us3" {
              value 5;
              description "Upstream band 3.";
            }
            enum "us4" {
              value 6;
              description "Upstream band 4.";
            }
            enum "ds1" {
              value 7;
              description "Downstream band 1.";
            }
            enum "ds2" {
              value 8;
              description "Downstream band 2.";
            }
            enum "ds3" {
              value 9;
              description "Downstream band 3.";
            }
            enum "ds4" {
              value 10;
              description "Downstream band 4.";
            }
          }
          description
            "Represents the available upstream and downstream bands.";
        }
    
        typedef downstream-data-rate-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:service/bbf-vdsl:downstream-data-rate-profile/bbf-vdsl:name";
          }
          description
            "Downstream Data Rate Profile identifier.";
        }
    
        typedef upstream-data-rate-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:service/bbf-vdsl:upstream-data-rate-profile/bbf-vdsl:name";
          }
          description
            "Upstream Data Rate Profile identifier.";
        }
    
        typedef line-spectrum-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:spectrum/bbf-vdsl:line-spectrum-profile/bbf-vdsl:name";
          }
          description
            "Line Spectrum Profile identifier.";
        }
    
        typedef mode-specific-psd-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:spectrum/bbf-vdsl:mode-specific-psd-profile/bbf-vdsl:name";
          }
          description
            "Mode Specific Power Spectral Density (PSD) Profile
    identifier.";
        }
    
        typedef upstream-power-back-off-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:spectrum/bbf-vdsl:upstream-power-back-off-profile/bbf-vdsl:name";
          }
          description
            "Upstream Power Back-Off (UPBO) Profile identifier.";
        }
    
        typedef downstream-power-back-off-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:spectrum/bbf-vdsl:downstream-power-back-off-profile/bbf-vdsl:name";
          }
          description
            "Downstream Power Back-Off (DPBO) Profile identifier.";
        }
    
        typedef radio-frequency-interference-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:spectrum/bbf-vdsl:radio-frequency-interference-profile/bbf-vdsl:name";
          }
          description
            "Radio Frequency Interference (RFI) Profile identifier.";
        }
    
        typedef noise-margin-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:noise-margin-profile/bbf-vdsl:name";
          }
          description
            "Noise Margin Profile identifier.";
        }
    
        typedef impulse-noise-protection-delay-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:impulse-noise-protection-delay-profile/bbf-vdsl:name";
          }
          description
            "Inpulse Noise Protection (INP) Delay Profile identifier.";
        }
    
        typedef time-stamp-or-undefined {
          type union {
            type enumeration {
              enum "undefined" {
                value 0;
                description
                  "The value of the time stamp is undefined or unknown.";
              }
            }
            type yang:date-and-time;
          }
          description
            "The date/time associated with a particular time stamp. The
    special value, 'undefined', is used when the event represented
    by the time stamp has not yet occurred.";
        }
    
        typedef line-threshold-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:thresholds/bbf-vdsl:line-threshold-profile/bbf-vdsl:name";
          }
          description
            "xDSL Transceiver Unit (xTU) Line Threshold Profile name.";
        }
    
        typedef channel-threshold-profile-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:thresholds/bbf-vdsl:channel-threshold-profile/bbf-vdsl:name";
          }
          description
            "xDSL Transceiver Unit (xTU) Channel Threshold Profile name.";
        }
    
        typedef per-sub-carrier-group-uint8 {
          type binary {
            length "0..512";
          }
          description
            "A binary type where each octet represents data belonging to
    a sub-carrier group. The first octet represents sub-carrier
    group 0 and the last represents sub-carrier group 511.";
        }
    
        typedef per-sub-carrier-group-uint16 {
          type binary {
            length "0..1024";
          }
          description
            "A binary type where each pair of octets represents data
    belonging to a sub-carrier group. The first two octets
    represents sub-carrier group 0 and the last two represents
    sub-carrier group 511. In each pair of octets, the most
    significant byte is loaded first.";
        }
    
        typedef per-sub-carrier-group-int16-tuple {
          type binary {
            length "0..2048";
          }
          description
            "A binary type where a tuple of octet pairs represent data
    belonging to a sub-carrier group. The first tuple
    represents sub-carrier group 0 and the last tuple represents
    sub-carrier group 511. In each pair of octets in the tuple, the
    most significant byte is loaded first. The order of the tuple
    is determined by the node to which this type is associated.";
        }
    
        typedef per-sub-carrier-group-uint16-tuple {
          type binary {
            length "0..192";
          }
          description
            "A binary type where a tuple of octet pairs represent data
    belonging to a sub-carrier group. The first tuple
    represents sub-carrier group 0 and the last tuple represents
    sub-carrier group 511. In each pair of octets in the tuple, the
    most significant byte is loaded first. The order of the tuple
    is determined by the node to which this type is associated.";
        }
    
        typedef per-sub-carrier-nibble {
          type binary {
            length "4096";
          }
          description
            "A binary type where each nibble represents data belonging to
    a sub-carrier. The first nibble represents sub-carrier 0 and
    the last represents sub-carrier 8191.";
        }
    
        typedef per-sub-carrier-uint16 {
          type binary {
            length "16384";
          }
          description
            "A binary type where each pair of octets represents data
    belonging to a sub-carrier. The first two octets represent
    sub-carrier 0 and the last two represent sub-carrier 8191.
    In each pair of octets, the most significant byte is loaded
    first.";
        }
    
        typedef sub-carrier-group-size {
          type uint8 {
            range "1 | 2 | 4 | 8 | 16";
          }
          description
            "This parameter is the number of subcarriers per group.
    The valid values are 1, 2, 4, 8 and 16. For ADSL, this
    parameter is equal to 1 and, for VDSL2, it is equal to the size
    of a subcarrier group used to compute these parameters.";
          reference
            "ITU-T G.993.2 clause 11.4.1";
    
        }
    
        typedef loop-diagnostics-result {
          type enumeration {
            enum
              "no-loop-diagnostics-results-available" {
              value 0;
              description
                "No measurement results are available when no Loop
    Diagnostics mode procedures has been performed yet or
    after Loop Diagnostics mode results have been
    deleted.";
            }
            enum
              "loop-diagnostics-failed-results-invalid" {
              value 1;
              description
                "Loop Diagnostics mode results are invalid after the
    most recent Loop Diagnostics mode procedures failed.";
            }
            enum
              "loop-diagnostics-succeeded-results-valid" {
              value 2;
              description
                "Loop Diagnostics mode results are valid after the
    most recent Loop Diagnostics mode procedures
    succeeded.";
            }
          }
          description
            "The overall results of the Loop Diagnostics mode.";
          reference
            "ITU-T G.997.1 Clause 7.5.1.45 (LDR)";
    
        }
    
        typedef line-config-vector-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:vectors/bbf-vdsl:line-config-vector/bbf-vdsl:name";
          }
          description
            "xDSL Line Configuration Vector identifier.";
        }
    
        typedef threshold-template-ref {
          type leafref {
            path "/bbf-vdsl:vdsl/bbf-vdsl:thresholds/bbf-vdsl:threshold-template/bbf-vdsl:name";
          }
          description
            "xDSL Line Threshold Template name.";
        }
    
        // groupings
        grouping psdmask-descriptor {
          description
            "This grouping is used to define a Power Spectral Density (PSD)
    mask.";
          list psdmask {
            must "count(../psdmask) != 1" {
              description
                "The Power Spectral Density (PSD) mask list must either be
    empty or have at least 2 elements.";
            }
            key "sub-carrier";
            description
              "This list defines a Power Spectral Density (PSD) level per
    sub-carrier. The default is an empty list indicating no PSD
    mask.";
            leaf sub-carrier {
              type sub-carrier-index;
              description
                "The sub-carrier index.";
            }
    
            leaf psd-level {
              type uint8 {
                range "0..190";
              }
              units "-0.5 dBm/Hz";
              mandatory true;
              description
                "Power Spectral Density (PSD) level. Valid values: 0..190
    (0 to -95 dBm/Hz).";
            }
          }  // list psdmask
        }  // grouping psdmask-descriptor
    
        grouping test-mode {
          description
            "The object contains parameters that invoke test modes and
    update test parameters.";
          container test-mode {
            description
              "Update test parameters.";
            leaf power-management-state-forced {
              type enumeration {
                enum "0" {
                  value 0;
                  description
                    "Force the line to transition from the L3 idle state
    to the L0 full-on state (i.e., both xTUs are in
    showtime). This transition requires the (short or
    full) initialization procedures. After reaching the
    L0 state, the line may transition into or exit from
    the L2 low power state (if L2 state is defined and
    enabled). If the L0 state is not reached (after a
    vendor discretionary number of retries and/or within
    a vendor discretionary timeout), then an
    Initialization failure occurs. Whenever the line is
    in the L3 state, attempts will be made to transition
    to the L0 state until it is forced into another state
    through this configuration parameter.";
                }
                enum "2" {
                  value 1;
                  description
                    "Force the line to transition from L0 full on to L2
    low power state. This transition requires the entry
    into L2 mode. This is an out-of-service test value
    for triggering the L2 mode and is valid only for
    Recommendations supporting L2 mode.
    This parameter value is only applicable for operation
    according to G.992.3, G.992.4 or G.992.5. If not
    applicable, this value is ignored until its use is
    defined.";
                }
                enum "3" {
                  value 2;
                  description
                    "Force the line to transition from the L0 full-on or
    L2 low power state to the L3 idle state. This
    transition requires the (orderly) shutdown procedure.
    After reaching the L3 state, the line will remain in
    the L3 idle state until it is forced into another
    state through this configuration parameter.";
                }
                enum "4" {
                  value 3;
                  description
                    "No power management state forced.";
                }
              }
              default "4";
              description
                "This configuration parameter defines the line states to
    be forced by the near-end xDSL Transceiver Unit (xTU) on
    this line. The default is enum 4, no power management state
    forced.";
              reference
                "ITU-T G.997.1 7.3.1.1.3 Power management state forced
                (PMSF)";
    
            }
    
            leaf loop-diagnostics-mode-forced {
              type enumeration {
                enum "0" {
                  value 0;
                  description
                    "Inhibits the near-end xDSL Transceiver Unit (xTU) from
    performing loop diagnostic mode procedures on the line.
    Loop diagnostic mode procedures may still be initiated
    by the far-end xTU.";
                }
                enum "1" {
                  value 1;
                  description
                    "Forces the near-end xDSL Transceiver Unit (xTU) to
    perform the loop diagnostic procedures.";
                }
                enum "2" {
                  value 2;
                  description
                    "No loop diagnostic mode forced.";
                }
              }
              default "2";
              description
                "This configuration parameter defines whether the line
    should be forced into the loop diagnostic mode by the
    near-end xDSL Transceiver Unit (xTU) on this line. The
    default is no loop diagnostic mode forced, corresponding to
    enum 2.
    
    Upon completion of the loop diagnostics mode procedures,
    the xTUs return to the IDLE state. The loop diagnostic mode
    data are available at least until the loop diagnostics mode
    is no longer forced (i.e., until a value different from
    enum 1 is configured). When the loop diagnostics mode is no
    longer forced, the xTUs resume normal operation.
    
    A configuration change to enum '0' or enum '2' (i.e., to
    loop diagnostics mode no longer forced) is required before
    forcing the line again into loop diagnostics mode.";
              reference
                "ITU-T G.997.1 clause 7.3.1.1.8 Loop diagnostic mode
                forced (LDSF)";
    
            }
    
            leaf auto-mode-cold-start-forced {
              type uint8 {
                range "0..1";
              }
              description
                "This parameter is defined in order to improve testing of
    the performance of xTUs supporting automode when it is
    enabled in the Management Information Base (MIB). The valid
    values are 0 and 1. A change in value of this parameter i
    ndicates a change in loop conditions applied to the devices
    under test. The xTUs will reset any historical information
    used for automode, for shortening G.994.1 handshake, or for
    shortening the initialization procedure.
    The default is no automode cold start forced.";
              reference
                "ITU-T G.997.1 clause 7.3.1.1.10 Automode cold start
                forced";
    
            }
          }  // container test-mode
        }  // grouping test-mode
    
        grouping update-test {
          description
            "This is defined so that test parameters can be forced to
    be updated.";
          container xtu-c {
            description
              "The update-test-ne is performed on the xDSL Transceiver
    Unit - Central office (xTU-C).";
            leaf update-test-ne {
              type uint8 {
                range "0..1";
              }
              default "0";
              status deprecated;
              description
                "This parameter is defined to force an update of the
    near-end test parameters that can be updated during
    showtime. The parameter is configurable over the
    Q-interface and the valid values are 0 and 1. When this
    parameter is set (its value is changed from 0 to 1), the
    near-end test parameters will be updated in the Access Node
    (AN) Management Information Base (MIB) within 10 seconds.
    The update request flag for the near-end test parameters is
    defined in the AN MIB and is independent of any autonomous
    update process in the system. The parameter will be reset
    (its value changed back to 0) by the AN after a period
    shorter than 3 minutes to allow reception of another update
    request. The 3-minute period starts since the last time the
    flag was set (externally or by an autonomous process in the
    system). This applies only to the elements maintained in
    the AN.
    
    A configuration change back to 0 is required before
    initiating another update.";
              reference
                "ITU-T G.997.1 clause 7.5.1.36.1 Update request flag for
                near-end test parameters (UPDATE-TEST-NE)";
    
            }
    
            action update-near-end-test {
              description
                "Forces an update of the test parameters that can be
    updated during showtime.";
              reference
                "ITU-T G.997.1 clause 7.5.1.36.1 Update request flag for
                near-end test parameters (UPDATE-TEST-NE)";
    
            }  // rpc update-near-end-test
    
            leaf xlin-disturber-vce-port-index-ds {
              type vce-port-index;
              default "undefined";
              description
                "The requested XLIN downstream disturber Vectoring Control
    Entity (VCE) port index.";
            }
    
            leaf xlin-disturber-vce-port-index-us {
              type vce-port-index;
              default "undefined";
              description
                "The requested XLIN upstream disturber Vectoring Control
    Entity (VCE) port index.";
            }
          }  // container xtu-c
    
          container xtu-r {
            description
              "The update-test-fe is performed on the xDSL Transceiver
    Unit - Remote site (xTU-R).";
            leaf update-test-fe {
              type uint8 {
                range "0..1";
              }
              default "0";
              status deprecated;
              description
                "This parameter is defined to force an update of the
    far-end test parameters that can be updated during
    showtime. The parameter is configurable over the
    Q-interface and the valid values are 0 and 1. When this
    parameter is set (its value is changed from 0 to 1), the
    far-end test parameters will be updated in the Access Node
    (AN) Management Information Base (MIB) within 30 seconds.
    The update request flag for the far-end test parameters is
    defined in the AN MIB and is independent of any autonomous
    update process in the system. The parameter will be reset
    (its value changed back to 0) by the AN after a period
    shorter than 3 minutes to allow reception of another update
    request. The 3-minute period starts since the last time the
    flag was set (externally or by an autonomous process in the
    system). This applies only to the elements maintained in
    the AN.
    
    A configuration change back to 0 is required before
    initiating another update.";
              reference
                "ITU-T G.997.1 clause 7.5.1.36.2 Update request flag for
                far-end test parameters (UPDATE-TEST-FE)";
    
            }
    
            action update-far-end-test {
              description
                "Forces an update of the test parameters that can be
    updated during showtime.";
              reference
                "ITU-T G.997.1 clause 7.5.1.36.2 Update request flag for
                far-end test parameters (UPDATE-TEST-FE)";
    
            }  // rpc update-far-end-test
          }  // container xtu-r
        }  // grouping update-test
    
        grouping inventory {
          description
            "An xDSL Transceiver Unit (xTU) object represents an xDSL
    transceiver at either end of the xDSL Line. This has two
    instantiations: an xDSL Transceiver Unit - Central office
    (xTU-C), and an xDSL Transceiver Unit - Remote side (xTU-R).";
          leaf g.994.1-vendor-id {
            type binary {
              length "8";
            }
            description
              "The xDSL Transceiver Unit - Central office (xTU-C) G.994.1
    vendor ID is the vendor ID as inserted by the xTU-C in the
    G.994.1 CL message. It consists of 8 binary octets, including
    a country code followed by a (regionally allocated) provider
    code, as defined in [ITU-T T.35]:
     - T.35 country code (2 octets)
     - T.35 provider code (vendor identification) (4 octets)
     - T.35 provider oriented code (vendor revision number) (2
       octets)
    The G.994.1 vendor ID should typically identify the vendor of
    the xTU-C G.994.1 functionality, whether implemented in
    hardware or software. It is not intended to indicate the
    system integrator. Further details are defined in
    [ITU-T G.994.1].";
            reference
              "ITU-T G.997.1 clause 7.4.1 xTU-C G.994.1 vendor ID, and
              clause 7.4.2 xTU-R G.994.1 vendor ID";
    
          }
    
          leaf system-vendor-id {
            type binary {
              length "8";
            }
            description
              "The xDSL Transceiver Unit system vendor ID is the vendor ID
    as inserted by the xDSL Transceiver Unit - Central office
    (xTU-C) in the overhead messages or by the by the xDSL
    Transceiver Unit - Remote side (xTU-R) in the embedded
    operations channel. It consists of 8 binary octets, with same
    format as the xTU-C G.994.1 vendor ID
    (xtu-g.994.1-vendor-id).";
            reference
              "ITU-T G.997.1 clause 7.4.3 xTU-C system vendor ID, and
              clause 7.4.4 xTU-R system vendor ID";
    
          }
    
          leaf version-number {
            type binary {
              length "0..16";
            }
            description
              "The xDSL Transceiver Unit version number is the version
    number as inserted by the xDSL Transceiver Unit - Central
    office (xTU-C) in the overhead messages, or by the xDSL
    Transceiver Unit - Remote side (xTU-R) in the embedded
    operations channel. It is for version control and is vendor
    specific information. For the XTU-C, this consists of up to
    16 binary octets. For the XTU-R, this consists of up to 16
    ASCII characters. It contains the xTU-R firmware version and
    the xTU-R model. Both are encoded in this order and
    separated by a space character, i.e., <xTU-R firmware
    version> <xTU-R model>.";
            reference
              "ITU-T G.997.1 clause 7.4.5 xTU-C version number, and
              clause 7.4.6 xTU-R version number";
    
          }
    
          leaf serial-number {
            type binary {
              length "0..32";
            }
            description
              "The xDSL Transceiver Unit serial number is the serial number
    as inserted by the xDSL Transceiver Unit - Central office
    (xTU-C) in the overhead messages, or by the xDSL Transceiver
    Unit - Remote side (xTU-R) in the embedded operations
    channel. It is vendor specific information. For the XTU-C,
    this consists of up to 32 ASCII characters. For this XTU-R,
    this contains the equipment serial number, the equipment
    model and the equipment firmware version. All are encoded in
    this order and separated by space characters, i.e.,
    <equipment serial number> <equipment model> <equipment
    firmware version>.";
            reference
              "ITU-T G.997.1 clause 7.4.7 xTU-C serial number, and
              clause 7.4.8 xTU-R serial number";
    
          }
    
          leaf self-test-result {
            type uint32;
            description
              "This parameter defines the xDSL Transceiver Unit self-test
    result. It is coded as a 32-bit integer. The most significant
    octet of the self-test result is 00hex if the self-test
    passed and 01hex if the self-test failed. The interpretation
    of the other octets is vendor discretionary and can be
    interpreted in combination with G.994.1 and system vendor
    IDs.";
            reference
              "ITU-T G.997.1 clause 7.4.9 xTU-C self-test result, and
              clause 7.4.8 xTU-R serial number";
    
          }
    
          leaf-list transmission-system-capabilities {
            type xts-descriptor;
            description
              "This parameter defines the xDSL Transceiver Unit capability
    list of the different transmission system types. It is coded
    in a bit-map representation with the bits defined in the
    reference. This parameter may be derived from the handshaking
    procedures defined in [ITU-T G.994.1].";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.1, clause 7.4.11 xTU-C
              transmission system capabilities, and clause 7.4.12
              xTU-R transmission system capabilities";
    
          }
    
          leaf vdsl2-lr-support {
            if-feature vdsl2-lr;
            type boolean;
            description
              "This parameter indicates the support of VDSL2 Long Reach
    (VDSL2-LR) mode. The parameter is set to 'false' if VDSL2-LR
    mode is not supported and set to 'true' if VDSL2-LR mode is
    supported.";
            reference
              "ITU-T G.997.1 clause 7.4.14 VDSL2-LR support
              (VDSL2-LR_SUPPORT_O/R)";
    
          }
    
          leaf strongfext-support {
            if-feature strongfext;
            type boolean;
            description
              "This parameter indicates the support of operation
    according to [ITU-T G.993.5] Annex A.
    The parameter is set to 'false' if Strong Far-End Crosstalk
    (STRONGFEXT) mode is not supported and set to 'true' if
    STRONGFEXT mode is supported.";
            reference
              "ITU-T G.997.1 clause 7.4.15 STRONGFEXT mode support
              (STRONGFEXT_MODE_SUPPORT_O/R)";
    
          }
        }  // grouping inventory
    
        grouping vce {
          description
            "Parameters for Vectoring Control Entity (VCE) identity.";
          leaf vce-id {
            type union {
              type uint8 {
                range "1..255";
              }
              type enumeration {
                enum "not-in-vectored-group" {
                  value 0;
                  description
                    "Indicates that the line is not in a vectored group.";
                }
              }
            }
            description
              "For the line in a vectored group, the Vectoring Control
    Entity (VCE) ID uniquely identifies the VCE that manages and
    controls the vectored group to which the line belongs. It
    consists of one octet and valid ranges are from 1 to 255. A
    special value (enum not-in-vectored-group) means the line is
    not in a vectored group.";
            reference
              "ITU-T G.997.1 clause 7.4.13.1 VCE ID (VCE_ID)";
    
          }
    
          leaf vce-port-index {
            type uint16;
            description
              "For the line in a vectored group, the Vectoring Control
    Entity (VCE) port index is the physical index that uniquely
    identifies the VCE port to which the line is connected. It is
    an integer from 1 to the maximum number of lines supported by
    the VCE. The value 0 indicates the line is not in a vectored
    group.";
            reference
              "ITU-T G.997.1 clause 7.4.13.2 VCE port index
              (VCE_port_index)";
    
          }
        }  // grouping vce
    
        grouping data-rate-profile {
          description
            "Data rate profile for upstream and downstream.";
          leaf minimum-net-data-rate {
            type bbf-yang:data-rate32;
            must ". <= ../maximum-net-data-rate" {
              description
                "The minimum net data rate must be less than or equal the
    maximum net data rate.";
            }
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the minimum net data
    rate for the bearer channel as desired by the operator
    of the system. The rate is coded in steps of 1,000
    bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.1 Minimum data rate";
    
          }
    
          leaf maximum-net-data-rate {
            type bbf-yang:data-rate32;
            default "4294967295";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the maximum net data
    rate for the bearer channel as desired by the operator
    of the system. The data rate is coded in steps of 1,000
    bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.3 Maximum data rate";
    
          }
    
          leaf minimum-data-rate-in-low-power-state {
            type bbf-yang:data-rate32;
            default "0";
            description
              "This parameter specifies the minimum net data rate for
    the bearer channel as desired by the operator of the
    system during the low power state (L1/L2). The power
    management low power states L1 and L2 are defined in
    [ITU-T G.992.2] and [ITU-T G.992.3], respectively. The
    data rate is coded in steps of 1,000 bit/s.
    This parameter is only applicable to the downstream
    direction in case of operation according to G.992.2,
    G.992.3, G.992.4 or G.992.5. If not applicable, its value
    is ignored until its use is defined.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.5 Minimum data rate in low
              power state";
    
          }
    
          leaf maximum-bit-error-ratio {
            type enumeration {
              enum "1e-3" {
                value 0;
                description
                  "Bit error ratio 1e-3.";
              }
              enum "1e-5" {
                value 1;
                description
                  "Bit error ratio 1e-5.";
              }
              enum "1e-7" {
                value 2;
                description
                  "Bit error ratio 1e-7.";
              }
            }
            default "1e-7";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the maximum bit
    error ratio for the bearer channel as desired by the
    operator of the system. The bit error ratio can take the
    values 10^-3, 10^-5 or 10^-7. The default is 1e-7.";
            reference
              "ITU-T G.997.1 clause 7.3.2.6 Maximum bit error ratio";
    
          }
    
          leaf data-rate-threshold-upshift {
            type bbf-yang:data-rate32;
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter is a threshold on the net data
    rate upshift achieved over one or more bearer channel
    data rate adaptations. An upshift rate change alarm
    (event) is triggered when the actual data rate exceeds
    the data rate at the last entry into showtime by more
    than the threshold. The data rate threshold is coded in
    1000 bits/s. The default of 0 corresponds to no event on a
    threshold crossing.";
            reference
              "ITU-T G.997.1 clause 7.3.2.8.1 Data rate threshold
              upshift";
    
          }
    
          leaf data-rate-threshold-downshift {
            type bbf-yang:data-rate32;
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter is a threshold on the net data
    rate downshift achieved over one or more bearer channel
    data rate adaptations. A downshift rate change alarm
    (event) is triggered when the actual data rate is below
    the data rate at the last entry into showtime by more
    than the threshold. The data rate threshold is coded in
    1000 bits/s. The default of 0 corresponds to no event on a
    threshold crossing.";
            reference
              "ITU-T G.997.1 clause 7.3.2.8.2 Data rate threshold
              downshift";
    
          }
    
          leaf minimum-sos-data-rate {
            type bbf-yang:data-rate32;
            default "0";
            description
              "This parameter specifies the minimum net data rate for
    the bearer channel required for a valid Save Our Showtime
    (SOS) request in the direction of the bearer channel. The
    value will be coded as an unsigned integer representing the
    data rate is coded in steps of 1000 bits/s. ";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.6 Minimum SOS Data rate
              (MIN-SOS-DR)";
    
          }
    
          leaf minimum-expected-throughput-rtx {
            type bbf-yang:data-rate32;
            must
              ". <= ../maximum-expected-throughput-rtx" {
              description
                "The minimum expected throughput must be less than or equal
    to the maximum expected throughput for retransmission.";
            }
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum expected throughput
    for the bearer channel (as specified in clause 11.1.1 of
    [ITU-T G.998.4]). The rate is coded in steps of 1,000
    bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.8 Minimum expected
              throughput for retransmission (MINETR_RTX)";
    
          }
    
          leaf maximum-expected-throughput-rtx {
            type bbf-yang:data-rate32;
            must
              ". <= ../maximum-net-data-rate-rtx" {
              description
                "The maximum expected throughput must be less than or equal
    to the maximum net data rate for retransmission.";
            }
            default "4294967295";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the maximum expected throughput
    for the bearer channel (as specified in clause 11.1.2 of
    [ITU-T G.998.4]). The rate is coded in steps of 1,000
    bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.9 Maximum expected
              throughput for retransmission (MAXETR_RTX)";
    
          }
    
          leaf maximum-net-data-rate-rtx {
            type bbf-yang:data-rate32;
            default "4294967295";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the maximum net data rate for
    the bearer channel (as specified in clause 11.1.3 of
    [ITU-T G.998.4]). The rate is coded in steps of 1,000
    bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.1.10 Maximum net data rate
              for retransmission (MAXNDR_RTX)";
    
          }
    
          leaf target-net-data-rate {
            type bbf-yang:data-rate32;
            default "4294967295";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the target net data
    rate as defined in [ITU-T G.993.5] of the bearer
    channel. The target expected throughput is coded in
    steps of 1,000 bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.19.1 Target net data rate
              (TARGET_NDR) ";
    
          }
    
          leaf target-expected-throughput {
            type bbf-yang:data-rate32;
            default "4294967295";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the target expected throughput
    as defined in [ITU-T G.993.5] for the bearer channel.
    The target expected throughput is coded in steps of
    1,000 bit/s.";
            reference
              "ITU-T G.997.1 clause 7.3.2.19.2 Target expected
              throughput for retransmission (TARGET_ETR)";
    
          }
    
          leaf leftr-defect-threshold {
            if-feature data-rate-profile-leftr;
            type union {
              type uint8 {
                range "0..99";
              }
              type enumeration {
                enum "etr-default-threshold" {
                  value 0;
                  description
                    "Indicates that the Expected Throughput Rate (ETR) shall
    be used as the default threshold for declaring a Low
    Error-Free Throughput Rate (leftr) defect.";
                }
              }
            }
            units "0.01";
            default "etr-default-threshold";
            description
              "If retransmission is used in a given transmit direction,
    LEFTR_THRESH specifies the threshold for declaring a
    leftr defect (see clause 11.1.12 of ITU-T G.998.4)
    for the definition of this threshold).
    The value is coded as a fraction of the NDR with valid
    range from 0.00 to 0.99 in increments of 0.01.
    The value 0.00 implies no leftr-defects are declared.
    A special value of (enum etr-default-threshold) means the
    Expected Throughput Rate (ETR) shall be used as the default
    threshold for declaring a Low Error-Free Throughput Rate
    (leftr) defect.";
            reference
              "ITU-T G.997.1 clause 7.3.1.12.";
    
          }
        }  // grouping data-rate-profile
    
        grouping mode-specific-psd-profile {
          description
            "These configuration parameters depend on a transmission mode.
    Each transmission mode enabled in a Line Spectrum Profile is
    covered by one and only one of the Mode Specific Power Spectral
    Density (PSD) Profiles contained in that Line Spectrum
    Profile.";
          leaf ts {
            type xts-descriptor;
            mandatory true;
            description
              "This indicates the transmission system type this mode
    specific profile is used with.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.1 xTU transmission system
              enabling (XTSE)";
    
          }
    
          leaf maximum-nominal-psd-ds {
            type int16 {
              range "-600..-300";
            }
            units "0.1 dBm/Hz";
            default "-400";
            description
              "This parameter represents the maximum nominal transmit
    Power Spectral Density (PSD) in the downstream direction
    during initialization and showtime (in dBm/Hz). A single
    MAXNOMPSDds parameter is defined per mode enabled in the
    xDSL Transmission System Enabling (XTSE) line configuration
    parameter. It ranges from -60 to -30 dBm/Hz, with 0.1 dB
    steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.1 Downstream maximum
              nominal power spectral density (MAXNOMPSDds)";
    
          }
    
          leaf maximum-nominal-psd-us {
            type int16 {
              range "-600..-300";
            }
            units "0.1 dBm/Hz";
            default "-380";
            description
              "This parameter represents the maximum nominal transmit
    PSD in the upstream direction during initialization and
    showtime (in dBm/Hz). A single MAXNOMPSDus parameter is
    defined per mode enabled in the xDSL Transmission System
    Enabling (XTSE) line configuration parameter. It ranges from
    -60 to -30 dBm/Hz, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.2 Upstream maximum nominal
              power spectral density (MAXNOMPSDus)";
    
          }
    
          leaf maximum-aggregate-transmit-power-ds {
            type uint8 {
              range "0..255";
            }
            units "0.1 dBm";
            default "255";
            description
              "This parameter represents the maximum nominal aggregate
    transmit power in the downstream direction during
    initialization and showtime (in dBm). It ranges from 0
    to 25.5 dBm, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.3 Downstream maximum
              nominal aggregate transmit power (MAXNOMATPds)";
    
          }
    
          leaf maximum-aggregate-transmit-power-us {
            type uint8 {
              range "0..255";
            }
            units "0.1 dBm";
            default "255";
            description
              "This parameter represents the maximum nominal aggregate
    transmit power in the upstream direction during
    initialization and showtime (in dBm). It ranges from 0
    to 25.5 dBm, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.4 Upstream maximum nominal
              aggregate transmit power (MAXNOMATPus)";
    
          }
    
          leaf maximum-aggregate-receive-power-us {
            type union {
              type int16 {
                range "-255..255";
              }
              type enumeration {
                enum "unbounded" {
                  value 0;
                  description
                    "Indicates that that no upstream maximum aggregate
    receive power limit is to be applied
    (i.e., the maximum value is unbounded).";
                }
              }
            }
            units "0.1 dBm";
            default "unbounded";
            description
              "This parameter represents the maximum upstream aggregate
    receive power over a set of subcarriers (in dBm) as
    specified in the relevant Recommendation. The xTU-C will
    request an upstream power cutback such that the upstream
    aggregate receive power over that set of subcarriers is
    at or below the configured maximum value. It ranges from
    -25.5 to 25.5 dBm, with 0.1 dB steps. A special value of
    (enum unbounded) is used to indicate that no upstream
    maximum aggregate receive power limit is to be applied
    (i.e., the maximum value is unbounded).";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.5 Upstream maximum
              aggregate receive power (MAXRXPWRus)";
    
          }
    
          container psd-mask-ds {
            description
              "This configuration parameter defines the downstream PSD
    mask applicable at the U-C2 reference point as defined
    in the respective Recommendation. A modified PSD mask,
    as defined in clause 7.3.1.2.13, may apply at the U-C2
    reference point. This Management Information Base (MIB)
    Power Spectral Density (PSD) mask may impose PSD
    restrictions in addition to the Limit PSD mask defined
    in the relevant Recommendations [ITU-T G.992.5] and
    [ITU-T G.993.2].
    NOTE - In [ITU-T G.993.2], the PSDMASKds parameter is
    referred to as MIBMASKds.
    The downstream PSD mask in the CO-MIB will be specified
    through a set of breakpoints. Each breakpoint will
    consist of a subcarrier index t, with a subcarrier
    spacing of 4.3125 kHz, and a MIB PSD mask level
    (expressed in dBm/Hz) at that subcarrier. The set of
    breakpoints can then be represented as [(t1, PSD1), (t2,
    PSD2), , (tN, PSDN)]. The subcarrier index will be coded
    as an unsigned integer. The MIB PSD mask level will be
    coded as an unsigned integer representing the MIB PSD
    mask levels 0 dBm/Hz to -127.5 dBm/Hz, in steps of 0.5
    dBm/Hz, with valid range from 0 to -95 dBm/Hz. The
    maximum number of breakpoints is 32 for [ITU-T G.992.5] and
    [ITU-T G.993.2].
    The default is an empty list indicating no PSD mask.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.9 Downstream PSD Mask
              (PSDMASKds)";
    
            uses psdmask-descriptor {
              refine 
            }
          }  // container psd-mask-ds
    
          leaf upstream_psd_mask_selection {
            type uint8 {
              range "1..9";
            }
            default "9";
            description
              "This configuration parameter defines which upstream Power
    Spectral Density (PSD) mask is enabled. This parameter is
    used only for Annexes J and M of [ITU-T G.992.3] and [ITU-T
    G.992.5]. As only one selection parameter is defined in the
    MIB, the same selection value applies to all relevant modes
    enabled in the xDSL Transmission System Enabling (XTSE) line
    configuration parameter. It ranges from 1 to 9 and selects
    the mask with the definitions of Table 7-5 of [ITU-T
    G.997.1].";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.11 Upstream PSD mask
              selection";
    
          }
    
          container psd-mask-us {
            description
              "This configuration parameter defines the upstream Power
    Spectral Density (PSD) mask applicable at the U-R2 reference
    point as defined in the respective Recommendation. This
    Management Information Base (MIB) PSD mask may impose PSD
    restrictions in addition to the Limit PSD mask defined in the
    relevant Recommendations [ITU-T G.992.3 Annex J and M],
    [ITU-T G.992.5 Annex J and M], and [ITU-T G.993.2].
    NOTE - In [ITU-T G.993.2], the PSDMASKus parameter is
    referred to as MIBMASKus and does not include
    breakpoints to shape US0.
    The upstream PSD mask in the CO-MIB will be specified
    through a set of breakpoints. Each breakpoint will
    consist of a subcarrier index t, with a subcarrier
    spacing of 4.3125 kHz, and a MIB PSD mask level
    (expressed in dBm/Hz) at that subcarrier. The set of
    breakpoints can then be represented as [(t1, PSD1), (t2,
    PSD2), , (tN, PSDN)]. The subcarrier index will be coded
    as an unsigned integer. The MIB PSD mask level will be
    coded as an unsigned integer representing the MIB PSD
    mask levels 0 dBm/Hz to -127.5 dBm/Hz, in steps of 0.5
    dBm/Hz, with valid range from 0 to -95 dBm/Hz. The
    maximum number of breakpoints is 4 for [ITU-T G.992.3 Annex J
    and M] and [ITU-T G.992.5 Annex J and M], and 16 for [ITU-T
    G.993.2].
    The default is an empty list indicating no PSD mask.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.12 Upstream PSD mask
              (PSDMASKus)";
    
            uses psdmask-descriptor {
              refine 
            }
          }  // container psd-mask-us
    
          leaf limitmask {
            type limitmask-descriptor;
            must
              "(../ts!='xts57' and ../ts!='xts58' and ../ts!='xts59'
     and ../ts!='xts60' and .='') or .!=''" {
              description
                "If the transmission system is VDSL, then the limitmask
    must be populated.";
            }
            default "";
            description
              "This configuration parameter contains the G.993.2 limit
    Power Spectral Density (PSD) masks of the selected PSD mask
    class, enabled by the near-end xTU on this line for each
    class of profiles.
    One LIMITMASK parameter is defined per the G.993.2 Annex
    enabled in the xDSL Transmission System Enabling (XTSE).
    For each profile class, several limit PSD masks of the
    selected PSD mask class (CLASSMASK) may be enabled. The
    enabling parameter is coded in a bit-map representation
    (0 if the associated mask is not allowed, 1 if it is
    allowed). The profiles are grouped into profile classes.
    The default is an empty bit list, corresponding to no VDSL2
    limit masks enabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.16 VDSL2 limit PSD masks
              and band plans enabling (LIMITMASK)";
    
          }
    
          leaf us0disable {
            type limitmask-descriptor;
            default "";
            description
              "This configuration parameter indicates if the use of US0
    is disabled for each limit Power Spectral Density (PSD) mask
    enabled in the LIMITMASK parameter. One US0DISABLE parameter
    is defined per the G.993.2 Annex enabled in the xDSL
    Transmission System Enabling (XTSE).
    For each limit PSD mask enabled in the LIMITMASK
    parameter, a bit will indicate if US0 is disabled. The
    disabling parameter is coded as a bit-map. The bit is
    set to 1 if US0 is disabled for the associated limit
    mask. The bit-map has the same structure as the
    LIMITMASK parameter.
    The default is an empty bit list, corresponding to VDSL2 US0
    enabled for each limit PSD mask enabled in the LIMITMASK
    parameter.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.17 VDSL2 US0 disabling
              (US0DISABLE).";
    
          }
    
          leaf classmask {
            type classmask-descriptor;
            must
              "(../ts!='xts57' and ../ts!='xts58' and ../ts!='xts59')
     or (../ts='xts57' and ((.='class1') or (.='class2')))
     or (../ts='xts58' and ((.='class1') or (.='class2')
     or (.='class3') or (.='class5') or (.='class6')
     or (.='class8') or (.='class9')))
     or (../ts='xts59' and ((.='class1') or (.='class2')))
     or (../ts='xts60' and (.='class1'))" {
              description
                "If the transmission system is VDSL, he classmask must
    align with Table 7-6 in ITU-T G.997.1.";
            }
            default "none";
            description
              "The parameter configures CLASSMASK. The default is 'none',
    corresponding to no VDSL2 classmask selected.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.15 VDSL2 PSD mask class
              selection (CLASSMASK).";
    
          }
    
          leaf vdsl2-lr-enable {
            if-feature vdsl2-lr;
            type bits {
              bit short {
                position 0;
                description
                  "VDSL2 Long Reach (VDSL2-LR) short loop operation type is
    allowed.";
              }
              bit medium {
                position 1;
                description
                  "VDSL2 Long Reach (VDSL2-LR) medium loop operation type is
    allowed.";
              }
              bit long {
                position 2;
                description
                  "VDSL2 Long Reach (VDSL2-LR) long loop operation type is
    allowed.";
              }
            }
            must
              ".='' or (../ts='xts58' and
    ((../classmask='class3') or (../classmask='class5') or
    (../classmask='class6') or (../classmask='class8') or
    (../classmask='class9')))" {
              description
                "VDSL2 Long Reach (VDSL2-LR) mode may be enabled only for
    operation according to G.993.2 Annex B with specific
    classmasks.";
            }
            default "";
            description
              "This configuration parameter contains the ITU-T G.993.2
    VDSL2 Long Reach (VDSL2-LR) operation types to be allowed by
    the near-end xTU on this line.
    It is coded as a list of operation types.
    The default is an empty bit list, corresponding to the
    VDSL2-LR mode being disabled on this line.";
            reference
              "ITU-T G.997.1 clause 7.3.1.16.1 VDSL2-LR enable";
    
          }
        }  // grouping mode-specific-psd-profile
    
        grouping sub-carrier-range {
          description
            "Defines a sub-carrier band, i.e., a set of contigious
    sub-carriers.";
          leaf start-index {
            type sub-carrier-index;
            must ". <= ../stop-index" {
              description
                "The start index must be less than or equal to the stop
    index.";
            }
            description
              "The sub-carrier index identifying the start of a range of
    sub-carriers (inclusive).";
          }
    
          leaf stop-index {
            type sub-carrier-index;
            must ". >= ../start-index" {
              description
                "The stop index must be greater than or equal to the
    start index.";
            }
            mandatory true;
            description
              "The sub-carrier index identifying the stop of a range of
    sub-carriers (inclusive).";
          }
        }  // grouping sub-carrier-range
    
        grouping line-spectrum-profile {
          description
            "The Line Spectrum Profile contains the parameters that are
    mainly set during the service delivery phase.";
          leaf power-management-mode {
            type union {
              type enumeration {
                enum "all" {
                  value 0;
                  description
                    "All power management modes enabled.";
                }
              }
              type bits {
                bit bit0 {
                  position 0;
                  description
                    "L3 state (idle state).";
                }
                bit bit1 {
                  position 1;
                  description
                    "L1/L2 state (low power state).";
                }
              }
            }
            default "all";
            description
              "This configuration parameter defines the line states the
    xDSL Transceiver Unit - Central office (xTU-C) or xDSL
    Transceiver Unit - Remote side (xTU-R) may autonomously
    transition to on this line. The default is 'all',
    corresponding to all power management states allowed.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.4 Power management state
              enabling (PMMode).";
    
          }
    
          leaf l0-minimum-time {
            type uint8 {
              range "0..255";
            }
            units "seconds";
            default "127";
            description
              "This parameter represents the minimum time (in seconds)
    between an exit from the L2 state and the next entry
    into the L2 state. It ranges from 0 to 255 seconds.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.5 Minimum L0 time interval
              between L2 exit and next L2 entry (L0-TIME)";
    
          }
    
          leaf l2-minimum-time {
            type uint8 {
              range "0..255";
            }
            units "seconds";
            default "127";
            description
              "This parameter represents the minimum time (in seconds)
    between an entry into the L2 state and the first power
    trim in the L2 state and between two consecutive power
    trims in the L2 state. It ranges from 0 to 255
    seconds.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.6 Minimum L2 time interval
              between L2 entry and first L2 trim (L2-TIME)";
    
          }
    
          leaf l2-maximum-aggregate-power-reduction-per {
            type uint8 {
              range "0..31";
            }
            units "1 dB";
            must
              ". <= ../l2-maximum-aggregate-power-reduction-total" {
              description
                "The maximum aggregate transmit power reduction per L2
    request or power trim must be less than or equal to the
    maximum aggregate transmit power reduction that can be
    performed in an L2 state.";
            }
            default "1";
            description
              "This parameter represents the maximum aggregate transmit
    power reduction (in dB) that can be performed in the L2
    request (i.e., at transition of L0 to L2 state) or
    through a single power trim in the L2 state. It ranges
    from 0 dB to 31 dB in steps of 1 dB.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.7 Maximum aggregate
              transmit power reduction per L2 request or L2 power trim
              (L2-ATPR)";
    
          }
    
          leaf l2-maximum-aggregate-power-reduction-total {
            type uint8 {
              range "0..31";
            }
            units "1 dB";
            default "10";
            description
              "This parameter represents the total maximum aggregate
    transmit power reduction (in dB) that can be performed
    in an L2 state. This is the sum of all reductions of L2
    Request (i.e., at transition of L0 to L2 state) and
    power trims. It ranges from 0 dB to 31 dB in steps of 1
    dB.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.9 Total maximum aggregate
              transmit power reduction in L2 (L2-ATPRT)";
    
          }
    
          leaf-list carmaskds {
            type uint16 {
              range "0..511";
            }
            description
              "This configuration parameter is a list of sub-carriers which
    are masked on this line in the downstream direction ranging
    from 0 to the highest supported sub-carrier index-1.
    For [ITU-T G.992.3], [ITU-T G.992.4], and [ITU-T G.992.5],
    the highest sub-carrier index is defined in the
    corresponding Recommendations.
    For [ITU-T G.992.1], the highest sub-carrier index = 256 and
    for [ITU-T G.992.2], the highest sub-carrier index = 128.
    If no elements exist, there are no masked sub-carriers.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.6 Downstream subcarrier
              masking (CARMASKds)";
    
          }
    
          leaf-list carmaskus {
            type uint16 {
              range "0..63";
            }
            description
              "This configuration parameter is a list of sub-carriers which
    are masked on this line in the upstream direction ranging
    from 0 to the highest supported sub-carrier index-1.
    For [ITU-T G.992.3], [ITU-T G.992.4], and [ITU-T G.992.5],
    the highest sub-carrier index is defined in the
    corresponding Recommendations.
    For Annex A of [ITU-T G.992.1] and [ITU-T G.992.2],
    the highest sub-carrier index = 32 and
    for Annex B of [ITU-T G.992.1], the highest sub-carrier
    index = 64. If no elements exist, there are no masked
    sub-carriers.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.7 Upstream subcarrier
              masking (CARMASKus)";
    
          }
    
          list vdsl2-carmask {
            key "start-index";
            max-elements 16;
            description
              "This configuration parameter defines the restrictions,
    additional to the band plan, to determine the set of
    subcarriers allowed for transmission in both upstream
    and downstream directions.
    
    The VDSL2-CARMASK will describe the not masked
    subcarriers as one or more frequency bands. Each band is
    represented by start and stop subcarrier indices with a
    subcarrier spacing of 4.3125 kHz. The valid range of
    subcarrier indices specifying the VDSL2-CARMASK is from
    to at least the index of the highest allowed
    subcarrier in both transmission directions among all
    profiles enabled by the parameter PROFILES (see clause
    7.3.1.1.11 of ITU-T G.997.1).
    
    Up to 16 bands may be specified. Other subcarriers will be
    masked.
    
    For profiles using 8.625 kHz tone spacing, the odd
    subcarrier indices i4.3125 in VDSL2-CARMASK will be
    transformed into actual subcarrier indices i8.625 using
    the following rule:
      - for the start frequency of each band:
          i8.625 = (i4.3125 + 1)/2
      - for the stop frequency of each band:
          i8.625 = (i4.3125 - 1)/2.
    
    The default is an empty list indicating no masked
    sub-carriers.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.8 VDSL2 subcarrier masking
              (VDSL2-CARMASK)";
    
            uses sub-carrier-range;
          }  // list vdsl2-carmask
    
          leaf msgminds {
            type uint8 {
              range "4..248";
            }
            units "1000 bit/s";
            default "16";
            description
              "This parameter defines the minimum rate of the message
    based overhead that will be maintained by the xDSL
    Transceiver Unit (xTU) in the downstream direction
    (MSGMINds). MSGMINds is expressed in bits per second and
    ranges from 4,000 to 248,000 bit/s with 1,000 bit/s steps.
    Valid values are specified in the relevant ITU-T
    Recommendation, e.g., [ITU-T G.992.3] and [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.3.1.5.2 Minimum overhead rate
              downstream (MSGMINds)";
    
          }
    
          leaf msgminus {
            type uint8 {
              range "4..248";
            }
            units "1000 bit/s";
            default "16";
            description
              "This parameter defines the minimum rate of the message
    based overhead that will be maintained by the xDSL
    Transceiver Unit (xTU) in the upstream direction (MSGMINus).
    MSGMINus is expressed in bits per second and ranges from
    4,000 to 248,000 bit/s with 1,000 bit/s steps. Valid values
    are specified in the relevant ITU-T Recommendation, e.g.,
    [ITU-T G.992.3] and [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.3.1.5.1 Minimum overhead rate
              upstream (MSGMINus)";
    
          }
    
          leaf profiles {
            type union {
              type enumeration {
                enum "all" {
                  value 0;
                  description
                    "Used to indicate that all profiles are allowed.";
                }
              }
              type profiles;
            }
            default "all";
            description
              "This configuration parameter contains the ITU-T G.993.2
    profiles to be allowed by the near-end xDSL Transceiver Unit
    (xTU) on this line. It is coded as a list of profiles or the
    special value 'all'. The default is 'all', corresponding to
    all profiles allowed.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.11 VDSL2 profiles enabling
              (PROFILES)";
    
          }
    
          leaf us0mask {
            type us0mask-descriptor;
            default "all";
            description
              "This parameter contains the US0 Power Spectral Density (PSD)
    masks to be allowed by the near-end xDSL Transceiver Unit
    (xTU) on the line. The default is 'all', corresponding to all
    US0 PSD masks allowed.
    
    This parameter only applies to [ITU-T G.993.2 Annex A].";
          }
    
          leaf cyclic-extension-flag {
            type boolean;
            default "false";
            description
              "This parameter is a bit that enables the use of the
    optional cyclic extension values. If the value is set to
    true, the optional cyclic extension values may be
    used. Otherwise, the cyclic extension will be forced to
    the mandatory length (5N/32).";
            reference
              "ITU-T G.997.1 clause 7.3.1.6.1 Optional cyclic extension
              flag (CEFLAG)";
    
          }
    
          leaf rtx-mode-ds {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "RTX_FORBIDDEN: ITU-T G.998.4 retransmission not
    allowed.";
              }
              enum "1" {
                value 1;
                description
                  "RTX_PREFERRED: ITU-T G.998.4 retransmission is
    preferred by the operator (i.e., if ITU-T G.998.4
    Retransmission (RTX) capability is supported by both
    xTUs, the xTUs will select ITU-T G.998.4 operation for
    this direction).";
              }
              enum "2" {
                value 2;
                description
                  "RTX_FORCED: Force the use of the ITU-T G.998.4
    retransmission (RTX) (i.e., if ITU-T G.998.4 RTX
    capability in this direction is not supported by
    both xTUs or not selected by the xTUs, an
    initialization failure will result).";
              }
              enum "3" {
                value 3;
                description
                  "RTX_TESTMODE: Force the use of the ITU-T G.998.4
    retransmission (RTX) in test mode (i.e., if ITU-T G.998.4
    RTX capability is not supported by both XTUs or not
    selected by the XTUs, an initialization failure will
    result).";
              }
            }
            default "1";
            description
              "This parameter controls the mode of operation of [ITU-T
    G.998.4] retransmission in the downstream direction. In
    [ITU-T G.992.3] and [ITU-T G.992.5] only the downstream
    parameter RTX_MODE_ds is relevant, the value in the
    upstream direction will be ignored. In [ITU-T G.993.2],
    both parameters are relevant. This parameter has 4 valid
    values. The default value is enum 1, corresponding to
    RTX_PREFERRED.";
            reference
              "ITU-T G.997.1 clause 7.3.1.11 Retransmission mode
              (RTX_MODE_ds)";
    
          }
    
          leaf rtx-mode-us {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "RTX_FORBIDDEN: ITU-T G.998.4 retransmission not
    allowed.";
              }
              enum "1" {
                value 1;
                description
                  "RTX_PREFERRED: ITU-T G.998.4 retransmission (RTX) is
    preferred by the operator (i.e., if ITU-T G.998.4
    RTX capability is supported by both xTUs, the xTUs
    will select ITU-T G.998.4 operation for this
    direction).";
              }
              enum "2" {
                value 2;
                description
                  "RTX_FORCED: Force the use of the ITU-T G.998.4
    retransmission (RTX) (i.e., if ITU-T G.998.4 RTX
    capability in this direction is not supported by
    both xTUs or not selected by the xTUs, an
    initialization failure will result).";
              }
              enum "3" {
                value 3;
                description
                  "RTX_TESTMODE: Force the use of the ITU-T G.998.4
    retransmission (RTX) in test mode (i.e., if ITU-T G.998.4
    RTX capability is not supported by both xTUs or not
    selected by the xTUs, an initialization failure will
    result).";
              }
            }
            default "1";
            description
              "This parameter controls the mode of operation of [ITU-T
    G.998.4] retransmission in the upstream direction. In
    [ITU-T G.992.3] and [ITU-T G.992.5] only the downstream
    parameter RTX_MODE_ds is relevant, the value in the
    upstream direction will be ignored. In [ITU-T G.993.2],
    both parameters are relevant. This parameter has 4 valid
    values. The default value is enum 1, corresponding to
    RTX_PREFERRED.
    NOTE - Due to the optionality of ITU-T G.998.4 retransmission
    in upstream direction, the use of RTX_FORCED in upstream may
    lead to initialization failure, even if the xDSL Transceiver
    Unit (xTU) is supporting ITU-T G.998.4 (in downstream).";
            reference
              "ITU-T G.997.1 clause 7.3.1.11 Retransmission mode
              (RTX_MODE_us)";
    
          }
        }  // grouping line-spectrum-profile
    
        grouping upstream-power-back-off-profile {
          description
            "This configures Upstream Power Back-Off (UPBO).";
          leaf upbo-electrical-length {
            type uint16 {
              range "0..1280";
            }
            units "0.1 dB";
            default "0";
            description
              "This parameter defines the electrical length expressed
    in dB at 1 MHz, kl0, configured by the Central Office
    Management Information Base (CO-MIB). The value
    ranges from 0 to 128 dB in steps of 0.1 dB.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.2) Upstream electrical
              length (UPBOKL)";
    
          }
    
          leaf upbo-force-electrical-length {
            type boolean;
            default "false";
            description
              "This parameter is a flag that forces the VTU-R to use
    the electrical length of the Central Office
    Management Information Base (CO-MIB) (UPBOKL) to compute
    the Upstream Power Back-Off (UPBO). The value will be forced
    if the flag is set to true. Otherwise, if false the xDSL
    Transceiver Units (xTU) will determine the electrical
    length.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.3) Force CO-MIB
              electrical length (UPBOKLF)";
    
          }
    
          list upbopsd-pb {
            key "band";
            description
              "This parameter defines the Upstream Power Back-Off (UPBO)
    reference Power Spectral Density (PSD) used to
    compute the upstream power back-off for each upstream
    band except US0. A UPBOPSD defined for each band will
    consist of two parameters [a, b]. Parameter a ranges
    from 40 dBm/Hz to 80.95 dBm/Hz in steps of 0.01 dBm/Hz;
    and parameter b ranges from 0 to 40.95 dBm/Hz in steps
    of 0.01 dBm/Hz. The UPBO reference PSD at the frequency
    f expressed in MHz will be equal to a bvf. The set of
    parameter values a = 40 dBm/Hz, b = 0 dBm/Hz is a
    special configuration to disable UPBO in the respective
    upstream band.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.1) Upstream Power
              Back-Off reference Power Spectral Density per band
              (UPBOPSD-pb).";
    
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the upstream band, e.g., a value of 1
    denotes US1.";
            }
    
            leaf upbopsd-a {
              type uint16 {
                range "4000..8095";
              }
              units "0.01 dBm/Hz";
              default "4000";
              description
                "Upstream Power Back-Off (UPBO) parameter A.";
            }
    
            leaf upbopsd-b {
              type uint16 {
                range "0..4095";
              }
              units "0.01 dBm/Hz";
              default "0";
              description
                "Upstream Power Back-Off (UPBO) parameter B.";
            }
          }  // list upbopsd-pb
    
          list upbo-reference-electrical-length-pb {
            key "band";
            description
              "This parameter defines the Upstream Power Back-Off (UPBO)
    reference electrical length used to compute the upstream
    power back-off for each upstream band except US0, for the
    optional Equalized Far-End Crosstalk (FEXT) UPBO method. The
    value ranges from 1.8 to 63.5 dB in steps of 0.1 dB. The use
    of the special value (enum equalized-fext-upbo-disabled)
    is described in clause 7.2.1.3.2 of [ITU-T G.993.2] for
    kl0_REF=0.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.4) PBO reference
              electrical length per band (UPBOKLREF-pb)";
    
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the upstream band, e.g., a value of 1
    denotes US1.";
            }
    
            leaf upbo-reference-electrical-length {
              type union {
                type uint16 {
                  range "18..635";
                }
                type enumeration {
                  enum
                    "equalized-fext-upbo-disabled" {
                    value 0;
                    description
                      "Indicates that equalized Far-End Crosstalk (FEXT)
    Upstream Power Back-Off (UPBO) is disabled.";
                  }
                }
              }
              units "0.1 dB";
              default
                "equalized-fext-upbo-disabled";
              description
                "The Upstream Power Back-Off (UPBO) reference electrical
    length.";
            }
          }  // list upbo-reference-electrical-length-pb
    
          leaf aele-mode {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "kl0[band] = ELE-M0 VTU-O kl0 estimate.";
              }
              enum "1" {
                value 1;
                description
                  "kl0[band] = ELEDS [dB], with band in the set
    {upbo_bands}.";
              }
              enum "2" {
                value 2;
                description
                  "kl0[band] = ELE[band] [dB], with band in the set
    {upbo_bands}.";
              }
              enum "3" {
                value 3;
                description
                  "kl0[band] = MIN(ELEUS, ELEDS) [dB], with band in the
    set {upbo_bands}.";
              }
            }
            default "0";
            description
              "This parameter defines the Upstream Power Back-Off (UPBO)
    electrical length estimation mode to be used in the
    alternative electrical length estimation method (ELE-M1) in
    clause 7.2.1.3.2.2 of [ITU-T G.993.2]. The value of this
    parameter is 0, 1, 2 or 3. The default is enum 0, kl0[band] =
    ELE-M0 VTU-O kl0 estimate.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.5) Alternative
              Electrical Length Estimation Mode (AELE-MODE)";
    
          }
    
          leaf upbo-elmt {
            type uint8 {
              range "0..15";
            }
            units "1 percent";
            default "0";
            description
              "This parameter defines the Upstream Power Back-Off (UPBO)
    electrical length minimum threshold percentile in percent
    used in the alternative electrical length estimation method
    (ELE-M1) in clause 7.2.1.3.2.2 of [ITU-T G.993.2]. It is set
    by network management via the Central Office
    Management Information Base (CO-MIB). The parameter ranges
    from 0 to 15 percent in steps of 1 percent. This value
    is communicated to the VDSL Transceiver Unit - Remote side
    (VTU-R) in accordance with [ITU-T G.994.1] at start-up.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.14 a.6) UPBO electrical
              length threshold percentile (UPBOELMT)";
    
          }
        }  // grouping upstream-power-back-off-profile
    
        grouping downstream-power-back-off-profile {
          description
            "This configures Downstream Power Back-Off (DPBO),
    generally for static spectral compatibility of VDSL
    with ADSL, ADSL2, or ADSL2plus.";
          container dpboepsd {
            description
              "Assumed exchange Power Spectral Density (PSD) mask
    (DPBOEPSD). This parameter defines the PSD mask that is
    assumed to be permitted at the exchange. This parameter will
    use the same format as PSDMASKds. The maximum number of
    breakpoints for DPBOEPSD is 16.
    The default is an empty list indicating no Downstream Power
    Back-Off (DPBO).";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.1) Assumed exchange
              PSD mask (DPBOEPSD)";
    
            uses psdmask-descriptor {
              refine 
            }
          }  // container dpboepsd
    
          leaf dpboesel {
            type uint16 {
              range "0..511";
            }
            units "0.5 dB";
            default "0";
            description
              "E-side electrical length (DPBOESEL). This configuration
    parameter defines the assumed electrical length of
    cables (E-side cables) connecting exchange based DSL
    services to a remote flexibility point (cabinet), that
    hosts the xTU-C that is subject to spectrally shaped
    downstream power back-off depending on this length. For
    this parameter the electrical length is defined as the
    loss (in dB) of an equivalent length of hypothetical
    cable at a reference frequency defined by the network
    operator or in spectrum management regulations. DPBOESEL
    will be coded as an unsigned integer representing an
    electrical length from 0 dB to 255.5 dB in steps of 0.5
    dB. All values in the range are valid.
    If DPBOESEL is set to zero, the Downstream Power Back-Off
    (DPBO) in this clause will be disabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.2) E-side electrical
              length (DPBOESEL)";
    
          }
    
          container dpboescm {
            description
              "E-side cable model (DPBOESCM). This configuration
    parameter defines a cable model in terms of three
    scalars DPBOESCMA, DPBOESCMB and DPBOESCMC that will be
    used to describe the frequency dependent loss of E-side
    cables.
    where ESCM is expressed in dB and f is expressed in MHz.
    Parameters DPBOESCMA, DPBOESCMB, DPBOESCMC will be coded
    as unsigned integers representing a scalar value from -1
    to 1.5 in steps of 2^-8. = 1/256.
    dpboescma, dpboescmb, and dpboescmc are defined with an
    offset of -1.0 in units of 1/256, so DPBOESCMA =
    dpboescma/256 - 1.0, DPBOESCMB = dpboescmb/256 - 1.0,
    and DPBOESCMC = dpboescmc/256 - 1.0.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.3) E-side cable model
              (DPBOESCM)";
    
            leaf dpboescma {
              type uint16 {
                range "0..640";
              }
              units "(1/256)";
              default "0";
              description
                "DPBOESCMA = dpboescma/256 - 1.0.";
            }
    
            leaf dpboescmb {
              type uint16 {
                range "0..640";
              }
              units "(1/256)";
              default "0";
              description
                "DPBOESCMB = dpboescmb/256 - 1.0.";
            }
    
            leaf dpboescmc {
              type uint16 {
                range "0..640";
              }
              units "(1/256)";
              default "0";
              description
                "DPBOESCMC = dpboescmc/256 - 1.0.";
            }
          }  // container dpboescm
    
          leaf dpbomus {
            type uint8 {
              range "0..255";
            }
            units "-0.5 dBm/Hz";
            default "0";
            description
              "Minimum usable signal (DPBOMUS). DPBOMUS defines the
    assumed minimum usable receive PSD mask (in dBm/Hz) for
    exchange based services, used to modify parameter
    DPBOFMAX defined below. It will be coded as an unsigned
    integer representing a Power Spectral Density (PSD) mask
    level from 0 dBm/Hz to -127.5 dBm/Hz in steps of 0.5 dB.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.4) Minimum usable
              signal (DPBOMUS)";
    
          }
    
          leaf dpbofmin {
            type uint16 {
              range "0..2048";
            }
            units "4.3125 kHz";
            default "0";
            description
              "Downstream Power Back-Off (DPBO) span minimum frequency
    (DPBOFMIN). DPBOFMIN defines the minimum frequency from which
    the DPBO will be applied. It ranges from 0 kHz to 8832 kHz in
    steps of 4.3125 kHz.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.5) DPBO span minimum
              frequency (DPBOFMIN)";
    
          }
    
          leaf dpbofmax {
            type uint16 {
              range "32..8191";
            }
            units "4.3125 kHz";
            must ". >= ../dpbofmin" {
              description
                "The Downstream Power Back-Off (DPBO) span maximum frequency
    must be greater than or equal to the DPBO span minimum
    frequency.";
            }
            default "8191";
            description
              "Downstream Power Back-Off (DPBO) span maximum frequency
    (DPBOFMAX). DPBOFMAX defines the maximum frequency at which
    DPBO may be applied. It ranges from 138 kHz to 35323.6875 kHz
    in steps of 4.3125 kHz.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.13 a.6) DPBO span maximum
              frequency (DPBOFMAX)";
    
          }
        }  // grouping downstream-power-back-off-profile
    
        grouping radio-frequency-interference-profile {
          description
            "Radio Frequency Interference (RFI) notches are necessary when
    radio services may be disturbed during operation, or to protect
    DSL Lines from RFI.";
          list rfibands {
            key "start-index";
            max-elements 16;
            description
              "For [ITU-T G.992.5], this configuration parameter
    defines the subset of downstream Power Spectral Density (PSD)
    mask breakpoints, as specified in PSDMASK, that will be used
    to notch an Radio Frequency Interference (RFI) band. This
    subset consists of couples of consecutive subcarrier indices
    belonging to breakpoints: [ti; ti + 1], corresponding to the
    low level of the notch. The specific interpolation around
    these points is defined in the relevant Recommendations
    (e.g., [ITU-T G.992.5]).
    The CO-MIB will define the RFI notches using breakpoints
    in PSDMASKds as specified in the relevant
    Recommendations (e.g., [ITU-T G.992.5]).
    For [ITU-T G.993.2], this configuration parameter
    defines the bands where the PSD will be reduced as
    specified in clause 7.2.1.2 of [ITU-T G.993.2]. Each
    band will be represented by a start and stop subcarrier
    indices with a subcarrier spacing of 4.3125 kHz. Up to
    16 bands may be specified. This parameter defines the
    RFI bands for both upstream and downstream directions.
    The default is an empty list indicating no RFI bands.";
            reference
              "ITU-T G.997.1 clause 7.3.1.2.10 RFI bands (RFIBANDS)";
    
            uses sub-carrier-range;
          }  // list rfibands
        }  // grouping radio-frequency-interference-profile
    
        grouping noise-margin-profile {
          description
            "Noise margins are important for line robustness and can be
    configured independently from other spectrum related
    parameters to reduce the amount of combinations.";
          leaf minimum-noise-margin {
            type uint16 {
              range "0..310";
            }
            units "0.1 dB";
            must ". <= ../target-noise-margin" {
              description
                "The minimum noise margin must be less than or equal to
    the target noise margin.";
            }
            default "0";
            description
              "This is the minimum noise margin the receiver will
    tolerate. If the noise margin falls below this level,
    the receiver requests the transmitter to increase the
    transmit power. If an increase to transmit power is not
    possible, a loss-of-margin (LOM) defect occurs, the
    receiver will fail and attempt to re-initialize and the
    NMS will be notified. The minimum noise margin ranges
    from 0 to 31 dB, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.3.5 Downstream minimum noise
              margin (MINSNRMds) and clause 7.3.1.3.6 Upstream minimum
              noise margin (MINSNRMus)";
    
          }
    
          leaf target-noise-margin {
            type uint16 {
              range "0..310";
            }
            units "0.1 dB";
            must
              "../maximum-noise-margin = 'unbounded' or
    . <= ../maximum-noise-margin" {
              description
                "If the maximum noise margin is not unbounded, the target
    noise margin must be less than or equal to the maximum
    noise margin.";
            }
            default "60";
            description
              "This is the noise margin that the receiver will achieve,
    relative to the Bit Error Rate (BER) requirement for each of
    the bearer channels, or better, to successfully complete
    initialization. The target noise margin ranges from 0 to
    31 dB, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.3.1 Downstream target noise
              margin (TARSNRMds) and clause 7.3.1.3.2 Upstream target
              noise margin (TARSNRMus)";
    
          }
    
          leaf maximum-noise-margin {
            type union {
              type uint16 {
                range "0..310";
              }
              type enumeration {
                enum "unbounded" {
                  value 0;
                  description
                    "Indicates that no delay variation bound is imposed.";
                }
              }
            }
            units "0.1 dB";
            default "unbounded";
            description
              "This is the maximum noise margin the receiver will try
    to sustain. If the noise margin is above this level, the
    receiver will request the transmitter to reduce the
    transmit power to get a noise margin below this limit
    (if this functionality is supported by the relevant DSL
    Recommendation). The maximum noise margin ranges from 0
    to 31 dB with 0.1 dB steps.
    A special value (enum unbounded) is used to indicate that
    a reduction in transmit power is not required for the
    purpose of reducing the noise margin below the maximum
    noise margin limit (i.e., the maximum noise margin value
    is unbounded).";
            reference
              "ITU-T G.997.1 clause 7.3.1.3.3 Downstream maximum noise
              margin (MAXSNRMds) and clause 7.3.1.3.4 Upstream maximum
              noise margin (MAXSNRMus";
    
          }
    
          leaf ra-mode {
            type enumeration {
              enum "1" {
                value 0;
                description "Mode 1 = MANUAL.";
              }
              enum "2" {
                value 1;
                description "Mode 2 = AT_INIT.";
              }
              enum "3" {
                value 2;
                description "Mode 3 = DYNAMIC.";
              }
              enum "4" {
                value 3;
                description
                  "Mode 4 = DYNAMIC with SOS.";
              }
            }
            default "4";
            description
              "This parameter specifies the mode of operation of a
    rate-adaptive xDSL Transceiver Unit (xTU) in the transmit
    direction. The parameter is used only if the rate-adaptive
    functionality is supported.
    The default is enum 4, corresponding to Mode 4
    = DYNAMIC with SOS.";
            reference
              "ITU-T G.997.1 ITU-T G.997.1 clause 7.3.1.4.1 Downstream
              rate adaptation mode (RA-MODEds) and clause 7.3.1.4.2
              Upstream rate adaptation mode (RA-MODEus)";
    
          }
    
          leaf upshift-noise-margin {
            type uint16 {
              range "0..310";
            }
            units "0.1 dB";
            must
              "(../ra-mode != '3' and ../ra-mode != '4') or
    (. >= ../target-noise-margin and
    (../maximum-noise-margin = 'unbounded' or
    . <= ../maximum-noise-margin))" {
              description
                "If the RA-MODE is equal to 3 or 4, the upshift target
    noise margin must be greater than or equal to the
    target noise margin and less than or equal to the
    maximum noise margin.";
            }
            default "70";
            description
              "If the noise margin is above the downstream upshift
    noise margin and stays above that for more than the time
    specified by the minimum upshift rate adaptation
    interval, the receiver will attempt to increase the net
    data rate. The upshift noise margin ranges from 0 to 31
    dB, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.4.3 Downstream upshift noise
              margin (RA-USNRMds) and clause 7.3.1.4.4 Upstream
              upshift noise margin (RA-USNRMus)";
    
          }
    
          leaf minimum-time-interval-upshift-sra {
            type uint16 {
              range "0..16383";
            }
            units "second";
            default "8";
            description
              "This parameter defines the interval of time the noise
    margin should stay above the upshift noise margin before
    the receiver will attempt to increase the net data rate.
    The time interval ranges from 0 to 16,383 s with steps
    of one second.";
            reference
              "ITU-T G.997.1 clause 7.3.1.4.5 Downstream minimum time
              interval for upshift rate adaptation (RA-UTIMEds) and
              clause 7.3.1.4.6 Upstream minimum time interval for
              upshift rate adaptation (RA-UTIMEus)";
    
          }
    
          leaf downshift-noise-margin {
            type uint16 {
              range "0..310";
            }
            units "0.1 dB";
            must
              "(../ra-mode != '3' and ../ra-mode != '4') or
    (. >= ../minimum-noise-margin and
    . <= ../target-noise-margin)" {
              description
                "If the RA-MODE is equal to 3 or 4, the downshift target
    noise margin must be greater than or equal to the minimum
    noise margin and less than or equal to the target noise
    margin.";
            }
            default "50";
            description
              "If the noise margin is below the noise margin and stays
    below that for more than the time specified by the
    minimum rate adaptation interval in the direction of
    transmission, the receiver will attempt to decrease the
    net data rate. The downshift noise margin ranges from 0
    to 31 dB, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.4.7 Downstream downshift
              noise margin (RA-DSNRMds) and clause 7.3.1.4.8 Upstream
              downshift noise margin (RA-DSNRMus)";
    
          }
    
          leaf minimum-time-interval-downshift-sra {
            type uint16 {
              range "0..16383";
            }
            units "second";
            default "2";
            description
              "This parameter defines the interval of time the noise
    margin should stay below the downshift noise margin in
    the direction of transmission before the receiver will
    attempt to decrease the net data rate. The time interval
    ranges from 0 to 16,383 s with steps of one second.";
            reference
              "ITU-T G.997.1 clause 7.3.1.4.9 Downstream minimum time
              interval for downshift rate adaptation (RA-DTIMEds) and
              clause 7.3.1.4.10 Upstream minimum time interval for
              downshift rate adaptation (RA-DTIMEus)";
    
          }
        }  // grouping noise-margin-profile
    
        grouping noise-margin-profile-upstream {
          description
            "Noise margin configuration nodes for the upstream noise
    margin profile.";
          uses noise-margin-profile;
    
          leaf snr-mode {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 1, the
    virtual noise is disabled.";
              }
              enum "2" {
                value 1;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 2, the
    transmitter-referred virtual noise is enabled.";
              }
              enum "3" {
                value 2;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 3, the
    receiver-referred virtual noise is enabled.";
              }
              enum "4" {
                value 3;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 4, the
    receiver-referred virtual noise together with the virtual
    noise scaling factor is enabled.";
              }
            }
            default "1";
            description
              "This parameter enables the virtual noise.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.2 Upstream signal-to-noise
              ratio mode (SNRMODEus).";
    
          }
        }  // grouping noise-margin-profile-upstream
    
        grouping noise-margin-profile-downstream {
          description
            "Noise margin configuration nodes for the downstream noise
    margin profile.";
          uses noise-margin-profile;
    
          leaf snr-mode {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 1, the
    virtual noise is disabled.";
              }
              enum "2" {
                value 1;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 2, the
    virtual noise is enabled.";
              }
              enum "4" {
                value 2;
                description
                  "If Signal-to-Noise Ratio mode (SNRMODE) equals 4, the
    virtual noise together with the virtual noise scaling
    factor is enabled.";
              }
            }
            default "1";
            description
              "This parameter enables the virtual noise.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.1 Downstream
              signal-to-noise ratio mode (SNRMODEds)";
    
          }
        }  // grouping noise-margin-profile-downstream
    
        grouping impulse-noise-protection-delay-profile {
          description
            "The Impulse Noise Protection (INP) Delay profile contains
    INP-Delay parameters for each pair of upstream and downstream
    channels.";
          leaf force-framer-setting-inp {
            type boolean;
            default "false";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter indicates that the framer
    settings of the bearer will be selected such that the
    impulse noise protection computed according to the
    formula specified in the relevant Recommendation is
    greater than or equal to the minimal impulse noise
    protection requirement.
    This flag will have the same value for all the bearers
    of one line in the same direction.";
            reference
              "ITU-T G.997.1 clause 7.3.2.5 Force framer setting for
              impulse noise protection (FORCEINP)";
    
          }
    
          leaf minimum-inp {
            type uint8 {
              range
                "0..2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18
    | 20 | 22 | 24 | 26 | 28 | 30 | 32";
            }
            units "0.5 DMT symbols";
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the minimum impulse
    noise protection (INPMIN) for the bearer channel if it is
    transported over DMT symbols with a subcarrier spacing
    of 4.3125 kHz. The impulse noise protection is expressed
    in Discrete Multi-Tone (DMT) symbols with a subcarrier
    spacing of 4.3125 kHz and can take the values and any integer
    from 0 to 16, inclusive.
    If the xDSL Transceiver Unit (xTU) does not support the
    configured INPMIN value, it will use the nearest supported
    impulse noise protection greater than INPMIN.";
            reference
              "ITU-T G.997.1 clause 7.3.2.3 Minimum impulse noise
              protection (INPMIN)";
    
          }
    
          leaf minimum-inp-8 {
            type uint8 {
              range "0..16";
            }
            units "DMT symbols";
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter specifies the minimum impulse
    noise protection for the bearer channel if it is
    transported over Discrete Multi-Tone (DMT) symbols with a
    subcarrier spacing of 8.625 kHz. The impulse noise protection
    is expressed in DMT symbols with a subcarrier spacing of
    8.625 kHz and can take any integer value from 0 to 16,
    inclusive.";
            reference
              "ITU-T G.997.1 clause 7.3.2.4 Minimum impulse noise
              protection for system using 8.625 kHz subcarrier spacing
              (INPMIN8)";
    
          }
    
          leaf maximum-interleaving-delay {
            type union {
              type uint8 {
                range "2..63";
              }
              type enumeration {
                enum "S0" {
                  value 0;
                  description
                    "The value S0 indicates no delay bound is being
    imposed.";
                }
                enum "S1" {
                  value 1;
                  description
                    "The value S1 indicates the fast latency path will be
    used in the G.992.1 operating mode and S and D will
    be selected such that S <= 1 and D = 1 in
    [ITU-T G.992.2], [ITU-T G.992.3], [ITU-T G.992.4],
    [ITU-T G.992.5] and [ITU-T G.993.2]
    operating modes.";
                }
                enum "S2" {
                  value 2;
                  description
                    "The value S2 indicates a delay bound of 1 ms in
    [ITU-T G.993.2].";
                }
              }
            }
            units "millisecond";
            default "16";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter is the maximum one-way
    interleaving delay introduced by the Physical Media Specific
    Transmission Convergence (PMS-TC) between the alpha and the
    beta reference points, in the direction of the bearer
    channel. The one-way interleaving delay is defined in
    individual ADSL Recommendations as Roundup(S*D) /4 ms, where
    S is the S-factor and D is the Interleaving Depth and
    Roundup(x) denotes rounding to the higher integer.
    The xDSL Transceiver Units (xTU) will choose the S and D
    values such that the actual one-way interleaving delay (see
    actual interleaving delay status parameter in clause 7.5.2.3)
    is less than or equal to the configured maximum
    interleaving delay.";
            reference
              "ITU-T G.997.1 clause 7.3.2.2 Maximum interleaving
              delay";
    
          }
    
          leaf maximum-delay-rtx {
            type uint8 {
              range "1..63";
            }
            units "millisecond";
            default "16";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the maximum for the
    instantaneous delay due to the effect of retransmission
    only (see [ITU-T G.998.4] for detailed specification).
    The delay ranges from 1 to 63 ms by steps of 1 ms.";
            reference
              "ITU-T G.997.1 clause 7.3.2.11 Maximum delay for
              retransmission (DELAYMAX_RTX)";
    
          }
    
          leaf minimum-delay-rtx {
            type uint8 {
              range "0..62";
            }
            units "millisecond";
            must ". < ../maximum-delay-rtx" {
              description
                "The minimum delay must be less than the maximum delay for
    retransmission.";
            }
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum for the
    instantaneous delay due to the effect of retransmission
    only (see [ITU-T G.998.4] for detailed specification).
    The delay ranges from 0 to 62 ms by steps of 1 ms.";
            reference
              "ITU-T G.997.1 clause 7.3.2.12 Minimum delay for
              retransmission (DELAYMIN_RTX)";
    
          }
    
          leaf minimum-inp-against-shine-rtx {
            type uint8 {
              range "0..63";
            }
            units "DMT symbols";
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum impulse noise
    protection against Single High Impulse Noise Event (SHINE)
    for the bearer channel if it is transported over Discrete
    Multi-Tone (DMT) symbols with a subcarrier spacing of
    4.3125 kHz. The impulse noise protection is expressed
    in DMT symbols with a subcarrier spacing of 4.3125 kHz
    and can take any integer value from 0 to 63,
    inclusive.";
            reference
              "ITU-T G.997.1 clause 7.3.2.13 Minimum impulse noise
              protection against SHINE for retransmission
              (INPMIN_SHINE_RTX)";
    
          }
    
          leaf minimum-inp-against-shine-8-rtx {
            type uint8 {
              range "0..127";
            }
            units "DMT symbols";
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum impulse noise
    protection against Single High Impulse Noise Event (SHINE)
    for the bearer channel if it is transported over Discrete
    Multi-Tone (DMT) symbols with a subcarrier spacing of
    8.625 kHz. The impulse noise protection is expressed
    in DMT symbols with a subcarrier spacing of 8.625 kHz
    and can take any integer value from 0 to 127,
    inclusive.";
            reference
              "ITU-T G.997.1 clause 7.3.2.14 Minimum impulse noise
              protection against SHINE for retransmission for systems
              using 8.625 kHz subcarrier spacing (INPMIN8_SHINE_RTX)";
    
          }
    
          leaf shine-ratio-rtx {
            type uint8 {
              range "0..100";
            }
            units "0.001";
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the Single High Impulse Noise Event
    (SHINE) ratio (see [ITU-T G.998.4] for detailed definition).
    The values range from 0 to 0.100 in increments of 0.001.";
            reference
              "ITU-T G.997.1 clause 7.3.2.15 SHINERATIO_RTX";
    
          }
    
          leaf minimum-inp-against-rein-rtx {
            type uint8 {
              range "0..7";
            }
            units "DMT symbols";
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum impulse noise
    protection against Repetitive Electrical Impulse Noise (REIN)
    for the bearer channel if it is transported over Discrete
    Multi-Tone (DMT) symbols with a subcarrier spacing
    of 4.3125 kHz. The impulse noise protection is expressed
    in DMT symbols with a subcarrier spacing of 4.3125 kHz
    and can take any integer value from 0 to 7, inclusive.";
            reference
              "ITU-T G.997.1 clause 7.3.2.16 Minimum impulse noise
              protection against REIN for retransmission
              (INPMIN_REIN_RTX)";
    
          }
    
          leaf minimum-inp-against-rein-8-rtx {
            type uint8 {
              range "0..13";
            }
            units "DMT symbols";
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum impulse noise
    protection against Repetitive Electrical Impulse Noise (REIN)
    for the bearer channel if it is transported over Discrete
    Multi-Tone (DMT) symbols with a subcarrier spacing
    of 8.625 kHz. The impulse noise protection is expressed
    in DMT symbols with a subcarrier spacing of 8.625 kHz
    and can take any integer value from 0 to 13,
    inclusive.";
            reference
              "ITU-T G.997.1 clause 7.3.2.17 Minimum impulse noise
              protection against REIN for retransmission for systems
              using 8.625 kHz subcarrier spacing (INPMIN8_REIN_RTX)";
    
          }
    
          leaf rein-inter-arrival-time-rtx {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "The value 0 indicates an inter-arrival time derived
    from Repetitive Electrical Impulse Noise (REIN) at
    100 Hz.";
              }
              enum "1" {
                value 1;
                description
                  "The value 1 indicates an inter-arrival time derived
    from Repetitive Electrical Impulse Noise (REIN) at
    120 Hz.";
              }
            }
            default "0";
            description
              "If retransmission is used in a given transmit direction,
    this parameter specifies the inter-arrival time that is
    assumed for Repetitive Electrical Impulse Noise (REIN)
    protection. The value 0 indicates an inter-arrival time
    derived from a REIN at 100 Hz. The value 1 indicates an
    inter-arrival time derived from a REIN at 120 Hz. The default
    is enum 0, corresponding to 100 Hz.";
            reference
              "ITU-T G.997.1 clause 7.3.2.18 REIN inter-arrival time
              for retransmission (IAT_REIN_RTX)";
    
          }
    
          leaf maximum-delay-variation {
            type union {
              type uint8 {
                range "1..254";
              }
              type enumeration {
                enum "unbounded" {
                  value 0;
                  description
                    "Indicates that no delay variation bound is imposed.";
                }
              }
            }
            units "0.1 millisecond";
            default "unbounded";
            description
              "This parameter specifies the maximum value for the delay
    variation allowed in an On-Line Reconfiguration (OLR)
    procedure. It ranges from 0.1 to 25.4 in steps of 0.1 ms. A
    special value (enum unbounded) indicates that no delay
    variation bound is imposed.";
            reference
              "ITU-T G.997.1 clause 7.3.2.9 Maximum delay variation
              (DVMAX)";
    
          }
    
          leaf channel-initialization-policy {
            type enumeration {
              enum "0" {
                value 0;
                description "CIpolicy=0.";
              }
              enum "1" {
                value 1;
                description "CIpolicy=1.";
              }
              enum "2" {
                value 2;
                description "CIpolicy=2.";
              }
            }
            default "0";
            description
              "If retransmission is not used in a given transmit
    direction, this parameter indicates which policy will be
    applied to determine the transceiver configuration
    parameters at initialization. The valid values for
    Channel Initialization Policy (CIPOLICY) are 0, 1 and 2.
    They are defined in the respective Recommendations. The
    default is enum 0, corresponding to CIpolicy=0.";
            reference
              "ITU-T G.997.1 clause 7.3.2.10 Channel initialization
              policy selection (CIPOLICY) and ITU-T G.993.2
              clause 12.3.7 Channel initialization policies.";
    
          }
        }  // grouping impulse-noise-protection-delay-profile
    
        grouping impulse-noise-protection-delay-profile-downstream {
          description
            "The Impulse Noise Protection (INP) Delay profile contains
    INP-Delay parameters for each downstream channel.";
          leaf mdosplit {
            type union {
              type uint8 {
                range "0 | 5..95 | 100";
              }
              type enumeration {
                enum "vendor-discretionary" {
                  value 0;
                  description
                    "Indicates that that the VDSL Transceiver Unit - central
    Office (VTU-O) is allowed to use a vendor discretionary
    algorithm.";
                }
              }
            }
            units "percent";
            default "vendor-discretionary";
            description
              "The line configuration parameter MAXDELAYOCTET-split
    (MDOSPLIT) defines the percentage of the
    MAXDELAYOCTET_ext if operating in G.998.4 or
    MAXDELAYOCTET in other cases allocated to the downstream
    direction. All of the remaining MAXDELAYOCTET or
    MAXDELAYOCTET_ext will be allocated for use in the
    upstream direction. The detailed specification is in
    ITU-T G.993.2 and G.998.4.
    MDOSPLIT will be expressed as a percentage, with valid
    range from 5 percent to 95 percent inclusive, in steps
    of 1 percent. The value 0% is valid only if the maximum
    downstream interleaving delay is configured with the
    special value S1 (see clause 7.3.2.2/G.997.1) and
    retransmission is disabled in the downstream direction.
    The value 100% is valid only if the maximum upstream
    interleaving delay is configured with the special value
    S1 (see clause 7.3.2.2 of ITU-T G.997.1) and
    retransmission is disabled in the upstream direction.
    A special value (enum vendor-discretionary) indicates
    that the VDSL Transceiver Unit - central Office (VTU-O) is
    allowed to use a vendor discretionary algorithm.";
            reference
              "ITU-T G.997.1 clause 7.3.1.14 MAXDELAYOCTET-split
              parameter (MDOSPLIT)";
    
          }
    
          leaf attndr-method {
            type enumeration {
              enum "0" {
                value 0;
                description "Basic method.";
              }
              enum "1" {
                value 1;
                description
                  "Improved method using INP_min0.";
              }
              enum "2" {
                value 2;
                description
                  "Improved method assuming INP_min0=0.";
              }
            }
            default "0";
            description
              "This downstream parameter specifies the method to be used for
    the calculation of the Attainable Net Data Rate (ATTNDR) in
    the downstream and upstream direction. The parameter can take
    three values 0, 1 and 2. For detailed definition see ITU-T
    G.993.2 clause 11.4.1.1.7. The default is enum 0,
    corresponding to the basic method.";
            reference
              "ITU-T G.997.1 clause 7.3.1.15.1 ATTNDR Method
              (ATTNDR_METHOD)";
    
          }
    
          leaf attndr-mdosplit {
            type union {
              type uint8 {
                range "0 | 5..95 | 100";
              }
              type enumeration {
                enum "vendor-discretionary" {
                  value 0;
                  description
                    "Indicates that the VDSL Transceiver Unit - central
    Office (VTU-O) is allowed to use a vendor discretionary
    algorithm.";
                }
              }
            }
            units "percent";
            default "vendor-discretionary";
            description
              "The line configuration parameter Attainable Net Data Rate
    MAXDELAYOCTET Split (ATTNDR_MDOSPLIT) defines the percentage
    of the MAXDELAYOCTET_ext if operating in G.998.4 or
    MAXDELAYOCTET in other cases allocated to the downstream
    direction to be used in the improved method for calculation
    of the Attainable Net Data Rate (ATTNDR). All of the
    remaining MAXDELAYOCTET_ext or MAXDELAYOCTET will be
    allocated for use in the upstream direction. The detailed
    specification is in ITU-T G.993.2 and G.998.4.
    The valid values are identical to the values of the line
    configuration parameter MDOSPLIT. A special value
    (enum vendor-discretionary) indicates that the VDSL
    Transceiver Unit - central Office (VTU-O) is allowed to use a
    vendor discretionary algorithm.";
            reference
              "ITU-T G.997.1 clause 7.3.1.15.2 ATTNDR
              MAXDELAYOCTET-split parameter (ATTNDR_MDOSPLIT)";
    
          }
        }  // grouping impulse-noise-protection-delay-profile-downstream
    
        grouping impulse-noise-protection-delay-profile-upstream {
          description
            "The Impulse Noise Protection (INP) Delay profile contains
    INP-Delay parameters for each upstream channel.";
          leaf mdosplit {
            type union {
              type uint8 {
                range "0 | 5..95 | 100";
              }
              type enumeration {
                enum "vendor-discretionary" {
                  value 0;
                  description
                    "Indicates that that the VDSL Transceiver Unit - central
    Office (VTU-O) is allowed to use a vendor discretionary
    algorithm.";
                }
              }
            }
            units "percent";
            default "vendor-discretionary";
            status deprecated;
            description
              "The value of downstream and upstream MAXDELAY0CTET split
    (MDOSPLIT) must add to 100%. As such, configuration of the
    downstream MDOSPLIT is sufficient as the upstream will always
    be 100 minus the downstream MDOSPLIT. For this reason, this
    node has been deprecated.
    
    The line configuration parameter MAXDELAYOCTET-split
    (MDOSPLIT) defines the percentage of the
    MAXDELAYOCTET_ext if operating in G.998.4 or
    MAXDELAYOCTET in other cases allocated to the downstream
    direction. All of the remaining MAXDELAYOCTET or
    MAXDELAYOCTET_ext will be allocated for use in the
    upstream direction. The detailed specification is in
    ITU-T G.993.2 and G.998.4.
    MDOSPLIT will be expressed as a percentage, with valid
    range from 5 percent to 95 percent inclusive, in steps
    of 1 percent. The value 0% is valid only if the maximum
    downstream interleaving delay is configured with the
    special value S1 (see clause 7.3.2.2/G.997.1) and
    retransmission is disabled in the downstream direction.
    The value 100% is valid only if the maximum upstream
    interleaving delay is configured with the special value
    S1 (see clause 7.3.2.2 of ITU-T G.997.1) and
    retransmission is disabled in the upstream direction.
    A special value (enum vendor-discretionary) indicates
    that the VDSL Transceiver Unit - central Office (VTU-O) is
    allowed to use a vendor discretionary algorithm.";
            reference
              "ITU-T G.997.1 clause 7.3.1.14 MAXDELAYOCTET-split
              parameter (MDOSPLIT)";
    
          }
    
          leaf attndr-method {
            type enumeration {
              enum "0" {
                value 0;
                description "Basic method.";
              }
              enum "1" {
                value 1;
                description
                  "Improved method using INP_min0.";
              }
              enum "2" {
                value 2;
                description
                  "Improved method assuming INP_min0=0.";
              }
            }
            default "0";
            status deprecated;
            description
              "Attainable Net Data Rate Method (ATTNDR_METHOD) is only valid
    for the downstream direction and is now deprecated for the
    upstream. Any configured value for upstream ATTNDR_METHOD is
    to be ignored.
    
    This downstream parameter specifies the method to be used for
    the calculation of the Attainable Net Data Rate (ATTNDR) in
    the downstream and upstream direction. The parameter can take
    three values 0, 1 and 2. For detailed definition see ITU-T
    G.993.2 clause 11.4.1.1.7. The default is enum 0,
    corresponding to the basic method.";
            reference
              "ITU-T G.997.1 clause 7.3.1.15.1 ATTNDR Method
              (ATTNDR_METHOD)";
    
          }
    
          leaf attndr-mdosplit {
            type union {
              type uint8 {
                range "0 | 5..95 | 100";
              }
              type enumeration {
                enum "vendor-discretionary" {
                  value 0;
                  description
                    "Indicates that the VDSL Transceiver Unit - central
    Office (VTU-O) is allowed to use a vendor discretionary
    algorithm.";
                }
              }
            }
            units "percent";
            default "vendor-discretionary";
            status deprecated;
            description
              "Attainable Net Data Rate MAXDELAYOCTET Split
    (ATTNDR_MDOSPLIT) is only valid for the downstream direction
    and is now deprecated for the upstream. Any configured value
    for upstream ATTNDR_MDOSPLIT is to be ignored.
    
    The line configuration parameter ATTNDR_MDOSPLIT defines
    the percentage of the MAXDELAYOCTET_ext if operating in
    G.998.4 or MAXDELAYOCTET in other cases allocated to the
    downstream direction to be used in the improved method
    for calculation of the ATTNDR. All of the remaining
    MAXDELAYOCTET_ext or MAXDELAYOCTET will be allocated for
    use in the upstream direction. The detailed specification is
    in ITU-T G.993.2 and G.998.4. The valid values are identical
    to the values of the line configuration parameter MDOSPLIT.
    A special value (enum vendor-discretionary) indicates that
    the VDSL Transceiver Unit - central Office (VTU-O) is allowed
    to use a vendor discretionary algorithm.";
            reference
              "ITU-T G.997.1 clause 7.3.1.15.2 ATTNDR
              MAXDELAYOCTET-split parameter (ATTNDR_MDOSPLIT)";
    
          }
        }  // grouping impulse-noise-protection-delay-profile-upstream
    
        grouping vn-descriptor {
          description
            "Specifies the format of the Virtual Noise (VN) PSD.";
          list psdmask {
            key "sub-carrier";
            description
              "The virtual noise Power Spectral Density (PSD) level.";
            leaf sub-carrier {
              type sub-carrier-index;
              description "Sub-carrier index.";
            }
    
            leaf psd-level {
              type union {
                type uint8 {
                  range "0..200";
                }
                type enumeration {
                  enum "zero-watts-per-hz" {
                    value 0;
                    description
                      "Indicates a noise level of 0 W/Hz
    (minus infinity dBm/Hz).";
                  }
                }
              }
              units "-0.5 dBm/Hz";
              mandatory true;
              description
                "The noise level, ranges from -40 dBm/Hz to -140 dBm/Hz
    in steps of -0.5 dBm/Hz, with an offset of -40 dBm/Hz.
    The virtual noise level = -psd-level/2 -40 dBm/Hz.
    A special value of (enum zero-watts-per-hz) indicates
    a noise level of 0 W/Hz (minus infinity dBm/Hz).
    The default is an empty list, corresponding to no
    virtual noise defined.";
            }
          }  // list psdmask
        }  // grouping vn-descriptor
    
        grouping virtual-noise-profile {
          description
            "Configuration parameters for downstream Virtual Noise (VN).";
          container virtual-noise {
            must "count(psdmask) != 1" {
              description
                "There must be either 0 or 2 to 32 Power Spectral Density
    (PSD) mask breakpoints defined.";
            }
            description
              "This configuration parameter VN defines the transmitter
    referred virtual noise (TXREFVN). The TXREFVN is
    specified through a set of breakpoints. Each breakpoint
    consists of a subcarrier index t, with a subcarrier
    spacing of 4.3125 kHz, and a noise Power Spectral Density
    (PSD) level (expressed in dBm/Hz) at that subcarrier. The set
    of breakpoints can then be represented as [(t1, PSD1),
    (t2, PSD2), (tN, PSDN)]. The subcarrier index is coded as an
    unsigned integer. The noise level ranges from -40 dBm/Hz
    to -140 dBm/Hz in steps of 0.5 dBm/Hz. A special value
    of (enum zero-watts-per-hz) indicates a noise level of
    0 W/Hz. The maximum number of breakpoints is 32.
    The default is an empty list, corresponding to no virtual
    noise defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.3 Downstream Virtual noise
              (VNds).";
    
            uses vn-descriptor {
              refine 
            }
          }  // container virtual-noise
    
          container fext-txrefvnds {
            description
              "For ITU-T G.992.3 (ADSL2) Annex C and ITU-T G.992.5
    (ADSL2plus) Annex C, the transmitter referred virtual
    noise (see clause 7.3.1.7.3) specified for FEXTR
    duration is defined as Far-End Crosstalk (FEXT) downstream
    transmitter referred virtual noise (FEXT TXREFVNds). The
    default is an empty list, corresponding to no virtual noise
    defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.3.1 FEXT downstream
              transmitter referred virtual noise (FEXT TXREFVNds)";
    
            uses vn-descriptor;
          }  // container fext-txrefvnds
    
          container next-txrefvnds {
            description
              "For ITU-T G.992.3 (ADSL2) Annex C and ITU-T G.992.5
    (ADSL2plus) Annex C, the transmitter referred virtual
    noise (see clause 7.3.1.7.3) specified for NEXTR
    duration is defined as Near-End Crosstalk (NEXT) downstream
    transmitter referred virtual noise (NEXT TXREFVNds). The
    default is an empty list, corresponding to no virtual noise
    defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.3.2 NEXT downstream
              transmitter referred virtual noise (NEXT TXREFVNds)";
    
            uses vn-descriptor;
          }  // container next-txrefvnds
    
          leaf txrefvnsfds {
            type int8 {
              range "-128..127";
            }
            units "0.5 dB";
            default "0";
            description
              "If SNRM_MODE = 4, this configuration parameter defines
    the downstream transmitter referred virtual noise
    scaling factor. The valid values for the transmitter
    referred virtual noise scaling factor range from -64.0
    dB to 63.5 dB, in steps of 0.5 dB. The default is
    an empty list, corresponding to no virtual noise defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.6 Downstream virtual noise
              scaling factor (TXREFVNSFds)";
    
          }
        }  // grouping virtual-noise-profile
    
        grouping virtual-noise-profile-upstream {
          description
            "Configuration parameters for upstream Virtual Noise (VN).";
          container virtual-noise {
            must "count(psdmask) != 1" {
              description
                "There must be either 0 or 2 to 16 Power Spectral Density
    (PSD) mask breakpoints defined.";
            }
            description
              "This configuration parameter Virtual Noise (VN) defines the
    transmitter referred virtual noise (TXREFVN). The TXREFVN is
    specified through a set of breakpoints. Each breakpoint
    consists of a subcarrier index t, with a subcarrier
    spacing of 4.3125 kHz, and a noise Power Spectral Density
    (PSD) level (expressed in dBm/Hz) at that subcarrier. The set
    of breakpoints can then be represented as [(t1, PSD1),
    (t2, PSD2), (tN, PSDN)]. The subcarrier index is coded as an
    unsigned integer. The noise level ranges from -40 dBm/Hz
    to -140 dBm/Hz in steps of 0.5 dBm/Hz. A special value
    of (enum zero-watts-per-hz) indicates a noise level of
    0 W/Hz. The maximum number of breakpoints is 16.
    The default is an empty list, corresponding to no virtual
    noise defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.4 Upstream virtual noise
              (VNus).";
    
            uses vn-descriptor {
              refine 
            }
          }  // container virtual-noise
    
          leaf rxrefvnsfus {
            type int8 {
              range "-128..127";
            }
            units "0.5 dB";
            default "0";
            description
              "If SNRM_MODE = 4, this configuration parameter defines
    the receiver-referred virtual noise scaling factor. The
    valid values for the receiver-referred virtual noise
    scaling factor range from -64.0 dB to 63.5 dB, in steps
    of 0.5 dB. The default is
    an empty list, corresponding to no virtual noise defined.";
            reference
              "ITU-T G.997.1 clause 7.3.1.7.5 Upstream virtual noise
              scaling factor (RXREFVNSFus)";
    
          }
        }  // grouping virtual-noise-profile-upstream
    
        grouping sos-profile {
          description
            "The Save Our Showtime (SOS) Profile provides the parameters to
    configure the optional procedure for VDSL2 SOS, which rapidly
    falls-back to a lower speed without a re-initialization.";
          leaf sos-time {
            type union {
              type uint8 {
                range "1..255";
              }
              type enumeration {
                enum "disabled" {
                  value 0;
                  description
                    "Indicates that the standard Save Our Showtime (SOS)
    triggering criteria are disabled, i.e., vendor
    discretionary values may be used.";
                }
              }
            }
            units "64 milliseconds";
            default "disabled";
            description
              "The parameter SOS-TIME is used in the specification of
    the receiver initiated Save Our Showtime (SOS) (see
    [ITU-T G.993.2], clause 13.4.3). If the value of this
    parameter is not zero, the standard SOS triggering criteria
    are enabled, and the value corresponds with duration of the
    time window used in the standard SOS triggering criteria in
    the direction of transmission. See [ITU-T G.993.2] for
    detailed usage rules.
    The special value (enum disabled) indicates that the
    standard SOS triggering criteria are disabled, i.e.,
    vendor discretionary values may be used instead of the
    values configured in the Management Information Base (MIB)
    for the following parameters:
    SOS-NTONES, SOS-CRC, SOS-TIME.
    The valid range of values is from 64 ms to
    16,320 ms in steps of 64 ms.
    
    If any of the nodes 'sos-time', 'sos-ntones', or 'sos-crc'
    are configured to be 'disabled', then the behavior is the
    same as 'sos-time' being disabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.1 Downstream SOS time
              window (SOS-TIME-ds) and clause 7.3.1.10.2 Upstream SOS
              time window (SOS-TIME-us)";
    
          }
    
          leaf sos-ntones {
            type union {
              type uint8 {
                range "1..100";
              }
              type enumeration {
                enum "disabled" {
                  value 0;
                  description
                    "Indicates that the standard Save Our Showtime (SOS)
    triggering criteria are disabled, i.e., vendor
    discretionary values may be used.";
                }
              }
            }
            units "percent";
            default "disabled";
            description
              "This parameter is defined as the minimum percentage of
    tones in the MEDLEY SET in the direction of transmission
    that will be degraded in order to arm the first
    sub-condition of the standard Save Our Showtime (SOS)
    triggering criteria (see clause 13.4.3.2 of [ITU-T G.993.2]).
    The parameter SOS-NTONES is defined as a percentage of tones.
    See [ITU-T G.993.2] for detailed usage rules. The valid
    range of values is from 1 to 100 in steps of 1.
    The special value (enum disabled) indicates that the
    standard SOS triggering criteria are disabled as described
    in clause 13.4.3.2 of [ITU-T G.993.2].
    
    If any of the nodes 'sos-time', 'sos-ntones', or 'sos-crc'
    are configured to be 'disabled', then the behavior is the
    same as 'sos-time' being disabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.3 Downstream minimum
              percentage of degraded tones (SOS-NTONES-ds) and clause
              7.3.1.10.4 Upstream minimum percentage of degraded tones
              (SOS-NTONES-us)";
    
          }
    
          leaf sos-crc {
            type union {
              type uint16 {
                range "1..65535";
              }
              type enumeration {
                enum "disabled" {
                  value 0;
                  description
                    "Indicates that the standard Save Our Showtime (SOS)
    triggering criteria are disabled, i.e., vendor
    discretionary values may be used.";
                }
              }
            }
            units "0.02";
            default "disabled";
            description
              "This parameter is defined as the minimum number of
    normalized Cyclic Redundancy Check (CRC) anomalies received
    in SOS-TIME seconds in order to arm the second sub-condition
    of the standard Save Our Showtime (SOS) triggering criteria
    (see clause 13.4.3.2 of [ITU-T G.993.2]) in the direction of
    transmission. See [ITU-T G.993.2] for detailed usage rules.
    The valid range of SOS-CRC values is 0.02 to ((2^16)-1)*0.02,
    in steps of 0.02. Additionally, the special value (enum
    disabled) indicates that the standard SOS triggering criteria
    are disabled as described in clause 13.4.3.2 of
    [ITU-T G.993.2].
    
    If any of the nodes 'sos-time', 'sos-ntones', or 'sos-crc'
    are configured to be 'disabled', then the behavior is the
    same as 'sos-time' being disabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.5 Downstream minimum
              number of normalized CRC anomalies (SOS-CRC-ds) and
              clause 7.3.1.10.6 Upstream minimum number of normalized
              CRC anomalies (SOS-CRC-us)";
    
          }
    
          leaf max-sos {
            type union {
              type uint8 {
                range "1..15";
              }
              type enumeration {
                enum "unlimited" {
                  value 0;
                  description
                    "Indicates that there is no limit on the maximum
    allowed number of Save Our Showtime (SOS) recoveries
    within this time interval.";
                }
              }
            }
            default "unlimited";
            description
              "This parameter is used in G.993.2 de-activation (see
    [ITU-T G.993.2], clause 12.1.4). If the number of
    successful Save Our Showtime (SOS) procedures in the
    direction of transmission performed within a 120-second
    interval exceeds MAX-SOS, the modem will transition to the L3
    state. See [ITU-T G.993.2] for detailed usage rules (see
    clause 12.1.4 of [ITU-T G.993.2]). The valid range of
    values is 1 to 15. The special value (enum unlimited)
    indicates that there is no limit on the maximum allowed
    number of SOS recoveries within this time interval, as
    described in clause 12.1 of [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.7 Downstream maximum
              number of SOS (MAX-SOS-ds) and clause 7.3.1.10.8
              Upstream Maximum Number of SOS (MAX-SOS-us)";
    
          }
    
          leaf snrmoffset-roc {
            type uint16 {
              range "0..310";
            }
            units "0.1 dB";
            default "0";
            description
              "The parameter is defined as the Signal-To-Noise (SNR) Margin
    offset for the Robust Overhead Channel (ROC) in the direction
    of transmission. The parameter is used in the specification
    of the channel initialization policy (see clause 12.3.7.1 of
    [ITU-T G.993.2]). The valid range of SNR margin offset values
    is from 0 to 31 dB, with 0.1 dB steps.";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.9 Downstream SNR margin
              offset of ROC (SNRMOFFSET-ROC-ds) and clause 7.3.1.10.10
              Upstream SNR margin offset of ROC (SNRMOFFSET-ROC-us)";
    
          }
    
          leaf inpmin-roc {
            type uint8 {
              range "0..8";
            }
            units "T4k periods";
            default "0";
            description
              "This parameter contains the minimum impulse noise
    protection to apply on the Robust Overhead Channel (ROC) in
    the direction of transmission. The minimum impulse noise
    protection is an integer ranging from 0 to 8 representing the
    number of T4k periods. A T4k period is about 250
    microseconds.";
            reference
              "ITU-T G.997.1 clause 7.3.1.10.11 Downstream minimum INP
              of ROC (INPMIN-ROC-ds) and clause 7.3.1.10.12 Upstream
              minimum INP of ROC (INPMIN-ROC-us)";
    
          }
        }  // grouping sos-profile
    
        grouping impulse-noise-monitoring-profile {
          description
            "Impulse Noise Monitoring (INM) is not required for modem
    operation but is a capability for the measurement of Impulse
    Noise. The INM Profile includes the option to control an
    INM function on the receiver of the xDSL Transceiver Unit
    (xTU).";
          leaf inmiato {
            type uint16 {
              range "3..511";
            }
            units "DMT symbols";
            default "3";
            description
              "This is the Inter Arrival Time (IAT) offset that the xDSL
    Transceiver Unit (xTU) receiver will use to determine in
    which bin of the inter arrival time histogram the IAT is
    reported. The valid values for INMIATO ranges from 3 to 511
    Discrete Multi-Tone (DMT) symbols in steps of 1 DMT symbol.";
            reference
              "ITU-T G.997.1 clause 7.3.1.9.1 INM inter arrival time
              offset (INMIATO)";
    
          }
    
          leaf inmiats {
            type uint8 {
              range "0..7";
            }
            units "DMT symbols";
            default "0";
            description
              "This is the Inter Arrival Time (IAT) step that the xDSL
    Transceiver Unit (xTU) receiver will use to determine in
    which bin of the inter arrival time histogram the IAT is
    reported. The valid values for INMIATS range from 0 to 7 in
    steps of 1.";
            reference
              "ITU-T G.997.1 clause 7.3.1.9.2 INM inter arrival time
              step (INMIATS)";
    
          }
    
          leaf inmcc {
            type uint8 {
              range "0..64";
            }
            units "DMT symbols";
            default "0";
            description
              "This is the Impulse Noise Monitoring Cluster Continuation
    (INMCC) value that the xDSL Transceiver Unit (xTU) receiver
    will use in the cluster indication process described in the
    relevant ITU-T Recommendation. The valid values for INMCC
    range from 0 to 64 Discrete Multi-Tone (DMT) symbols in steps
    of one DMT symbol.";
            reference
              "ITU-T G.997.1 clause 7.3.1.9.3 INM cluster continuation
              value (INMCC)";
    
          }
    
          leaf inm-inpeq-mode {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "INM_INPEQ_MODE = 0 as defined in ITU-T G.993.2
    clause 11.4.2.2.1.";
              }
              enum "1" {
                value 1;
                description
                  "INM_INPEQ_MODE = 1 as defined in ITU-T G.993.2
    clause 11.4.2.2.1.";
              }
              enum "2" {
                value 2;
                description
                  "INM_INPEQ_MODE = 2 as defined in ITU-T G.993.2
    clause 11.4.2.2.1.";
              }
              enum "3" {
                value 3;
                description
                  "INM_INPEQ_MODE = 3 as defined in ITU-T G.993.2
    clause 11.4.2.2.1.";
              }
              enum "4" {
                value 4;
                description
                  "INM_INPEQ_MODE = 4 as defined in ITU-T G.993.2
    clause 11.4.2.2.1.";
              }
            }
            default "0";
            description
              "This is the Impulse Noise Monitoring (INM) equivalent Impulse
    Noise Protection (INP) mode that the xDSL Transceiver Unit
    (xTU) receiver will use in the computation of the Equivalent
    INP, as defined in the relevant ITU-T Recommendation. The
    valid values for INM_INPEQ_MODE are 0, 1, 2, 3, and 4.
    The default value is enum 0, corresponding to
    NM_INPEQ_MODE = 0.";
            reference
              "ITU-T G.997.1 clause 7.3.1.9.4 INM equivalent INP mode
              (INM_INPEQ_MODE)";
    
          }
    
          leaf inm-inpeq-format {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "Linear scale as defined in ITU-T G.997.1 clause
    7.3.1.9.5.";
              }
              enum "1" {
                value 1;
                description
                  "Logarithmic scale as defined in ITU-T G.997.1 clause
    7.3.1.9.5.";
              }
            }
            default "0";
            description
              "Defines the way the scale is configured for the INM_INPEQ
    histogram.";
            reference
              "ITU-T G.993.2 clause 11.4.2.2.6";
    
          }
    
          leaf inm-enable {
            type boolean;
            default "false";
            status deprecated;
            description
              "If true, enables Impulse Noise Monitoring (INM).";
          }
        }  // grouping impulse-noise-monitoring-profile
    
        grouping re-initialization-policy-profile {
          description
            "Configuration of the re-initialization policy allows control
    of re-initialization based on error performance thresholds
    of the line.";
          leaf ripolicy {
            type uint8 {
              range "0..1";
            }
            default "0";
            description
              "The re-initialization policy (RIPOLICY) parameter indicates w
    which policy will be applied to determine the triggers for
    re-initialization in the direction of transmisson (see clause
    12.1.4 of [ITU-T G.993.2] and clauses 7.3.1.1.13 and
    7.2.1.1.5 of [ITU-T G.997.1]).
    If RIPOLICY=1 is configured and it is detected during
    ITU-T G.993.2 initialization that RIPOLICY=1 is not
    supported in the direction of transmission by either of
    the xDSL Transceiver Units (xTU), the xTUs will fallback to
    RIPOLICY=0. The valid values for RIPOLICY are 0 and 1.
    The default is RIPOLICY=0.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.12.1 Downstream
              re-initialization policy selection (RIPOLICYds) and
              clause 7.3.1.1.12.2 Upstream re-initialization policy
              selection (RIPOLICYus)";
    
          }
    
          leaf reinit-time-threshold {
            type uint8 {
              range "5..31";
            }
            default "10";
            description
              "The parameter REINIT_TIME_THRESHOLD defines the
    threshold for re-initialization based on Severely Errored
    Seconds (SES), to be used by the xDSL Transceiver Unit (xTU)
    receiver when re-initialization policy 1 is used in the
    direction of transmission (see clause 12.1.4 of
    [ITU-T G.993.2]). The valid range is from 5 to 31.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.13.1 Downstream
              REINIT_TIME_THRESHOLDds and clause 7.3.1.1.13.2 Upstream
              REINIT_TIME_THRESHOLDus";
    
          }
        }  // grouping re-initialization-policy-profile
    
        grouping vectoring-profile {
          description
            "The Vectoring mechanism is defined by ITU-T Recommendation
    G.993.5. The Vectoring Profile contains part of the Vectoring
    related configuration parameters while the rest of the
    parameters are located in the data rate profile.";
          list vector-band-control {
            key "start-index";
            max-elements 8;
            description
              "This configuration parameter is an array of pairs of
    sub-carrier indices (a(i), b(i)). Each pair specifies a
    frequency band starting from sub-carrier index a(i) and
    ending at sub-carrier index b(i) (including both start
    and end points) in which Far-End Crosstalk (FEXT)
    cancellation for the line is not required. Up to 8 frequency
    bands may be configured. The same value of this parameter
    will be set for all lines of the same vector group.
    The default is an empty list, corresponding to no
    vectoring frequency-band control.";
            reference
              "ITU-T G.997.1 clause 7.3.1.13.1 Vectoring frequency-band
              control upstream (VECTOR_BAND_CONTROLus) and clause
              7.3.1.13.2 Vectoring frequency-band control downstream
              (VECTOR_BAND_CONTROLds)";
    
            uses sub-carrier-range;
          }  // list vector-band-control
    
          leaf fext-cancel-priority {
            type enumeration {
              enum "LOW" {
                value 0;
                description
                  "Low priority for Far-End Crosstalk (FEXT) cancellation.";
              }
              enum "HIGH" {
                value 1;
                description
                  "High priority for Far-End Crosstalk (FEXT)
    cancellation.";
              }
            }
            default "HIGH";
            description
              "This parameter specifies line priority for the line in
    the vectored group in the direction of transmission, as
    defined in [ITU-T G.993.5]. Two line priorities are
    defined as LOW and HIGH. The default is HIGH.";
            reference
              "ITU-T G.997.1 clause 7.3.1.13.3 FEXT cancellation line
              priorities upstream (FEXT_CANCEL_PRIORITYus) and clause
              7.3.1.13.4 FEXT cancellation line priorities downstream
              (FEXT_CANCEL_PRIORITYds)";
    
          }
    
          leaf fext-cancel-enable {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "Far-End Crosstalk (FEXT) cancellation enabled.";
              }
              enum "0" {
                value 1;
                description
                  "Far-End Crosstalk (FEXT) cancellation disabled.";
              }
            }
            default "1";
            description
              "A value of 1 enables and a value of 0 disables Far-End
    Crosstalk (FEXT) cancellation in the direction of
    transmission from all the other vectored lines into the line
    in the vectored group. The default is enum 1, corresponding
    to FEXT cancellation enabled.";
            reference
              "ITU-T G.997.1 clause 7.3.1.13.5 FEXT cancellation
              enabling/disabling upstream (FEXT_CANCEL_ENABLEus) and
              clause 7.3.1.13.6 FEXT cancellation enabling/disabling
              downstream (FEXT_CANCEL_ENABLEds)";
    
          }
    
          leaf xlin-group-size-req {
            type uint8 {
              range
                "1 | 2 | 4 | 8 | 16 | 32 | 64";
            }
            default "1";
            description
              "This parameter is the requested value of XLIN Group size
    (XLING) in the direction of transmission. The valid values
    are 1, 2, 4, 8, 16, 32, and 64.";
            reference
              "ITU-T G.997.1 clause 7.3.1.13.7 Downstream requested
              XLIN subcarrier group size (XLINGREQds) and clause
              7.3.1.13.8 Upstream requested XLIN subcarrier group size
              (XLINGREQus)";
    
          }
        }  // grouping vectoring-profile
    
        grouping vectoring-profile-non-directional {
          description
            "Configuration data that is not associated with the upstream
    or downstream directions.";
          leaf vector-mode-enable {
            type union {
              type enumeration {
                enum "all" {
                  value 0;
                  description
                    "All vector modes enabled.";
                }
              }
              type bits {
                bit bit0 {
                  position 0;
                  description
                    "initialization in ITU-T G.993.2 mode with neither
    Annex X nor Annex Y enabled.";
                }
                bit bit1 {
                  position 1;
                  description
                    "initialization in ITU-T G.993.2 Annex X.";
                }
                bit bit2 {
                  position 2;
                  description
                    "initialization in ITU-T G.993.2 Annex Y.";
                }
                bit bit3 {
                  position 3;
                  description
                    "initialization in ITU-T G.993.5.";
                }
              }
            }
            default "all";
            description
              "This configuration parameter defines the vectoring
    initialization type to be allowed by the VTU O on the
    line. The default is 'all', corresponding to all vectoring
    modes allowed.";
            reference
              "ITU-T G.997.1 clause 7.3.1.13.9 Vectoring mode enable
              (VECTORMODE_ENABLE)";
    
          }
    
          leaf strongfext-mode {
            if-feature bbf-vdsl:strongfext;
            type enumeration {
              enum "disabled" {
                value 0;
                description
                  "Operation according to G.993.5 Annex A is disable.";
              }
              enum "preferred" {
                value 1;
                description
                  "Operation according to G.993.5 Annex A is preferred.";
              }
              enum "forced" {
                value 2;
                description
                  "Operation according to G.993.5 Annex A is forced.";
              }
              enum "forced-above-17mhz" {
                value 3;
                description
                  "Operation according to G.993.5 Annex A is forced above
    17MHz.";
              }
            }
            default "disabled";
            description
              "This configuration parameter specifies if operation
    according to G.993.5 Annex A is disabled, preferred, forced,
    or forced above 17MHz.";
            reference
              "ITU-T G.997.1 clause 7.3.1.17.1 STRONGFEXT mode";
    
          }
        }  // grouping vectoring-profile-non-directional
    
        grouping data-gathering-profile {
          description
            "These parameters are used to configure data gathering
    functionality.";
          list logging-depth-event-percentage-o {
            key "event-number";
            description
              "This parameter is the percentage of the data gathering
    event buffer assigned to event type i at the VDSL Transceiver
    Unit - central Office (VTU-O). The ID, i, of the event type
    is defined in Table 11-43 of [ITU-T G.993.2]. Values are
    expressed in increments of 0.5% from 0 to 100%.";
            reference
              "ITU-T G.997.1 clause 7.3.6.1 Logging depth event
              percentage per event VTU-O
              (LOGGING_DEPTH_EVENT_PERCENTAGE_Oi)";
    
            leaf event-number {
              type uint8;
              description
                "Identifies the event type at the VDSL Transceiver Unit -
    central Office (VTU-O) as defined in ITU-T G.993.2 Table
    11-43.";
            }
    
            leaf percentage {
              type uint8 {
                range "0..200";
              }
              units "0.5 percent";
              default "0";
              description
                "This parameter is the percentage of the data gathering
    event buffer assigned to the event type.";
            }
          }  // list logging-depth-event-percentage-o
    
          leaf logging-depth-reporting-o {
            type uint32;
            units
              "6-byte data gathering records";
            default "0";
            description
              "This parameter is the logging depth that is requested for
    reporting the VDSL Transceiver Unit - central Office (VTU-O)
    event trace buffer in the Central Office Management
    Information Base (CO-MIB), in number of 6-byte data gathering
    records.";
            reference
              "ITU-T G.997.1 clause 7.3.6.3 Logging depth for VTU-O
              reporting (LOGGING_DEPTH_REPORTING_O)";
    
          }
    
          list logging-depth-event-percentage-r {
            key "event-number";
            description
              "This parameter is the percentage of the data gathering
    event buffer assigned to event type i at the VDSL Transceiver
    Unit - remote Side (VTU-R). The ID, i, of the event type is
    defined in Table 11-43 of [ITU-T G.993.2]. Values are
    expressed in increments of 0.5% from 0 to 100%.";
            reference
              "ITU-T G.997.1 clause 7.3.6.2
              Logging depth event percentage per event VTU-R
              (LOGGING_DEPTH_EVENT_PERCENTAGE_Ri)";
    
            leaf event-number {
              type uint8;
              description
                "Identifies the event type as defined in
    ITU-T G.993.2 Table 11-43.";
            }
    
            leaf percentage {
              type uint8 {
                range "0..200";
              }
              units "0.5 percent";
              default "0";
              description
                "This parameter is the percentage of the data gathering
    event buffer assigned to the event type for the VDSL
    Transceiver Unit - remote Side (VTU-R).";
            }
          }  // list logging-depth-event-percentage-r
    
          leaf logging-depth-reporting-r {
            type uint32;
            units
              "6-byte data gathering records";
            default "0";
            description
              "This parameter is the logging depth that is requested for
    reporting the VDSL Transceiver Unit - remote Side (VTU-R)
    event trace buffer in the Central Office Management
    Information Base (CO-MIB), in number of 6-byte data gathering
    records.";
            reference
              "ITU-T G.997.1 clause 7.3.6.4 Logging depth for VTU-R
              reporting";
    
          }
    
          leaf logging-report-newer-first {
            type boolean;
            default "false";
            description
              "If true, this parameter instructs the VDSL Transceiver Unit -
    remote Side (VTU-R) to report newer events first, from the
    beginning of the event trace buffer. If false, this parameter
    instructs the VTU-R to report older events first, from the
    end of the event trace buffer. This parameter only applies to
    the VTU-R.";
            reference
              "ITU-T G.997.1 clause 7.3.6.5 Logging data report newer
              events first VTU-R (LOGGING_REPORT_NEWER_FIRST)";
    
          }
        }  // grouping data-gathering-profile
    
        grouping line-status {
          description
            "The xDSL Line status object represents status/state objects
    for an individual physical transmission line.";
          leaf xdsl-transmission-system {
            type xts-descriptor;
            description
              "This indicates the current xDSL Transmission System.";
            reference
              "ITU-T G.997.1 clause 7.3.1.1.1 xTU transmission system
              enabling (XTSE)";
    
          }
    
          leaf line-power-management-state {
            type enumeration {
              enum "L0" {
                value 0;
                description
                  "Synchronized - This line state (L0) is when
    the line has full transmission (i.e., showtime).";
              }
              enum "L1" {
                value 1;
                description
                  "Power down data transmission - This line state
    (L1) is when there is transmission on the line but the
    net data rate is reduced (e.g., only for OAM and higher
    layer connection and session control). This state
    applies to [ITU-T G.992.2] only.";
              }
              enum "L2" {
                value 2;
                description
                  "Power down data transmission - This line state
    (L2) is when there is transmission on the line but the
    net data rate is reduced (e.g., only for OAM and higher
    layer connection and session control). This state
    applies to [ITU-T G.992.3] and [ITU-T G.992.4] only.";
              }
              enum "L3" {
                value 3;
                description
                  "No-power - This line state (L3) is when there
    is no power transmitted on the line at all.";
              }
            }
            description
              "This parameter identifies the power management state of
    the line.";
            reference
              "ITU-T G.997.1 clause 7.5.1.5 Line power management
              state";
    
          }
    
          leaf initialization-success-failure-cause {
            type enumeration {
              enum "successful" {
                value 0;
                description "Successful.";
              }
              enum "config-error" {
                value 1;
                description
                  "Configuration error. This error occurs with
    inconsistencies in configuration parameters. For
    example, when the line is initialized in an xDSL
    transmission system where an xDSL Transceiver Unit (xTU)
    does not support the configured maximum delay or the
    configured minimum or maximum data rate for one or more
    bearer channels.";
              }
              enum "config-not-feasible" {
                value 2;
                description
                  "Configuration not feasible on the line. This error
    occurs if the minimum data rate cannot be reached on
    the line with the minimum noise margin, maximum Power
    Spectral Density (PSD) level, maximum delay and maximum
    bit error ratio for one or more bearer channels.";
              }
              enum "communication-problem" {
                value 3;
                description
                  "Communication problem. This error occurs, for example,
    due to corrupted messages or bad syntax messages or if
    no common mode can be selected in the G.994.1
    handshaking procedure or due to a timeout.";
              }
              enum "no-far-end-xtu-detected" {
                value 4;
                description
                  "No peer xDSL Transceiver Unit (xTU) detected. This error
    occurs if the peer xTU is not powered or not connected or
    if the line is too long to allow detection of a peer
    xTU.";
              }
              enum "unknown" {
                value 5;
                description
                  "Any other or unknown initialization failure cause.";
              }
              enum "rtx-not-selected" {
                value 6;
                description
                  "ITU T G.998.4 retransmission mode was not selected
    while RTX_MODE = FORCED or with
    RTX_MODE = RTX_TESTMODE.";
              }
            }
            description
              "This parameter indicates whether the last full
    initialization procedure was successful. If the last
    initialization procedure was not successful, this
    parameter provides the reason.";
            reference
              "ITU-T G.997.1 clause 7.5.1.6 Initialization
              success/failure cause";
    
          }
    
          leaf vdsl2-lr-actual-op-type {
            if-feature vdsl2-lr;
            type enumeration {
              enum "disabled" {
                value 0;
                description
                  "Operation according to VDSL2 Long Reach (VDSL2-LR) mode
    is disabled.";
              }
              enum "short" {
                value 1;
                description
                  "Operating according to VDSL2 Long Reach (VDSL2-LR) short
    loop operation type.";
              }
              enum "medium" {
                value 2;
                description
                  "Operation according to VDSL2 Long Reach (VDSL2-LR) medium
    loop operation type.";
              }
              enum "long" {
                value 3;
                description
                  "Operation according to VDSL2 Long Reach (VDSL2-LR) long
    loop operation type.";
              }
            }
            description
              "This parameter reports the actual operation type
    of the VDSL2 Long Reach (VDSL2-LR) mode.";
            reference
              "ITU-T G.997.1 clause 7.5.1.44.1 VDSL2-LR actual
              operation type (VDSL2-LR_ACTOPTYPE)";
    
          }
        }  // grouping line-status
    
        grouping xtu-c-line-failure-parameters {
          description
            "xDSL Transceiver Unit - Central office (xTU-C) failure
    parameters.";
          leaf los {
            type boolean;
            description
              "A Loss of Signal (LOS) failure is declared after 2.5 +- 0.5 s
    of contiguous LOS defect, or, if LOS defect is present when
    the criteria for Loss of Frame (LOF) failure declaration have
    been met (see LOF definition below). A LOS failure is cleared
    after 10 +- 0.5 s of no LOS defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.1.1 Loss-of-signal (LOS)
              failure";
    
          }
    
          leaf lof {
            type boolean;
            description
              "A Loss of Frame (LOF) failure is declared after 2.5 +- 0.5 s
    of contiguous Severly Errored Frame (SEF) defect, except when
    an LOS defect or failure is present (see LOS definition
    above). A LOF failure is cleared when LOS failure is
    declared, or after 10 +- 0.5 s of no SEF defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.1.2 Loss-of-frame (LOF)
              failure";
    
          }
    
          leaf lpr {
            type boolean;
            description
              "A Loss of Power (LPR) failure is declared after 2.5 +- 0.5 s
    of contiguous near-end LPR primitive presence. An LPR
    failure is cleared after 10 +- 0.5 s of no near-end LPR
    primitive presence.";
            reference
              "ITU-T G.997.1 clause 7.1.1.1.3 Loss-of-power (LPR)
              failure";
    
          }
    
          leaf linit {
            type boolean;
            description
              "If the line is forced to the L0 state (or into loop
    diagnostic mode) and an attempt to reach the L0 state
    (or to successfully complete the loop diagnostic
    procedures) fails (after a vendor discretionary number
    of retries and/or within a vendor discretionary
    timeout), then an initialization failure occurs. An
    initialization failure cause and last successful
    transmitted state are given by the line initialization
    (LINIT) failure (see clause 7.5.1.6). A line initialization
    failure will be conveyed to the NMS by the xDSL Transceiver
    Unit - Central office (xTU-C) (over the Q-interface) and
    should be conveyed to the NMS by the xDSL Transceiver Unit -
    Remote side (xTU-R) (over the T-/S-interface) after it is
    detected.";
            reference
              "ITU-T G.997.1 clause 7.1.1.3 Line initialization (LINIT)
              failure";
    
          }
    
          leaf loss-of-margin {
            type boolean;
            description
              "A Loss of Margin (LOM) failure is declared when a
    re-initialization is triggered by a persistent near-end
    lom defect, except when an Loss of Signal (LOS) or Loss of
    Frame (LOF) defect or failure is present (see los and lof
    definitions above). A LOM failure is cleared when LOS or LOF
    failure is declared, or after 10 +- 0.5 seconds of no LOM
    defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.1.4 Loss of margin (LOM)
              failure";
    
          }
        }  // grouping xtu-c-line-failure-parameters
    
        grouping xtu-r-line-failure-parameters {
          description
            "xDSL Transceiver Unit - Remote side (xTU-R) line failure
    parameters.";
          leaf los-fe {
            type boolean;
            description
              "A Far-End Loss of Signal (LOS-FE) failure is declared
    after 2.5 +- 0.5 s of contiguous far-end Loss of Signal (LOS)
    defects, or, if far-end LOS defect is present when the
    criteria for Loss of Frame (LOF) failure declaration have
    been met (see LOF definition below). A far-end LOS failure is
    cleared after 10 +- 0.5 s of no far-end LOS defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.2.1 Far-end loss-of-signal
              (LOS-FE) failure";
    
          }
    
          leaf lof-fe {
            type boolean;
            description
              "A Far-End Loss of Frame (LOF-FE) failure is declared
    after 2.5 +- 0.5 s of contiguous Remote Defect Indication
    (RDI) defects, except when a far-end Loss of Signal (LOS)
    defect or failure is present (see LOS definition above). A
    far-end Loss of Frame (LOF) failure is cleared when far-end
    LOS failure is declared, or after 10 +- 0.5 s of no RDI
    defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.2.2 Far-end loss-of-frame
              (LOF-FE) failure";
    
          }
    
          leaf lpr-fe {
            type boolean;
            description
              "A Far-End Loss of Power (LPR-FE) failure is declared
    after the occurrence of a far-end LPR primitive followed
    by 2.5 +- 0.5 s of contiguous near-end Loss of Signal (LOS)
    defects. A far-end LPR failure is cleared after 10 +- 0.5 s
    of no near-end LOS defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.2.3 Far-end loss-of-power
              (LPR-FE) failure";
    
          }
    
          leaf loss-of-margin-fe {
            type boolean;
            description
              "A Far-End Loss of Margin (LOM-FE) failure is declared
    when a re-initialization is triggered by a persistent
    far-end lom defect, except when an Far-End Loss of Signal
    (LOS-FE) or Far-End Loss of Frame (LOF-FE) defect or failure
    is present (see los-fe and lof-fe definitions above). A far
    end LOM failure is cleared when far end LOS or LOF failure is
    declared, or after 10 +- 0.5 s of no far end LOM defect.";
            reference
              "ITU-T G.997.1 clause 7.1.1.2.4 Loss of margin (LOM-FE)
              failure";
    
          }
        }  // grouping xtu-r-line-failure-parameters
    
        grouping xtu-line-status {
          description
            "Status parameters for the line.";
          leaf snr-margin {
            type union {
              type int16 {
                range "-640..630";
              }
              type enumeration {
                enum "out-of-range" {
                  value 0;
                  description
                    "Indicates that the value is out of range to
    be represented.";
                }
              }
            }
            units "0.1 dB";
            status obsolete;
            description
              "The signal-to-noise ratio (SNR) margin is the maximum
    increase, in dB, of the noise power received at the
    receiver, such that the Bit Error Rate (BER) requirements are
    met for all bearer channels (SNRMds for xDSL Transceiver
    Unit - Remote side (xTU-R) / SNRMus for xDSL Transceiver
    Unit - Central office (xTU-C)). The SNR margin ranges from
    -64 dB to +63 dB, with 0.1 dB steps. A special value (enum
    out-of-range) indicates the parameter is out of range to be
    represented.";
            reference
              "ITU-T G.997.1 clause 7.5.1.13 Downstream signal-to-noise
              ratio margin (SNRMds) and 7.5.1.16 Upstream
              signal-to-noise ratio margin (SNRMus";
    
          }
    
          leaf profile {
            type profiles;
            description
              "This parameter defines the profile in use. It is coded
    in a bit-map representation with the bits using the
    definition in ITU-T G997.1 clause 7.3.1.1.11 (0 if in
    use, 1 if not in use).";
            reference
              "ITU-T G.997.1 clause 7.5.1.2 VDSL2 profile";
    
          }
    
          leaf limitmask {
            type limitmask-descriptor;
            description
              "This configuration parameter contains the G.993.2 limit
    PSD masks of the selected Power Spectral Density (PSD) mask
    class, that is used by the near-end xDSL Transceiver Unit
    (xTU) on this line. One LIMITMASK parameter is defined per
    the G.993.2 Annex.";
            reference
              "ITU-T G.997.1 clause 7.5.1.3 VDSL2 limit PSD mask and
              band plan.";
    
          }
    
          leaf us0mask {
            type us0mask-descriptor;
            description
              "This parameter contains none or the one US0 Power Spectral
    Density (PSD) masks in use by the near-end xDSL Transceiver
    Unit (xTU) on the line.";
            reference
              "ITU-T G.997.1 clause 7.5.1.4 VDSL2 US0 PSD mask.";
    
          }
    
          leaf actual-cyclic-extension {
            type uint8 {
              range "2..16";
            }
            units
              "N/32 samples, where 2N is the IDFT size";
            description
              "This parameter reports the cyclic extension used on the
    line. It is coded as an unsigned integer from 2 to 16 in
    units of N/32 samples, where 2N is the IDFT size.";
            reference
              "ITU-T G.997.1 clause 7.5.1.32 Actual cyclic extension
              (ACTUALCE)";
    
          }
    
          leaf actual-aele-mode {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "kl0[band] = ELE-M0 VDSL Transceiver Unit - central Office
    (VTU-O) kl0 estimate.";
              }
              enum "1" {
                value 1;
                description
                  "kl0[band] = ELEDS [dB], with band in the set
    {upbo_bands}.";
              }
              enum "2" {
                value 2;
                description
                  "kl0[band] = ELE[band] [dB], with band in the set
    {upbo_bands}.";
              }
              enum "3" {
                value 3;
                description
                  "kl0[band] = MIN(ELEUS, ELEDS) [dB], with band in the
    set {upbo_bands}.";
              }
            }
            description
              "This parameter reports the actual Alternative Electrical
    Length Estimation Mode (AELE-MODE) used in
    clause 7.2.1.3.2.1 of [ITU-T G.993.2]. The value of this
    parameter is 0, 1, 2 or 3.";
            reference
              "ITU-T G.997.1 clause 7.5.1.23.7 Actual Alternative
              Electrical Length Estimation Mode (ACT-AELE-MODE)";
    
          }
    
          leaf actual-vector-mode {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "If Actual Vector Mode (ACTVECTORMODE) equals 0, the line
    is initialized in G.993.2 mode different from Annex X or
    Annex Y.";
              }
              enum "1" {
                value 1;
                description
                  "If Actual Vector Mode (ACTVECTORMODE) equals 1, the line
    is initialized in G.993.2 Annex X.";
              }
              enum "2" {
                value 2;
                description
                  "If Actual Vector Mode (ACTVECTORMODE) equals 2, the line
    is initialized in G.993.2 Annex Y.";
              }
              enum "3" {
                value 3;
                description
                  "If Actual Vector Mode (ACTVECTORMODE) equals 3, the line
    is initialized in G.993.5.";
              }
            }
            description
              "This parameter reports the vectoring initialization type
    of the line.";
            reference
              "ITU-T G.997.1 clause 7.5.1.43.1 Actual vectoring mode
              (ACTVECTORMODE)";
    
          }
    
          leaf attndr-actual-method {
            type uint8 {
              range "0..2";
            }
            description
              "This parameter indicates the actual Attainable Net Data Rate
    (ATTNDR) Method used for calculation of the ATTNDR in the
    downstream and upstream direction. For detailed definition
    see G.993.2 clause 11.4.1.1.7.";
            reference
              "ITU-T G.997.1 clause 7.5.1.41.1 ATTNDR Actual Method
              (ATTNDR_ACTMETHOD)";
    
          }
        }  // grouping xtu-line-status
    
        grouping xtu-line-status-receiver-directional {
          description
            "Directional line status for receiver.";
          leaf actual-snr-mode {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "If the Actual Signal-to-Noise Ratio Mode (ACTSNRMODE)
    equals 1, the virtual noise is inactive.";
              }
              enum "2" {
                value 1;
                description
                  "For downstream, if the Actual Signal-to-Noise Ratio Mode
    (ACTSNRMODE) equals 2, the virtual noise is active.
    For upstream, if ACTSNRMODE equals 2,
    the transmitter-referred virtual noise is active.";
              }
              enum "3" {
                value 2;
                description
                  "For upstream, if the Actual Signal-to-Noise Ratio Mode
    (ACTSNRMODE) equals 3, the receiver-referred virtual
    noise is active.";
              }
              enum "4" {
                value 3;
                description
                  "For downstream, If the Actual Signal-to-Noise Ratio Mode
    (ACTSNRMODE) equals 4, the virtual noise together with
    the virtual noise scaling factor is active.
    For upstream, if ACTSNRMODE equals 4, the receiver-
    referred virtual noise together with the virtual noise
    scaling factor is active.";
              }
            }
            description
              "This parameter indicates if the transmitter referred
    virtual noise is active on the line in the direction
    toward the receiver (ACTSNRMODEds for xDSL Transceiver
    Unit - Remote side (xTU-R) / ACTSNRMODEus for xDSL
    Transceiver Unit - Central office (xTU-C)).";
            reference
              "ITU-T G.997.1 clause 7.5.1.15 Actual downstream
              signal-to-noise ratio mode (ACTSNRMODEds) and clause
              7.5.1.18 Actual upstream signal-to-noise ratio mode
              (ACTSNRMODEus)";
    
          }
    
          leaf attainable-net-data-rate {
            type bbf-yang:data-rate32-or-undetermined;
            description
              "This parameter indicates the maximum net data rate
    currently attainable from the transmitter (ATTNDRds for
    xDSL Transceiver Unit - Central office (xTU-C) / ATTNDRus for
    xDSL Transceiver Unit - Remote side (xTU-R)). The rate is
    coded in steps of 1,000 bit/s.";
            reference
              "ITU-T G.997.1 clause 7.5.1.19 Downstream maximum
              attainable data rate (ATTNDRds) and clause 7.5.1.20
              Upstream maximum attainable data rate (ATTNDRus)";
    
          }
    
          leaf trellis {
            type boolean;
            description
              "This parameter reports whether trellis coding is in
    use in the direction of transmission. It is
    represented as one bit coded as 0 (false) if the
    trellis is not used and as 1 (true) if the trellis is
    used.";
            reference
              "ITU-T G.997.1 clause 7.5.1.30 Downstream trellis use
              (TRELLISds) and clause 7.5.1.31 Upstream trellis use
              (TRELLISus)";
    
          }
    
          leaf actual-ra-mode {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "If the Actual Rate Adaptation Mode (ACT-RA-MODE) equals
    1, the link is operating in RA-MODE 1 (MANUAL).";
              }
              enum "2" {
                value 1;
                description
                  "If the Actual Rate Adaptation Mode (ACT-RA-MODE) equals
    2, the link is operating in RA-MODE 2 (AT_INIT).";
              }
              enum "3" {
                value 2;
                description
                  "If the Actual Rate Adaptation Mode (ACT-RA-MODE) equals
    3, the link is operating in RA-MODE 3 (DYNAMIC).";
              }
              enum "4" {
                value 3;
                description
                  "If the Actual Rate Adaptation Mode (ACT-RA-MODE) equals
    4, the link is operating in RA-MODE 4 (DYNAMIC with
    SOS).";
              }
            }
            description
              "This parameter indicates the actual active Rate Adatpation
    Mode (RA-MODE) in the direction of transmission.";
            reference
              "ITU-T G.997.1 clause 7.5.1.33.1 Actual downstream rate
              adaptation mode (ACT-RA-MODEds) and clause 7.5.1.33.2
              Actual upstream rate adaptation mode (ACT-RA-MODEus)";
    
          }
    
          leaf rxthrh {
            type uint8 {
              range "36..100";
            }
            units "1 dB";
            description
              "This parameter reports the received signal level
    threshold (RXTHRH) value used in the alternative electrical
    length estimation method (ELE-M1) in ITU-T G.997.1
    clause 7.2.1.3.2.2 in the direction of transmission.
    This parameter represents an offset from -100 dBm/Hz,
    and ranges from -64 dB to 0 dB in steps of 1 dB.";
            reference
              "ITU-T G.997.1 clause 7.5.1.23.5 UPBO downstream
              receiver signal level threshold (RXThrHds) and clause
              7.5.1.23.6 UPBO upstream receiver signal level
              threshold (RXThrHus)";
    
          }
    
          leaf actual-inp-roc {
            type uint8 {
              range "0..254 | 255";
            }
            units "0.1 T4k periods";
            description
              "This parameter reports the Actual Impulse Noise Protection
    (ACTINP) of the Robust Overhead Channel (ROC) in the
    direction of transmission. The format and usage is identical
    to the channel status parameter ACTINP (see ITU-T G997.1
    clause 7.5.2.4).
    
    A special value (255) is used to indicate the ACTINP is
    greater than 25.4 T4k periods where a T4k period is about
    250 microseconds.";
            reference
              "ITU-T G.997.1 clause 7.5.1.34.1 Downstream actual
              impulse noise protection of ROC (ACTINP-ROC-ds) and
              clause 7.5.1.34.2 Upstream actual impulse noise
              protection of ROC (ACTINP-ROC-us)";
    
          }
    
          leaf snr-margin-roc {
            type union {
              type int16 {
                range "-640..630";
              }
              type enumeration {
                enum "out-of-range" {
                  value 0;
                  description
                    "Indicates that the value is out of range to
    be represented.";
                }
              }
            }
            units "0.1 dB";
            description
              "This parameter reports the actual signal-to-noise
    margin of the Robust Overhead Channel (ROC) in the direction
    of transmission.
    The format is identical to the format of the line
    status parameter Signal-to-Noise Ration Margin (SNRM) (see
    ITU-T G997.1 clause 7.5.1.13). The SNRM-ROC ranges from -64
    dB to +63 dB, with 0.1 dB steps. A special value (enum
    out-of-range) indicates the parameter is out of range to be
    represented.";
            reference
              "ITU-T G.997.1 clause 7.5.1.35.1 Downstream actual SNR
              margin of ROC (SNRM-ROC-ds) and clause 7.5.1.35.2
              Upstream actual SNR margin of ROC (SNRM-ROC-us)";
    
          }
    
          leaf stamp-olr {
            type time-stamp-or-undefined;
            description
              "This parameter indicates the date/time of the last
    successful On-Line Reconfiguration (OLR) execution in the
    direction of transmission that has modified the bits or
    gains. This date/time-stamp will include information on the
    Year, Month, Day, Hour, Minute and Second of the last OLR.";
            reference
              "ITU-T G.997.1 clause 7.5.1.37.1 Date/time-stamping of
              last successful downstream OLR operation
              (STAMP-OLR-ds) and Clause 7.5.1.37.2 Date/time-stamping
              of last successful upstream OLR operation
              (STAMP-OLR-us)";
    
          }
    
          leaf actual-ripolicy {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "Re-Initialization Policy (RIPOLICY) 0.";
              }
              enum "1" {
                value 1;
                description
                  "Re-Initialization Policy (RIPOLICY) 1.";
              }
            }
            description
              "This parameter indicates the actual Re-Initialization Policy
    (RIPOLICY) in use in the direction of transmission.";
            reference
              "ITU-T G.997.1 clause 7.5.1.40.1 Actual downstream
              RIPOLICY (ACTRIPOLICYds) and clause 7.5.1.40.2 Actual
              upstream RIPOLICY (ACTRIPOLICYus)";
    
          }
    
          leaf rtx-used {
            type enumeration {
              enum "1" {
                value 0;
                description
                  "Retransmission (RTX) in use.";
              }
              enum "2" {
                value 1;
                description
                  "Retransmission (RTX) not in use, due to RTX_MODE =
    FORBIDDEN.";
              }
              enum "3" {
                value 2;
                description
                  "Retransmission (RTX) not in use, due to not supported by
    the XTU-C.";
              }
              enum "4" {
                value 3;
                description
                  "Retransmission (RTX) not in use, due to not supported by
    the XTU-R.";
              }
              enum "5" {
                value 4;
                description
                  "Retransmission (RTX) not in use, due to not supported by
    the XTU-C and XTU-R.";
              }
            }
            description
              "This parameter specifies whether ITU-T G.998.4
    Retransmission (RTX) is used (i.e., active in showtime) in a
    given transmit direction. In [ITU-T G.992.3] and
    [ITU-T G.992.5] only the downstream parameter RTX_USED
    is relevant and the value in the upstream direction is
    ignored. In [ITU-T G.993.2], both parameters are
    relevant.";
            reference
              "ITU-T G.997.1 clause 7.5.1.38 Retransmission used
              (RTX_USED)";
    
          }
    
          leaf attndr-actual-inp {
            type uint16 {
              range "0..2046 | 2047";
            }
            units "0.1 DMT symbols";
            description
              "If retransmission is not used in the direction of
    transmission, this parameter indicates the actual
    impulse noise protection used in the improved
    calculation of the Attainable Net Data Rate (ATTNDR) in the
    direction of transmission.
    If retransmission is used in the direction of
    transmission, this parameter indicates the actual
    impulse noise protection against Single High Impulse Noise
    Event (SHINE) used in the improved calculation of the ATTNDR
    in the direction of transmission.
    The value is coded in fractions of Discrete Multi-Tone (DMT)
    symbols with a granularity of 0.1 symbols. The range is from
    0 to 204.6. A special value of 2047 indicates an Actual
    Impulse Noise Protection (ACTINP) of 204.7 or higher.";
            reference
              "ITU-T G.997.1 clause 7.5.1.41.2 ATTNDR Downstream
              Actual impulse noise protection (ATTNDR_ACTINPds) and
              clause 7.5.1.41.3 ATTNDR Upstream Actual impulse noise
              protection (ATTNDR_ACTINPus)";
    
          }
    
          leaf attndr-actual-inp-rein {
            type uint8 {
              range "0..254 | 255";
            }
            units "0.1 DMT symbols";
            description
              "If retransmission is used in the direction of
    transmission, this parameter reports the actual
    impulse noise protection (INP) against Repetitive Electrical
    Impulse Noise (REIN) used in the improved calculation of the
    Attainable Net Data Rate (ATTNDR) in the direction of
    transmission.
    The value is coded in fractions of Discrete Multi-Tone (DMT)
    symbols with a granularity of 0.1 symbols. The value is coded
    in fractions of DMT symbols with a granularity of 0.1
    symbols. The range is from 0 to 25.4. A special value
    of 255 indicates an ATTNDR_ACTINP_REIN of 25.5 or
    higher.";
            reference
              "ITU-T G.997.1 clause 7.5.1.41.4 ATTNDR Downstream
              Actual impulse noise protection against REIN
              (ATTNDR_ACTINP_REINds and clause 7.5.1.41.5 ATTNDR
              Upstream Actual impulse noise protection against REIN
              (ATTNDR_ACTINP_REINus)";
    
          }
    
          leaf attndr-actual-delay {
            type uint8 {
              range "0..254 | 255";
            }
            units "0.1 milliseconds";
            description
              "This parameter indicates the actual delay used in the
    improved calculation of the Attainable Net Data Rate (ATTNDR)
    in the direction of transmission. The value is coded in with
    a granularity of 0.1 ms. The range is from 0 to 25.4 ms. A
    special value of 255 indicates an actual delay of 25.5 ms or
    higher.";
            reference
              "ITU-T G.997.1 clause 7.5.1.41.6 ATTNDR Downstream
              Actual delay (ATTNDR_ACTDELAYds) and clause 7.5.1.41.7
              ATTNDR Upstream Actual delay (ATTNDR_ACTDELAYus)";
    
          }
    
          leaf snr-margin {
            type union {
              type int16 {
                range "-640..630";
              }
              type enumeration {
                enum "out-of-range" {
                  value 0;
                  description
                    "Indicates that the value is out of range to
    be represented.";
                }
              }
            }
            units "0.1 dB";
            description
              "The Signal-to-Noise Ratio (SNR) margin is the maximum
    increase, in dB, of the noise power received at the
    receiver, such that the Bit Error Rate (BER) requirements are
    met for all bearer channels (SNRMds for xDSL Transceiver
    Unit - Remote side (xTU-R) / SNRMus for xDSL Transceiver
    Unit - Central office (xTU-C)). The SNR margin ranges from
    -64 dB to +63 dB, with 0.1 dB steps. A special value (enum
    out-of-range) indicates the parameter is out of range to be
    represented.";
            reference
              "ITU-T G.997.1 clause 7.5.1.13 Downstream signal-to-noise
              ratio margin (SNRMds) and 7.5.1.16 Upstream
              signal-to-noise ratio margin (SNRMus";
    
          }
        }  // grouping xtu-line-status-receiver-directional
    
        grouping xtu-line-status-transmitter-directional {
          description
            "Directional line status for transmitter.";
          leaf last-transmitted-state {
            type uint8;
            description
              "This parameter represents the last successful
    transmitted initialization state known by the
    transmitter in the last full initialization performed on
    the line (Downstream for xDSL Transceiver Unit - Central
    office (xTU-C) / Upstream for xDSL Transceiver Unit - Remote
    side (xTU-R)). Initialization states are defined in the
    individual xDSL Recommendations and are counted from 0 (if
    [ITU-T G.994.1] is used) or 1 (if [ITU-T G.994.1] is not
    used) up to showtime. This parameter will be interpreted
    along with the xDSL transmission system.
    This parameter is available only when, after a failed
    full initialization, the loop diagnostic procedures are
    activated on the line. Loop diagnostic procedures can be
    activated by the operator of the system (through the
    line state forced line configuration parameter) or
    autonomously by the xTU-C or xTU-R.";
            reference
              "ITU-T G.997.1 clause 7.5.1.7 Downstream last transmitted
              state and clause 7.5.1.8 Upstream last transmitted
              state";
    
          }
    
          leaf actual-psd {
            type union {
              type int16 {
                range "-900..0";
              }
              type enumeration {
                enum "out-of-range" {
                  value 0;
                  description
                    "Indicates that the parameter is out of range to
    be represented.";
                }
              }
            }
            units "0.1 dB";
            description
              "This parameter is the average transmit Power Spectral Density
    (PSD) over the used subcarriers (subcarriers to which user
    data are allocated) delivered by the xDSL Transceiver
    Unit - Central office (xTU-C) at the U-C reference point
    (ACTPSDds), or delivered by the xDSL Transceiver
    Unit - Remote side (xTU-R) at the U-R reference point
    (ACTPSDus), at the instant of measurement. The PSD level
    ranges from -90 dBm/Hz to 0 dBm/Hz, with 0.1 dB steps. A
    special value (enum out-of-range) indicates the parameter is
    out of range to be represented. See Clause 8.5.1 of
    [ITU-T G.992.3].";
            reference
              "ITU-T G.997.1 clause 7.5.1.21 Downstream actual power
              spectral density (ACTPSDds) and clause 7.5.1.22 Upstream
              actual power spectral density (ACTPSDus)";
    
          }
    
          leaf actual-aggregate-transmit-power {
            type union {
              type int16 {
                range "-310..310";
              }
              type enumeration {
                enum "out-of-range" {
                  value 0;
                  description
                    "Indicates that the parameter is out of range to
    be represented.";
                }
              }
            }
            units "0.1 dB";
            description
              "This parameter is the total amount of transmit power
    delivered by the xDSL Transceiver Unit - Central office
    (xTU-C) at the U-C reference point (ACTPSDds), or by the xDSL
    Transceiver Unit - Remote side (xTU-R) at the U-R reference
    point (ACTPSDus), at the instant of measurement. The total
    output power level ranges from -31 dBm to +31 dBm, with
    0.1 dB steps. A special value (enum out-of-range) indicates
    the parameter is out of range to be represented.
    See clause 8.12.3.8 of [ITU-T G.992.3] and
    clause 10.3.4.2.1 of [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.5.1.24 Downstream actual
              aggregate transmit power (ACTATPds) and clause 7.5.1.25
              Upstream actual aggregate transmit power (ACTATPus)";
    
          }
    
          leaf aggachndr {
            type bbf-yang:data-rate32-or-undetermined;
            description
              "This parameter reports the aggregate achievable net data
    rate of the (Near-end) VDSL Transceiver Unit - central Office
    (VTU-O) or (Far-end) VDSL Transceiver Unit - Remote side
    (VTU-R) as specified in G.998.4. The value is coded in step
    of 1000 bit/s. A special value indicates that the aggregate
    achievable net data rate value is reported as being
    undetermined.";
            reference
              "ITU-T G.997.1 clause 7.5.1.42.1 Near-end Aggregate
              achievable net data rate (AGGACHNDR_NE) and clause
              7.5.1.42.2 Far-end Aggregate achievable net data rate
              (AGGACHNDR_FE)";
    
          }
        }  // grouping xtu-line-status-transmitter-directional
    
        grouping xtu-c-status {
          description
            "xDSL Transceiver Unit - Central office (xTU-C) line status.
    This represents transmission in the upstream direction.";
          leaf stamp-test-ne {
            type time-stamp-or-undefined;
            description
              "This parameter is defined in the Access Node Management
    Information Base (AN MIB) and indicates the date/time when
    the near-end test parameters that can change during showtime
    were last updated. This date/time-stamp will include
    information on the Year, Month, Day, Hour, Minute and Second
    of the last update.";
            reference
              "ITU-T G.997.1 clause 7.5.1.36.3 Date/time-stamping of
              near-end test parameters (STAMP-TEST-NE)";
    
          }
    
          container failures {
            description
              "xDSL Transceiver Unit - Central office (xTU-C) line
    failures.";
            uses xtu-c-line-failure-parameters;
          }  // container failures
    
          container downstream {
            description
              "Downstream xDSL Transceiver Unit (xTU) status.";
            uses xtu-line-status-transmitter-directional;
          }  // container downstream
    
          container upstream {
            description
              "Upstream xDSL Transceiver Unit (xTU) status.";
            uses xtu-line-status-receiver-directional;
          }  // container upstream
        }  // grouping xtu-c-status
    
        grouping xtu-r-status {
          description
            "xDSL Transceiver Unit - Remote side (xTU-R) line status. This
    represents transmission in the downstream direction.";
          leaf stamp-test-fe {
            type time-stamp-or-undefined;
            description
              "This parameter is defined in the Access Node Management
    Information Base (AN MIB) and indicates the date/time when
    the far-end test parameters that can change during showtime
    were last updated. This date/time-stamp will include
    information on the Year, Month, Day, Hour, Minute and Second
    of the last update.";
            reference
              "ITU-T G.997.1 clause 7.5.1.36.4 Date/time-stamping of
              far-end test parameters (STAMP-TEST-FE)";
    
          }
    
          container failures {
            description
              "xDSL Transceiver Unit - Remote side (xTU-R) line failures.";
            uses xtu-r-line-failure-parameters;
          }  // container failures
    
          container downstream {
            description
              "Downstream xDSL Transceiver Unit (xTU) status.";
            uses xtu-line-status-receiver-directional;
          }  // container downstream
    
          container upstream {
            description
              "Upstream xDSL Transceiver Unit (xTU) status.";
            uses xtu-line-status-transmitter-directional;
          }  // container upstream
        }  // grouping xtu-r-status
    
        grouping xtu-band-status {
          description
            "The xDSL Transceiver Unit (xTU) Band Status object represents
    current band status and measurements at a particular xTU.";
          list line-attenuation {
            key "band";
            description
              "Line attenuation (LATN) per band.";
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the frequency band.
    For example, 0 denotes US0.";
            }
    
            leaf attenuation {
              type union {
                type uint16 {
                  range "0..1270";
                }
                type enumeration {
                  enum "out-of-range" {
                    value 0;
                    description
                      "Indicates that the line attenuation per band is
    out of range to be represented.";
                  }
                }
              }
              units "0.1 dB";
              description
                "This parameter is defined per usable band. It is squared
    magnitude of the channel characteristics function H(f)
    averaged over this band, and measured during loop
    diagnostic mode and initialization (LATNds for xDSL
    Transceiver Unit - Remote side (xTU-R) / LATNus for xDSL
    Transceiver Unit - Central office (xTU-C)). The exact
    definition is included in the relevant xDSL ITU-T
    Recommendation. The line attenuation ranges per band from
    0 to +127 dB, with 0.1 dB steps. A special value (enum
    out-of-range) indicates the line attenuation per band is
    out of range to be represented.
    For ADSL systems, a single parameter is defined for
    band = 0, as only a single band is usable.";
              reference
                "ITU-T G.997.1 clause 7.5.1.9 Downstream line attenuation
                per band (LATNds) and clause 7.5.1.10 Upstream line
                attenuation per band (LATNus)";
    
            }
          }  // list line-attenuation
    
          list signal-attenuation {
            key "band";
            description
              "Signal attenuation (SATN) per band.";
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the frequency band.
    For example, 0 denotes US0.";
            }
    
            leaf attenuation {
              type union {
                type uint16 {
                  range "0..1270";
                }
                type enumeration {
                  enum "out-of-range" {
                    value 0;
                    description
                      "Indicates that the value is out of range
    to be represented.";
                  }
                }
              }
              units "0.1 dB";
              description
                "This parameter is defined per usable band. It is the
    measured difference between the total power transmitted
    in this band and the total power received in this band
    during loop diagnostic mode, initialization and showtime
    (SATNds for xDSL Transceiver Unit - Remote side (xTU-R) /
    SATNus for xDSL Transceiver Unit - Central office (xTU-C)).
    The exact definition is included in the relevant DSL ITU-T
    Recommendation. The signal attenuation per band ranges
    from 0 to +127 dB, with 0.1 dB steps. A special value
    (enum out-of-range) indicates the signal attenuation per
    band is out of range to be represented.
    For ADSL systems, a single parameter is defined for
    band = 0, as only a single band is usable.";
              reference
                "ITU-T G.997.1 clause 7.5.1.11 Downstream signal
                attenuation per band (SATNds) and clause 7.5.1.12
                Upstream signal attenuation per band (SATNus)";
    
            }
          }  // list signal-attenuation
    
          list snr-margin {
            key "band";
            description
              "Signal-to-Noise Ratio (SNR) margin per band.";
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the frequency band.
    For example, 0 denotes US0.";
            }
    
            leaf margin {
              type union {
                type int16 {
                  range "-640..630";
                }
                type enumeration {
                  enum "out-of-range" {
                    value 0;
                    description
                      "Indicates that the value is out of range to
    be represented.";
                  }
                }
              }
              units "0.1 dB";
              description
                "This parameter is defined per usable band. The
    signal-to-noise ratio margin per band is the maximum
    increase in dB of the received noise power, such that
    the BER requirements are met for all bearer channels in
    the direction of transmission (SNRMpbds for xDSL
    Transceiver Unit - Remote side (xTU-R) / SNRMpbus for xDSL
    Transceiver Unit - Central office (xTU-C)). The SNR margin
    per band ranges from -64 dB to +63 dB, with 0.1 dB steps.
    A special value (enum out-of-range) indicates the parameter
    is out of range to be represented.
    For ADSL systems, a single parameter is defined for
    band = 0, as a single band is usable.";
              reference
                "ITU-T G.997.1 clause 7.5.1.14 Downstream signal-to-noise
                ratio margin per band (SNRMpbds) and clause 7.5.1.17
                Upstream signal-to-noise ratio margin per band
                (SNRMpbus)";
    
            }
          }  // list snr-margin
    
          list upbo-electrical-length-pbn {
            key "band";
            description
              "Upstream Power Back-off (UPBO) electrical length
    per band.";
            leaf band {
              type uint8 {
                range "0..4";
              }
              description
                "Identifies the frequency band.
    For example, 0 denotes US0.";
            }
    
            leaf upbo-electrical-length {
              type union {
                type uint16 {
                  range "0..1280";
                }
                type enumeration {
                  enum "out-of-range" {
                    value 0;
                    description
                      "Indicates that the estimate is greater than
    128 dB.";
                  }
                }
              }
              units "0.1 dB";
              description
                "This parameter is a vector of Upstream Power Back-off
    (UPBO) electrical length per-band estimates for each
    supported upstream band, expressed in dB at 1 MHz (kl0)
    calculated by the VTU (UPBOKLE-pb for the VTU-O,
    UPBOKLE-r-pb for the VTU-R), based on separate measurements
    in the supported upstream bands excluding US0. The value
    ranges from 0 to 128 dB in steps of 0.1 dB, with special
    value (enum out-of-range) which indicates that the estimate
    is greater than 128 dB. This parameter is needed for the
    alternative electrical length estimation method (ELE-M1).";
              reference
                "ITU-T G.997.1 clause 7.5.1.23.3 VTU-O estimated upstream
                power back-off electrical length per band (UPBOKLE-pb)
                and clause 7.5.1.23.4 VTU-R estimated upstream power
                back-off electrical length per band (UPBOKLE-R-pb)";
    
            }
          }  // list upbo-electrical-length-pbn
        }  // grouping xtu-band-status
    
        grouping xtu-channel-status {
          description
            "The xDSL Transceiver Unit (xTU) Channel Status object
    represents current channel status / measurements at a
    particular xTU.";
          leaf actual-data-rate {
            type bbf-yang:data-rate32-or-undetermined;
            description
              "Actual data rate or expected throughput (ETR). See ITU-T
    G.997.1 clause 7.5.2.1 for a detailed definition.";
            reference
              "ITU-T G.997.1 clause 7.5.2.1 Actual data rate";
    
          }
    
          leaf previous-data-rate {
            type bbf-yang:data-rate32-or-undetermined;
            description
              "Previous data rate or expected throughput (ETR). This
    parameter reports the previous net data rate or ETR the
    bearer channel was operating at just before the latest
    net data rate or ETR change event occurred, excluding
    all transitions between L0 state and L1 or L2 states.
    See ITU-T G.997.1 clause 7.5.2.2 for a detailed
    definition.";
            reference
              "ITU-T G.997.1 clause 7.5.2.2 Previous data rate";
    
          }
    
          leaf actual-delay {
            type uint16;
            units "milliseconds";
            description
              "Actual delay due to interleaving or retransmission. See
    ITU-T G.997.1 clause 7.5.2.3 for a detailed definition.
    The actual delay is coded in ms (rounded to the nearest
    ms).";
            reference
              "ITU-T G.997.1 clause 7.5.2.3 Actual delay";
    
          }
    
          leaf actual-inp {
            type uint16 {
              range "0..2047";
            }
            units "0.1 DMT symbols";
            description
              "Actual Impulse Noise Protection (ACTINP). See ITU-T
    G.997.1 clause 7.5.2.4 for a detailed definition. The
    value is coded in fractions of DMT symbols with a
    granularity of 0.1 symbols.
    If retransmission is not used in a given transmit direction,
    this parameter reports the interleaved error correction
    INP. For ITU-T G993.2, the special value 255
    indicates an ACTINP of 25.5 or higher.
    If retransmission is used in a given transmit direction,
    this parameter reports the actual impulse noise protection
    (INP) against SHINE (under specific conditions detailed in
    [ITU T G.998.4]) on the bearer channel in the L0 state.
    The special value 2047 indicates an ACTINP of 204.7
    or higher.";
            reference
              "ITU-T G.997.1 clause 7.5.2.4 Actual impulse noise
              protection (ACTINP)";
    
          }
    
          leaf inpreport {
            type enumeration {
              enum "0" {
                value 0;
                description
                  "If set to 0, the Actual Impulse Noise Protection (ACTINP)
    is computed according to the INP_no_erasure formula
    (see clause 9.6 of [ITU-T G.993.2]).";
              }
              enum "1" {
                value 1;
                description
                  "If set to 1, the Actual Impulse Noise Protection (ACTINP)
    is the value estimated by the xDSL Transceiver Unit (xTU)
    receiver.";
              }
            }
            description
              "This parameter reports the method used to compute the
    Actual Impulse Noise Protection (ACTINP). If set to 0, the
    ACTINP is computed according to the INP_no_erasure formula
    (see clause 9.6 of [ITU-T G.993.2]). If set to 1, the ACTINP
    is the value estimated by the xDSL Transceiver Unit (xTU)
    receiver.";
            reference
              "ITU-T G.997.1 clause 7.5.2.5 Impulse noise protection
              reporting mode (INPREPORT)";
    
          }
    
          leaf nfec {
            type uint8 {
              range "0..255";
            }
            units "bytes";
            description
              "This parameter reports the actual Reed-Solomon codeword
    size used in the latency path in which the bearer
    channel is transported. The value is coded in bytes. It
    ranges from 0 to 255.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.1 Actual size of
              Reed-Solomon codeword (NFEC)";
    
          }
    
          leaf rfec {
            type uint8 {
              range "0..16";
            }
            units "bytes";
            description
              "This parameter reports the actual number of Reed-Solomon
    redundancy bytes per codeword used in the latency path
    in which the bearer channel is transported. The value is
    coded in bytes. It ranges from 0 to 16. The value 0
    indicates no Reed-Solomon coding.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.2 Actual number of
              Reed-Solomon redundancy bytes (RFEC)";
    
          }
    
          leaf actual-number-of-bits-per-symbol {
            type uint32 {
              range "0..131071";
            }
            units "bits";
            description
              "This parameter reports the actual number of bits per
    symbol assigned to the latency path in which the bearer
    channel is transported. This value does not include
    trellis overhead. The value is coded in bits. It ranges
    from 0 to 131071.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.3 Actual number of bits per
              symbol (LSYMB)";
    
          }
    
          leaf actual-interleaving-depth {
            type uint16 {
              range "1..4096";
            }
            description
              "This parameter reports the actual depth of the
    interleaver used in the latency path in which the bearer
    channel is transported. The value ranges from 1 to 4096
    in steps of 1. The value 1 indicates no interleaving.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.4 Actual interleaving depth
              (INTLVDEPTH)";
    
          }
    
          leaf actual-interleaving-block-length {
            type uint8 {
              range "4..255";
            }
            description
              "This parameter reports the actual block length of the
    interleaver used in the latency path in which the bearer
    channel is transported. The value ranges from 4 to 255
    in steps of 1.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.5 Actual interleaving block
              length (INTLVBLOCK)";
    
          }
    
          leaf actual-latency-path {
            type uint8 {
              range "0..3";
            }
            description
              "This parameter reports the index of the actual latency
    path in which the bearer is transported. The valid
    values are 0, 1, 2, 3.";
            reference
              "ITU-T G.997.1 clause 7.5.2.7 Actual latency path
              (LPATH)";
    
          }
    
          leaf fec-codewords-per-dtu {
            type uint8 {
              range "1..64";
            }
            description
              "This parameter reports the number of Reed-Solomon fec
    codewords per Data Transfer Unit (DTU), used in the latency
    path in which the bearer channel is transported, also known
    as the Q parameter. This parameter only applies to systems
    supporting ITU-T G.998.4.";
            reference
              "ITU-T G.997.1 clause 7.5.2.6.6 (RSPERDTU) and ITU-T
              G.998.4 clause 9.4.3.";
    
          }
        }  // grouping xtu-channel-status
    
        grouping actual-ndr-inp-rein {
          description
            "This grouping contains Actual Net Data Rate (ACTNDR) and
    Actual Net Data Rate against Repetitive Electrical Impulse
    Noise (ACTINP-REIN).";
          leaf actual-ndr {
            type bbf-yang:data-rate32-or-undetermined;
            description
              "This parameter is independent of whether
    retransmission is used or not in a given transmit
    direction.
    - In L0 state, this parameter reports the net data
    rate (as specified in [ITU-T G.992.3], [ITU-T G.992.5]
    or [ITU-T G.993.2]) at which the bearer channel is
    operating.
    - In L2 state, the parameter contains the net data
    rate (as specified in [ITU-T G.992.3], [ITU-T G.992.5]
    or [ITU-T G.993.2]) in the previous L0 state.
    The data rate is coded in steps of 1,000 bit/s.";
            reference
              "ITU-T G.997.1 clause 7.5.2.8 Actual net data rate
              (ACTNDR)";
    
          }
    
          leaf actual-inp-against-rein {
            type uint8 {
              range "0..255";
            }
            units "0.1 DMT symbols";
            description
              "If retransmission is used in a given transmit
    direction, this parameter reports the actual Impulse
    Noise Protection (INP) against Repetitive Electrical Impulse
    Noise (ACTINP-REIN) (under specific conditions detailed in
    [ITU T G.998.4]) on the bearer channel in the L0 state. In
    the L2 state, the parameter contains the INP in the previous
    L0 state. The value is coded in fractions of DMT symbols with
    a granularity of 0.1 symbols.
    The range is from 0 to 25.4. A special value of 255
    indicates an ACTINP_REIN of 25.5 or higher.";
            reference
              "7.5.2.9 Actual impulse noise protection against REIN
              (ACTINP_REIN)";
    
          }
        }  // grouping actual-ndr-inp-rein
    
        grouping xtu-c-line-performance {
          description
            "Line performance data for a given xDSL Transceiver Unit -
    Central office (xTU-C).";
          leaf measured-time {
            type uint32;
            description
              "Reports the amount of time, measured in seconds,
    that statistics for this interval have been counted.";
            reference
              "ITU-T G.997.2 clause 7.7.1 and 7.8.1.";
    
          }
    
          leaf invalid-data-flag {
            type boolean;
            description
              "Reports the validity of the corresponding
    performance monitoring data. true = invalid.";
            reference
              "ITU-T G.997.2 clause 7.7.2 and 7.8.2.";
    
          }
    
          leaf forward-error-correction-seconds-l {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals with one
    or more Forward Error Correction (FEC) anomalies summed over
    all received bearer channels.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.1 Forward error correction
              second - Line (FECS-L)";
    
          }
    
          leaf errored-seconds-l {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals with one
    or more Cyclic Redundancy Check (CRC-8) anomalies summed over
    all received bearer channels, or one or more Loss of Signal
    (LOS) defects, or one or more Severely Errored Frame (SEF)
    defects, or one or more Loss of Power (LPR) defects.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.2 Errored second - Line
              (ES-L)";
    
          }
    
          leaf severely-errored-seconds-l {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of severely errored seconds
    (SES). An SES is declared if, during a 1-second
    interval, there are 18 or more Cyclic Redundancy Check
    (CRC-8) anomalies in one or more of the received bearer
    channels, or one or more Loss of Signal (LOS) defects, or one
    or more Severely Errored Frame (SEF) defects, or one or more
    Loss of Power (LPR) defects. If [ITU-T G.998.4] is supported
    and retransmission is enabled in the near-end received
    direction, a SES is also declared if, during a 1-second
    interval, there is one or more Severe Loss of Error-Free
    Throughput (SEFTR) defect in the near-end received
    direction.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.3 Severely errored second -
              Line (SES-L)";
    
          }
    
          leaf loss-of-signal-seconds-l {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals
    containing one or more Loss of Signal (LOS) defects.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.4 LOS second - Line
              (LOSS-L)";
    
          }
    
          leaf unavailable-seconds-l {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals for
    which the xDSL line is unavailable. Some parameter
    counts are inhibited during unavailability - see ITU-T
    G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.5 Unavailable second - Line
              (UAS-L)";
    
          }
    
          list inminpeq-l {
            key "inminpeq-index";
            description
              "This parameter is a count of the near-end INMAINPEQi
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.4.1 INM INPEQ histogram 1..17
              (INMINPEQ1..17-L)";
    
            leaf inminpeq-index {
              type uint8 {
                range "1..17";
              }
              description
                "Identifies the INMAINPEQ histogram bin.";
            }
    
            leaf inminpeq-l {
              type bbf-yang:performance-counter32-or-inactive;
              description
                "Count of the near-end INMAINPEQ anomalies.";
            }
          }  // list inminpeq-l
    
          leaf inmme-l {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the near-end INMAME
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.4.2 INM total measurement
              (INMME-L)";
    
          }
    
          list inmiat-l {
            key "inminiat-index";
            description
              "This parameter is a count of the near-end INMAIATi
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.4.3 INM IAT histogram 0..7
              (INMIAT0..7-L)";
    
            leaf inminiat-index {
              type uint8 {
                range "0..7";
              }
              description
                "Identifies the INMAIAT histogram bin.";
            }
    
            leaf inmiat-l {
              type bbf-yang:performance-counter32-or-inactive;
              description
                "Count of the near-end INMAIAT anomalies.";
            }
          }  // list inmiat-l
    
          leaf sos-success-ne {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the total number of
    successful Save our Showtime (SOS) procedures initiated by
    the near-end xDSL Transceiver Unit (xTU) on the line during
    the accumulation period. Parameter procedures will be as
    defined in ITU-T G.997.1 clause 7.2.7. Successful SOS is
    defined in clause 12.1.4 of [ITU-T G.993.2].
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'sos' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.6.1 Near-end successful SOS
              count (SOS-SUCCESS-NE)";
    
          }
    
          leaf leftr-defects-seconds-counter-ne {
            type bbf-yang:performance-counter32;
            description
              "Near-end line Low Error-Free Throughput (LEFTR) defects
    seconds counter. If retransmission is used in a given
    transmit direction, this parameter is a count of the seconds
    with a near-end ''leftr'' defect present (see clause 11.4.1
    of [ITU-T G.998.4] for the definition of this counter).
    This near-end counter is only defined for upstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.6 leftr defects seconds
              counter";
    
          }
    
          leaf error-free-bits-counter-ne {
            type bbf-yang:performance-counter32;
            description
              "Near-end line error-free bits counter. If retransmission
    is used in a given transmit direction, this parameter is
    a count of the number of error-free bits passed over the
    Beta1 reference point, divided by 65536 = 2^16 (see
    clause 11.4.2 of [ITU-T G.998.4] for the definition of
    this counter).
    This near-end counter is only defined for upstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.7 Error-free bits counter";
    
          }
    
          leaf minimum-error-free-throughput-ne {
            type bbf-yang:performance-counter32;
            units "bit/s";
            description
              "Near-end Minimum Error-Free Throughput (MINEFTR). If
    retransmission is used in a given transmit direction,
    this parameter MINEFTR reports the minimum of the EFTR
    observed over the 15-min or 24-hour accumulation period
    (see clause 11.4.3 of [ITU-T G.998.4] for the definition
    of this parameter). The value is reported in bit/s.
    This near-end value is only defined for upstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.8 Minimum error-free
              throughput (MINEFTR)";
    
          }
    
          leaf full-initializations {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of the total number of full
    initializations attempted on the line (successful and
    failed) during the accumulation period. Parameter
    procedures are defined in ITU-T G997.1 clause 7.2.7.";
            reference
              "ITU-T G.997.1 clause 7.2.1.3.1 Full initialization
              count";
    
          }
    
          leaf failed-full-initializations {
            type bbf-yang:performance-counter32;
            description
              "This performance parameter is a count of the total
    number of failed full initializations during the
    accumulation period. A failed full initialization is
    when showtime is not reached at the end of the full
    initialization procedure. Parameter procedures are
    defined in ITU-T G997.1 clause 7.2.7.";
            reference
              "ITU-T G.997.1 clause 7.2.1.3.2 Failed full
              initialization count";
    
          }
    
          leaf short-initializations {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the total number of fast
    retrains or short initializations attempted on the line
    (successful and failed) during the accumulation period.
    Parameter procedures are defined in ITU-T G997.1 clause
    7.2.7.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line as this is only applicable
    when running in an ADSL mode of operation.";
            reference
              "ITU-T G.997.1 clause 7.2.1.3.3 Short initialization
              count";
    
          }
    
          leaf failed-short-initializations {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This performance parameter is a count of the total
    number of failed fast retrains or short initializations
    during the accumulation period. A failed fast retrain or
    short initialization is when showtime is not reached at
    the end of the fast retrain or short initialization
    procedure, e.g., when: A Cyclic Redundancy Check (CRC) error
    is detected, a time-out occurs, or a fast retrain profile is
    unknown. Parameter procedures are defined in ITU-T G997.1
    clause 7.2.7.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line as this is only applicable
    when running in an ADSL mode of operation.";
            reference
              "ITU-T G.997.1 clause 7.2.1.3.4 Failed short
              initialization count";
    
          }
    
          leaf loss-of-power-intrpt {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the number of lpr_intrpt
    anomalies occurring during the accumulation period.
    Those anomalies are defined in clause 11.3.1.1 of [ITU-T
    G.993.2]. A special value (enum inactive) indicates that this
    counter is not active on the line.
    Threshold reports for this counter are not specified.";
            reference
              "ITU-T G.997.1 clause 7.2.1.8.1 Loss of Power
              interruption count (LPR_INTRPT)";
    
          }
    
          leaf host-reinit-interruptions {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the number of hri_intrpt
    anomalies occurring during the accumulation period.
    Those anomalies are defined in clause 11.3.1.1 of [ITU-T
    G.993.2]. A special value (enum inactive) indicates that this
    counter is not active on the line.
    Threshold reports for this counter are not specified.";
            reference
              "ITU-T G.997.1 clause 7.2.1.8.2 Host-Reinit interruption
              count (HRI_INTRPT)";
    
          }
    
          leaf spontaneous-intrpt {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the number of spont_intrpt
    anomalies occurring during the accumulation period.
    Those defects are defined in clause 11.3.1.1 of [ITU-T
    G.993.2]. A special value (enum inactive) indicates that this
    counter is not active on the line.
    Threshold reports are specified for the 24-hour interval
    counter only.";
            reference
              "ITU-T G.997.1 clause 7.2.1.8.3 Spontaneous interruption
              count (SPONT_INTRPT)";
    
          }
    
          leaf loss-of-signal {
            type bbf-yang:performance-counter32;
            description
              "Reports a count of the Loss of Signal (LOS) failures.";
            reference
              "Borrowed from ITU-T G.997.2 clause 7.7.4 (LOS).
              Count of failures defined in ITU-T G.997.1
              clause 7.1.1.1.1.";
    
          }
    
          leaf loss-of-frame {
            type bbf-yang:performance-counter32;
            description
              "Reports a count of the Loss of Frame (LOF) failures.";
            reference
              "Count of failures defined in ITU-T G.997.1
              clause 7.1.1.1.2.";
    
          }
    
          leaf loss-of-power {
            type bbf-yang:performance-counter32;
            description
              "reports a count of the Loss of Power (LPR) failures.";
            reference
              "Borrowed from ITU-T G.997.2 clause 7.7.7 (LPR).
              Count of failures defined in ITU-T G.997.1
              clause 7.1.1.1.3.";
    
          }
    
          leaf maximum-error-free-throughput-ne {
            if-feature maxeftr;
            type bbf-yang:performance-counter32;
            units "bit/s";
            description
              "Near-end Maximum Error-Free Throughput (MAXEFTR). If
    retransmission is used in a given transmit direction,
    this parameter MAXEFTR reports the maximum of the EFTR
    observed over the 15-min or 24-hour accumulation period
    (see clause 11.4.4 of [ITU-T G.998.4] for the definition
    of this parameter). The value is reported in bit/s.
    This near-end value is only defined for upstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.1.9 Maximum error-free
              throughput (MAXEFTR)";
    
          }
    
          leaf sra-success-ne {
            if-feature successful-sra;
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of the total number of
    successful Seamless Rate Adaptation (SRA) procedures
    initiated by the near-end xDSL Transceiver Unit (xTU) on the
    line during the accumulation period. Parameter procedures
    will be as defined in ITU-T G.997.1 clause 7.2.9. Successful
    SRA is defined in clause 11.3.1.6 of [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.2.9 Near-end successful SRA
              count (SRA-SUCCESS-NE)";
    
          }
        }  // grouping xtu-c-line-performance
    
        grouping xtu-r-line-performance {
          description
            "Line performance data for a given xDSL Transceiver Unit -
    Remote side (xTU-R).";
          leaf measured-time {
            type uint32;
            description
              "Reports the amount of time, measured in seconds,
    that statistics for this interval have been counted.";
            reference
              "ITU-T G.997.2 clause 7.7.1 and 7.8.1.";
    
          }
    
          leaf invalid-data-flag {
            type boolean;
            description
              "Reports the validity of the corresponding
    performance monitoring data. true = invalid.";
            reference
              "ITU-T G.997.2 clause 7.7.2 and 7.8.2.";
    
          }
    
          leaf forward-error-correction-seconds-lfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals with one
    or more Far-End Forward Error Correction  (FFEC) anomalies
    summed over all transmitted bearer channels.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.1 Forward error correction
              second - Line far-end (FECS-LFE)";
    
          }
    
          leaf errored-seconds-lfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of one-second intervals with
    one or more Far-End Block Error (FEBE) anomalies summed over
    all transmitted bearer channels, or one or more Far-End Loss
    of Signal (LOS-FE) defects, or one or more Remote Defect
    Indication (RDI) defects, or one or more Far-End Loss of
    Power (LPR-FE) defects.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.2 Errored second - Line
              far-end (ES-LFE)";
    
          }
    
          leaf severely-errored-seconds-lfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of severely errored seconds
    (SES). An SES is declared if, during a 1-second
    interval, there are 18 or more Far-End Block Error (FEBE)
    anomalies in one or more of the transmitted bearer channels,
    or one or more Far-End Loss of Signal (LOS-FE) defects, or
    one or more Remote Defect Indication (RDI) defects, or one or
    more Far-End Loss of Power (LPR-FE) defects. If
    [ITU-T G.998.4] is supported and retransmission is enabled in
    the far-end received direction, a SES-LFE is also declared
    if, during a 1-second interval, there is one or more severe
    loss of error-free throughput (seftr) defect in the far-end
    received direction.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.3 Severely errored second -
              Line far-end (SES-LFE)";
    
          }
    
          leaf loss-of-signal-seconds-lfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals
    containing one or more far-end Loss of Signal (LOS)
    defects.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.4 LOS second - Line far-end
              (LOSS-LFE)";
    
          }
    
          leaf unavailable-seconds-lfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of 1-second intervals for
    which the far-end xDSL line is unavailable. Some
    parameter counts are inhibited during unavailability -
    see ITU-T G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.5 Unavailable seconds -
              Line far-end (UAS-LFE)";
    
          }
    
          list inminpeq-lfe {
            key "inminpeq-index";
            description
              "This parameter is a count of the far-end INMAINPEQi
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.1.5.1 INM INPEQ histogram 1..17
              (INMINPEQ1..17-LFE)";
    
            leaf inminpeq-index {
              type uint8 {
                range "1..17";
              }
              description
                "Identifies the INMAINPEQ histogram bin.";
            }
    
            leaf inminpeq-lfe {
              type bbf-yang:performance-counter32-or-inactive;
              description
                "Count of the far-end INMAINPEQ anomalies.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            }
          }  // list inminpeq-lfe
    
          leaf inmme-lfe {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the far-end INMAME
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.5.2 INM total measurement
              (INMME-LFE)";
    
          }
    
          list inmiat-lfe {
            key "inminiat-index";
            description
              "This parameter is a count of the far-end INMAIATi
    anomalies occurring on the line during the accumulation
    period. This parameter is subject to inhibiting - see
    ITU-T G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.1.5.3 INM IAT histogram 0..7
              (INMIAT0..7-LFE)";
    
            leaf inminiat-index {
              type uint8 {
                range "0..7";
              }
              description
                "Identifies the INMAIAT histogram bin.";
            }
    
            leaf inmiat-lfe {
              type bbf-yang:performance-counter32-or-inactive;
              description
                "Count of the far-end INMAIAT anomalies.
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'impulse-noise-monitoring' is not supported.";
            }
          }  // list inmiat-lfe
    
          leaf sos-success-fe {
            type bbf-yang:performance-counter32-or-inactive;
            description
              "This parameter is a count of the total number of
    successful Save our Showtime (SOS) procedures initiated by
    the far-end xDSL Transceiver Unit (xTU) on the line during
    the accumulation period. Parameter procedures will be as
    defined in ITU-T G.997.1 clause 7.2.7. Successful SOS is
    defined in clause 12.1.4 of [ITU-T G.993.2].
    
    A special value (enum inactive) indicates that this
    counter is not active on the line. This occurs when the
    feature 'sos' is not supported.";
            reference
              "ITU-T G.997.1 clause 7.2.1.7.1 Far-end successful SOS
              count (SOS-SUCCESS-FE)";
    
          }
    
          leaf leftr-defects-seconds-counter-lfe {
            type bbf-yang:performance-counter32;
            description
              "Far-end line Low Error-Free Throughput (LEFTR) defects
    seconds counter. If retransmission is used in a given
    transmit direction, this parameter is a count of the seconds
    with a far-end leftr defect present (see clause 11.4.1 of
    [ITU-T G.998.4] for the definition of this counter).
    The far-end counter is only defined for downstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.6 leftr defects seconds
              counter";
    
          }
    
          leaf error-free-bits-counter-lfe {
            type bbf-yang:performance-counter32;
            description
              "Far-end line error-free bits counter. If retransmission
    is used in a given transmit direction, this parameter is
    a count of the number of error-free bits passed over the
    Beta1 reference point, divided by 65536 = 2^16 (see
    clause 11.4.2 of [ITU-T G.998.4] for the definition of
    this counter).
    This far-end counter is only defined for downstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.7 Error-free bits counter";
    
          }
    
          leaf minimum-error-free-throughput-lfe {
            type bbf-yang:performance-counter32;
            units "bit/s";
            description
              "Far-end minimum error-free throughput (MINEFTR). If
    retransmission is used in a given transmit direction,
    this parameter MINEFTR reports the minimum of the EFTR
    observed over the 15-min or 24-hour accumulation period
    (see clause 11.4.3 of [ITU-T G.998.4] for the definition
    of this parameter). The value is reported in bit/s.
    This far-end value is only defined for downstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.8 Minimum error-free
              throughput (MINEFTR)";
    
          }
    
          leaf loss-of-signal-fe {
            type bbf-yang:performance-counter32;
            description
              "Reports a count of the far-end Loss of Signal (LOS)
    failures.";
            reference
              "Borrowed from ITU-T G.997.2 clause 7.7.4 (LOS).
              Count of failures defined in ITU-T G.997.1
              clause 7.1.1.2.1.";
    
          }
    
          leaf loss-of-frame-fe {
            type bbf-yang:performance-counter32;
            description
              "Reports a count of the Loss of Frame (LOF) failures.";
            reference
              "Count of failures defined in ITU-T G.997.1
              clause 7.1.1.2.2.";
    
          }
    
          leaf loss-of-power-fe {
            type bbf-yang:performance-counter32;
            description
              "reports a count of the Loss of Power (LPR) failures.";
            reference
              "Borrowed from ITU-T G.997.2 clause 7.7.7 (LPR).
              Count of failures defined in ITU-T G.997.1
              clause 7.1.1.2.3.";
    
          }
    
          leaf maximum-error-free-throughput-lfe {
            if-feature maxeftr;
            type bbf-yang:performance-counter32;
            units "bit/s";
            description
              "Far-end maximum error-free throughput (MAXEFTR). If
    retransmission is used in a given transmit direction,
    this parameter MAXEFTR reports the maximum of the EFTR
    observed over the 15-min or 24-hour accumulation period
    (see clause 11.4.4 of [ITU-T G.998.4] for the definition
    of this parameter). The value is reported in bit/s.
    This far-end value is only defined for downstream.";
            reference
              "ITU-T G.997.1 clause 7.2.1.2.9 Maximum error-free
              throughput (MAXEFTR)";
    
          }
    
          leaf sra-success-fe {
            if-feature successful-sra;
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of the total number of
    successful Seamless Rate Adaptation (SRA) procedures
    initiated by the far-end xDSL Transceiver Unit (xTU) on the
    line during the accumulation period. Parameter procedures
    will be as defined in ITU-T G.997.1 clause 7.2.9. Successful
    SRA is defined in clause 11.3.1.7 of [ITU-T G.993.2].";
            reference
              "ITU-T G.997.1 clause 7.2.9 Far-end successful SRA
              count (SRA-SUCCESS-FE)";
    
          }
        }  // grouping xtu-r-line-performance
    
        grouping line-time-stamp {
          description
            "Time stamp for line performance parameters.";
          leaf time-stamp {
            type yang:date-and-time;
            description
              "Reports the start date/time for this interval.";
            reference
              "ITU-T G.997.2 clause 7.7.3.";
    
          }
        }  // grouping line-time-stamp
    
        grouping xtu-channel-performance-c {
          description
            "The xDSL Transceiver Unit (xTU) Channel (near-end) performance
    object represents channel performance related data for a
    particular channel associated with a particular xDSL
    Transceiver Unit - Central office (xTU-C).";
          leaf measured-time {
            type uint32;
            description
              "Reports the amount of time, measured in seconds,
    that statistics for this interval have been counted.";
            reference
              "ITU-T G.997.2 clause 7.7.1 and 7.8.1.";
    
          }
    
          leaf invalid-data-flag {
            type boolean;
            description
              "Reports the validity of the corresponding
    performance monitoring data.  true = invalid.";
            reference
              "ITU-T G.997.2 clause 7.7.2 and 7.8.2.";
    
          }
    
          leaf code-violations-c {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of CRC-8 anomalies (the number
    of incorrect Cyclic Redundancy Check (CRC)) occurring in the
    bearer channel during the accumulation period. This parameter
    is subject to inhibiting - see ITU-T G.997.1 clause
    7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.1.1 Code violation - Channel
              (CV-C)";
    
          }
    
          leaf forward-error-corrections-c {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of Forward Error Correction (FEC)
    anomalies (the number of corrected code words) occurring in
    the bearer channel during the accumulation period. This
    parameter is subject to inhibiting - see ITU-T G.997.1 clause
    7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.1.2 Forward error correction
              - Channel (FEC-C)";
    
          }
    
          leaf uncorrected-dtu-c {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of rtx-uc anomalies
    (the number of uncorrected Data Transfer Units (DTU))
    occurring in the bearer channel during the accumulation
    period. This parameter only applies to systems supporting
    ITU-T G.998.4. This parameter is subject to inhibiting -
    see ITU-T G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.1.3 Uncorrected DTU - Channel
              (RTXUC-C).";
    
          }
        }  // grouping xtu-channel-performance-c
    
        grouping xtu-channel-performance-cfe {
          description
            "The xDSL Transceiver Unit (xTU) Channel far-end performance
    object represents channel performance related data for a
    particular channel associated with a particular xDSL
    Transceiver Unit - Remote side (xTU-R).";
          leaf measured-time {
            type uint32;
            description
              "Reports the amount of time, measured in seconds,
    that statistics for this interval have been counted.";
            reference
              "ITU-T G.997.2 clause 7.7.1 and 7.8.1.";
    
          }
    
          leaf invalid-data-flag {
            type boolean;
            description
              "Reports the validity of the corresponding
    performance monitoring data.  true = invalid.";
            reference
              "ITU-T G.997.2 clause 7.7.2 and 7.8.2.";
    
          }
    
          leaf code-violations-cfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of Far-End Block Error (FEBE)
    anomalies occurring in the bearer channel during the
    accumulation period. This parameter is subject to inhibiting
    - see ITU-T G997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.2.1 Code violation - Channel
              far-end (CV-CFE)";
    
          }
    
          leaf forward-error-corrections-cfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of Far-End Forward Error Correction
    (FFEC) anomalies occurring in the bearer channel during the
    accumulation period. This parameter is subject to inhibiting
    - see ITU-T G997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.2.2 Forward error correction
              - Channel far-end (FEC-CFE)";
    
          }
    
          leaf uncorrected-dtu-cfe {
            type bbf-yang:performance-counter32;
            description
              "This parameter is a count of far-end rtx-uc anomalies
    (the number of uncorrected Data Transfer Units (DTU))
    occurring in the bearer channel during the accumulation
    period. This parameter only applies to systems supporting
    ITU-T G.998.4. This parameter is subject to inhibiting -
    see ITU-T G.997.1 clause 7.2.7.13.";
            reference
              "ITU-T G.997.1 clause 7.2.2.2.3 Uncorrected DTU - Channel
              far-end (RTXUC-CFE)";
    
          }
        }  // grouping xtu-channel-performance-cfe
    
        grouping performance-history-15min-parameters {
          description
            "Defines common parameters required of historical
    performance counters across 15 minute intervals.";
          leaf number-of-intervals {
            type performance-15min-interval;
            description
              "The total number of 15 minute PM intervals for which data
    was collected. ";
          }
    
          leaf non-valid-intervals {
            type performance-15min-interval;
            description
              "The number of 15 minute PM intervals for which the data
    is considered to be invalid or incomplete.";
          }
        }  // grouping performance-history-15min-parameters
    
        grouping performance-history-24hr-parameters {
          description
            "Defines common parameters required of historical
    performance counters across 24 hour intervals.";
          leaf number-of-intervals {
            type performance-24hr-interval;
            description
              "The total number of 24 hour performance monitoring
    intervals for which data was collected. ";
          }
    
          leaf non-valid-intervals {
            type performance-24hr-interval;
            description
              "The number of 24 hour performance monitoring
    intervals for which the data is considered to be
    invalid or incomplete.";
          }
        }  // grouping performance-history-24hr-parameters
    
        grouping xtu-channel-time-stamp {
          description
            "Time stamp of channel performance parameters.";
          leaf time-stamp {
            type yang:date-and-time;
            description
              "Reports the start date/time for this interval.";
            reference
              "ITU-T G.997.2 clause 7.8.3.";
    
          }
        }  // grouping xtu-channel-time-stamp
    
        grouping line-threshold-profile {
          description
            "The xDSL Line Threshold Template object represents a complete
    set of performance monitoring thresholds for an xDSL line.";
          leaf forward-error-correction-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Forward Error Correction
    Seconds (FECS). A special value (0) indicates the
    threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7";
    
          }
    
          leaf errored-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring
    threshold for threshold reports of Errored Seconds (ES).
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf severely-errored-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Severely Errored Seconds (SES).
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf loss-of-signal-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Loss of Signal Seconds Line
    (LOSS). A special value (0) indicates the threshold is
    disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf unavailable-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Unavailable Seconds (UAS).
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf leftr-defects-seconds-threshold {
            type uint32;
            units "1 second";
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of near-end line Low Error-Free
    Throughput (LEFTR) defects seconds. The near-end line leftr
    defects seconds counter is only defined in upstream.
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf leftr-defect-threshold {
            type union {
              type uint8 {
                range "0..99";
              }
              type enumeration {
                enum "etr-default-threshold" {
                  value 0;
                  description
                    "Indicates that the Expected Throughput Rate (ETR) shall
    be used as the default threshold for declaring a Low
    Error-Free Throughput (LEFTR) defect.";
                }
              }
            }
            units "0.01";
            default "etr-default-threshold";
            status deprecated;
            description
              "If retransmission is used in a given transmit direction,
    LEFTR_THRESH specifies the threshold for declaring a
    leftr defect (see clause 11.1.12 of ITU-T G.998.4)
    for the definition of this threshold).
    The value is coded as a fraction of the Net Data Rate (NDR)
    with valid range from 0.00 to 0.99 in increments of 0.01.
    The value 0.00 implies no leftr-defects are declared.
    A special value of (enum etr-default-threshold) means the
    Expected Throughput Rate (ETR) shall be used as the default
    threshold for declaring a leftr defect.
    
    This configuration has been deprecated as it is not intended
    to be a performance threshold.";
            reference
              "ITU-T G.997.1 clause 7.3.1.12.";
    
          }
    
          leaf full-initializations-threshold {
            type uint32;
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of the full initializations
    attempted on the line (successful and failed) during the
    accumulation period.
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf failed-full-initializations-threshold {
            type uint32;
            default "0";
            description
              "This performance parameter is the performance monitoring
    threshold for threshold reports of the total number of
    failed full initializations during the accumulation
    period. A special value (0) indicates the threshold is
    disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf short-initializations-threshold {
            type uint32;
            default "0";
            description
              "This parameter is is the performance monitoring
    threshold for threshold reports of the total number of
    fast retrains or short initializations attempted on the
    line (successful and failed) during the accumulation
    period. A special value (0) indicates the threshold is
    disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf failed-short-initializations-threshold {
            type uint32;
            default "0";
            description
              "This performance parameter is the performance monitoring
    threshold for threshold reports of the total number of
    failed fast retrains or short initializations during the
    accumulation period. A special value (0) indicates the
    threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf spontaneous-interruptions-threshold {
            type uint32;
            default "0";
            description
              "This parameter is a count is the performance monitoring
    threshold for threshold reports of the spont_intrpt
    anomalies occurring during the accumulation period. Only
    the counters on the current and previous 24-hours
    intervals are supported. Threshold reports are specified
    for the 24-hour interval counter only. A special value (0)
    indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
        }  // grouping line-threshold-profile
    
        grouping channel-threshold-profile {
          description
            "The Channel Thresholds object represents a set of
    performance monitoring thresholds for a particular channel
    associated with an xDSL Line at a particular xTU.";
          leaf code-violations-threshold {
            type uint32;
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Code Violations (CV).
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf forward-error-corrections-threshold {
            type uint32;
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of Forward Error Corrections (FEC).
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.997.1 clause 7.2.7.";
    
          }
    
          leaf uncorrected-dtus-threshold {
            type uint32;
            default "0";
            description
              "This parameter is the performance monitoring threshold
    for threshold reports of uncorrected Data Transfer Units
    (DTUs). This parameter only applies to systems supporting
    ITU-T G.998.4.
    A special value (0) indicates the threshold is disabled.";
            reference
              "ITU-T G.998.4.";
    
          }
        }  // grouping channel-threshold-profile
    
        grouping xtu-sub-carrier-status {
          description
            "The xDSL Transceiver Unit (xTU) Sub-Carrier Status object
    represents current detailed status / measurements relating to a
    particular sub-carrier or a sub-carrier group in an xDSL Line
    at a particular xTU.";
          container hlin {
            description
              "State data nodes related to sub-carrier Hlin.";
            leaf hlin-scale {
              type uint16 {
                range "1..65535";
              }
              description
                "This parameter is the scale factor to be applied to the
    Hlin(f) values. It is represented as an unsigned integer
    in the range from 1 to 65535 = 2^16 - 1. This parameter
    is only available after a loop diagnostic procedure.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.1 Downstream H(f) linear
                representation scale (HLINSCds) and clause 7.5.1.26.7
                Upstream H(f) linear representation scale (HLINSCus)";
    
            }
    
            leaf hlin-sub-carrier-group-size {
              type sub-carrier-group-size;
              description
                "This parameter is the number of subcarriers per group
    used to report HLINps.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.2 Downstream H(f) linear
                subcarrier group size (HLINGds) and clause 7.5.1.26.8
                Upstream H(f) linear subcarrier group size (HLINGus)";
    
            }
    
            leaf hlinps {
              type per-sub-carrier-group-int16-tuple;
              description
                "This parameter is an array of complex values in linear
    scale for Hlin(f). Each array entry represents the
    Hlin(f = i*HLING*deltaf) value for a particular
    subcarrier group index i. The Hlin(f) is represented as
    ((HLINSC/2^15) * ((a(i) + j * b(i))/2^15)), where a(i)
    and b(i) are signed integers in the (-2^15 + 1) to
    (+2^15 - 1) range.
    
    For each 16-bit tuple, the first 16-bit value, a(i), can
    have values in the range -32,767 to 32,767. The second
    16-bit value, b(i), can have values in the range -32,767
    to 32,767. In each tuple the value for a(i) is loaded
    first.
    
    A special value (-32,768) indicates that no measurement
    could be done for this subcarrier group because it is out
    of the passband or that the attenuation is out of range to
    be represented.
    
    This parameter is only available after a loop diagnostic
    procedure.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.3 Downstream H(f) linear
                representation (HLINpsds) and 7.5.1.26.9 Upstream H(f)
                linear representation (HLINpsus)";
    
            }
          }  // container hlin
    
          container hlog {
            description
              "State data nodes related to sub-carrier Hlog.";
            leaf hlog-measurement-time {
              type uint16 {
                range "1..65535";
              }
              units "DMT symbols";
              description
                "This parameter contains the number of symbols used to
    measure the Hlog(f) values. It is represented as an
    unsigned integer in the range from 1 to 2^16 - 1.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.4 Downstream H(f)
                logarithmic measurement time (HLOGMTds) and clause
                7.5.1.26.10 Upstream H(f) logarithmic measurement time
                (HLOGMTus)";
    
            }
    
            leaf hlog-sub-carrier-group-size {
              type sub-carrier-group-size;
              description
                "This parameter is the number of subcarriers per group
    used to report HLOGps.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.5 Downstream H(f)
                logarithmic subcarrier group size (HLOGGds) and clause
                7.5.1.26.11 Upstream H(f) logarithmic subcarrier group
                size (HLOGGus)";
    
            }
    
            leaf hlogps {
              type per-sub-carrier-group-uint16;
              description
                "This parameter is an array of real values in dB for
    Hlog(f). Each array entry represents the real Hlog(f = i
    * HLOGG * deltaf) value for a particular subcarrier
    group subcarrier index i. The real Hlog(f) value is
    represented as (6 - m(i)/10), where m(i) is an unsigned
    integer in the range from 0 to 1022.
    
    A special value (1023) indicates that no measurement could
    be done for this subcarrier group because it is out of the
    passband or that the attenuation is out of range to be
    represented.";
              reference
                "ITU-T G.997.1 clause 7.5.1.26.6 Downstream H(f)
                logarithmic representation (HLOGpsds) and clause
                7.5.1.26.12 Upstream H(f) logarithmic representation
                (HLOGpsus)";
    
            }
          }  // container hlog
    
          container qln {
            description
              "State data nodes related to sub-carrier Quiet Line
    Noise (QLN).";
            leaf qln-measurement-time {
              type uint16 {
                range "1..65535";
              }
              units "DMT symbols";
              description
                "This parameter contains the number of symbols used to
    measure the QLN(f) values. It is an unsigned integer in
    the range from 1 to 2^16 - 1.";
              reference
                "ITU-T G.997.1 clause 7.5.1.27.1 Downstream quiet line
                noise PSD measurement time (QLNMTds) and clause
                7.5.1.27.4 Upstream quiet line noise PSD measurement
                time (QLNMTus)";
    
            }
    
            leaf qln-sub-carrier-group-size {
              type sub-carrier-group-size;
              description
                "This parameter is the number of subcarriers per group
    used to report QLNps.";
              reference
                "ITU-T G.997.1 clause 7.5.1.27.2 Downstream QLN(f)
                subcarrier group size (QLNGds) and clause 7.5.1.27.5
                Upstream QLN(f) subcarrier group size (QLNGus)";
    
            }
    
            leaf qlnps {
              type per-sub-carrier-group-uint8;
              description
                "This parameter is an array of real values in dBm/Hz for
    QLN(f). Each array entry represents the QLN(f = i * QLNG
    * deltaf) value for a particular subcarrier group index
    i. The QLN(f) is represented as (-23 - n(i)/2), where
    n(i) is an unsigned integer in the range from 0 to 254.
    
    A special value (255) indicates that no measurement could
    be done for this subcarrier group because it is out of the
    passband or that the noise PSD is out of range to be
    represented.";
              reference
                "ITU-T G.997.1 clause 7.5.1.27.3 Downstream QLN(f)
                (QLNpsds) and clause 7.5.1.27.6 Upstream QLN(f)
                (QLNpsus)";
    
            }
          }  // container qln
    
          container snr {
            description
              "State data nodes related to sub-carrier Signal-to-Noise
    Ratio (SNR) values.";
            leaf snr-measurement-time {
              type uint16 {
                range "1..65535";
              }
              units "DMT symbols";
              description
                "This parameter contains the number of symbols used to
    measure the SNR(f) values. It is an unsigned integer in
    the range from 1 to 2^16 - 1.";
              reference
                "ITU-T G.997.1 clause 7.5.1.28.1 Downstream SNR
                measurement time (SNRMTds) and clause 7.5.1.28.4
                Upstream SNR measurement time (SNRMTus)";
    
            }
    
            leaf snr-sub-carrier-group-size {
              type sub-carrier-group-size;
              description
                "This parameter is the number of subcarriers per group
    used to report SNRps.";
              reference
                "ITU-T G.997.1 clause 7.5.1.28.2 Downstream SNR(f)
                subcarrier group size (SNRGds) and clause 7.5.1.28.5
                Upstream SNR(f) subcarrier group size (SNRGus)";
    
            }
    
            leaf snrps {
              type per-sub-carrier-group-uint8;
              description
                "This parameter is an array of real values in dB for
    SNR(f). Each array entry represents the SNR(f = i * SNRG
    * deltaf) value for a particular subcarrier group index
    i. The SNR(f) is represented as (-32 + snr(i)/2), where
    snr(i) is an unsigned integer in the range from 0 to 254.
    
    A special value (255) indicates that no measurement could
    be done for this subcarrier group because it is out of
    the passband or that the SNR is out of range to be
    represented.";
              reference
                "ITU-T G.997.1 clause 7.5.1.28.3 Downstream SNR(f)
                (SNRpsds) and clause 7.5.1.28.6 Upstream SNR(f)
                (SNRpsus)";
    
            }
          }  // container snr
    
          leaf bitsps {
            type per-sub-carrier-nibble;
            description
              "This parameter defines the downstream bits allocation table
    per subcarrier. It is an array of integer values in the 0 to
    15 range for each subcarrier. The reported bits of
    subcarriers out of the MEDLEY set will be set to 0. This
    parameter will be reported with the most recent values when
    read over the Q-interface.";
            reference
              "ITU-T G.997.1 clause 7.5.1.29.1 Downstream bits allocation
              (BITSpsds) and clause 7.5.1.29.2 Upstream bits allocation
              (BITSpsus)";
    
          }
    
          leaf gainsps {
            type per-sub-carrier-uint16;
            description
              "This parameter defines the gains allocation table per
    subcarrier. It is an array of integer values in the 0 to
    4095 range for each subcarrier. The gain value is represented
    as a multiple of 1/512 on linear scale. The reported gains of
    subcarriers out of the MEDLEY set will be set to 0. This
    arameter will be reported with the most recent values when
    read over the Q interface.";
            reference
              "ITU-T G.997.1 clause 7.5.1.29.3 Downstream gains allocation
              (GAINSpsds) and clause 7.5.1.29.4 Upstream gains allocation
              (GAINSpsus)";
    
          }
        }  // grouping xtu-sub-carrier-status
    
        grouping transmit-psd {
          description
            "The transmit-psd object represents the current transmit
    power spectral density (PSD).";
          leaf tssps {
            type per-sub-carrier-group-uint16-tuple;
            description
              "This parameter contains the transmit spectrum shaping
    parameters expressed as the set of breakpoints exchanged
    during G.994.1. Each breakpoint consists of a subcarrier
    index and the associated shaping parameter. The shaping
    parameter is an integer value in the 0 to 126 range. It
    is represented as a multiple of -0.5 dB.
    
    A special value (255) indicates that the subcarrier is not
    transmitted.
    
    This is encoded as an array of 16-bit tuples where the first
    16-bit value represents the sub-carrier index and the second
    represents the shaping parameter.
    
    TSS only applies to G.992.3 and G.992.5.";
            reference
              "ITU-T G.997.1 clause 7.5.1.29.5 Downstream transmit spectrum
              shaping (TSSpsds) and clause 7.5.1.29.6 Upstream transmit
              spectrum shaping (TSSpsus)";
    
          }
    
          leaf mrefpsd {
            type per-sub-carrier-group-uint16-tuple;
            description
              "This parameter will contain the set of breakpoints,
    which for downstream are exchanged in the MREFPSDds
    fields of the O-PRM message of ITU-T G.993.2, and which
    for upstream are exchanged in the MREFPSDus fields of
    the R-PRM message of ITU-T G.993.2.
    
    This is encoded as an array of 16-bit tuples where the first
    16-bit value represents the sub-carrier index and the second
    represents the Power Spectral Density (PSD).
    
    The format of the PSD is as specified in [ITU-T G.993.2],
    using 12 bits to indicate MREFPSD level in steps of 0.1 dB
    with an offset of -140 dBm/Hz.
    
    MEDLEY Reference PSD (MREFPSD) only applies to G.993.2.";
            reference
              "ITU-T G.997.1 clause 7.5.1.29.7 Downstream MEDLEY
              reference PSD (MREFPSDds) and clause 7.5.1.29.8 Upstream
              MEDLEY reference PSD (MREFPSDus)";
    
          }
        }  // grouping transmit-psd
    
        grouping xlin {
          description
            "The Xlin object represents the crosstalk coupling,
    XLIN(f).";
          container xlin {
            description
              "State data nodes related to sub-carrier Xlin.";
            leaf xlin-scale {
              type uint16 {
                range "0..65535";
              }
              description
                "This parameter is the scale factor to be applied to the
    Xlinps values.";
              reference
                "ITU-T G.997.1 clause 7.5.1.39.1 Downstream XLIN scale
                (XLINSCds) and clause 7.5.1.39.5 Upstream XLIN scale
                (XLINSCus)";
    
            }
    
            leaf xlin-sub-carrier-group-size {
              type sub-carrier-group-size;
              description
                "This parameter is the number of subcarriers per group
    used to report Xlinps.";
              reference
                "ITU-T G.997.1 clause 7.5.1.39.2 Downstream XLIN
                subcarrier group size (XLINGds) and clause 7.5.1.39.6
                Upstream XLIN subcarrier group size (XLINGus)";
    
            }
    
            leaf xlin-disturber {
              type vce-port-index;
              description
                "The Xlin disturber Vectoring Control Entity (VCE) port
    index.";
            }
    
            list xlinbands {
              key "band-index";
              description
                "XLINBANDS contains pairs of (start_subcarrier_index,
    stop_subcarrier_index) for every band in which XLINps is
    reported.";
              reference
                "ITU-T G.997.1 clause 7.5.1.38.3 Downstream XLIN
                bandedges (XLINBANDSds) and clause 7.5.1.38.7 Upstream
                XLIN bandedges (XLINBANDSus)";
    
              leaf band-index {
                type uint16;
                description "Xlin band index.";
              }
    
              uses sub-carrier-range {
                refine 
              }
            }  // list xlinbands
    
            leaf xlinps {
              type per-sub-carrier-group-int16-tuple;
              description
                "For each given Vectoring Control Entity (VCE) port index k,
    this parameter is a one-dimensional array of complex values
    in linear scale for Far-End Crosstalk (FEXT) coupling
    coefficients Xlin(f) originating from the loop connected to
    the VCE port k into the loop for which Xlin(f) is being
    reported. Each array entry represents the
    Xlinds(f = n*deltaf) value for a  particular subcarrier
    index n. The Xlin(f = n*deltaf) value is represented as
    ((XLINSC/2^15) * ((a(n) + j*b(n))/2^15)), where a(n) and
    b(n) are signed integers in the (-2^15 + 1) to (+2^15 - 1)
    range. The format of XLINps is defined in ITU-T G.993.5.
    
    For each 16-bit tuple, the first 16-bit value, a(n), can
    have values in the range -32,767 to 32,767. The second
    16-bit value, b(n), can have values in the range -32,767
    to 32,767. In each tuple the value for a(n) is loaded
    first.
    
    A special value (-32,768) indicates that no measurement
    could be done from line k into this line for subcarrier n;
    
    Another special value indicates that there is no phase
    information and the magnitude of Xlin(f = n*deltaf) is
    ((XLINSC/2^15)*(a(n)/2^15)), and for G.993.5 this special
    value is indicated as a(n) >= 0 and b(n) = 0
    for all reported n.";
              reference
                "ITU-T G.997.1 clause 7.5.1.38.4 Downstream FEXT coupling
                (XLINpsds) and clause 7.5.1.38.8 Upstream FEXT coupling
                (XLINpsus)";
    
            }
          }  // container xlin
        }  // grouping xlin
    
        grouping xtu-data-gathering-report {
          description
            "These parameters are obtained from the data gathering
    functionality in the xDSL modems for use in
    testing/diagnostics.";
          leaf logging-depth {
            type uint32;
            units
              "6-byte data gathering records";
            description
              "This parameter is the maximum depth of the entire data
    gathering event buffer at the VDSL Transceiver Unit (VTU),
    in number of 6-byte data gathering records.";
            reference
              "ITU-T G.997.1 clause 7.5.3.1 Logging depth VTU-O
              (LOGGING_DEPTH_O) and clause 7.5.3.2 Logging depth VTU-R
              (LOGGING_DEPTH_R)";
    
          }
    
          leaf actual-logging-depth-reporting {
            type uint32;
            units
              "6-byte data gathering records";
            description
              "This parameter is actual logging depth that is used for
    reporting the VDSL Transceiver Unit - central Office (VTU-O)
    event trace buffer in the Central Office Management
    Information Base (CO-MIB), or for reporting the VDSL
    Transceiver Unit - Remote side (VTU-R) event trace buffer
    over the embedded operations channel (eoc), in number of
    6-byte data gathering records.";
            reference
              "ITU-T G.997.1 clause 7.5.3.3 Actual logging depth for
              reporting VTU-O (ACT_logging_depth_reporting_O) and
              clause 7.5.3.4 Actual logging depth for reporting VTU-R
              (ACT_logging_depth_reporting_R)";
    
          }
    
          leaf event-trace-buffer {
            type binary;
            description
              "This parameter is the event trace buffer containing the
    event records that originated at the VDSL Transceiver Unit
    (VTU).";
            reference
              "ITU-T G.997.1 clause 7.5.3.5 Event trace buffer VTU O
              (EVENT_TRACE_BUFFER_O) and clause 7.5.3.6 Event trace
              buffer VTU R (EVENT_TRACE_BUFFER_R)";
    
          }
        }  // grouping xtu-data-gathering-report
    
        grouping line-config-vector-body {
          description
            "Line Configuration Vector.";
          container channel {
            description
              "Channel profiles. All profile identifiers must be
    configured.";
            leaf downstream-data-rate-profile {
              type downstream-data-rate-profile-ref;
              mandatory true;
              description
                "References a downstream data rate profile to be used to
    configure the line.";
            }
    
            leaf upstream-data-rate-profile {
              type upstream-data-rate-profile-ref;
              mandatory true;
              description
                "References an upstream data rate profile to be used to
    configure the line.";
            }
    
            leaf impulse-noise-protection-delay-profile {
              type impulse-noise-protection-delay-profile-ref;
              mandatory true;
              description
                "References an impulse noise protection delay profile to be
    used to configure the line.";
            }
          }  // container channel
    
          leaf line-spectrum-profile {
            type line-spectrum-profile-ref;
            mandatory true;
            description
              "References a line spectrum profile to be used to configure
    the line.";
          }
    
          leaf upstream-power-back-off-profile {
            type upstream-power-back-off-profile-ref;
            mandatory true;
            description
              "References an upstream power back-off profile to be used to
    configure the line.";
          }
    
          leaf downstream-power-back-off-profile {
            type downstream-power-back-off-profile-ref;
            mandatory true;
            description
              "References a downstream power back-off profile to be used to
    configure the line.";
          }
    
          leaf radio-frequency-interference-profile {
            type radio-frequency-interference-profile-ref;
            mandatory true;
            description
              "References an radio frequency interference profile to be used
    to configure the line.";
          }
    
          leaf noise-margin-profile {
            type noise-margin-profile-ref;
            mandatory true;
            description
              "References a noise margin profile to be used to configure the
    line.";
          }
    
          leaf virtual-noise-profile {
            if-feature bbf-vdsl:virtual-noise;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:virtual-noise-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References a virtual noise profile to be used to configure
    the line.";
          }
    
          leaf sos-profile {
            if-feature bbf-vdsl:sos;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:sos-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References a Save Our Showtime (SOS) profile to be used to
    configure the line.";
          }
    
          leaf impulse-noise-monitoring-profile {
            if-feature bbf-vdsl:impulse-noise-monitoring;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:impulse-noise-monitoring-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References an impulse noise monitoring profile to be used to
    configure the line.";
          }
    
          leaf re-initialization-policy-profile {
            if-feature bbf-vdsl:re-initialization-policy;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:re-initialization-policy-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References a re-initialization policy profile to be used to
    configure the line.";
          }
    
          leaf vectoring-profile {
            if-feature bbf-vdsl:vectoring;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:vectoring-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References a vectoring profile to be used to configure the
    line.";
          }
    
          leaf data-gathering-profile {
            if-feature bbf-vdsl:data-gathering;
            type leafref {
              path "/bbf-vdsl:vdsl/bbf-vdsl:quality/bbf-vdsl:data-gathering-profile/bbf-vdsl:name";
            }
            mandatory true;
            description
              "References a data gathering profile to be used to configure
    the line.";
          }
        }  // grouping line-config-vector-body
    
        // objects
        container vdsl {
          description "VDSL configuration.";
          container service {
            description
              "Service profile configuration.";
          }  // container service
    
          container spectrum {
            description
              "Spectrum profile configuration.";
          }  // container spectrum
    
          container quality {
            description
              "Quality profile configuration.";
          }  // container quality
    
          container thresholds {
            description
              "Threshold configuration.";
          }  // container thresholds
    
          container vectors {
            description "Vectors of profiles.";
          }  // container vectors
        }  // container vdsl
    
        augment /if:interfaces/if:interface/bbf-fastdsl:line {
          when
            "bbf-fastdsl:configured-mode = 'bbf-fastdsl:mode-vdsl'" {
            description
              "Applicable when VDSL mode is configured.";
          }
          description
            "Data nodes for the administrative state of DSL lines.";
          container line {
            presence
              "If present, indicates the interface is configured to operate
    in VDSL mode.";
            description
              "xDSL line-specific parameters.";
          }  // container line
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line {
          when
            "bbf-fastdsl:operational-mode = 'bbf-fastdsl:mode-vdsl'" {
            description
              "Applicable when VDSL is the current mode of operation.";
          }
          description
            "Data nodes for the operational state of DSL lines.";
          container line {
            presence
              "If present, indicates the interface is operaterting in VDSL
    mode.";
            description
              "xDSL line-specific parameters.";
            container channel {
              description
                "xDSL channel-specific parameters.";
            }  // container channel
          }  // container line
        }
    
        augment /if:interfaces/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description "xDSL Line configuration.";
          uses test-mode;
    
          uses update-test;
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "xDSL Termination Unit (xTU).";
          container inventory {
            description
              "xDSL Termination Unit (xTU) inventory.";
            container xtu-c {
              description
                "xDSL Termination Unit - Central office (xTU-C) inventory.";
              uses inventory;
    
              uses vce;
            }  // container xtu-c
    
            container xtu-r {
              description
                "xDSL Termination Unit - Remote side (xTU-R) inventory.";
              uses inventory;
            }  // container xtu-r
          }  // container inventory
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:service {
          description
            "Service related profiles.";
          list downstream-data-rate-profile {
            key "name";
            description
              "Downstream Data Rate Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Downstream Data Rate Profile identifier.";
            }
    
            uses data-rate-profile;
          }  // list downstream-data-rate-profile
    
          list upstream-data-rate-profile {
            key "name";
            description
              "Upstream Data Rate Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Upstream Data Rate Profile identifier.";
            }
    
            uses data-rate-profile;
          }  // list upstream-data-rate-profile
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:spectrum {
          description
            "Spectrum related profiles.";
          list line-spectrum-profile {
            key "name";
            description "Line Spectrum Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Line Spectrum Profile identifier.";
            }
    
            list xtse {
              key "ts";
              min-elements 1;
              description
                "Identifies a mode specific Power Spectral Density (PSD)
    profile for each transmission system type.";
              leaf ts {
                type xts-descriptor;
                description
                  "Identifies the transmission system type.";
                reference
                  "ITU-T G.997.1 clause 7.3.1.1.1 xTU transmission system
                  enabling (XTSE).";
    
              }
    
              leaf mode-specific-psd-profile {
                type mode-specific-psd-profile-ref;
                must
                  "/bbf-vdsl:vdsl/bbf-vdsl:spectrum
    /bbf-vdsl:mode-specific-psd-profile
    [bbf-vdsl:name=current()]/bbf-vdsl:ts = ../ts" {
                  description
                    "The transmission system used in the mode specific
    profile must be the same as the one coupled to this
    profile.";
                }
                mandatory true;
                description
                  "Identifies the mode specific Power Spectral Density (PSD)
    profile for this transmission system type.";
                reference
                  "ITU-T G.997.1 clause 7.3.1.1.1 xTU transmission system
                  enabling (XTSE).";
    
              }
            }  // list xtse
    
            uses line-spectrum-profile;
          }  // list line-spectrum-profile
    
          list mode-specific-psd-profile {
            key "name";
            description
              "Mode Specific Power Spectral Density (PSD) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Mode Specific Power Spectral Density (PSD) Profile
    identifier.";
            }
    
            uses mode-specific-psd-profile;
          }  // list mode-specific-psd-profile
    
          list upstream-power-back-off-profile {
            key "name";
            description
              "Upstream Power Back-Off (UPBO) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Upstream Power Back-Off (UPBO) Profile identifier.";
            }
    
            uses upstream-power-back-off-profile;
          }  // list upstream-power-back-off-profile
    
          list downstream-power-back-off-profile {
            key "name";
            description
              "Downstream Power Back-Off (DPBO) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Downstream Power Back-Off (DPBO) Profile identifier.";
            }
    
            uses downstream-power-back-off-profile;
          }  // list downstream-power-back-off-profile
    
          list radio-frequency-interference-profile {
            key "name";
            description
              "Radio Frequency Interference (RFI) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Radio Frequency Interference (RFI) Profile identifier.";
            }
    
            uses radio-frequency-interference-profile;
          }  // list radio-frequency-interference-profile
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:quality {
          description
            "Quality Management related profiles.";
          list noise-margin-profile {
            key "name";
            description "Noise Margin Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Noise Margin Profile identifier.";
            }
    
            container downstream {
              description
                "Downstream Noise Margin Profile.";
              uses noise-margin-profile-downstream;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Noise Margin Profile.";
              uses noise-margin-profile-upstream;
            }  // container upstream
          }  // list noise-margin-profile
    
          list impulse-noise-protection-delay-profile {
            key "name";
            description
              "Inpulse Noise Protection (INP) Delay Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Inpulse Noise Protection (INP) Delay Profile identifier.";
            }
    
            container downstream {
              description
                "Downstream Inpulse Noise Protection (INP) Delay Profile.";
              uses impulse-noise-protection-delay-profile;
    
              uses impulse-noise-protection-delay-profile-downstream;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Inpulse Noise Protection (INP) Delay Profile.";
              uses impulse-noise-protection-delay-profile;
    
              uses impulse-noise-protection-delay-profile-upstream;
            }  // container upstream
          }  // list impulse-noise-protection-delay-profile
    
          list virtual-noise-profile {
            if-feature virtual-noise;
            key "name";
            description "Virtual Noise Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Virtual Noise Profile identifier.";
            }
    
            container downstream {
              description
                "Downstream Virtual Noise Profile.";
              uses virtual-noise-profile;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Virtual Noise Profile.";
              uses virtual-noise-profile-upstream;
            }  // container upstream
          }  // list virtual-noise-profile
    
          list sos-profile {
            if-feature sos;
            key "name";
            description
              "Save Our Showtime (SOS) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Save Our Showtime (SOS) Profile identifier.";
            }
    
            container downstream {
              description
                "Downstream Save Our Showtime (SOS) Profile.";
              uses sos-profile;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Save Our Showtime (SOS) Profile.";
              uses sos-profile;
            }  // container upstream
          }  // list sos-profile
    
          list impulse-noise-monitoring-profile {
            if-feature impulse-noise-monitoring;
            key "name";
            description
              "Impulse Noise Monitoring (INM) Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Impulse Noise Monitoring (INM) Profile identifier.";
            }
    
            leaf inm-enable {
              type boolean;
              default "false";
              description
                "If true, enables Impulse Noise Monitoring (INM)
    in both directions. If false, disables Impulse
    Noise Monitoring (INM) in both directions.";
              reference
                "ITU-T G.997.1 clause 7.3.1.9.6 (INM_ENABLE).";
    
            }
    
            container downstream {
              description
                "Downstream Impulse Noise Monitoring (INM) Profile.";
              uses impulse-noise-monitoring-profile;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Impulse Noise Monitoring (INM) Profile.";
              uses impulse-noise-monitoring-profile;
            }  // container upstream
          }  // list impulse-noise-monitoring-profile
    
          list re-initialization-policy-profile {
            if-feature re-initialization-policy;
            key "name";
            description
              "Re-Initialization Policy Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Re-Initialization Policy Profile identifier.";
            }
    
            container downstream {
              description
                "Downstream Re-Initialization Policy Profile.";
              uses re-initialization-policy-profile;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Re-Initialization Policy Profile.";
              uses re-initialization-policy-profile;
            }  // container upstream
          }  // list re-initialization-policy-profile
    
          list vectoring-profile {
            if-feature vectoring;
            key "name";
            description "Vectoring Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Vectoring Profile identifier.";
            }
    
            uses vectoring-profile-non-directional;
    
            container downstream {
              description
                "Downstream Vectoring Profile.";
              uses vectoring-profile;
            }  // container downstream
    
            container upstream {
              description
                "Upstream Vectoring Profile.";
              uses vectoring-profile;
            }  // container upstream
          }  // list vectoring-profile
    
          list data-gathering-profile {
            if-feature data-gathering;
            key "name";
            description
              "Data Gathering Profile.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "Data Gathering Profile identifier.";
            }
    
            container vtu {
              description
                "VDSL2 Transceiver Unit (VTU) Data Gathering Profile.";
              uses data-gathering-profile;
            }  // container vtu
          }  // list data-gathering-profile
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "xDSL Transeciver Unit (xTU) Line Status.";
          container status {
            description
              "The xDSL Transeciver Unit (xTU) Line Status object represents
    current line status and measurements at a particular xTU.";
            uses line-status;
    
            uses xtu-line-status;
    
            container xtu-c {
              description
                "xDSL Transeciver Unit - Central office (xTU-C) Line
    Status.";
              uses xtu-c-status;
    
              container band-status {
                description
                  "Per band status parameters. For ADSL systems,
    a single parameter is defined for band = 0.";
                uses xtu-band-status;
              }  // container band-status
            }  // container xtu-c
    
            container xtu-r {
              description
                "xDSL Transeciver Unit - Remote side (xTU-R) Line Status.";
              uses xtu-r-status;
    
              container band-status {
                description
                  "Per band status parameters. For ADSL systems,
    a single parameter is defined for band = 0.";
                uses xtu-band-status;
              }  // container band-status
            }  // container xtu-r
          }  // container status
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line/bbf-vdsl:channel {
          description
            "xDSL Transeciver Unit (xTU) channel status.";
          container status {
            description
              "xDSL Transeciver Unit (xTU) channel status.";
            container xtu-c {
              description
                "xDSL Transeciver Unit - Central office (xTU-C) channel
    status. This contains status parameters for transmission
    in the upstream direction.";
              container upstream {
                description
                  "These objects apply to the upstream direction of
    transmission.";
                uses xtu-channel-status;
    
                uses actual-ndr-inp-rein;
              }  // container upstream
            }  // container xtu-c
    
            container xtu-r {
              description
                "xDSL Transeciver Unit - Remote side (xTU-R) channel status.
    This contains status parameters for transmission in the
    downstream direction.";
              container downstream {
                description
                  "These objects apply to the downstream direction of
    transmission.";
                uses xtu-channel-status;
    
                uses actual-ndr-inp-rein;
              }  // container downstream
            }  // container xtu-r
          }  // container status
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "xDSL Transmission Unit (xTU) Line Performance.";
          container performance {
            description
              "Performance parameters.";
            container intervals-15min {
              description
                "15 minute interval line performance counters.";
              container current {
                description
                  "Contains the counts that are currently accumulating.";
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-c-line-performance;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-r-line-performance;
                }  // container xtu-r
              }  // container current
    
              uses performance-history-15min-parameters;
    
              list history {
                key "interval-number";
                max-elements 96;
                description
                  "A history of 15 minute intervals.";
                leaf interval-number {
                  type performance-15min-history-interval;
                  description
                    "The number of the interval relative to the current
    interval.";
                }
    
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses line-time-stamp;
    
                  uses xtu-c-line-performance;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses line-time-stamp;
    
                  uses xtu-r-line-performance;
                }  // container xtu-r
              }  // list history
            }  // container intervals-15min
    
            container intervals-24hr {
              if-feature performance-24hr;
              description
                "24 hour interval line performance counters.";
              container current {
                description
                  "Contains the counts that are currently accumulating.";
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-c-line-performance;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-r-line-performance;
                }  // container xtu-r
              }  // container current
    
              uses performance-history-24hr-parameters;
    
              list history {
                key "interval-number";
                max-elements 96;
                description
                  "A history of 24 hour intervals.";
                leaf interval-number {
                  type performance-24hr-history-interval;
                  description
                    "The number of the interval relative to the current
    interval.";
                }
    
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses line-time-stamp;
    
                  uses xtu-c-line-performance;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses line-time-stamp;
    
                  uses xtu-r-line-performance;
                }  // container xtu-r
              }  // list history
            }  // container intervals-24hr
          }  // container performance
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line/bbf-vdsl:channel {
          description
            "xDSL Transmission Unit Channel Performance config.";
          container performance {
            description
              "Performance parameters.";
            container intervals-15min {
              description
                "15 minute interval performance history.";
              container current {
                description
                  "Contains the counts that are currently accumulating.";
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-channel-performance-c;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-channel-performance-cfe;
                }  // container xtu-r
              }  // container current
    
              uses performance-history-15min-parameters;
    
              list history {
                key "interval-number";
                max-elements 96;
                description
                  "A history of 15 minute intervals.";
                leaf interval-number {
                  type performance-15min-history-interval;
                  description
                    "The number of the interval relative to the current
    interval.";
                }
    
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-channel-time-stamp;
    
                  uses xtu-channel-performance-c;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-channel-time-stamp;
    
                  uses xtu-channel-performance-cfe;
                }  // container xtu-r
              }  // list history
            }  // container intervals-15min
    
            container intervals-24hr {
              if-feature performance-24hr;
              description
                "24 hour interval performance history.";
              container current {
                description
                  "Contains the counts that are currently accumulating.";
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-channel-performance-c;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-channel-performance-cfe;
                }  // container xtu-r
              }  // container current
    
              uses performance-history-24hr-parameters;
    
              list history {
                key "interval-number";
                max-elements 96;
                description
                  "A history of 24 hour intervals.";
                leaf interval-number {
                  type performance-24hr-history-interval;
                  description
                    "The number of the interval relative to the current
    interval.";
                }
    
                container xtu-c {
                  description
                    "xDSL Transmission Unit - Central office (xTU-C).";
                  uses xtu-channel-time-stamp;
    
                  uses xtu-channel-performance-c;
                }  // container xtu-c
    
                container xtu-r {
                  description
                    "xDSL Transmission Unit - Remote side (xTU-R).";
                  uses xtu-channel-time-stamp;
    
                  uses xtu-channel-performance-cfe;
                }  // container xtu-r
              }  // list history
            }  // container intervals-24hr
          }  // container performance
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:thresholds {
          description
            "xDSL Performance Threshold Management.";
          list line-threshold-profile {
            key "name";
            description
              "xDSL Transceiver Unit (xTU) Line Threshold Profiles.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "xDSL Transceiver Unit (xTU) Line Threshold Profile name.";
            }
    
            uses line-threshold-profile;
          }  // list line-threshold-profile
    
          list channel-threshold-profile {
            key "name";
            description
              "xDSL Transceiver Unit (xTU) Channel Threshold Profiles.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "xDSL Transceiver Unit (xTU) Channel Threshold Profile
    name.";
            }
    
            uses channel-threshold-profile;
          }  // list channel-threshold-profile
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "Augment the line to add threshold state data.";
          notification vdsl-15min-threshold-crossing-alert {
            description
              "A threshold has been crossed during the current 15 minute
    interval.";
            leaf tca-identity {
              type identityref {
                base vdsl-15min-threshold-crossing-alert;
              }
              mandatory true;
              description
                "A unique identity associated with each threshold.";
            }
          }  // notification vdsl-15min-threshold-crossing-alert
    
          notification vdsl-24hr-threshold-crossing-alert {
            if-feature performance-24hr;
            description
              "A threshold has been crossed during the current 24 hour
    interval.";
            leaf tca-identity {
              type identityref {
                base vdsl-24hr-threshold-crossing-alert;
              }
              mandatory true;
              description
                "A unique identity associated with each threshold.";
            }
          }  // notification vdsl-24hr-threshold-crossing-alert
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "xDSL Testing / Diagnostics.";
          container diagnostics {
            description
              "xDSL Testing / Diagnostics.";
            leaf loop-diagnostics-mode-status {
              type enumeration {
                enum "inactive" {
                  value 0;
                  description
                    "Loop Diagnostics mode procedures are inhibited.";
                }
                enum "loop-diagnostics-ongoing" {
                  value 1;
                  description
                    "Loop Diagnostics mode procedures are ongoing.";
                }
              }
              description
                "Reports the status of the Loop Diagnostics mode procedures
    
    Upon the near-end xDSL Transceiver Unit (xTU) being forced
    to perform the Loop Diagnostic mode procedures, the Loop
    Diagnostic mode Status (LDS) shall become
    'loop-diagnostics-ongoing'.
    
    Upon failure or successful completion of the Loop
    Diagnostics mode procedures, the Loop Diagnostic mode
    Status (LDS) shall become 'inactive' and the Access Node
    (AN)/Distribution Point Unit (DPU) Maintenance Entity (ME)
    shall send a notification to the NMS.";
              reference
                "ITU-T G.997.1 Clause 7.5.1.44 (LDS)";
    
            }
    
            leaf loop-diagnostics-mode-results {
              type loop-diagnostics-result;
              description
                "The overall results of the Loop Diagnostics mode.";
              reference
                "ITU-T G.997.1 Clause 7.5.1.45 (LDR)";
    
            }
    
            notification loop-diagnostics-completed {
              description
                "Notifies that the loop diagnostics have completed.";
              leaf result {
                type loop-diagnostics-result;
                mandatory true;
                description
                  "The overall results of the Loop Diagnostics mode.";
                reference
                  "ITU-T G.997.1 Clause 7.5.1.45 (LDR)";
    
              }
            }  // notification loop-diagnostics-completed
    
            container xtu-c {
              description
                "Diagnostics objects for the xDSL Transceiver Unit -
    Central office (xTU-C).";
              container downstream {
                description
                  "Downstream xDSL Transceiver Unit (xTU) Sub-Carrier
    status.";
                uses transmit-psd;
    
                uses xlin;
              }  // container downstream
    
              container upstream {
                description
                  "Upstream xDSL Transceiver Unit (xTU) Sub-Carrier
    status.";
                uses xtu-sub-carrier-status;
    
                uses xlin;
              }  // container upstream
    
              container data-gathering-report {
                description
                  "Reports data gathered by the receiver.";
                uses xtu-data-gathering-report;
              }  // container data-gathering-report
            }  // container xtu-c
    
            container xtu-r {
              description
                "Diagnostics objects for the xDSL Transceiver Unit -
    Remote side (xTU-R).";
              container downstream {
                description
                  "Downstream xDSL Transceiver Unit (xTU) Sub-Carrier
    status.";
                uses xtu-sub-carrier-status;
              }  // container downstream
    
              container upstream {
                description
                  "Upstream xDSL Transceiver Unit (xTU) Sub-Carrier
    status.";
                uses transmit-psd;
              }  // container upstream
    
              container data-gathering-report {
                description
                  "Reports data gathered by the receiver.";
                uses xtu-data-gathering-report;
              }  // container data-gathering-report
            }  // container xtu-r
          }  // container diagnostics
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:vectors {
          description
            "xDSL Line Configuration Vector.";
          list line-config-vector {
            key "name";
            description
              "xDSL Line Configuration Vector.";
            leaf name {
              type bbf-yang:string-ascii64;
              description
                "xDSL Line Configuration Vector Identifier.";
            }
    
            uses line-config-vector-body;
          }  // list line-config-vector
        }
    
        augment /bbf-vdsl:vdsl/bbf-vdsl:thresholds {
          description
            "xDSL Performance Threshold Management.";
          list threshold-template {
            key "name";
            description
              "xDSL Line Threshold Template.";
            grouping threshold-profile {
              description
                "Defines 15 minute and 24 hour line and channel profiles.";
              leaf xtu-15min-line-profile {
                type line-threshold-profile-ref;
                mandatory true;
                description
                  "Reference to a line threshold profile for thresholds
    related to 15 minute performance counters.";
              }
    
              leaf xtu-24hr-line-profile {
                if-feature performance-24hr;
                type line-threshold-profile-ref;
                mandatory true;
                description
                  "Reference to a line threshold profile for thresholds
    related to 24 hour performance counters.";
              }
    
              leaf xtu-15min-channel-threshold-profile {
                type channel-threshold-profile-ref;
                mandatory true;
                description
                  "Reference to a channel threshold profile for thresholds
    related to 15 minute performance counters.";
              }
    
              leaf xtu-24hr-channel-threshold-profile {
                if-feature performance-24hr;
                type channel-threshold-profile-ref;
                mandatory true;
                description
                  "Reference to a channel threshold profile for thresholds
    related to 24 hour performance counters.";
              }
            }  // grouping threshold-profile
            leaf name {
              type bbf-yang:string-ascii64;
              description "Template name.";
            }
    
            container xtu-c {
              description
                "xDSL Tranceiver Unit - Central office (xTU-C) threshold
    profile pointer.";
              uses threshold-profile;
            }  // container xtu-c
    
            container xtu-r {
              description
                "xDSL Tranceiver Unit - Remote side (xTU-R) threshold
    profile pointer.";
              uses threshold-profile;
            }  // container xtu-r
          }  // list threshold-template
        }
    
        augment /if:interfaces/if:interface/bbf-fastdsl:line/bbf-vdsl:line {
          description
            "Augment FastDSL line configuration with VDSL line
    configuration.";
          choice profile-config {
            default "no-profiles-attached";
            description
              "No profiles, Direct or Indirect attachment mode.";
            leaf no-profiles-attached {
              type empty;
              description
                "If present, indicates that no profiles are attached
    to this line.";
            }
    
            case direct-attachment-mode {
              uses line-config-vector-body;
            }  // case direct-attachment-mode
            leaf line-config-vector {
              type line-config-vector-ref;
              description
                "xDSL Line Configuration Vector identifier.
    This identifier must be configured if indirect
    attachment mode is used.";
            }
          }  // choice profile-config
    
          leaf threshold-template {
            type threshold-template-ref;
            description
              "xDSL Line Threshold Template identifier. If no threshold
    template is assigned, threshold crossing alert (TCA)
    reporting for all thresholds is disabled.";
          }
        }
    
        augment /if:interfaces-state/if:interface/bbf-fastdsl:line {
          if-feature availability;
          description
            "Augment the state data of an interface with operational status
    for availability. ";
          uses bbf-avail:availability {
            refine availability {
              description
                "Operational status defining the availability of a VDSL
    line.";
            }
          }
        }
      }  // module bbf-vdsl
    

© 2023 YumaWorks, Inc. All rights reserved.