<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
        xmlns:DOCSIS-CMTS-CM-US-OFDMA="http://www.cablelabs.com/namespaces/DOCSIS/3.1/xsd/ipdr/DOCSIS-CMTS-CM-US-OFDMA"
        xmlns:ipdr="http://mibs.cablelabs.com/namespaces/DOCSIS/tmforum/xsd/ipdr/"
        targetNamespace="http://www.cablelabs.com/namespaces/DOCSIS/3.1/xsd/ipdr/DOCSIS-CMTS-CM-US-OFDMA"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified"
        version="3.7-B.3.0.2">
  <import namespace="http://mibs.cablelabs.com/namespaces/DOCSIS/tmforum/xsd/ipdr/" schemaLocation="http://mibs.cablelabs.com/namespaces/DOCSIS/tmforum/xsd/ipdr/IPDRDoc3.5.1.xsd"/>
  <include schemaLocation="http://mibs.cablelabs.com/namespaces/DOCSIS/tmforum/xsd/ipdr/IPDRTypes.xsd"/>
  <annotation>
    <documentation>
      DOCSIS-CMTS-CM-US-OFDMA is an auxiliary schema that defines the CM's
      status information for OFDMA upstream channels.

      Revision History:
      3.5.1-B.1 Initial version.
      3.5.1-B.2 Per ECN CCAP-OSSIv3.1-N-20.2110-2: Updates definitions for MeanRxMer, StdDevRxMer,
                and ThresholdRxMerValue to clarify these values are reported in units
                Hundredth dB, per ECN CCAP-OSSIv3.1-N-20.2110-2.
      3.7.1-B.3 Updates to definitions based on Jira OSSIDM-1168
      3.7-B.3.0.0 New revision naming convention.
      3.7-B.3.0.1 Change db to HundredthdB.
      3.7-B.3.0.2 Update namespace from mibs to www. Fix import versions.
                  Revised version includes ECN CCAP-OSSIv3.1-26.2430-1.

      Contact:
        Postal: Cable Television Laboratories, Inc.
        858 Coal Creek Circle
        Louisville, Colorado 80027-9750
        U.S.A.
        Phone: +1 303-661-9100
        Fax: +1 303-661-9199
        Email: data-model-support@cablelabs.com

      Copyright 2019-2026 Cable Television Laboratories, Inc.
        All rights reserved.
    </documentation>
    <documentation>
      <ipdr:reference>
        DOCSIS 3.1 CCAP Operations Support System Interface Specification
        CCAP-OSSIv3.1-26.2430-1
      </ipdr:reference>
    </documentation>
  </annotation>
  <simpleType name = "PartialSvcReasonType">
    <annotation>
      <documentation>
        This data type enumerates the CM-STATUS events which a CM can utilize
        to report a Partial Service situation.
      </documentation>
    </annotation>
    <restriction base="integer">
      <enumeration value="0">
        <annotation>
          <documentation>
            <ipdr:enumMeaning>none</ipdr:enumMeaning>
          </documentation>
          <documentation>
            Used when the channel is not in partial service
          </documentation>
        </annotation>
      </enumeration>
      <enumeration value="1">
        <annotation>
          <documentation>
            <ipdr:enumMeaning>secondaryChanMddTimeout</ipdr:enumMeaning>
          </documentation>
          <documentation>
            Receipt of a CM-STATUS event type 1 indicating secondary
            channel MDD timeout
          </documentation>
        </annotation>
      </enumeration>
      <enumeration value="2">
        <annotation>
          <documentation>
            <ipdr:enumMeaning>lostFecLock</ipdr:enumMeaning>
          </documentation>
          <documentation>
            Receipt of a CM-STATUS event type 2 indicating QAM/FEC
            lock failure on a downstream channel
          </documentation>
        </annotation>
      </enumeration>
      <enumeration value="3">
        <annotation>
          <documentation>
            <ipdr:enumMeaning>iuc13CwErrors</ipdr:enumMeaning>
          </documentation>
          <documentation>
            Codeword errors are over limit on IUC 13 of an OFDMA
            channel. The criteria for this decision are vendor-specific
          </documentation>
        </annotation>
      </enumeration>
      <enumeration value="4">
        <annotation>
          <documentation>
            <ipdr:enumMeaning>other</ipdr:enumMeaning>
          </documentation>
          <documentation>
            Partial service is the result of a reason not described
            by the other defined enumerations
          </documentation>
        </annotation>
      </enumeration>
    </restriction>
  </simpleType>
  <element name="MaxUsableUsFreq" type="unsignedInt">
    <annotation>
      <documentation>
        This attribute is the lower of the CCAP’s maximum supported
        upstream frequency and the CM’s maximum supported upstream
        frequency. It indicates the highest upstream frequency the CCAP
        can use to receive signals from this CM taking into account the
        capabilities of both devices.
      </documentation>
      <documentation>
        <ipdr:units>hertz</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmRegStatus::MaxUsableUsFreq
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="RxPower" type="integer">
    <annotation>
      <documentation>
        This attribute is the total received power in a specified OFDMA
        channel, normalized to power in a 1.6 MHz bandwidth, at the RF
        input port of the CMTS for a given CM.
      </documentation>
      <documentation>
        <ipdr:units>dbmv</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::RxPower
        </ipdr:reference>
        <ipdr:reference>
          DOCSIS Physical Layer Specification, CM-SP-PHYv4.0-I06-221019,
          October 19, 2022, Cable Television Laboratories, Inc.
          Upstream Channel Power section.
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="MeanRxMer" type="integer">
    <annotation>
      <documentation>
        This attribute is the mean of the dB values of the RxMER
        measurements of all active subcarriers. The mean is computed
        directly on the dB values as follows: Mean = sum of (RxMER dB
        values) / number of RxMER values MeanRxMer is reported in units
        Hundredth dB.
      </documentation>
      <documentation>
        <ipdr:units>HundredthdB</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::MeanRxMer
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="StdDevRxMer" type="integer">
    <annotation>
      <documentation>
        This attribute is the standard deviation of the dB values of the
        RxMER measurements of all active subcarriers. The standard
        deviation is computed directly on the dB values as follows:
        StdDev = sqrt(sum of (RxMER dB values - RxMER_mean)^2 / number
        of RxMER values) StdDevRxMer is reported in units Hundredth dB.
      </documentation>
      <documentation>
        <ipdr:units>HundredthdB</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::StdDevRxMer
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="RxMerThreshold">
    <annotation>
      <documentation>
        This attribute specifies the percentile (such as 2nd percentile
        or 5th percentile) of all active subcarriers in an OFDM channel
        at which the ThresholdRxMerValue occurs. That is, (Percentile) %
        of the subcarriers have RxMER less than or equal to the
        ThresholdRxMerValue.
      </documentation>
      <documentation>
        <ipdr:units>percentile</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::RxMerThreshold
        </ipdr:reference>
      </appinfo>
    </annotation>
    <simpleType>
      <restriction base="unsignedByte">
        <minInclusive value="1"/>
        <maxInclusive value="99"/>
      </restriction>
    </simpleType>
  </element>
  <element name="ThresholdRxMerValue" type="integer">
    <annotation>
      <documentation>
        This attribute is the RxMER value corresponding to the specified
        RxMerThreshold percentile value. The CCAP sorts the subcarriers
        in ascending order of RxMER, resulting in a post-sorting
        subcarrier index ranging from 1 to the number of active
        subcarriers. If the percentile value corresponds to a
        non-integer post-sorting subcarrier index, the post-sorting
        index is truncated (floor function is applied); that is, the
        post-sorting index is selected which is the greatest integer
        less than or equal to the corresponding percentile value. For
        example, if there are 3677 active subcarriers and the 2nd
        percentile is specified, the CCAP computes floor(3677*0.02) =
        73. That is, the RxMER value of the 73rd subcarrier in the
        sorted list is associated with the 2nd percentile.
        ThresholdRxMerValue is reported in units Hundredth dB, but is
        only accurate to a quarter dB.
      </documentation>
      <documentation>
        <ipdr:units>db</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::ThresholdRxMerValue
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="ThresholdRxMerHighestFreq" type="unsignedInt">
    <annotation>
      <documentation>
        This attribute is the frequency in Hz of the highest-frequency
        subcarrier having RxMER = ThresholdRxMer value.
      </documentation>
      <documentation>
        <ipdr:units>hertz</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::ThresholdRxMerHighestFreq
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="Microreflections" type="unsignedShort">
    <annotation>
      <documentation>
        This attribute represents microreflections received on this
        upstream channel.
      </documentation>
      <documentation>
        <ipdr:units>dbc</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::Microreflections
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="HighResolutionTimingOffset" type="integer">
    <annotation>
      <documentation>
        This attribute represents microreflections received on this
        upstream channel.
      </documentation>
      <documentation>
        <ipdr:units>19.0734 ps</ipdr:units>
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::Microreflections
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="IsMuted" type="boolean">
    <annotation>
      <documentation>
        This attribute has a value 'true' to indicate that the CM's
        upstream channel has been muted via CM-CTRL-REQ/ CM-CTRL-RSP
        message exchange.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::IsMuted
        </ipdr:reference>
        <ipdr:reference>
          MAC and Upper Layer Protocols Interface Specification,
          CM-SP-MULPIv3.1-I25-230419, April 19, 2023, Cable Television
          Laboratories, Inc. Media Access Control Specification
          section.
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="RangingStatus">
    <annotation>
      <documentation>
        This attribute denotes ranging status of the CM on this upstream
        channel as reported by the CMTS.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::RangingStatus
        </ipdr:reference>
        <ipdr:reference>
          MAC and Upper Layer Protocols Interface Specification,
          CM-SP-MULPIv3.1-I25-230419, April 19, 2023, Cable Television
          Laboratories, Inc. Media Access Control Specification
          section.
        </ipdr:reference>
      </appinfo>
    </annotation>
    <simpleType>
      <restriction base="integer">
        <enumeration value="1">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>other</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
        <enumeration value="2">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>aborted</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
        <enumeration value="3">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>retriesExceeded</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
        <enumeration value="4">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>success</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
        <enumeration value="5">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>continue</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
        <enumeration value="6">
          <annotation>
            <documentation>
              <ipdr:enumMeaning>timeoutT4</ipdr:enumMeaning>
            </documentation>
          </annotation>
        </enumeration>
      </restriction>
    </simpleType>
  </element>
  <element name="CurPartialSvcReasonCode" type ="DOCSIS-CMTS-CM-US-OFDMA:PartialSvcReasonType">
    <annotation>
      <documentation>
        This attribute returns the current CM-STATUS Event Code which
        indicates the reason that this CM is experiencing Partial
        Service with a bonding group utilizing this upstream OFDMA
        channel. A value of 0 indicates that the CM is not currently
        experiencing Partial Service involving this OFDMA channel.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::CurPartialSvcReasonCode
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="LastPartialSvcTime" type="dateTime">
    <annotation>
      <documentation>
        This attribute returns the date and time when the MAC indicated
        that this CM recovered from its most recent Partial Service
        incident on this upstream OFDMA channel. A value of January 1,
        year 0000, 00:00:00 indicates that the CM has not experienced
        Partial Service involving this OFDM channel during the CCAP's
        history of this CM.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::LastPartialSvcTime
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="LastPartialSvcReasonCode" type ="DOCSIS-CMTS-CM-US-OFDMA:PartialSvcReasonType">
    <annotation>
      <documentation>
        This attribute returns the last CM-STATUS Event Code which
        indicates the reason that this CM was experiencing Partial
        Service on this upstream OFDMA channel. (Note: if the CM is
        currently experiencing Partial Service, this is the Event Code
        from the previous Partial Service event.) A value of 0 indicates
        that the CM has not experienced Partial Service involving this
        OFDMA channel during the CCAP's history of this CM.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::LastPartialSvcReasonCode
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="NumPartialSvcIncidents" type="unsignedInt">
    <annotation>
      <documentation>
        This attribute returns the number of Partial Service incidents
        the MAC layer has reported for this CM on this upstream OFDMA
        channel.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::NumPartialSvcIncidents
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
  <element name="FdxEnabled" type="boolean">
    <annotation>
      <documentation>
        This attribute reports a value of 'true' to indicate that the
        FDX-capable CM's upstream channel is a Full Duplex Upstream
        Channel contained within an FDX Full Duplex Ssub-band. A
        non-FDX-capable CM always reports a value of 'false'.
      </documentation>
      <appinfo>
        <ipdr:reference>
          Information Model Mapping: CM-SP-CCAP-OSSIv3.1
          CmtsCmUsOfdmaChannelStatus::FdxEnabled
        </ipdr:reference>
      </appinfo>
    </annotation>
  </element>
</schema>
