SMART Product Catalog
0.1.0 - ci-build
SMART Product Catalog, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-pcmt/tree/main and changes regularly. See the Directory of published versions
Official URL: http://smart.who.int/pcmt/StructureDefinition/MedicationCatalogItem | Version: 0.1.0 | |||
Draft as of 2025-03-06 | Computable Name: MedicationCatalogItem |
This profile represents a catalog item that is a medication
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management | |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. |
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
![]() ![]() ![]() |
?!Σ | 0..1 | code | active | inactive | entered-in-error Binding: MedicationKnowledge Status Codes (required): A coded concept defining if the medication is in active use. ele-1: All FHIR elements must have a @value or children |
![]() |
Path | Conformance | ValueSet | URI |
MedicationKnowledge.status | required | MedicationKnowledge Status Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-status|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | MedicationKnowledge | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | MedicationKnowledge | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | MedicationKnowledge | 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 | MedicationKnowledge | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | MedicationKnowledge | 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() | |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
This structure is derived from MedicationKnowledge
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge | |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. |
![]() |
Id | Grade | Path(s) | Details | Requirements |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. | ||||
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Code that identifies this medication Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication. | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | active | inactive | entered-in-error Binding: MedicationKnowledge Status Codes (required): A coded concept defining if the medication is in active use. | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Manufacturer of the item | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | powder | tablets | capsule + Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication. | |||||
![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of drug in package | ||||
![]() ![]() ![]() |
Σ | 0..* | string | Additional names for a medication | ||||
![]() ![]() ![]() |
0..* | BackboneElement | Associated or related medication information | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Category of medicationKnowledge | |||||
![]() ![]() ![]() ![]() |
1..* | Reference(MedicationKnowledge) | Associated documentation about the associated medication knowledge | |||||
![]() ![]() ![]() |
0..* | Reference(Medication) | A medication resource that is associated with this medication | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Category of the medication or product | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Associated documentation about the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | The category of medication document | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(DocumentReference | Media) | Associated documentation about the medication | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Active or inactive ingredient | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Medication(s) or substance(s) contained in the medication | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(Substance) | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | Active ingredient indicator | |||||
![]() ![]() ![]() ![]() |
0..1 | Ratio | Quantity of ingredient present | |||||
![]() ![]() ![]() |
0..1 | markdown | The instructions for preparing the medication | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | The intended or approved route of administration Binding: SNOMEDCTRouteCodes (example): A coded concept defining the intended route of administration. | |||||
![]() ![]() ![]() |
0..* | BackboneElement | The pricing of the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | The category of the cost information | |||||
![]() ![]() ![]() ![]() |
0..1 | string | The source or owner for the price information | |||||
![]() ![]() ![]() ![]() |
1..1 | Money | The price of the medication | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Program under which a medication is reviewed | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Type of program under which the medication is monitored | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Name of the reviewing program | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Guidelines for administration of the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Dosage for the medication for the specific guidelines | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Type of dosage | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Dosage | Dosage for the medication for the specific guidelines | |||||
![]() ![]() ![]() ![]() |
0..1 | Indication for use that apply to the specific administration guidelines | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(ObservationDefinition) | |||||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Characteristics of the patient that are relevant to the administration guidelines | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | Specific characteristic that is relevant to the administration guideline | ||||||
![]() ![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() ![]() ![]() ![]() |
0..* | string | The specific characteristic | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Categorization of the medication within a formulary or classification system | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | The type of category for the medication (for example, therapeutic classification, therapeutic sub-classification) | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | Specific category assigned to the medication | |||||
![]() ![]() ![]() |
0..1 | BackboneElement | Details about packaged medications | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | A code that defines the specific type of packaging that the medication can be found in Binding: medicationKnowledge Package Type Codes (example): A coded concept defining the type of packaging of a medication. | |||||
![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | The number of product units the package would contain if fully loaded | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Specifies descriptive properties of the medicine | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Code specifying the type of characteristic of medication Binding: medicationKnowledge Characteristic Codes (example): A coded concept defining the characteristic types of a medication. | |||||
![]() ![]() ![]() ![]() |
0..1 | Description of the characteristic | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() ![]() ![]() ![]() |
base64Binary | |||||||
![]() ![]() ![]() |
0..* | Reference(DetectedIssue) | Potential clinical issue with or between medication(s) | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Regulatory information about a medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Reference(Organization) | Specifies the authority of the regulation | |||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Specifies if changes are allowed when dispensing a medication from a regulatory perspective | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Specifies the type of substitution allowed | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | boolean | Specifies if regulation allows for changes in the medication when dispensing | |||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Specifies the schedule of a medication in jurisdiction | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Specifies the specific drug schedule | |||||
![]() ![]() ![]() ![]() |
0..1 | BackboneElement | The maximum number of units of the medication that can be dispensed in a period | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | SimpleQuantity | The maximum number of units of the medication that can be dispensed | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | Duration | The period that applies to the maximum number of units | |||||
![]() ![]() ![]() |
0..* | BackboneElement | The time course of drug absorption, distribution, metabolism and excretion of a medication from the body | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..* | SimpleQuantity | The drug concentration measured at certain discrete points in time | |||||
![]() ![]() ![]() ![]() |
0..* | SimpleQuantity | The median lethal dose of a drug | |||||
![]() ![]() ![]() ![]() |
0..1 | Duration | Time required for concentration in the body to decrease by half | |||||
![]() |
Path | Conformance | ValueSet | URI | |||
MedicationKnowledge.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
MedicationKnowledge.code | example | SNOMEDCTMedicationCodeshttp://hl7.org/fhir/ValueSet/medication-codes from the FHIR Standard | ||||
MedicationKnowledge.status | required | MedicationKnowledge Status Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-status|4.0.1 from the FHIR Standard | ||||
MedicationKnowledge.doseForm | example | SNOMEDCTFormCodeshttp://hl7.org/fhir/ValueSet/medication-form-codes from the FHIR Standard | ||||
MedicationKnowledge.intendedRoute | example | SNOMEDCTRouteCodeshttp://hl7.org/fhir/ValueSet/route-codes from the FHIR Standard | ||||
MedicationKnowledge.packaging.type | example | medicationKnowledge Package Type Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-package-type from the FHIR Standard | ||||
MedicationKnowledge.drugCharacteristic.type | example | medicationKnowledge Characteristic Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-characteristic from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | MedicationKnowledge | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | MedicationKnowledge | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | MedicationKnowledge | 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 | MedicationKnowledge | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | MedicationKnowledge | 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() | |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
This structure is derived from MedicationKnowledge
Key Elements View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management | |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. |
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
![]() ![]() ![]() |
?!Σ | 0..1 | code | active | inactive | entered-in-error Binding: MedicationKnowledge Status Codes (required): A coded concept defining if the medication is in active use. ele-1: All FHIR elements must have a @value or children |
![]() |
Path | Conformance | ValueSet | URI |
MedicationKnowledge.status | required | MedicationKnowledge Status Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-status|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | MedicationKnowledge | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | MedicationKnowledge | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | MedicationKnowledge | 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 | MedicationKnowledge | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | MedicationKnowledge | 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() | |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
Differential View
This structure is derived from MedicationKnowledge
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge | |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. |
![]() |
Id | Grade | Path(s) | Details | Requirements |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
0..* | MedicationKnowledge | Definition of Medication Knowledge | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
SC | 1..1 | Coding, Reference(Medication Catalog Item) | Extension URL: http://smart.who.int/pcmt/StructureDefinition/ProductID has-a-product-id-code: Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. | ||||
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Code that identifies this medication Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication. | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | active | inactive | entered-in-error Binding: MedicationKnowledge Status Codes (required): A coded concept defining if the medication is in active use. | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Manufacturer of the item | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | powder | tablets | capsule + Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication. | |||||
![]() ![]() ![]() |
Σ | 0..1 | SimpleQuantity | Amount of drug in package | ||||
![]() ![]() ![]() |
Σ | 0..* | string | Additional names for a medication | ||||
![]() ![]() ![]() |
0..* | BackboneElement | Associated or related medication information | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Category of medicationKnowledge | |||||
![]() ![]() ![]() ![]() |
1..* | Reference(MedicationKnowledge) | Associated documentation about the associated medication knowledge | |||||
![]() ![]() ![]() |
0..* | Reference(Medication) | A medication resource that is associated with this medication | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Category of the medication or product | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Associated documentation about the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | The category of medication document | |||||
![]() ![]() ![]() ![]() |
0..1 | Reference(DocumentReference | Media) | Associated documentation about the medication | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Active or inactive ingredient | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Medication(s) or substance(s) contained in the medication | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(Substance) | |||||||
![]() ![]() ![]() ![]() |
0..1 | boolean | Active ingredient indicator | |||||
![]() ![]() ![]() ![]() |
0..1 | Ratio | Quantity of ingredient present | |||||
![]() ![]() ![]() |
0..1 | markdown | The instructions for preparing the medication | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | The intended or approved route of administration Binding: SNOMEDCTRouteCodes (example): A coded concept defining the intended route of administration. | |||||
![]() ![]() ![]() |
0..* | BackboneElement | The pricing of the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | The category of the cost information | |||||
![]() ![]() ![]() ![]() |
0..1 | string | The source or owner for the price information | |||||
![]() ![]() ![]() ![]() |
1..1 | Money | The price of the medication | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Program under which a medication is reviewed | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Type of program under which the medication is monitored | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Name of the reviewing program | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Guidelines for administration of the medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Dosage for the medication for the specific guidelines | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Type of dosage | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Dosage | Dosage for the medication for the specific guidelines | |||||
![]() ![]() ![]() ![]() |
0..1 | Indication for use that apply to the specific administration guidelines | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
Reference(ObservationDefinition) | |||||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Characteristics of the patient that are relevant to the administration guidelines | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | Specific characteristic that is relevant to the administration guideline | ||||||
![]() ![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() ![]() ![]() ![]() |
0..* | string | The specific characteristic | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Categorization of the medication within a formulary or classification system | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | The type of category for the medication (for example, therapeutic classification, therapeutic sub-classification) | |||||
![]() ![]() ![]() ![]() |
0..* | CodeableConcept | Specific category assigned to the medication | |||||
![]() ![]() ![]() |
0..1 | BackboneElement | Details about packaged medications | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | A code that defines the specific type of packaging that the medication can be found in Binding: medicationKnowledge Package Type Codes (example): A coded concept defining the type of packaging of a medication. | |||||
![]() ![]() ![]() ![]() |
0..1 | SimpleQuantity | The number of product units the package would contain if fully loaded | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Specifies descriptive properties of the medicine | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..1 | CodeableConcept | Code specifying the type of characteristic of medication Binding: medicationKnowledge Characteristic Codes (example): A coded concept defining the characteristic types of a medication. | |||||
![]() ![]() ![]() ![]() |
0..1 | Description of the characteristic | ||||||
![]() ![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() |
Quantity(SimpleQuantity) | |||||||
![]() ![]() ![]() ![]() ![]() |
base64Binary | |||||||
![]() ![]() ![]() |
0..* | Reference(DetectedIssue) | Potential clinical issue with or between medication(s) | |||||
![]() ![]() ![]() |
0..* | BackboneElement | Regulatory information about a medication | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
1..1 | Reference(Organization) | Specifies the authority of the regulation | |||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Specifies if changes are allowed when dispensing a medication from a regulatory perspective | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Specifies the type of substitution allowed | |||||
![]() ![]() ![]() ![]() ![]() |
1..1 | boolean | Specifies if regulation allows for changes in the medication when dispensing | |||||
![]() ![]() ![]() ![]() |
0..* | BackboneElement | Specifies the schedule of a medication in jurisdiction | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Specifies the specific drug schedule | |||||
![]() ![]() ![]() ![]() |
0..1 | BackboneElement | The maximum number of units of the medication that can be dispensed in a period | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
1..1 | SimpleQuantity | The maximum number of units of the medication that can be dispensed | |||||
![]() ![]() ![]() ![]() ![]() |
0..1 | Duration | The period that applies to the maximum number of units | |||||
![]() ![]() ![]() |
0..* | BackboneElement | The time course of drug absorption, distribution, metabolism and excretion of a medication from the body | |||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
0..* | SimpleQuantity | The drug concentration measured at certain discrete points in time | |||||
![]() ![]() ![]() ![]() |
0..* | SimpleQuantity | The median lethal dose of a drug | |||||
![]() ![]() ![]() ![]() |
0..1 | Duration | Time required for concentration in the body to decrease by half | |||||
![]() |
Path | Conformance | ValueSet | URI | |||
MedicationKnowledge.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
MedicationKnowledge.code | example | SNOMEDCTMedicationCodeshttp://hl7.org/fhir/ValueSet/medication-codes from the FHIR Standard | ||||
MedicationKnowledge.status | required | MedicationKnowledge Status Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-status|4.0.1 from the FHIR Standard | ||||
MedicationKnowledge.doseForm | example | SNOMEDCTFormCodeshttp://hl7.org/fhir/ValueSet/medication-form-codes from the FHIR Standard | ||||
MedicationKnowledge.intendedRoute | example | SNOMEDCTRouteCodeshttp://hl7.org/fhir/ValueSet/route-codes from the FHIR Standard | ||||
MedicationKnowledge.packaging.type | example | medicationKnowledge Package Type Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-package-type from the FHIR Standard | ||||
MedicationKnowledge.drugCharacteristic.type | example | medicationKnowledge Characteristic Codeshttp://hl7.org/fhir/ValueSet/medicationknowledge-characteristic from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | MedicationKnowledge | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | MedicationKnowledge | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | MedicationKnowledge | 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 | MedicationKnowledge | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | MedicationKnowledge | 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() | |
has-a-product-id-code | error | MedicationKnowledge.extension:productID | Ensure there is a product id code. A more robust expression is needed here. Intended to be called on (a collection) of ProductId extensions. //to do: better expresssion: valueCoding or valueReference exists and meets the requisite profiles, etc. : exists() |
This structure is derived from MedicationKnowledge
Other representations of profile: CSV, Excel, Schematron