bbf-vdsl

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

  • Version: 2022-05-23

    bbf-vdsl@2022-05-23


    
      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:   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-2022 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-355a4; see
    the TR itself for full legal notices.";
    
        revision "2022-05-23" {
          description
            "Amendment 4.
    * Approval Date:    2022-05-23
    * Publication Date: 2022-05-23.";
          reference
            "TR-355a4: YANG Modules for FTTdp Management
            	    <https://www.broadband-forum.org/download/
            		   TR-355_Amendment-4.pdf>";
    
        }
    
        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 threshold
    crossing alert 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
    threshold crossing alert 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 threshold crossing
    alert 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.";
              reference
                "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.";
              reference
                "ETIS TS 101 388 Annex C";
    
            }
            enum "xts3" {
              value 2;
              description
                "G.992.1 operation over POTS non-overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex A";
    
            }
            enum "xts4" {
              value 3;
              description
                "G.992.1 operation over POTS overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex A";
    
            }
            enum "xts5" {
              value 4;
              description
                "G.992.1 operation over ISDN non-overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex B";
    
            }
            enum "xts6" {
              value 5;
              description
                "G.992.1 operation over ISDN overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex B";
    
            }
            enum "xts7" {
              value 6;
              description
                "G.992.1 operation in conjunction with TCM ISDN
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex C";
    
            }
            enum "xts8" {
              value 7;
              description
                "G.992.1 operation in conjunction with TCM ISDN
    overlapped spectrum.";
              reference
                "ITU-T G.992.1 Annex C";
    
            }
            enum "xts9" {
              value 8;
              description
                "G.992.2 operation over POTS non-overlapped spectrum.";
              reference
                "ITU-T G.992.2 Annex A";
    
            }
            enum "xts10" {
              value 9;
              description
                "G.992.2 operation over POTS overlapped spectrum.";
              reference
                "ITU-T G.992.2 Annex B";
    
            }
            enum "xts11" {
              value 10;
              description
                "G.992.2 operation in conjunction with TCM ISDN
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.2 Annex C";
    
            }
            enum "xts12" {
              value 11;
              description
                "G.992.2 operation in conjunction with TCM ISDN
    overlapped spectrum.";
              reference
                "ITU-T G.992.2 Annex C";
    
            }
            enum "xts19" {
              value 12;
              description
                "G.992.3 operation over POTS non-overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex A";
    
            }
            enum "xts20" {
              value 13;
              description
                "G.992.3 operation over POTS overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex A";
    
            }
            enum "xts21" {
              value 14;
              description
                "G.992.3 operation over ISDN non-overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex B";
    
            }
            enum "xts22" {
              value 15;
              description
                "G.992.3 operation over ISDN overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex B";
    
            }
            enum "xts23" {
              value 16;
              description
                "G.992.3 operation in conjunction with TCM ISDN
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex C";
    
            }
            enum "xts24" {
              value 17;
              description
                "G.992.3 operation in conjunction with TCM ISDN
    overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex C";
    
            }
            enum "xts25" {
              value 18;
              description
                "G.992.4 operation over POTS non-overlapped spectrum.";
              reference
                "ITU-T G.992.4 Annex A";
    
            }
            enum "xts26" {
              value 19;
              description
                "G.992.4 operation over POTS overlapped spectrum.";
              reference
                "ITU-T G.992.4 Annex A";
    
            }
            enum "xts29" {
              value 20;
              description
                "G.992.3 all digital mode operation with non-overlapped
    spectrum.";
              reference
                "ITU-T G.992.3 Annex I";
    
            }
            enum "xts30" {
              value 21;
              description
                "G.992.3 all digital mode operation with overlapped
    spectrum.";
              reference
                "ITU-T G.992.3 Annex I";
    
            }
            enum "xts31" {
              value 22;
              description
                "G.992.3 all digital mode operation with non-overlapped
    spectrum.";
              reference
                "ITU-T G.992.3 Annex J";
    
            }
            enum "xts32" {
              value 23;
              description
                "G.992.3 all digital mode operation with overlapped
    spectrum.";
              reference
                "ITU-T G.992.3 Annex J";
    
            }
            enum "xts33" {
              value 24;
              description
                "G.992.4 all digital mode operation with non-overlapped
    spectrum.";
              reference
                "ITU-T G.992.4 Annex I";
    
            }
            enum "xts34" {
              value 25;
              description
                "G.992.4 all digital mode operation with overlapped
    spectrum.";
              reference
                "ITU-T G.992.4 Annex I";
    
            }
            enum "xts35" {
              value 26;
              description
                "G.992.3 reach extended operation over POTS, Mode 1
    (non-overlapped, wide upstream).";
              reference
                "ITU-T G.992.3 Annex L";
    
            }
            enum "xts36" {
              value 27;
              description
                "G.992.3 reach extended operation over POTS, Mode 2
    (non-overlapped, narrow upstream).";
              reference
                "ITU-T G.992.3 Annex L";
    
            }
            enum "xts37" {
              value 28;
              description
                "G.992.3 reach extended operation over POTS, Mode 3
    (overlapped, wide upstream).";
              reference
                "ITU-T G.992.3 Annex L";
    
            }
            enum "xts38" {
              value 29;
              description
                "G.992.3 reach extended operation over POTS, Mode 4
    (overlapped, narrow upstream).";
              reference
                "ITU-T G.992.3 Annex L";
    
            }
            enum "xts39" {
              value 30;
              description
                "G.992.3 extended upstream operation over POTS
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex M";
    
            }
            enum "xts40" {
              value 31;
              description
                "G.992.3 extended upstream operation over POTS
    overlapped spectrum.";
              reference
                "ITU-T G.992.3 Annex M";
    
            }
            enum "xts41" {
              value 32;
              description
                "G.992.5 operation over POTS non-overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex A";
    
            }
            enum "xts42" {
              value 33;
              description
                "G.992.5 operation over POTS overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex A";
    
            }
            enum "xts43" {
              value 34;
              description
                "G.992.5 operation over ISDN non-overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex B";
    
            }
            enum "xts44" {
              value 35;
              description
                "G.992.5 operation over ISDN overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex B";
    
            }
            enum "xts45" {
              value 36;
              description
                "G.992.5 operation in conjunction with TCM ISDN
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex C";
    
            }
            enum "xts46" {
              value 37;
              description
                "G.992.5 operation in conjunction with TCM ISDN
    overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex C";
    
            }
            enum "xts47" {
              value 38;
              description
                "G.992.5 all digital mode operation with non-overlapped
    spectrum.";
              reference
                "ITU-T G.992.5 Annex I";
    
            }
            enum "xts48" {
              value 39;
              description
                "G.992.5 all digital mode operation with overlapped
    spectrum.";
              reference
                "ITU-T G.992.5 Annex I";
    
            }
            enum "xts49" {
              value 40;
              description
                "G.992.5 all digital mode operation with non-overlapped
    spectrum.";
              reference
                "ITU-T G.992.5 Annex J";
    
            }
            enum "xts50" {
              value 41;
              description
                "G.992.5 all digital mode operation with overlapped
    spectrum.";
              reference
                "ITU-T G.992.5 Annex J";
    
            }
            enum "xts51" {
              value 42;
              description
                "G.992.5 extended upstream operation over POTS
    non-overlapped spectrum.";
              reference
                "ITU-T G.992.5 Annex M";
    
            }
            enum "xts52" {
              value 43;
              description
                "G.992.5 extended upstream operation over POTS
    overlapped spectrum (Annex M of [I.";
              reference
                "ITU-T G.992.5 Annex M";
    
            }
            enum "xts57" {
              value 44;
              description
                "G.993.2 Region A (North America).";
              reference
                "ITU-T G.993.2 Annex A";
    
            }
            enum "xts58" {
              value 45;
              description
                "G.993.2 Region B (Europe).";
              reference
                "ITU-T G.993.2 Annex B";
    
            }
            enum "xts59" {
              value 46;
              description
                "G.993.2 Region C (Japan).";
              reference
                "ITU-T G.993.2 Annex C";
    
            }
            enum "xts60" {
              value 47;
              description
                "G.993.2 Region N (China).";
              reference
                "ITU-T G.993.2 Annex N";
    
            }
          }
          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 (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).";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.18 (US0MASK) and Table 7-8;
            ITU-T G.993.2 Annex A";
    
        }
    
        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.";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.16 (LIMITMASK) and Table 7-7";
    
        }
    
        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).";
          reference
            "ITU-T G.997.1 clause 7.3.1.2.15 (CLASSMASK) and Table 7-6";
    
        }
    
        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..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-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.";
        }
    
        // objects
        container vdsl {
          description "VDSL configuration.";
          container service {
            description
              "Service profile configuration.";
            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.";
              }
    
              leaf minimum-net-data-rate {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-net-data-rate" {
                  error-message
                    "'minimum-net-data-rate' is greater than '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
    data rate is coded in steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.1";
    
              }
    
              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 1000 bits bit per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.3";
    
              }
    
              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 1000 bits per second. 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;
                  ITU-T G.992.2;
                  ITU-T G.992.3";
    
              }
    
              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";
    
              }
    
              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 per second. The
    default of 0 corresponds to no event on a threshold
    crossing.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.8.1";
    
              }
    
              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 per second. The
    default of 0 corresponds to no event on a threshold
    crossing.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.8.2";
    
              }
    
              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 per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.6 (MIN-SOS-DR)";
    
              }
    
              leaf minimum-expected-throughput-rtx {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-expected-throughput-rtx" {
                  error-message
                    "'minimum-expected-throughput-rtx' is greater than '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. The rate is coded in steps of 1000
    bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.8 (MINETR_RTX);
                  ITU-T G.998.4 clause 11.1.1";
    
              }
    
              leaf maximum-expected-throughput-rtx {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-net-data-rate-rtx" {
                  error-message
                    "'maximum-expected-throughput-rtx' is greater than  '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. The rate is coded in steps of 1000 bits per
    second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.9 (MAXETR_RTX);
                  ITU-T G.998.4 clause 11.1.2";
    
              }
    
              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. The rate is coded in steps of 1000 bits per
    second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.10 (MAXNDR_RTX);
                  ITU-T G.998.4 clause 11.1.3";
    
              }
    
              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 of the
    bearer channel. The target expected throughput is coded in
    steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.19.1 (TARGET_NDR);
                  ITU-T G.993.5";
    
              }
    
              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 for the
    bearer channel. The target expected throughput is coded in
    steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.19.2 (TARGET_ETR);
                  ITU-T G.993.5";
    
              }
    
              leaf leftr-defect-threshold {
                if-feature bbf-vdsl: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. 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 (LEFTR_THRESH);
                  ITU-T G.998.4 clause 11.1.12";
    
              }
            }  // 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.";
              }
    
              leaf minimum-net-data-rate {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-net-data-rate" {
                  error-message
                    "'minimum-net-data-rate' is greater than '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
    data rate is coded in steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.1";
    
              }
    
              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 1000 bits bit per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.3";
    
              }
    
              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 1000 bits per second. 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;
                  ITU-T G.992.2;
                  ITU-T G.992.3";
    
              }
    
              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";
    
              }
    
              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 per second. The
    default of 0 corresponds to no event on a threshold
    crossing.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.8.1";
    
              }
    
              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 per second. The
    default of 0 corresponds to no event on a threshold
    crossing.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.8.2";
    
              }
    
              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 per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.6 (MIN-SOS-DR)";
    
              }
    
              leaf minimum-expected-throughput-rtx {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-expected-throughput-rtx" {
                  error-message
                    "'minimum-expected-throughput-rtx' is greater than '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. The rate is coded in steps of 1000
    bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.8 (MINETR_RTX);
                  ITU-T G.998.4 clause 11.1.1";
    
              }
    
              leaf maximum-expected-throughput-rtx {
                type bbf-yang:data-rate32;
                must
                  ". <= ../maximum-net-data-rate-rtx" {
                  error-message
                    "'maximum-expected-throughput-rtx' is greater than  '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. The rate is coded in steps of 1000 bits per
    second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.9 (MAXETR_RTX);
                  ITU-T G.998.4 clause 11.1.2";
    
              }
    
              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. The rate is coded in steps of 1000 bits per
    second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.1.10 (MAXNDR_RTX);
                  ITU-T G.998.4 clause 11.1.3";
    
              }
    
              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 of the
    bearer channel. The target expected throughput is coded in
    steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.19.1 (TARGET_NDR);
                  ITU-T G.993.5";
    
              }
    
              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 for the
    bearer channel. The target expected throughput is coded in
    steps of 1000 bits per second.";
                reference
                  "ITU-T G.997.1 clause 7.3.2.19.2 (TARGET_ETR);
                  ITU-T G.993.5";
    
              }
    
              leaf leftr-defect-threshold {
                if-feature bbf-vdsl: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. 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 (LEFTR_THRESH);
                  ITU-T G.998.4 clause 11.1.12";
    
              }
            }  // list upstream-data-rate-profile
          }  // container service
    
          container spectrum {
            description
              "Spectrum profile configuration.";
            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 (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" {
                    error-message
                      "The transmission system used in this line spectrum profile does not match the one used in the referenced mode specific PSD profile.";
                    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 (XTSE)";
    
                }
              }  // list xtse
    
              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 (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 (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 (L2-TIME)";
    
              }
    
              leaf l2-maximum-aggregate-power-reduction-per {
                type uint8 {
                  range "0..31";
                }
                units "dB";
                must
                  ". <= ../l2-maximum-aggregate-power-reduction-total" {
                  error-message
                    "'l2-maximum-aggregate-power-reduction-per' is greater than '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 (L2-ATPR)";
    
              }
    
              leaf l2-maximum-aggregate-power-reduction-total {
                type uint8 {
                  range "0..31";
                }
                units "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 (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 (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 (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.
    
    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 clauses 7.3.1.1.11 and 7.3.1.2.8
                  (VDSL2-CARMASK)";
    
                leaf start-index {
                  type sub-carrier-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" {
                    error-message
                      "'stop-index' is less than '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).";
                }
              }  // list vdsl2-carmask
    
              leaf msgminds {
                type uint8 {
                  range "4..248";
                }
                units "kilobits per second";
                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 4000 to 248000
    bits per second with 1000 bits per second 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 (MSGMINds)";
    
              }
    
              leaf msgminus {
                type uint8 {
                  range "4..248";
                }
                units "kilobits per second";
                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 4000 to 248000
    bits per second with 1000 bits per second 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 (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 (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 (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 (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 (RTX_MODE_us)";
    
              }
            }  // 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.";
              }
    
              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 (XTSE)";
    
              }
    
              leaf maximum-nominal-psd-ds {
                type int16 {
                  range "-600..-300";
                }
                units "0.1 dBm per 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 per 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 per Hz, with 0.1 dB
    steps.";
                reference
                  "ITU-T G.997.1 clause 7.3.1.2.1 (MAXNOMPSDds)";
    
              }
    
              leaf maximum-nominal-psd-us {
                type int16 {
                  range "-600..-300";
                }
                units "0.1 dBm per Hz";
                default "-380";
                description
                  "This parameter represents the maximum nominal transmit
    PSD in the upstream direction during initialization and
    showtime (in dBm per 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 per Hz, with 0.1 dB steps.";
                reference
                  "ITU-T G.997.1 clause 7.3.1.2.2 (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 (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 (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 (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 per 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 per Hz to -127.5
    dBm per Hz, in steps of 0.5 dBm per Hz, with valid range from
    0 to -95 dBm per 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 clauses 7.3.1.2.9 (PSDMASKds) and
                  7.3.1.2.13";
    
                list psdmask {
                  must "count(../psdmask) != 1" {
                    error-message
                      "Only one 'psdmask' is defined.";
                    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 per Hz";
                    mandatory true;
                    description
                      "Power Spectral Density (PSD) level. Valid values: 0 to 190
    (0 to -95 dBm per Hz).";
                  }
                }  // list psdmask
              }  // 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 and Table 7-5";
    
              }
    
              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 per 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 per Hz to -127.5 dBm per Hz, in steps of
    0.5 dBm per Hz, with valid range from 0 to -95 dBm per 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 (PSDMASKus)";
    
                list psdmask {
                  must "count(../psdmask) != 1" {
                    error-message
                      "Only one 'psdmask' is defined.";
                    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 per Hz";
                    mandatory true;
                    description
                      "Power Spectral Density (PSD) level. Valid values: 0 to 190
    (0 to -95 dBm per Hz).";
                  }
                }  // list psdmask
              }  // container psd-mask-us
    
              leaf limitmask {
                type limitmask-descriptor;
                must
                  "(../ts!='xts57' and ../ts!='xts58' and ../ts!='xts59'
     and ../ts!='xts60' and .='') or .!=''" {
                  error-message
                    "The transmission system is VDSL, however, no 'limitmask' is configured.";
                  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 (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 (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'))" {
                  error-message
                    "The transmission system is VDSL, however, the configured 'classmask' does not align with ITU-T G.997.1.";
                  description
                    "If the transmission system is VDSL, the 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 (CLASSMASK) and Table 7-6";
    
              }
    
              leaf vdsl2-lr-enable {
                if-feature bbf-vdsl: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')))" {
                  error-message
                    "'vdsl2-lr-enable' is enabled with an invalid 'classmask'.";
                  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";
    
              }
            }  // 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.";
              }
    
              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 (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 (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 per Hz to 80.95 dBm
    per Hz in steps of 0.01 dBm per Hz; and parameter b ranges
    from 0 to 40.95 dBm per Hz in steps of 0.01 dBm perHz. 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 per
    Hz, b = 0 dBm per 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 (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 per Hz";
                  default "4000";
                  description
                    "Upstream Power Back-Off (UPBO) parameter A.";
                }
    
                leaf upbopsd-b {
                  type uint16 {
                    range "0..4095";
                  }
                  units "0.01 dBm per 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 (UPBOKLREF-pb);
                  ITU-T G.993.2 clause 7.2.1.3.2";
    
                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). 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 (AELE-MODE);
                  ITU-T G.993.2 clause 7.2.1.3.2.2 (ELE-M1)";
    
              }
    
              leaf upbo-elmt {
                type uint8 {
                  range "0..15";
                }
                units "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). 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 (UPBOELMT);
                  ITU-T G.993.2 clause 7.2.1.3.2.2 (ELE-M1)";
    
              }
            }  // 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.";
              }
    
              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 (DPBOEPSD)";
    
                list psdmask {
                  must "count(../psdmask) != 1" {
                    error-message
                      "Only one 'psdmask' is defined.";
                    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 per Hz";
                    mandatory true;
                    description
                      "Power Spectral Density (PSD) level. Valid values: 0 to 190
    (0 to -95 dBm per Hz).";
                  }
                }  // list psdmask
              }  // container dpboepsd
    
              leaf dpboesel {
                type uint16 {
                  range "0..511";
                }
                units "0.5 dB";
                default "0";
                description
                  "Exchange side (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 (DPBOESEL)";
    
              }
    
              container dpboescm {
                description
                  "Exchange side (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 (DPBOESCM)";
    
                leaf dpboescma {
                  type uint16 {
                    range "0..640";
                  }
                  default "0";
                  description
                    "DPBOESCMA = dpboescma/256 - 1.0.";
                }
    
                leaf dpboescmb {
                  type uint16 {
                    range "0..640";
                  }
                  default "0";
                  description
                    "DPBOESCMB = dpboescmb/256 - 1.0.";
                }
    
                leaf dpboescmc {
                  type uint16 {
                    range "0..640";
                  }
                  default "0";
                  description
                    "DPBOESCMC = dpboescmc/256 - 1.0.";
                }
              }  // container dpboescm
    
              leaf dpbomus {
                type uint8 {
                  range "0..255";
                }
                units "-0.5 dBm per Hz";
                default "0";
                description
                  "Minimum usable signal (DPBOMUS). DPBOMUS defines the
    assumed minimum usable receive PSD mask (in dBm per 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 per Hz to -127.5 dBm per Hz in steps of
    0.5 dB.";
                reference
                  "ITU-T G.997.1 clause 7.3.1.2.13 (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 (DPBOFMIN)";
    
              }
    
              leaf dpbofmax {
                type uint16 {
                  range "32..8191";
                }
                units "4.3125 kHz";
                must ". >= ../dpbofmin" {
                  error-message
                    "'dpbofmax' is less than '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 (DPBOFMAX)";
    
              }
            }  // 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.";
              }
    
              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 (RFIBANDS);
                  ITU-T G.993.2 clause 7.2.1.2;
                  ITU-T G.992.5";
    
                leaf start-index {
                  type sub-carrier-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" {
                    error-message
                      "'stop-index' is less than '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).";
                }
              }  // list rfibands
            }  // list radio-frequency-interference-profile
          }  // container spectrum
    
          container quality {
            description
              "Quality profile configuration.";
            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.";
                leaf minimum-noise-margin {
                  type uint16 {
                    range "0..310";
                  }
                  units "0.1 dB";
                  must
                    ". <= ../target-noise-margin" {
                    error-message
                      "'minimum-noise-margine' is greater than '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 clauses 7.3.1.3.5 (MINSNRMds) and 7.3.1.3.6
                    (MINSNRMus)";
    
                }
    
                leaf target-noise-margin {
                  type uint16 {
                    range "0..310";
                  }
                  units "0.1 dB";
                  must
                    "../maximum-noise-margin = 'unbounded' or
    . <= ../maximum-noise-margin" {
                    error-message
                      "'target-noise-margin' is greater than '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 clauses 7.3.1.3.1 (TARSNRMds) and 7.3.1.3.2
                    (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 clauses 7.3.1.3.3 (MAXSNRMds) and 7.3.1.3.4
                    (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 clauses 7.3.1.4.1 (RA-MODEds) and 7.3.1.4.2
                    (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))" {
                    error-message
                      "'upshift-noise-margin' is less than 'target-noise-margin' and/or is greater than '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 clauses 7.3.1.4.3 (RA-USNRMds) and 7.3.1.4.4
                    (RA-USNRMus)";
    
                }
    
                leaf minimum-time-interval-upshift-sra {
                  type uint16 {
                    range "0..16383";
                  }
                  units "seconds";
                  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 16383 seconds with steps
    of one second.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.4.5 (RA-UTIMEds) and 7.3.1.4.6
                    (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)" {
                    error-message
                      "'ra-mode' is either 3 or 4 and 'downshift-noise-margin' is less than 'minimum-noise-margin' and/or greater than '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 clauses 7.3.1.4.7 (RA-DSNRMds) and 7.3.1.4.8
                    (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 16383 seconds with steps of one second.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.4.9 (RA-DTIMEds) and 7.3.1.4.10
                    (RA-DTIMEus)";
    
                }
    
                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 (SNRMODEds)";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Noise Margin Profile.";
                leaf minimum-noise-margin {
                  type uint16 {
                    range "0..310";
                  }
                  units "0.1 dB";
                  must
                    ". <= ../target-noise-margin" {
                    error-message
                      "'minimum-noise-margine' is greater than '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 clauses 7.3.1.3.5 (MINSNRMds) and 7.3.1.3.6
                    (MINSNRMus)";
    
                }
    
                leaf target-noise-margin {
                  type uint16 {
                    range "0..310";
                  }
                  units "0.1 dB";
                  must
                    "../maximum-noise-margin = 'unbounded' or
    . <= ../maximum-noise-margin" {
                    error-message
                      "'target-noise-margin' is greater than '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 clauses 7.3.1.3.1 (TARSNRMds) and 7.3.1.3.2
                    (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 clauses 7.3.1.3.3 (MAXSNRMds) and 7.3.1.3.4
                    (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 clauses 7.3.1.4.1 (RA-MODEds) and 7.3.1.4.2
                    (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))" {
                    error-message
                      "'upshift-noise-margin' is less than 'target-noise-margin' and/or is greater than '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 clauses 7.3.1.4.3 (RA-USNRMds) and 7.3.1.4.4
                    (RA-USNRMus)";
    
                }
    
                leaf minimum-time-interval-upshift-sra {
                  type uint16 {
                    range "0..16383";
                  }
                  units "seconds";
                  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 16383 seconds with steps
    of one second.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.4.5 (RA-UTIMEds) and 7.3.1.4.6
                    (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)" {
                    error-message
                      "'ra-mode' is either 3 or 4 and 'downshift-noise-margin' is less than 'minimum-noise-margin' and/or greater than '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 clauses 7.3.1.4.7 (RA-DSNRMds) and 7.3.1.4.8
                    (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 16383 seconds with steps of one second.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.4.9 (RA-DTIMEds) and 7.3.1.4.10
                    (RA-DTIMEus)";
    
                }
    
                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 (SNRMODEus)";
    
                }
              }  // 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.";
                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 (INP) 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 (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 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 (INPMIN)";
    
                }
    
                leaf minimum-inp-8 {
                  type uint8 {
                    range "0..16";
                  }
                  units "symbols";
                  default "0";
                  description
                    "If retransmission is not used in a given transmit direction,
    this parameter specifies the minimum Impulse Noise Protection
    (INP) 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 (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 millisecond
    in [ITU-T G.993.2].";
                      }
                    }
                  }
                  units "milliseconds";
                  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 milliseconds, 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 is less than or equal to
    the configured maximum interleaving delay.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.2.2 and 7.5.2.3";
    
                }
    
                leaf maximum-delay-rtx {
                  type uint8 {
                    range "1..63";
                  }
                  units "milliseconds";
                  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. The delay
    ranges from 1 to 63 milliseconds by steps of 1 milisecond.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.11 (DELAYMAX_RTX);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-delay-rtx {
                  type uint8 {
                    range "0..62";
                  }
                  units "milliseconds";
                  must
                    ". < ../maximum-delay-rtx" {
                    error-message
                      "'minimum-delay-rtx' is greater than or equal to '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. The delay
    ranges from 0 to 62 milliseconds by steps of 1 millisecond.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.12 (DELAYMIN_RTX);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-inp-against-shine-rtx {
                  type uint8 {
                    range "0..63";
                  }
                  units "symbols";
                  default "0";
                  description
                    "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum Impulse Noise
    Protection (INP) 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 (INPMIN_SHINE_RTX)";
    
                }
    
                leaf minimum-inp-against-shine-8-rtx {
                  type uint8 {
                    range "0..127";
                  }
                  units "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 (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. 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);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-inp-against-rein-rtx {
                  type uint8 {
                    range "0..7";
                  }
                  units "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 (INPMIN_REIN_RTX)";
    
                }
    
                leaf minimum-inp-against-rein-8-rtx {
                  type uint8 {
                    range "0..13";
                  }
                  units "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 (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 (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 milliseconds";
                  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
    milliseconds. A special value (enum unbounded) indicates that
    no delay variation bound is imposed.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.9 (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 (CIPOLICY); ITU-T G.993.2
                    clause 12.3.7";
    
                }
    
                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 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 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 clauses 7.3.2.2 and 7.3.1.14 (MDOSPLIT);
                    ITU-T G.993.2;
                    ITU-T G.998.4";
    
                }
    
                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. The default is enum 0, corresponding
    to the basic method.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.15.1 (ATTNDR_METHOD);
                    ITU-T G.993.2 clause 11.4.1.1.7";
    
                }
    
                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_MDOSPLIT);
                    ITU-T G.993.2;
                    ITU-T G.998.4";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Inpulse Noise Protection (INP) Delay Profile.";
                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 (INP) 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 (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 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 (INPMIN)";
    
                }
    
                leaf minimum-inp-8 {
                  type uint8 {
                    range "0..16";
                  }
                  units "symbols";
                  default "0";
                  description
                    "If retransmission is not used in a given transmit direction,
    this parameter specifies the minimum Impulse Noise Protection
    (INP) 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 (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 millisecond
    in [ITU-T G.993.2].";
                      }
                    }
                  }
                  units "milliseconds";
                  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 milliseconds, 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 is less than or equal to
    the configured maximum interleaving delay.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.2.2 and 7.5.2.3";
    
                }
    
                leaf maximum-delay-rtx {
                  type uint8 {
                    range "1..63";
                  }
                  units "milliseconds";
                  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. The delay
    ranges from 1 to 63 milliseconds by steps of 1 milisecond.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.11 (DELAYMAX_RTX);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-delay-rtx {
                  type uint8 {
                    range "0..62";
                  }
                  units "milliseconds";
                  must
                    ". < ../maximum-delay-rtx" {
                    error-message
                      "'minimum-delay-rtx' is greater than or equal to '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. The delay
    ranges from 0 to 62 milliseconds by steps of 1 millisecond.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.12 (DELAYMIN_RTX);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-inp-against-shine-rtx {
                  type uint8 {
                    range "0..63";
                  }
                  units "symbols";
                  default "0";
                  description
                    "If retransmission is used in a given transmit direction,
    this parameter specifies the minimum Impulse Noise
    Protection (INP) 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 (INPMIN_SHINE_RTX)";
    
                }
    
                leaf minimum-inp-against-shine-8-rtx {
                  type uint8 {
                    range "0..127";
                  }
                  units "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 (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. 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);
                    ITU-T G.998.4";
    
                }
    
                leaf minimum-inp-against-rein-rtx {
                  type uint8 {
                    range "0..7";
                  }
                  units "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 (INPMIN_REIN_RTX)";
    
                }
    
                leaf minimum-inp-against-rein-8-rtx {
                  type uint8 {
                    range "0..13";
                  }
                  units "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 (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 (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 milliseconds";
                  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
    milliseconds. A special value (enum unbounded) indicates that
    no delay variation bound is imposed.";
                  reference
                    "ITU-T G.997.1 clause 7.3.2.9 (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 (CIPOLICY); ITU-T G.993.2
                    clause 12.3.7";
    
                }
    
                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 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 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 clauses 7.3.2.2 and 7.3.1.14 (MDOSPLIT);
                    ITU-T G.993.2;
                    ITU-T G.998.4";
    
                }
    
                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. The default is enum 0, corresponding
    to the basic method.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.15.1 (ATTNDR_METHOD);
                    ITU-T G.993.2 clause 11.4.1.1.7";
    
                }
    
                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_MDOSPLIT);
                    ITU-T G.993.2;
                    ITU-T G.998.4";
    
                }
              }  // 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.";
                container virtual-noise {
                  must "count(psdmask) != 1" {
                    error-message
                      "Only one 'psdmask' is defined.";
                    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 per 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 per Hz to -140 dBm per Hz in
    steps of 0.5 dBm per Hz. A special value of (enum
    zero-watts-per-hz) indicates a noise level of 0 Watts per 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 (VNds)";
    
                  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 Watts per Hz (minus
    infinity dBm per Hz).";
                          }
                        }
                      }
                      units "-0.5 dBm per Hz";
                      mandatory true;
                      description
                        "The noise level, ranges from -40 dBm per Hz to -140 dBm per
    Hz in steps of -0.5 dBm per Hz, with an offset of -40 dBm
    per Hz. The virtual noise level = -psd-level/2 -40 dBm per
    Hz. A special value of (enum zero-watts-per-hz) indicates
    a noise level of 0 Watts per Hz (minus infinity dBm per
    Hz). The default is an empty list, corresponding to no
    virtual noise defined.";
                    }
                  }  // list psdmask
                }  // 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 TXREFVNds)";
    
                  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 Watts per Hz (minus
    infinity dBm per Hz).";
                          }
                        }
                      }
                      units "-0.5 dBm per Hz";
                      mandatory true;
                      description
                        "The noise level, ranges from -40 dBm per Hz to -140 dBm per
    Hz in steps of -0.5 dBm per Hz, with an offset of -40 dBm
    per Hz. The virtual noise level = -psd-level/2 -40 dBm per
    Hz. A special value of (enum zero-watts-per-hz) indicates
    a noise level of 0 Watts per Hz (minus infinity dBm per
    Hz). The default is an empty list, corresponding to no
    virtual noise defined.";
                    }
                  }  // list psdmask
                }  // 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
    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 clauses 7.3.1.7.3 and 7.3.1.7.3.2
                    (NEXT TXREFVNds)";
    
                  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 Watts per Hz (minus
    infinity dBm per Hz).";
                          }
                        }
                      }
                      units "-0.5 dBm per Hz";
                      mandatory true;
                      description
                        "The noise level, ranges from -40 dBm per Hz to -140 dBm per
    Hz in steps of -0.5 dBm per Hz, with an offset of -40 dBm
    per Hz. The virtual noise level = -psd-level/2 -40 dBm per
    Hz. A special value of (enum zero-watts-per-hz) indicates
    a noise level of 0 Watts per Hz (minus infinity dBm per
    Hz). The default is an empty list, corresponding to no
    virtual noise defined.";
                    }
                  }  // list psdmask
                }  // 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 (TXREFVNSFds)";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Virtual Noise Profile.";
                container virtual-noise {
                  must "count(psdmask) != 1" {
                    error-message
                      "Only one 'psdmask' is defined.";
                    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 per 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 per Hz
    to -140 dBm per Hz in steps of 0.5 dBm per Hz. A special
    value of (enum zero-watts-per-hz) indicates a noise level of
    0 Watts per 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 (VNus)";
    
                  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 Watts per Hz (minus
    infinity dBm per Hz).";
                          }
                        }
                      }
                      units "-0.5 dBm per Hz";
                      mandatory true;
                      description
                        "The noise level, ranges from -40 dBm per Hz to -140 dBm per
    Hz in steps of -0.5 dBm per Hz, with an offset of -40 dBm
    per Hz. The virtual noise level = -psd-level/2 -40 dBm per
    Hz. A special value of (enum zero-watts-per-hz) indicates
    a noise level of 0 Watts per Hz (minus infinity dBm per
    Hz). The default is an empty list, corresponding to no
    virtual noise defined.";
                    }
                  }  // list psdmask
                }  // 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 (RXREFVNSFus)";
    
                }
              }  // 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.";
                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). 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. 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 milliseconds to 16320 milliseconds in steps of 64
    milliseconds.
    
    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 clauses 7.3.1.10.1 (SOS-TIME-ds) and
                    7.3.1.10.2 (SOS-TIME-us);
                    ITU-T G.993.2 clause 13.4.3";
    
                }
    
                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.
    The parameter SOS-NTONES is defined as a percentage of tones.
    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.
    
    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 clauses 7.3.1.10.3 (SOS-NTONES-ds) and
                    7.3.1.10.4 (SOS-NTONES-us);
                    ITU-T G.993.2 clause 13.4.3.2";
    
                }
    
                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.";
                      }
                    }
                  }
                  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
    in the direction of transmission. 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.
    
    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 clauses 7.3.1.10.5 (SOS-CRC-ds) and 7.3.1.10.6
                    (SOS-CRC-us);
                    ITU-T G.993.2 clause 13.4.3.2";
    
                }
    
                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. 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. 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.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.10.7 (MAX-SOS-ds) and 7.3.1.10.8
                    (MAX-SOS-us);
                    ITU-T G.993.2 clause 12.1.4";
    
                }
    
                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. 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 clauses 7.3.1.10.9 (SNRMOFFSET-ROC-ds) and
                    7.3.1.10.10 (SNRMOFFSET-ROC-us);
                    ITU-T G.993.2 clause 12.3.7.1";
    
                }
    
                leaf inpmin-roc {
                  type uint8 {
                    range "0..8";
                  }
                  units "T4k periods";
                  default "0";
                  description
                    "This parameter contains the minimum impulse noise protection
    (INPMIN) 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 clauses 7.3.1.10.11 (INPMIN-ROC-ds) and
                    7.3.1.10.12 (INPMIN-ROC-us)";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Save Our Showtime (SOS) Profile.";
                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). 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. 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 milliseconds to 16320 milliseconds in steps of 64
    milliseconds.
    
    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 clauses 7.3.1.10.1 (SOS-TIME-ds) and
                    7.3.1.10.2 (SOS-TIME-us);
                    ITU-T G.993.2 clause 13.4.3";
    
                }
    
                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.
    The parameter SOS-NTONES is defined as a percentage of tones.
    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.
    
    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 clauses 7.3.1.10.3 (SOS-NTONES-ds) and
                    7.3.1.10.4 (SOS-NTONES-us);
                    ITU-T G.993.2 clause 13.4.3.2";
    
                }
    
                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.";
                      }
                    }
                  }
                  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
    in the direction of transmission. 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.
    
    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 clauses 7.3.1.10.5 (SOS-CRC-ds) and 7.3.1.10.6
                    (SOS-CRC-us);
                    ITU-T G.993.2 clause 13.4.3.2";
    
                }
    
                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. 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. 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.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.10.7 (MAX-SOS-ds) and 7.3.1.10.8
                    (MAX-SOS-us);
                    ITU-T G.993.2 clause 12.1.4";
    
                }
    
                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. 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 clauses 7.3.1.10.9 (SNRMOFFSET-ROC-ds) and
                    7.3.1.10.10 (SNRMOFFSET-ROC-us);
                    ITU-T G.993.2 clause 12.3.7.1";
    
                }
    
                leaf inpmin-roc {
                  type uint8 {
                    range "0..8";
                  }
                  units "T4k periods";
                  default "0";
                  description
                    "This parameter contains the minimum impulse noise protection
    (INPMIN) 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 clauses 7.3.1.10.11 (INPMIN-ROC-ds) and
                    7.3.1.10.12 (INPMIN-ROC-us)";
    
                }
              }  // 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.";
                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 (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 (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 (INMCC)";
    
                }
    
                leaf inm-inpeq-mode {
                  type enumeration {
                    enum "0" {
                      value 0;
                      description
                        "INM_INPEQ_MODE = 0.";
                    }
                    enum "1" {
                      value 1;
                      description
                        "INM_INPEQ_MODE = 1.";
                    }
                    enum "2" {
                      value 2;
                      description
                        "INM_INPEQ_MODE = 2.";
                    }
                    enum "3" {
                      value 3;
                      description
                        "INM_INPEQ_MODE = 3.";
                    }
                    enum "4" {
                      value 4;
                      description
                        "INM_INPEQ_MODE = 4.";
                    }
                  }
                  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
    INM_INPEQ_MODE = 0.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.9.4 (INM_INPEQ_MODE);
                    ITU-T G.993.2 clause 11.4.2.2.1";
    
                }
    
                leaf inm-inpeq-format {
                  type enumeration {
                    enum "0" {
                      value 0;
                      description
                        "Linear scale.";
                    }
                    enum "1" {
                      value 1;
                      description
                        "Logarithmic scale.";
                    }
                  }
                  default "0";
                  description
                    "Defines the way the scale is configured for the INM_INPEQ
    histogram.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.9.5;
                    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).";
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Impulse Noise Monitoring (INM) Profile.";
                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 (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 (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 (INMCC)";
    
                }
    
                leaf inm-inpeq-mode {
                  type enumeration {
                    enum "0" {
                      value 0;
                      description
                        "INM_INPEQ_MODE = 0.";
                    }
                    enum "1" {
                      value 1;
                      description
                        "INM_INPEQ_MODE = 1.";
                    }
                    enum "2" {
                      value 2;
                      description
                        "INM_INPEQ_MODE = 2.";
                    }
                    enum "3" {
                      value 3;
                      description
                        "INM_INPEQ_MODE = 3.";
                    }
                    enum "4" {
                      value 4;
                      description
                        "INM_INPEQ_MODE = 4.";
                    }
                  }
                  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
    INM_INPEQ_MODE = 0.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.9.4 (INM_INPEQ_MODE);
                    ITU-T G.993.2 clause 11.4.2.2.1";
    
                }
    
                leaf inm-inpeq-format {
                  type enumeration {
                    enum "0" {
                      value 0;
                      description
                        "Linear scale.";
                    }
                    enum "1" {
                      value 1;
                      description
                        "Logarithmic scale.";
                    }
                  }
                  default "0";
                  description
                    "Defines the way the scale is configured for the INM_INPEQ
    histogram.";
                  reference
                    "ITU-T G.997.1 clause 7.3.1.9.5;
                    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).";
                }
              }  // 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.";
                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.
    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 clauses 7.3.1.1.12.1 (RIPOLICYds),
                    7.3.1.1.12.2 (RIPOLICYus), 7.3.1.1.13 and 7.2.1.1.5;
                    ITU-T G.993.2 clause 12.1.4";
    
                }
    
                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. The valid range is from 5 to 31.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.1.13.1 and 7.3.1.1.13.2;
                    ITU-T G.993.2 clause 12.1.4";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Re-Initialization Policy Profile.";
                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.
    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 clauses 7.3.1.1.12.1 (RIPOLICYds),
                    7.3.1.1.12.2 (RIPOLICYus), 7.3.1.1.13 and 7.2.1.1.5;
                    ITU-T G.993.2 clause 12.1.4";
    
                }
    
                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. The valid range is from 5 to 31.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.1.13.1 and 7.3.1.1.13.2;
                    ITU-T G.993.2 clause 12.1.4";
    
                }
              }  // 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.";
              }
    
              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 VDSL Transceiver
    Unit - Central office (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 (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;
                  ITU-T G.993.5 Annex A";
    
              }
    
              container downstream {
                description
                  "Downstream Vectoring 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 clauses 7.3.1.13.1 (VECTOR_BAND_CONTROLus) and
                    7.3.1.13.2 (VECTOR_BAND_CONTROLds)";
    
                  leaf start-index {
                    type sub-carrier-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" {
                      error-message
                        "'stop-index' is less than '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).";
                  }
                }  // 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. Two line
    priorities are defined as LOW and HIGH. The default is
    HIGH.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.13.3 (FEXT_CANCEL_PRIORITYus) and
                    7.3.1.13.4 (FEXT_CANCEL_PRIORITYds);
                    ITU-T G.993.5";
    
                }
    
                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 clauses 7.3.1.13.5 (FEXT_CANCEL_ENABLEus) and
                    7.3.1.13.6 (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 clauses 7.3.1.13.7 (XLINGREQds) and clause
                    7.3.1.13.8 (XLINGREQus)";
    
                }
              }  // container downstream
    
              container upstream {
                description
                  "Upstream Vectoring 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 clauses 7.3.1.13.1 (VECTOR_BAND_CONTROLus) and
                    7.3.1.13.2 (VECTOR_BAND_CONTROLds)";
    
                  leaf start-index {
                    type sub-carrier-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" {
                      error-message
                        "'stop-index' is less than '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).";
                  }
                }  // 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. Two line
    priorities are defined as LOW and HIGH. The default is
    HIGH.";
                  reference
                    "ITU-T G.997.1 clauses 7.3.1.13.3 (FEXT_CANCEL_PRIORITYus) and
                    7.3.1.13.4 (FEXT_CANCEL_PRIORITYds);
                    ITU-T G.993.5";
    
                }
    
                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 clauses 7.3.1.13.5 (FEXT_CANCEL_ENABLEus) and
                    7.3.1.13.6 (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 clauses 7.3.1.13.7 (XLINGREQds) and clause
                    7.3.1.13.8 (XLINGREQus)";
    
                }
              }  // 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.";
                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_Oi);
                    ITU-T G.993.2 Table 11-43";
    
                  leaf event-number {
                    type uint8;
                    description
                      "Identifies the event type at the VDSL Transceiver Unit -
    central Office (VTU-O).";
                    reference
                      "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 bytes";
                  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_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_Ri);
                    ITU-T G.993.2 Table 11-43";
    
                  leaf event-number {
                    type uint8;
                    description
                      "Identifies the event type.";
                    reference
                      "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 bytes";
                  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";
    
                }
    
                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_REPORT_NEWER_FIRST)";
    
                }
              }  // container vtu
            }  // list data-gathering-profile
          }  // container quality
    
          container thresholds {
            description
              "Threshold configuration.";
            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.";
              }
    
              leaf forward-error-correction-seconds-threshold {
                type uint32;
                units "seconds";
                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 "seconds";
                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 "seconds";
                default "0";
                description
                  "This parameter is the performance monitoring threshold for
    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 "seconds";
                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 "seconds";
                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 "seconds";
                default "0";
                description
                  "This parameter is the performance monitoring threshold for
    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. 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;
                  ITU-T G.998.4 clause 11.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 hour 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";
    
              }
            }  // 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.";
              }
    
              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.997.1 clauses 7.2.2.1.3 and 7.2.2.2.3;
                  ITU-T G.998.4 clause 12";
    
              }
    
              leaf retransmitted-dtus-threshold {
                type uint32;
                default "0";
                description
                  "This parameter is the performance monitoring threshold
    for threshold reports of retransmitted 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.997.1 clauses 7.2.2.1.4 and 7.2.2.2.4;
                  ITU-T G.998.4 clause 12";
    
              }
            }  // list channel-threshold-profile
    
            list threshold-template {
              key "name";
              description
                "xDSL Line Threshold Template.";
              leaf name {
                type bbf-yang:string-ascii64;
                description "Template name.";
              }
    
              container xtu-c {
                description
                  "xDSL Tranceiver Unit - Central office (xTU-C) threshold
    profile pointer.";
                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 bbf-vdsl: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 bbf-vdsl:performance-24hr;
                  type channel-threshold-profile-ref;
                  mandatory true;
                  description
                    "Reference to a channel threshold profile for thresholds
    related to 24 hour performance counters.";
                }
              }  // container xtu-c
    
              container xtu-r {
                description
                  "xDSL Tranceiver Unit - Remote side (xTU-R) threshold
    profile pointer.";
                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 bbf-vdsl: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 bbf-vdsl:performance-24hr;
                  type channel-threshold-profile-ref;
                  mandatory true;
                  description
                    "Reference to a channel threshold profile for thresholds
    related to 24 hour performance counters.";
                }
              }  // container xtu-r
            }  // list threshold-template
          }  // container thresholds
    
          container vectors {
            description "Vectors of profiles.";
            list line-config-vector {
              key "name";
              description
                "xDSL Line Configuration Vector.";
              leaf name {
                type bbf-yang:string-ascii64;
                description
                  "xDSL Line Configuration Vector Identifier.";
              }
    
              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.";
              }
            }  // list line-config-vector
          }  // container vectors
        }  // container vdsl
      }  // module bbf-vdsl
    

© 2023 YumaWorks, Inc. All rights reserved.