PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.pq-cmc-fda@1.0.0-ballot
    http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-component
description: The amount details about the drug product components to define the product composition in a product unit. Use composition.
package_name: hl7.fhir.us.pq-cmc-fda
derivation: constraint
name: DrugProductComponent
type: Ingredient
elements:
  meta:
    elements:
      profile: {mustSupport: true, index: 0}
    required: [profile]
  extension:
    index: 1
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: null
      slices:
        additional-info:
          match: {url: null}
          schema: {short: Drug Product Component Additional Information, type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-additional-info-extension', index: 2}
          min: 0
          max: 1
  for: {short: Reference to MedicinalProductDefinition, index: 3}
  role:
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-drug-product-component-function-category-terminology'}
    index: 4
  substance:
    constraint:
      cmc-strength-type-cases2:
        human: |-
          IF Strength Type = Activity THEN Strength Textual, Strength UOM ([arb'U]) and Strength Operator are applicable data elements.
          Strength Textual and Strength UOM will be Mandatory and Operator will be Optional. Codes 75765 [arb'U]; C45420 Activity.
        source: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-component
        severity: error
        expression: "strength\n.extension('http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/strength-extension')\n.extension.where(\n    value.coding.where(\n        code = 'C45420' and \n        system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy'\n    ).exists()\n).exists()\nimplies (\n    strength.presentation.ofType(Ratio).exists() and\n    strength.presentation.numerator.where(\n        code = 'C75765' and\n        system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy'\n    )\n) or (\n    strength.presentation.ofType(Quantity).exists() and\n    strength.presentation.where(\n        code = 'C75765' and\n        system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy'\n    )\n)"
    index: 5
    elements:
      code: {type: CodeableReference, short: Ingredient Substance, mustSupport: true, index: 6}
      strength:
        mustSupport: true
        index: 7
        extensions:
          strengthFactors: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/strength-extension', min: 1, max: 1, type: Extension, mustSupport: true, index: 9}
        elements:
          extension:
            index: 8
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 1
              slices:
                strengthFactors:
                  match: {url: null}
                  schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/strength-extension', index: 9}
                  min: 1
                  max: 1
          presentation:
            mustSupport: true
            choices: [presentationQuantity]
            index: 26
            slicing:
              slices:
                presentationQuantity:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: [presentationQuantity]
                    index: 26
                  min: 0
                  max: 1
          presentationRatio:
            type: Ratio
            mustSupport: true
            choiceOf: presentation
            index: 16
            slicing:
              slices:
                presentationRatio:
                  match: {}
                  schema: {type: Ratio, mustSupport: true, choiceOf: presentation, index: 16}
                  min: 0
                  max: 1
          presentationQuantity:
            type: Quantity
            mustSupport: true
            choiceOf: presentation
            index: 27
            slicing:
              slices:
                presentationQuantity:
                  match: {}
                  schema: {type: Quantity, mustSupport: true, choiceOf: presentation, index: 27}
                  min: 0
                  max: 1
          presentation[x]:
            elements:
              value: {short: Product Ingredient Amount Numeric, mustSupport: true, index: 28}
              unit: {index: 29}
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-units-of-measure-terminology'}
                index: 30
            required: [value, unit, code]
          textPresentation: {short: Strength Textual, mustSupport: true, index: 31}
        required: [textPresentation, presentationQuantity, extension, presentation, presentationRatio]
    required: [strength]
package_version: 1.0.0-ballot
extensions:
  additional-info: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pq-additional-info-extension', min: 0, max: 1, short: Drug Product Component Additional Information, type: Extension, mustSupport: true, index: 2}
class: profile
kind: resource
url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-component
base: http://hl7.org/fhir/StructureDefinition/Ingredient
version: 1.0.0-ballot