0.1.0 - ci-build
AGESMedicinalProductR5 - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Official URL: https://www.ages.at/fhir/medicinalproduct/StructureDefinition/at-medprod-ingredient | Version: 0.1.0 | |||
Draft as of 2024-05-24 | Computable Name: AT_MedicinalProduct_Ingredient |
Defines the strength and composition parts of a medicinal product
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Ingredient
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Ingredient | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product | |
for | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of | |
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |
substance | ||||
code | ||||
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |
Slices for coding | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system | |
coding:substancePharos | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system | |
system | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ | |
coding:substanceSMS | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system | |
system | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition | |
strength | C | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. |
referenceStrength | ||||
substance | 1..1 | CodeableReference(SubstanceDefinition) | Reference ingredient | |
strength[x] | 1..1 | Ratio, RatioRange, Quantity | Reference ingredient strength & unit | |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Ingredient | C | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product ing-1: If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
for | Σ | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of |
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |
substance | ΣC | 1..1 | BackboneElement | The substance that comprises this ingredient |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣC | 1..1 | CodeableReference(SubstanceDefinition) | A code or full resource that represents the ingredient substance Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. |
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |
Slices for coding | C | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
coding:substancePharos | C | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
Slices for extension | Content/Rules for all slices | |||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |
system | Σ | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ |
code | ΣC | 1..1 | code | Symbol in syntax defined by the system |
display | ΣC | 1..1 | string | Representation defined by the system |
coding:substanceSMS | C | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
Slices for extension | Content/Rules for all slices | |||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |
system | Σ | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition |
code | ΣC | 1..1 | code | Symbol in syntax defined by the system |
display | ΣC | 1..1 | string | Representation defined by the system |
strength | ΣC | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG | |
Ingredient.substance.code | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 | |
cod-1 | warning | Ingredient.substance.code.concept.coding, Ingredient.substance.code.concept.coding:substancePharos, Ingredient.substance.code.concept.coding:substanceSMS | A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text : code.exists().not() implies display.exists().not() | |
dom-2 | error | Ingredient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Ingredient | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Ingredient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ing-1 | error | Ingredient | If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource : Ingredient.where(allergenicIndicator=true).count() + Ingredient.substance.code.reference.count() < 2 |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Ingredient | C | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product ing-1: If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..1 | Identifier | An identifier or code by which the ingredient can be referenced | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
for | Σ | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of | ||||
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
function | Σ | 0..* | CodeableConcept | Precise action within the drug product, e.g. antioxidant, alkalizing agent Binding: IngredientFunction (example): A classification of the ingredient identifying its precise purpose(s) in the drug product (beyond e.g. active/inactive). | ||||
group | Σ | 0..1 | CodeableConcept | A classification of the ingredient according to where in the physical item it tends to be used, such the outer shell of a tablet, inner body or ink | ||||
allergenicIndicator | ΣC | 0..1 | boolean | If the ingredient is a known or suspected allergen | ||||
comment | 0..1 | markdown | A place for providing any notes that are relevant to the component, e.g. removed during process, adjusted for loss on drying | |||||
manufacturer | Σ | 0..* | BackboneElement | An organization that manufactures this ingredient | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
role | Σ | 0..1 | code | allowed | possible | actual Binding: IngredientManufacturerRole (required): The way in which this manufacturer is associated with the ingredient. | ||||
manufacturer | Σ | 1..1 | Reference(Organization) | An organization that manufactures this ingredient | ||||
substance | ΣC | 1..1 | BackboneElement | The substance that comprises this ingredient | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | ΣC | 1..1 | CodeableReference(SubstanceDefinition) | A code or full resource that represents the ingredient substance Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
Slices for coding | C | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
coding:substancePharos | C | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |||||
system | Σ | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ | ||||
version | Σ | 0..1 | string | Version of the system - if relevant | ||||
code | ΣC | 1..1 | code | Symbol in syntax defined by the system | ||||
display | ΣC | 1..1 | string | Representation defined by the system | ||||
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
coding:substanceSMS | C | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |||||
system | Σ | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition | ||||
version | Σ | 0..1 | string | Version of the system - if relevant | ||||
code | ΣC | 1..1 | code | Symbol in syntax defined by the system | ||||
display | ΣC | 1..1 | string | Representation defined by the system | ||||
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
text | Σ | 0..1 | string | Plain text representation of the concept | ||||
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance) | ||||
strength | ΣC | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
presentation[x] | Σ | 0..1 | The quantity of substance in the unit of presentation | |||||
presentationRatio | Ratio | |||||||
presentationRatioRange | RatioRange | |||||||
presentationCodeableConcept | CodeableConcept | |||||||
presentationQuantity | Quantity | |||||||
textPresentation | Σ | 0..1 | string | Text of either the whole presentation strength or a part of it (rest being in Strength.presentation as a ratio) | ||||
concentration[x] | Σ | 0..1 | The strength per unitary volume (or mass) | |||||
concentrationRatio | Ratio | |||||||
concentrationRatioRange | RatioRange | |||||||
concentrationCodeableConcept | CodeableConcept | |||||||
concentrationQuantity | Quantity | |||||||
textConcentration | Σ | 0..1 | string | Text of either the whole concentration strength or a part of it (rest being in Strength.concentration as a ratio) | ||||
basis | Σ | 0..1 | CodeableConcept | A code that indicates if the strength is, for example, based on the ingredient substance as stated or on the substance base (when the ingredient is a salt) | ||||
measurementPoint | Σ | 0..1 | string | When strength is measured at a particular point or distance | ||||
country | Σ | 0..* | CodeableConcept | Where the strength range applies Binding: CountryValueSet (example): Jurisdiction codes | ||||
referenceStrength | Σ | 0..* | BackboneElement | Strength expressed in terms of a reference substance | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
substance | Σ | 1..1 | CodeableReference(SubstanceDefinition) | Reference ingredient Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. | ||||
strength[x] | Σ | 1..1 | Reference ingredient strength & unit | |||||
strengthRatio | Ratio | |||||||
strengthRatioRange | RatioRange | |||||||
strengthQuantity | Quantity | |||||||
measurementPoint | Σ | 0..1 | string | When strength is measured at a particular point or distance | ||||
country | Σ | 0..* | CodeableConcept | Where the strength range applies Binding: CountryValueSet (example): Jurisdiction codes | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
Ingredient.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG | |
Ingredient.function | example | IngredientFunctionhttp://hl7.org/fhir/ValueSet/ingredient-function from the FHIR Standard | |
Ingredient.manufacturer.role | required | IngredientManufacturerRolehttp://hl7.org/fhir/ValueSet/ingredient-manufacturer-role|5.0.0 from the FHIR Standard | |
Ingredient.substance.code | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard | |
Ingredient.substance.strength.country | example | CountryValueSethttp://hl7.org/fhir/ValueSet/country from the FHIR Standard | |
Ingredient.substance.strength.referenceStrength.substance | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard | |
Ingredient.substance.strength.referenceStrength.country | example | CountryValueSethttp://hl7.org/fhir/ValueSet/country from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 | |
cod-1 | warning | Ingredient.substance.code.concept.coding, Ingredient.substance.code.concept.coding:substancePharos, Ingredient.substance.code.concept.coding:substanceSMS | A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text : code.exists().not() implies display.exists().not() | |
dom-2 | error | Ingredient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Ingredient | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Ingredient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ing-1 | error | Ingredient | If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource : Ingredient.where(allergenicIndicator=true).count() + Ingredient.substance.code.reference.count() < 2 |
This structure is derived from Ingredient
Differential View
This structure is derived from Ingredient
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Ingredient | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product | |
for | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of | |
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |
substance | ||||
code | ||||
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |
Slices for coding | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system | |
coding:substancePharos | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system | |
system | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ | |
coding:substanceSMS | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system | |
system | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition | |
strength | C | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. |
referenceStrength | ||||
substance | 1..1 | CodeableReference(SubstanceDefinition) | Reference ingredient | |
strength[x] | 1..1 | Ratio, RatioRange, Quantity | Reference ingredient strength & unit | |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Ingredient | C | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product ing-1: If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
for | Σ | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of |
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |
substance | ΣC | 1..1 | BackboneElement | The substance that comprises this ingredient |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
code | ΣC | 1..1 | CodeableReference(SubstanceDefinition) | A code or full resource that represents the ingredient substance Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. |
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |
Slices for coding | C | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
coding:substancePharos | C | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
Slices for extension | Content/Rules for all slices | |||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |
system | Σ | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ |
code | ΣC | 1..1 | code | Symbol in syntax defined by the system |
display | ΣC | 1..1 | string | Representation defined by the system |
coding:substanceSMS | C | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text |
Slices for extension | Content/Rules for all slices | |||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |
system | Σ | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition |
code | ΣC | 1..1 | code | Symbol in syntax defined by the system |
display | ΣC | 1..1 | string | Representation defined by the system |
strength | ΣC | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG | |
Ingredient.substance.code | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 | |
cod-1 | warning | Ingredient.substance.code.concept.coding, Ingredient.substance.code.concept.coding:substancePharos, Ingredient.substance.code.concept.coding:substanceSMS | A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text : code.exists().not() implies display.exists().not() | |
dom-2 | error | Ingredient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Ingredient | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Ingredient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ing-1 | error | Ingredient | If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource : Ingredient.where(allergenicIndicator=true).count() + Ingredient.substance.code.reference.count() < 2 |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Ingredient | C | 0..* | Ingredient | An ingredient of a manufactured item or pharmaceutical product ing-1: If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..1 | Identifier | An identifier or code by which the ingredient can be referenced | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
for | Σ | 1..1 | Reference(MedicinalProductDefinition | AdministrableProductDefinition | ManufacturedItemDefinition) | The product which this ingredient is a constituent part of | ||||
role | 1..1 | AT_MedicinalProduct_CodeableConcept | Ingredient role Binding: The Ingredient Role Value Set (required) Required Pattern: At least the following | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
system | 1..1 | uri | Identity of the terminology system Fixed Value: https://spor.ema.europa.eu/v1/lists/100000072050 | |||||
version | 0..1 | string | Version of the system - if relevant | |||||
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 100000072072 | |||||
display | 0..1 | string | Representation defined by the system | |||||
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |||||
text | 0..1 | string | Plain text representation of the concept | |||||
function | Σ | 0..* | CodeableConcept | Precise action within the drug product, e.g. antioxidant, alkalizing agent Binding: IngredientFunction (example): A classification of the ingredient identifying its precise purpose(s) in the drug product (beyond e.g. active/inactive). | ||||
group | Σ | 0..1 | CodeableConcept | A classification of the ingredient according to where in the physical item it tends to be used, such the outer shell of a tablet, inner body or ink | ||||
allergenicIndicator | ΣC | 0..1 | boolean | If the ingredient is a known or suspected allergen | ||||
comment | 0..1 | markdown | A place for providing any notes that are relevant to the component, e.g. removed during process, adjusted for loss on drying | |||||
manufacturer | Σ | 0..* | BackboneElement | An organization that manufactures this ingredient | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
role | Σ | 0..1 | code | allowed | possible | actual Binding: IngredientManufacturerRole (required): The way in which this manufacturer is associated with the ingredient. | ||||
manufacturer | Σ | 1..1 | Reference(Organization) | An organization that manufactures this ingredient | ||||
substance | ΣC | 1..1 | BackboneElement | The substance that comprises this ingredient | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | ΣC | 1..1 | CodeableReference(SubstanceDefinition) | A code or full resource that represents the ingredient substance Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
concept | 1..1 | AT_MedicinalProduct_CodeableConcept | Concept - reference to a terminology or just text | |||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
Slices for coding | C | 1..* | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system Slice: Unordered, Open by value:system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
coding:substancePharos | C | 1..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |||||
system | Σ | 1..1 | uri | Substance Required Pattern: https://www.ages.at/fhir/GRZ | ||||
version | Σ | 0..1 | string | Version of the system - if relevant | ||||
code | ΣC | 1..1 | code | Symbol in syntax defined by the system | ||||
display | ΣC | 1..1 | string | Representation defined by the system | ||||
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
coding:substanceSMS | C | 0..1 | AT_MedicinalProduct_Coding | A reference to a code defined by a terminology system cod-1: A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text | ||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
Slices for extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
codeSystemName | 0..1 | string | Extension URL: http://ema.europa.eu/fhir/extension/codeSystemName | |||||
system | Σ | 1..1 | uri | Active ingredient Required Pattern: https://spor.ema.europa.eu/v3/SubstanceDefinition | ||||
version | Σ | 0..1 | string | Version of the system - if relevant | ||||
code | ΣC | 1..1 | code | Symbol in syntax defined by the system | ||||
display | ΣC | 1..1 | string | Representation defined by the system | ||||
userSelected | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
text | Σ | 0..1 | string | Plain text representation of the concept | ||||
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance) | ||||
strength | ΣC | 1..1 | BackboneElement | Active ingredient strength & unit atLeastOnePresentationOrOneConcentrationInvariant: There must be at least one presentation or one concentration. | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
presentation[x] | Σ | 0..1 | The quantity of substance in the unit of presentation | |||||
presentationRatio | Ratio | |||||||
presentationRatioRange | RatioRange | |||||||
presentationCodeableConcept | CodeableConcept | |||||||
presentationQuantity | Quantity | |||||||
textPresentation | Σ | 0..1 | string | Text of either the whole presentation strength or a part of it (rest being in Strength.presentation as a ratio) | ||||
concentration[x] | Σ | 0..1 | The strength per unitary volume (or mass) | |||||
concentrationRatio | Ratio | |||||||
concentrationRatioRange | RatioRange | |||||||
concentrationCodeableConcept | CodeableConcept | |||||||
concentrationQuantity | Quantity | |||||||
textConcentration | Σ | 0..1 | string | Text of either the whole concentration strength or a part of it (rest being in Strength.concentration as a ratio) | ||||
basis | Σ | 0..1 | CodeableConcept | A code that indicates if the strength is, for example, based on the ingredient substance as stated or on the substance base (when the ingredient is a salt) | ||||
measurementPoint | Σ | 0..1 | string | When strength is measured at a particular point or distance | ||||
country | Σ | 0..* | CodeableConcept | Where the strength range applies Binding: CountryValueSet (example): Jurisdiction codes | ||||
referenceStrength | Σ | 0..* | BackboneElement | Strength expressed in terms of a reference substance | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
substance | Σ | 1..1 | CodeableReference(SubstanceDefinition) | Reference ingredient Binding: SNOMEDCTSubstanceCodes (example): This value set includes all substance codes from SNOMED CT - provided as an exemplar value set. | ||||
strength[x] | Σ | 1..1 | Reference ingredient strength & unit | |||||
strengthRatio | Ratio | |||||||
strengthRatioRange | RatioRange | |||||||
strengthQuantity | Quantity | |||||||
measurementPoint | Σ | 0..1 | string | When strength is measured at a particular point or distance | ||||
country | Σ | 0..* | CodeableConcept | Where the strength range applies Binding: CountryValueSet (example): Jurisdiction codes | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Ingredient.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
Ingredient.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
Ingredient.role | required | Pattern: 100000072072https://ema.europa.eu/fhir/vs/ingredientRole from this IG | |
Ingredient.function | example | IngredientFunctionhttp://hl7.org/fhir/ValueSet/ingredient-function from the FHIR Standard | |
Ingredient.manufacturer.role | required | IngredientManufacturerRolehttp://hl7.org/fhir/ValueSet/ingredient-manufacturer-role|5.0.0 from the FHIR Standard | |
Ingredient.substance.code | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard | |
Ingredient.substance.strength.country | example | CountryValueSethttp://hl7.org/fhir/ValueSet/country from the FHIR Standard | |
Ingredient.substance.strength.referenceStrength.substance | example | SNOMEDCTSubstanceCodeshttp://hl7.org/fhir/ValueSet/substance-codes from the FHIR Standard | |
Ingredient.substance.strength.referenceStrength.country | example | CountryValueSethttp://hl7.org/fhir/ValueSet/country from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
atLeastOnePresentationOrOneConcentrationInvariant | error | Ingredient.substance.strength | There must be at least one presentation or one concentration. : presentation.count() >=1 or concentration.count() >=1 | |
cod-1 | warning | Ingredient.substance.code.concept.coding, Ingredient.substance.code.concept.coding:substancePharos, Ingredient.substance.code.concept.coding:substanceSMS | A Coding SHOULD NOT have a display unless a code is also present. Computation on Coding.display alone is generally unsafe. Consider using CodeableConcept.text : code.exists().not() implies display.exists().not() | |
dom-2 | error | Ingredient | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Ingredient | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Ingredient | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Ingredient | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ing-1 | error | Ingredient | If an ingredient is noted as an allergen (allergenicIndicator) then its substance should be a code. If the substance is a SubstanceDefinition, then the allegen information should be documented in that resource : Ingredient.where(allergenicIndicator=true).count() + Ingredient.substance.code.reference.count() < 2 |
This structure is derived from Ingredient
Other representations of profile: CSV, Excel, Schematron