description: >
    Implement to fetch the PDRs. PDRs are Platform Descriptor
    Records which are the collection of information that includes semantic
    and association information.

    This API would be used by PLDM Requester apps on the BMC.

    An implementation of this interface should maintain the primary PDR
    repository on the BMC.

    A OpenBMC implementation should implement the xyz.openbmc_project.PLDM.PDR
    interface on the path /xyz/openbmc_project/pldm.

    More information about PDR can be found at DSP0248 version 1.2.0 section 25.

methods:
    - name: FindStateEffecterPDR
      description: >
          Obtain the state effecter PDR, for the input TID, entity ID and state
          set id. If multiple PLDM entity instances(in state effecter PDRs)
          match the EntityId and StateSetId below,all the corresponding state
          effecter PDRs are returned. More than one PDR can be returned for the
          same state set id.

          When the PDR for the given input TID, entity id and state set id is
          not found, then the xyz.openbmc_project.Common.Error.ResourceNotFound
          exception will be thrown.

      parameters:
          - name: TID
            type: byte
            description: >
                A terminus id.

          - name: EntityID
            type: uint16
            description: >
                A numeric value that represents an entity that can be associated to
                a PLDM state set.

                More information is found at
                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
                section 7.

          - name: StateSetId
            type: uint16
            description: >
                A numeric value that identifies the PLDM State Set that is used with
                this sensor.

                More information is found at
                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
                section 6.

      returns:
          - name: StateEffecterPDR
            type: array[array[byte]]
            description: >
                Array of State Effecter PDRs, where a PDR is an array[byte].
                Multiple PDRs of the format present in table 89 of DSP0248 version
                1.2.0 are returned. Each of the PDRs returned has the common header
                along with all the other fields in table 89 and 90 of
                DSP0248 of version 1.2.0 .

      errors:
          - xyz.openbmc_project.Common.Error.ResourceNotFound

    - name: FindStateSensorPDR
      description: >
          Obtain the state sensor PDR, for the input TID,
          entity ID and state set id. If multiple PLDM entity instances
          (in state sensor PDRs) match the EntityId and StateSetId below,
          all the corresponding state sensor PDRs are returned. More than one PDR
          can be returned for the same state set id.

          When the PDR for the given input TID, entity id
          and state set id is not found, then the
          xyz.openbmc_project.Common.Error.ResourceNotFound exception will be thrown.

      parameters:
          - name: TID
            type: byte
            description: >
                A terminus id.

          - name: EntityID
            type: uint16
            description: >
                A numeric value that represents an entity that can be associated to a PLDM state set.
                More information is found at
                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf section 7.

          - name: StateSetId
            type: uint16
            description: >
                A numeric value that identifies the PLDM State Set that is used with this sensor.
                More information is found at
                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf section 6.

      returns:
          - name: StateSensorPDR
            type: array[array[byte]]
            description: >
                Array of State Sensor PDRs, where a PDR is an array[byte]. Multiple PDRs of the
                format present in table 80 of DSP0248 version 1.2.0 are returned. Each of the PDRs
                returned has the common header along with all the other fields in table 80 and 81 of
                DSP0248 of version 1.2.0 .

      errors:
          - xyz.openbmc_project.Common.Error.ResourceNotFound
