UPTIS FHIR PoC Test Implementation Guide
1.0.0 - draft
UPTIS FHIR PoC Test Implementation Guide, published by TEHIK. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/TEHIK-EE/FHIR-PoC/ and changes regularly. See the Directory of published versions
Official URL: https://fhir.ee/StructureDefinition/ee-tis-medication-list | Version: 1.0.0 | |||
Draft as of 2023-11-07 | Computable Name: EETISMedicationList |
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from List
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | List | List of patient's medication | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | string | Ravimiskeem | |
![]() ![]() ![]() |
0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) | |
![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() |
1..1 | Reference(EETISMedicationStatement) {r} | Actual entry | |
![]() |
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | List | List of patient's medication lst-1: A list can only have an emptyReason if it is empty |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() |
?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. |
![]() ![]() ![]() |
?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. |
![]() ![]() ![]() |
Σ | 0..1 | string | Ravimiskeem Example General: Dr. Jane's Patients |
![]() ![]() ![]() |
Σ | 0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) |
![]() ![]() ![]() |
Σ | 1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) |
![]() |
Path | Conformance | ValueSet | URI |
List.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|5.0.0 from the FHIR Standard | |
List.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | List | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | List | 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 | List | 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 | List | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | List | 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() | |
lst-1 | error | List | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() |
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
C | 0..* | List | List of patient's medication lst-1: A list can only have an emptyReason if it is empty | ||||
![]() ![]() ![]() |
Σ | 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: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() |
0..* | Identifier | Business identifier | |||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Ravimiskeem Example General: Dr. Jane's Patients | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | When the list was prepared | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
![]() ![]() ![]() |
0..* | Annotation | Comments about the list | |||||
![]() ![]() ![]() |
C | 0..* | BackboneElement | Entries in the list This repeating element order: Order has no meaning unless specifically asserted by List.orderedBy, in which case the List SHALL be interpreted as being ordered as specified by List.orderedBy. | ||||
![]() ![]() ![]() ![]() |
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 | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
![]() ![]() ![]() ![]() |
?! | 0..1 | boolean | If this item is actually marked as deleted | ||||
![]() ![]() ![]() ![]() |
0..1 | dateTime | When item added to list | |||||
![]() ![]() ![]() ![]() |
1..1 | Reference(EETISMedicationStatement) {r} | Actual entry | |||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
![]() |
Path | Conformance | ValueSet | URI |
List.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
List.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|5.0.0 from the FHIR Standard | |
List.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|5.0.0 from the FHIR Standard | |
List.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | |
List.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | |
List.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | |
List.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | List | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | List | 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 | List | 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 | List | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | List | 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() | |
lst-1 | error | List | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() |
This structure is derived from List
Summary
Mandatory: 1 element
Prohibited: 2 elements
Structures
This structure refers to these other structures:
Differential View
This structure is derived from List
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
0..* | List | List of patient's medication | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
0..1 | string | Ravimiskeem | |
![]() ![]() ![]() |
0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) | |
![]() ![]() ![]() |
0..0 | |||
![]() ![]() ![]() |
1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) | |
![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() |
1..1 | Reference(EETISMedicationStatement) {r} | Actual entry | |
![]() |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | List | List of patient's medication lst-1: A list can only have an emptyReason if it is empty |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() |
?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. |
![]() ![]() ![]() |
?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. |
![]() ![]() ![]() |
Σ | 0..1 | string | Ravimiskeem Example General: Dr. Jane's Patients |
![]() ![]() ![]() |
Σ | 0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) |
![]() ![]() ![]() |
Σ | 1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) |
![]() |
Path | Conformance | ValueSet | URI |
List.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|5.0.0 from the FHIR Standard | |
List.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | List | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | List | 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 | List | 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 | List | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | List | 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() | |
lst-1 | error | List | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
C | 0..* | List | List of patient's medication lst-1: A list can only have an emptyReason if it is empty | ||||
![]() ![]() ![]() |
Σ | 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: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() |
0..* | Identifier | Business identifier | |||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Ravimiskeem Example General: Dr. Jane's Patients | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(EEBasePatient) {r} | If all resources have the same subject(s) | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | When the list was prepared | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(EETISDeviceTJT | EETISPractitioner | EETISPractitionerRole) {r} | Who and/or what defined the list contents (aka Author) | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
![]() ![]() ![]() |
0..* | Annotation | Comments about the list | |||||
![]() ![]() ![]() |
C | 0..* | BackboneElement | Entries in the list This repeating element order: Order has no meaning unless specifically asserted by List.orderedBy, in which case the List SHALL be interpreted as being ordered as specified by List.orderedBy. | ||||
![]() ![]() ![]() ![]() |
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 | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
![]() ![]() ![]() ![]() |
?! | 0..1 | boolean | If this item is actually marked as deleted | ||||
![]() ![]() ![]() ![]() |
0..1 | dateTime | When item added to list | |||||
![]() ![]() ![]() ![]() |
1..1 | Reference(EETISMedicationStatement) {r} | Actual entry | |||||
![]() ![]() ![]() |
C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
![]() |
Path | Conformance | ValueSet | URI |
List.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
List.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|5.0.0 from the FHIR Standard | |
List.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|5.0.0 from the FHIR Standard | |
List.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | |
List.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | |
List.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | |
List.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | List | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | List | 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 | List | 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 | List | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | List | 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() | |
lst-1 | error | List | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() |
This structure is derived from List
Summary
Mandatory: 1 element
Prohibited: 2 elements
Structures
This structure refers to these other structures:
Other representations of profile: CSV, Excel, Schematron