PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.pq-cmc-fda@1.0.0-ballot
    http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-product-part
description: The manufactured drug product defined by all its parts or layers. If the drug product composition is homogeneous it will have a single part or component.
package_name: hl7.fhir.us.pq-cmc-fda
derivation: constraint
name: FinishedProduct
type: ManufacturedItemDefinition
elements:
  meta:
    elements:
      profile: {mustSupport: true, index: 0}
    required: [profile]
  identifier: {mustSupport: true, index: 1}
  status: {mustSupport: true, index: 2}
  name: {short: Product Proprietary Name | Product Non-proprietary Name, mustSupport: true, index: 3}
  manufacturedDoseForm:
    elements:
      coding:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-manufactured-dose-form-terminology'}
        index: 4
  property:
    mustSupport: true
    array: true
    min: 5
    index: 5
    slicing:
      rules: closed
      description: Slice based on value
      discriminator:
      - {path: type, type: value}
      min: 5
      slices:
        Schematic:
          match:
            type:
              coding:
              - {code: Schematic, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Schematic}
          schema:
            mustSupport: true
            array: true
            min: 1
            _required: true
            index: 58
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: Schematic, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Schematic}
                index: 59
              value:
                choices: []
                index: 61
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueAttachment:
                      match: {}
                      schema:
                        short: Product Schematic
                        mustSupport: true
                        choices: [valueAttachment]
                        _required: true
                        index: 63
                      min: 1
                      max: 1
              valueAttachment:
                short: Product Schematic
                type: Attachment
                mustSupport: true
                choiceOf: value
                index: 64
                slicing:
                  slices:
                    valueAttachment:
                      match: {}
                      schema: {short: Product Schematic, type: Attachment, mustSupport: true, _required: true, choiceOf: value, index: 64}
                      min: 1
                      max: 1
            required: [valueAttachment, value]
        OvrRelsMech:
          match:
            type:
              coding:
              - {code: OvrRelsMech, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Overall Release Mechanism}
          schema:
            mustSupport: true
            index: 14
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: OvrRelsMech, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Overall Release Mechanism}
                index: 15
              value:
                choices: []
                index: 17
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Product Overall Release Mechanism
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 19
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Product Overall Release Mechanism
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 20
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Product Overall Release Mechanism, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 20}
                      min: 1
                      max: 1
              value[x]:
                elements:
                  coding:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-release-mechanism'}
                    index: 21
            required: [value, valueCodeableConcept]
        TotWgtOper:
          match:
            type:
              coding:
              - {code: TotWgtOper, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Total Weight Operator}
          schema:
            mustSupport: true
            index: 93
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: TotWgtOper, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Total Weight Operator}
                index: 94
              value:
                choices: []
                index: 96
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Product Total Weight Operator
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 98
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Product Total Weight Operator
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 99
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Product Total Weight Operator, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 99}
                      min: 1
                      max: 1
            required: [value, valueCodeableConcept]
        CoatInd:
          match:
            type:
              coding:
              - {code: CoatInd, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Coating Indicator}
          schema:
            mustSupport: true
            index: 22
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: CoatInd, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Coating Indicator}
                index: 23
              value:
                choices: []
                index: 25
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueBoolean:
                      match: {}
                      schema:
                        short: Product Coating Indicator
                        mustSupport: true
                        choices: [valueBoolean]
                        _required: true
                        index: 27
                      min: 1
                      max: 1
              valueBoolean:
                short: Product Coating Indicator
                type: boolean
                mustSupport: true
                choiceOf: value
                index: 28
                slicing:
                  slices:
                    valueBoolean:
                      match: {}
                      schema: {short: Product Coating Indicator, type: boolean, mustSupport: true, _required: true, choiceOf: value, index: 28}
                      min: 1
                      max: 1
            required: [value, valueBoolean]
        TotWgtDen:
          match:
            type:
              coding:
              - {code: TotWgtDen, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Total Weight Numeric Denominator}
          schema:
            mustSupport: true
            index: 80
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: TotWgtDen, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Total Weight Numeric Denominator}
                index: 81
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 83
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 84}
              value[x]:
                elements:
                  value: {short: Product Total Weight Numeric Denominator, index: 85}
                  code:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-units-of-measure-terminology'}
                    index: 86
            required: [value, valueQuantity]
        CapClass:
          match:
            type:
              coding:
              - {code: CapClass, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Capsule Classification Category}
          schema:
            mustSupport: true
            index: 43
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: CapClass, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Capsule Classification Category}
                index: 44
              value:
                choices: []
                index: 46
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Capsule Shell Part Classification Category
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 48
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Capsule Shell Part Classification Category
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 49
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Capsule Shell Part Classification Category, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 49}
                      min: 1
                      max: 1
              value[x]:
                elements:
                  coding:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/capsule-classification-category'}
                    index: 50
            required: [value, valueCodeableConcept]
        OvrRelsProf:
          match:
            type:
              coding:
              - {code: OvrRelsProf, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Overall Release Profile}
          schema:
            mustSupport: true
            _required: true
            index: 6
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: OvrRelsProf, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Overall Release Profile}
                index: 7
              value:
                choices: []
                index: 9
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Product Overall Release Profile
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 11
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Product Overall Release Profile
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 12
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Product Overall Release Profile, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 12}
                      min: 1
                      max: 1
              value[x]:
                elements:
                  coding:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-release-profile'}
                    index: 13
            required: [value, valueCodeableConcept]
        TotWgtNum:
          match:
            type:
              coding:
              - {code: TotWgtNum, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Total Weight Numeric Numerator}
          schema:
            mustSupport: true
            _required: true
            index: 73
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: TotWgtNum, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Total Weight Numeric Numerator}
                index: 74
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 76
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 77}
              value[x]:
                elements:
                  value: {short: Product Total Weight Numeric Numerator, index: 78}
                  code:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-units-of-measure-terminology'}
                    index: 79
            required: [value, valueQuantity]
        BeaTypCnt:
          match:
            type:
              coding:
              - {code: BeaTypCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Tablet Bead Type Count}
          schema:
            mustSupport: true
            index: 36
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: BeaTypCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Tablet Bead Type Count}
                index: 37
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 39
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 40}
              value[x]:
                elements:
                  value: {short: Tablet Bead Type Count, index: 41}
                  code:
                    pattern: {type: Code, value: C66832}
                    index: 42
            required: [value, valueQuantity]
        LayCnt:
          match:
            type:
              coding:
              - {code: TabLayCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Tablet Layer Count}
          schema:
            mustSupport: true
            index: 29
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: TabLayCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Tablet Layer Count}
                index: 30
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 32
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 33}
              value[x]:
                elements:
                  value: {short: Product Tablet Layer Count, index: 34}
                  code:
                    pattern: {type: Code, value: C66832}
                    index: 35
            required: [value, valueQuantity]
        CapConCnt:
          match:
            type:
              coding:
              - {code: CapConCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Capsule Constituent Count}
          schema:
            mustSupport: true
            index: 51
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: CapConCnt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Capsule Constituent Count}
                index: 52
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 54
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 55}
              value[x]:
                elements:
                  value: {short: Product Capsule Constituent Count, index: 56}
                  code:
                    pattern: {type: Code, value: C66832}
                    index: 57
            required: [value, valueQuantity]
        QualStd:
          match:
            type:
              coding:
              - {code: QualStd, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Quality Standard}
          schema:
            mustSupport: true
            array: true
            min: 1
            _required: true
            index: 100
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: QualStd, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Quality Standard}
                index: 101
              value:
                choices: []
                index: 103
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Product Quality Standard
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 105
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Product Quality Standard
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 106
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Product Quality Standard, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 106}
                      min: 1
                      max: 1
            required: [value, valueCodeableConcept]
        WgtTyp:
          match:
            type:
              coding:
              - {code: WgtTyp, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Weight Type}
          schema:
            mustSupport: true
            _required: true
            index: 65
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: WgtTyp, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Weight Type}
                index: 66
              value:
                choices: []
                index: 68
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: $this, type: type}
                  min: 1
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema:
                        short: Product Weight Type
                        mustSupport: true
                        choices: [valueCodeableConcept]
                        _required: true
                        index: 70
                      min: 1
                      max: 1
              valueCodeableConcept:
                short: Product Weight Type
                type: CodeableConcept
                mustSupport: true
                choiceOf: value
                index: 71
                slicing:
                  slices:
                    valueCodeableConcept:
                      match: {}
                      schema: {short: Product Weight Type, type: CodeableConcept, mustSupport: true, _required: true, choiceOf: value, index: 71}
                      min: 1
                      max: 1
              value[x]:
                elements:
                  coding:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-strength-type-terminology'}
                    index: 72
            required: [value, valueCodeableConcept]
        TotWgtTxt:
          match:
            type:
              coding:
              - {code: TotWgtTxt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Total Weight Textual}
          schema:
            mustSupport: true
            index: 87
            elements:
              type:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-characteristic'}
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: TotWgtTxt, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Total Weight Textual}
                index: 88
              value:
                mustSupport: true
                choices: [valueMarkdown]
                index: 90
              valueMarkdown: {type: markdown, mustSupport: true, choiceOf: value, index: 91}
              value[x]:
                elements:
                  value: {short: Product Total Weight Textual, index: 92}
            required: [valueMarkdown, value]
  component:
    constraint:
      cmc-ppidref-required:
        human: A PPiDref is required when the PPiD is designated a child.
        source: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-product-part
        severity: error
        expression: "property.where(\n        type.coding.exists(system = '' and code = 'PPiD') and    \n        value.coding.exists(system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/pqcmc-relationship-types' and code = 'child')\n    ).exists()\n    implies \n        property.where(type.coding.exists(system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/pqcmc-product-characteristic' and code = 'PPiDref')).exists()"
    mustSupport: true
    index: 107
    elements:
      type:
        short: Product Part Type
        mustSupport: true
        index: 108
        elements:
          coding:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-part-type'}
            index: 109
      function:
        elements:
          text: {short: Product Part Function Description, mustSupport: true, index: 110}
      amount:
        extensions:
          WghtlDenom: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator', min: 0, max: 1, type: Extension, mustSupport: true, index: 111}
        elements:
          extension:
            type: Extension
            mustSupport: true
            url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator
            index: 111
            slicing:
              slices:
                WghtlDenom:
                  match: {}
                  schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator', index: 111}
                  min: 0
                  max: 1
          value: {short: Product Part Total Weight Numeric Numerator, mustSupport: true, index: 112}
          unit: {short: Product Part Total Weight Numeric Numerator UOM, mustSupport: true, index: 113}
          code:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-units-of-measure-terminology'}
            mustSupport: true
            index: 114
        required: [value, unit, code]
      constituent:
        constraint:
          cmc-ingredient-functions:
            human: |-
              If Drug Product Component constituent Function Category is Active Ingredient or Adjuvant THEN Drug Product Component constituent Function is not applicable.
              If Drug Product Component Function Category constituent is Inactive Ingredient (excipient) THEN Drug Product Component Function must be from the value list.
            source: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-product-part
            severity: error
            expression: function.coding.where(code = 'C42637' and system = 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy').exists() implies function.coding.code.count() = 2
        mustSupport: true
        index: 115
        extensions:
          ConstituentPercent: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/content-percent', min: 1, max: 1, type: Extension, mustSupport: true, index: 117}
        elements:
          extension:
            index: 116
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 1
              slices:
                ConstituentPercent:
                  match: {url: null}
                  schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/content-percent', index: 117}
                  min: 1
                  max: 1
          amount:
            mustSupport: true
            index: 118
            extensions:
              OptionalDenom: {url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator', min: 0, max: 1, type: Extension, mustSupport: true, index: 119}
            elements:
              extension:
                type: Extension
                mustSupport: true
                url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator
                index: 119
                slicing:
                  slices:
                    OptionalDenom:
                      match: {}
                      schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/optional-denominator', index: 119}
                      min: 0
                      max: 1
              value: {short: Product Part Ingredient Amount Numeric Numerator, mustSupport: true, index: 120}
              unit: {short: Product Part Ingredient Amount Numeric Numerator UOM, mustSupport: true, index: 121}
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-units-of-measure-terminology'}
                mustSupport: true
                index: 122
            required: [value, unit, code]
          location:
            short: Product Part Ingredient Physical Location
            mustSupport: true
            index: 123
            elements:
              coding:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-product-part-ingredient-physical-location'}
                mustSupport: true
                index: 124
              text: {mustSupport: true, index: 125}
            required: [coding]
          function:
            min: 1
            index: 126
            slicing:
              rules: closed
              description: Slice on the function coding
              discriminator:
              - {path: coding, type: value}
              min: 1
              max: 2
              slices:
                Category:
                  match: {coding: null}
                  schema:
                    short: Product Part Ingredient Component Function Category
                    mustSupport: true
                    _required: true
                    index: 128
                    elements:
                      coding:
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-drug-product-component-function-category-terminology'}
                        index: 129
                Function:
                  match: {coding: null}
                  schema:
                    short: Product Part Ingredient Function
                    mustSupport: true
                    index: 130
                    elements:
                      coding:
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-excipient-function-terminology'}
                        index: 131
            mustSupport: true
            array: true
            elements:
              coding: {mustSupport: true, index: 127}
            max: 2
            required: [coding]
          hasIngredient: {type: CodeableReference, mustSupport: true, index: 132}
        required: [extension, function, hasIngredient, amount]
      property:
        mustSupport: true
        array: true
        min: 3
        index: 133
        slicing:
          rules: closed
          description: Slice based on value
          discriminator:
          - {path: type, type: value}
          min: 3
          slices:
            PPiD:
              match:
                type:
                  coding:
                  - {code: PPiD, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Identifier}
              schema:
                type: BackboneElement
                mustSupport: true
                _required: true
                index: 134
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: PPiD, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Identifier}
                    index: 135
                  value:
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 137
                  valueCodeableConcept: {type: CodeableConcept, mustSupport: true, choiceOf: value, index: 138}
                  value[x]:
                    elements:
                      coding:
                        short: Product Part Role
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/cmc-relationship-types-vs'}
                        index: 139
                      text: {short: Product Part Identifier, mustSupport: true, index: 140}
                    required: [text]
                required: [value, valueCodeableConcept]
            PPiDref:
              match:
                type:
                  coding:
                  - {code: PPiDref, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Identifier Reference}
              schema:
                type: BackboneElement
                mustSupport: true
                index: 141
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: PPiDref, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Identifier Reference}
                    index: 142
                  value:
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 144
                  valueCodeableConcept: {type: CodeableConcept, mustSupport: true, choiceOf: value, index: 145}
                  value[x]:
                    elements:
                      text: {short: Product Part Identifier Reference, mustSupport: true, index: 146}
                    required: [text]
                required: [value, valueCodeableConcept]
            RelsProf:
              match:
                type:
                  coding:
                  - {code: RelsProf, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Release Profile}
              schema:
                type: BackboneElement
                mustSupport: true
                _required: true
                index: 147
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: RelsProf, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Release Profile}
                    index: 148
                  value:
                    short: Product Part Release Profile
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 150
                  valueCodeableConcept: {type: CodeableConcept, short: Product Part Release Profile, mustSupport: true, choiceOf: value, index: 151}
                  value[x]:
                    elements:
                      coding:
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-release-profile'}
                        index: 152
                required: [value, valueCodeableConcept]
            RelsMech:
              match:
                type:
                  coding:
                  - {code: RelsMech, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Release Mechanism}
              schema:
                type: BackboneElement
                mustSupport: true
                index: 153
                elements:
                  type:
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: RelsMech, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Release Mechanism}
                    index: 154
                  value:
                    short: Product Part Release Mechanism
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 156
                  valueCodeableConcept: {type: CodeableConcept, short: Product Part Release Mechanism, mustSupport: true, choiceOf: value, index: 157}
                  value[x]:
                    elements:
                      coding:
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-release-mechanism'}
                        index: 158
                required: [value, valueCodeableConcept]
            CoatPurpose:
              match:
                type:
                  coding:
                  - {code: CoatPurpose, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Coating Product Part Purpose}
              schema:
                type: BackboneElement
                mustSupport: true
                array: true
                index: 159
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: CoatPurpose, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Coating Product Part Purpose}
                    index: 160
                  value:
                    short: Coating Product Part Purpose
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 162
                  valueCodeableConcept: {type: CodeableConcept, short: Coating Product Part Purpose, mustSupport: true, choiceOf: value, index: 163}
                  value[x]:
                    elements:
                      coding:
                        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/pq-cmc-fda/ValueSet/pqcmc-coating-purpose'}
                        index: 164
                required: [value, valueCodeableConcept]
            Color:
              match:
                type:
                  coding:
                  - {code: Color, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Color Description}
              schema:
                type: BackboneElement
                mustSupport: true
                index: 165
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: Color, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Color Description}
                    index: 166
                  value:
                    mustSupport: true
                    choices: [valueCodeableConcept]
                    index: 168
                  valueCodeableConcept: {type: CodeableConcept, mustSupport: true, choiceOf: value, index: 169}
                  value[x]:
                    elements:
                      text: {short: Product Part Color Description, mustSupport: true, index: 170}
                    required: [text]
                required: [value, valueCodeableConcept]
            ContPercent:
              match:
                type:
                  coding:
                  - {code: ContPercent, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Content Percent}
              schema:
                type: BackboneElement
                mustSupport: true
                _required: true
                index: 171
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: ContPercent, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Content Percent}
                    index: 172
                  value:
                    short: Product Part Content Percent
                    mustSupport: true
                    choices: [valueQuantity]
                    index: 174
                  valueQuantity: {type: Quantity, short: Product Part Content Percent, mustSupport: true, choiceOf: value, index: 175}
                required: [value, valueQuantity]
            AddInfo:
              match:
                type:
                  coding:
                  - {code: AddInfo, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Additional Information}
              schema:
                type: BackboneElement
                mustSupport: true
                index: 176
                elements:
                  type:
                    mustSupport: true
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: AddInfo, system: 'http://hl7.org/fhir/us/pq-cmc-fda/CodeSystem/cmc-ncit-dummy', display: Product Part Additional Information}
                    index: 177
                  value:
                    short: Product Part Additional Information
                    choices: [valueMarkdown]
                    index: 179
                  valueMarkdown: {type: markdown, short: Product Part Additional Information, choiceOf: value, index: 180}
      component: {mustSupport: true, index: 181}
    required: [constituent]
package_version: 1.0.0-ballot
class: profile
kind: resource
url: http://hl7.org/fhir/us/pq-cmc-fda/StructureDefinition/pqcmc-product-part
base: http://hl7.org/fhir/StructureDefinition/ManufacturedItemDefinition
version: 1.0.0-ballot
required: [component]