CH EMED EPR
1.0.0 - trial-use
This page is part of the FHIR eMedication exchange formats for the implementation effort of CARA within its EPR community (v1.0.0: STU1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions
Official URL: http://fhir.ch/ig/ch-emed-epr/StructureDefinition/ch-emed-epr-document-medicationdispense | Version: 1.0.0 | |||
Draft as of 2024-01-26 | Computable Name: CHEMEDEPRDocumentMedicationDispense | |||
Copyright/Legal: CC0-1.0 |
Definition of the bundle for the medication dispense document
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from CHEMEDDocumentMedicationDispense
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. |
id | D | 0..1 | id | ✕ This element is not supported |
meta | ||||
extension | D | 0..* | Extension | ✕ This element is not supported |
versionId | D | 0..1 | id | ✕ This element is not supported |
lastUpdated | D | 0..1 | instant | ✕ This element is not supported |
source | D | 0..1 | uri | ✕ This element is not supported |
security | D | 0..* | Coding | ✕ This element is not supported |
tag | D | 0..* | Coding | ✕ This element is not supported |
implicitRules | 0..0 | |||
language | D | 0..1 | code | ✕ This element is not supported |
identifier | ||||
extension | D | 0..* | Extension | ✕ This element is not supported |
use | 0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official | |
type | D | 0..1 | CodeableConcept | ✕ This element is not supported |
value | C | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') |
period | D | 0..1 | Period | ✕ This element is not supported |
assigner | D | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported |
total | 0..0 | |||
link | D | 0..* | BackboneElement | ✕ This element is not supported |
entry | 3..* | BackboneElement | Entry in the bundle - will have a resource or information | |
id | D | 0..1 | string | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
fullUrl | 1..1 | uri | URN-encoded UUID for resource | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Composition | 1..1 | BackboneElement | Medication dispense composition | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Patient | 1..* | BackboneElement | The patient targeted by this medication treatment plan | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Practitioner | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:PractitionerRole | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Organization | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPROrganization | CH EMED Organization | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:RelatedPerson | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Device | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Encounter | D | 0..* | BackboneElement | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Location | D | 0..* | BackboneElement | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Binary | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:MedicationDispense | 1..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:MedicationAdministration | D | 0..0 | ||
entry:ObsBodyWeight | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
signature | D | 0..1 | Signature | ✕ This element is not supported |
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. | ||||
id | Σ | 0..1 | id | ✕ This element is not supported | ||||
language | 0..1 | code | ✕ This element is not supported Binding: CommonLanguages (preferred): A human language.
| |||||
identifier | Σ | 1..1 | Identifier | Persistent identifier for the bundle | ||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | ✕ This element is not supported Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:ietf:rfc:3986 | ||||
value | ΣC | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') Example General: 123456 Example CH Core: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 | ||||
period | Σ | 0..1 | Period | ✕ This element is not supported | ||||
assigner | Σ | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported | ||||
type | Σ | 1..1 | code | document Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
timestamp | Σ | 1..1 | instant | The document's creation date and time | ||||
link | Σ | 0..* | BackboneElement | ✕ This element is not supported | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
url | Σ | 1..1 | uri | Reference details for the link | ||||
Slices for entry | ΣC | 3..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Open by profile:resource This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
entry:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | ✕ This element is not supported | |||||
fullUrl | ΣC | 1..1 | uri | URN-encoded UUID for resource | ||||
entry:Composition | ΣC | 1..1 | BackboneElement | Medication dispense composition This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |||||
entry:Patient | ΣC | 1..* | BackboneElement | The patient targeted by this medication treatment plan This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | ||||
entry:Practitioner | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | ||||
entry:PractitionerRole | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |||||
entry:Organization | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPROrganization | CH EMED Organization | ||||
entry:RelatedPerson | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
entry:Device | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | Device | Item used in healthcare | |||||
entry:Encounter | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHCoreEncounter | CH Core Encounter | |||||
entry:Location | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHCoreLocation | CH Core Location | |||||
entry:Binary | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Binary | Pure binary content defined by a format other than FHIR | |||||
entry:MedicationDispense | ΣC | 1..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | ||||
entry:ObsBodyWeight | ΣC | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | ||||
signature | Σ | 0..1 | Signature | ✕ This element is not supported | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Bundle.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Bundle.identifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Bundle.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Bundle.type | required | Fixed Value: documenthttp://hl7.org/fhir/ValueSet/bundle-type|4.0.1 from the FHIR Standard | ||||
Bundle.entry.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
bdl-1 | error | Bundle | total only when a search or history : total.empty() or (type = 'searchset') or (type = 'history') | |
bdl-2 | error | Bundle | entry.search only when a search : entry.search.empty() or (type = 'searchset') | |
bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited : entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history')) | |
bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited : entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history')) | |
bdl-5 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | must be a resource unless there's a request or response : resource.exists() or request.exists() or response.exists() | |
bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) : (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct() | |
bdl-8 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | fullUrl cannot be a version specific reference : fullUrl.contains('/_history/').not() | |
bdl-9 | error | Bundle | A document must have an identifier with a system and a value : type = 'document' implies (identifier.system.exists() and identifier.value.exists()) | |
bdl-10 | error | Bundle | A document must have a date : type = 'document' implies (timestamp.hasValue()) | |
bdl-11 | error | Bundle | A document must have a Composition as the first resource : type = 'document' implies entry.first().resource.is(Composition) | |
bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource : type = 'message' implies entry.first().resource.is(MessageHeader) | |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
ch-core-doc-1 | error | Bundle.entry.fullUrl, Bundle.entry:Binary.fullUrl, Bundle.entry:MedicationDispense.fullUrl, Bundle.entry:MedicationAdministration.fullUrl, Bundle.entry:ObsBodyWeight.fullUrl | The fullUrl must be an absolute URL server address or an UUID : startsWith('http') or startsWith('urn:uuid:') = true | |
ch-core-doc-2 | error | Bundle.identifier.value | The identifier must be an UUID : startsWith('urn:uuid:') | |
ch-pat-1 | error | Bundle.entry:Patient.resource | At least one HumanName with given and family name must be provided. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pat-2 | warning | Bundle.entry:Patient.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
ch-pract-1 | error | Bundle.entry:Practitioner.resource | If a HumanName is provided, at least one HumanName must have a given and family name. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pract-2 | warning | Bundle.entry:Practitioner.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
dom-2 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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() | |
mdd-1 | error | Bundle.entry:MedicationDispense.resource | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared | |
obs-6 | error | Bundle.entry:ObsBodyWeight.resource | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Bundle.entry:ObsBodyWeight.resource | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() | |
org-1 | error | Bundle.entry:Organization.resource | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. | ||||
id | Σ | 0..1 | id | ✕ This element is not supported | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
versionId | Σ | 0..1 | id | ✕ This element is not supported | ||||
lastUpdated | Σ | 0..1 | instant | ✕ This element is not supported | ||||
source | Σ | 0..1 | uri | ✕ This element is not supported | ||||
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
security | Σ | 0..* | Coding | ✕ This element is not supported Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
tag | Σ | 0..* | Coding | ✕ This element is not supported Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | ||||
language | 0..1 | code | ✕ This element is not supported Binding: CommonLanguages (preferred): A human language.
| |||||
identifier | Σ | 1..1 | Identifier | Persistent identifier for the bundle | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | ✕ This element is not supported Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:ietf:rfc:3986 | ||||
value | ΣC | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') Example General: 123456 Example CH Core: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 | ||||
period | Σ | 0..1 | Period | ✕ This element is not supported | ||||
assigner | Σ | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported | ||||
type | Σ | 1..1 | code | document Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
timestamp | Σ | 1..1 | instant | The document's creation date and time | ||||
link | Σ | 0..* | BackboneElement | ✕ This element is not supported | ||||
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 | ||||
relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
url | Σ | 1..1 | uri | Reference details for the link | ||||
Slices for entry | ΣC | 3..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Open by profile:resource This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
entry:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | ✕ This element is not supported | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URN-encoded UUID for resource | ||||
resource | Σ | 0..1 | Resource | A resource in the bundle | ||||
entry:Composition | ΣC | 1..1 | BackboneElement | Medication dispense composition This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |||||
entry:Patient | ΣC | 1..* | BackboneElement | The patient targeted by this medication treatment plan This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | ||||
entry:Practitioner | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | ||||
entry:PractitionerRole | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |||||
entry:Organization | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPROrganization | CH EMED Organization | ||||
entry:RelatedPerson | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
entry:Device | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Device | Item used in healthcare | |||||
entry:Encounter | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHCoreEncounter | CH Core Encounter | |||||
entry:Location | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHCoreLocation | CH Core Location | |||||
entry:Binary | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Binary | Pure binary content defined by a format other than FHIR | |||||
entry:MedicationDispense | ΣC | 1..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | ||||
entry:ObsBodyWeight | ΣC | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | ||||
signature | Σ | 0..1 | Signature | ✕ This element is not supported | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Bundle.meta.security | extensible | All Security Labelshttp://hl7.org/fhir/ValueSet/security-labels from the FHIR Standard | ||||
Bundle.meta.tag | example | CommonTagshttp://hl7.org/fhir/ValueSet/common-tags from the FHIR Standard | ||||
Bundle.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Bundle.identifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Bundle.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Bundle.type | required | Fixed Value: documenthttp://hl7.org/fhir/ValueSet/bundle-type|4.0.1 from the FHIR Standard | ||||
Bundle.entry.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
bdl-1 | error | Bundle | total only when a search or history : total.empty() or (type = 'searchset') or (type = 'history') | |
bdl-2 | error | Bundle | entry.search only when a search : entry.search.empty() or (type = 'searchset') | |
bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited : entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history')) | |
bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited : entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history')) | |
bdl-5 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | must be a resource unless there's a request or response : resource.exists() or request.exists() or response.exists() | |
bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) : (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct() | |
bdl-8 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | fullUrl cannot be a version specific reference : fullUrl.contains('/_history/').not() | |
bdl-9 | error | Bundle | A document must have an identifier with a system and a value : type = 'document' implies (identifier.system.exists() and identifier.value.exists()) | |
bdl-10 | error | Bundle | A document must have a date : type = 'document' implies (timestamp.hasValue()) | |
bdl-11 | error | Bundle | A document must have a Composition as the first resource : type = 'document' implies entry.first().resource.is(Composition) | |
bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource : type = 'message' implies entry.first().resource.is(MessageHeader) | |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
ch-core-doc-1 | error | Bundle.entry.fullUrl, Bundle.entry:Binary.fullUrl, Bundle.entry:MedicationDispense.fullUrl, Bundle.entry:MedicationAdministration.fullUrl, Bundle.entry:ObsBodyWeight.fullUrl | The fullUrl must be an absolute URL server address or an UUID : startsWith('http') or startsWith('urn:uuid:') = true | |
ch-core-doc-2 | error | Bundle.identifier.value | The identifier must be an UUID : startsWith('urn:uuid:') | |
ch-pat-1 | error | Bundle.entry:Patient.resource | At least one HumanName with given and family name must be provided. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pat-2 | warning | Bundle.entry:Patient.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
ch-pract-1 | error | Bundle.entry:Practitioner.resource | If a HumanName is provided, at least one HumanName must have a given and family name. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pract-2 | warning | Bundle.entry:Practitioner.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
dom-2 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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() | |
mdd-1 | error | Bundle.entry:MedicationDispense.resource | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared | |
obs-6 | error | Bundle.entry:ObsBodyWeight.resource | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Bundle.entry:ObsBodyWeight.resource | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() | |
org-1 | error | Bundle.entry:Organization.resource | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
This structure is derived from CHEMEDDocumentMedicationDispense
Summary
Mandatory: 2 elements (1 nested mandatory element)
Prohibited: 73 elements
Structures
This structure refers to these other structures:
Differential View
This structure is derived from CHEMEDDocumentMedicationDispense
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. |
id | D | 0..1 | id | ✕ This element is not supported |
meta | ||||
extension | D | 0..* | Extension | ✕ This element is not supported |
versionId | D | 0..1 | id | ✕ This element is not supported |
lastUpdated | D | 0..1 | instant | ✕ This element is not supported |
source | D | 0..1 | uri | ✕ This element is not supported |
security | D | 0..* | Coding | ✕ This element is not supported |
tag | D | 0..* | Coding | ✕ This element is not supported |
implicitRules | 0..0 | |||
language | D | 0..1 | code | ✕ This element is not supported |
identifier | ||||
extension | D | 0..* | Extension | ✕ This element is not supported |
use | 0..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official | |
type | D | 0..1 | CodeableConcept | ✕ This element is not supported |
value | C | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') |
period | D | 0..1 | Period | ✕ This element is not supported |
assigner | D | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported |
total | 0..0 | |||
link | D | 0..* | BackboneElement | ✕ This element is not supported |
entry | 3..* | BackboneElement | Entry in the bundle - will have a resource or information | |
id | D | 0..1 | string | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
fullUrl | 1..1 | uri | URN-encoded UUID for resource | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Composition | 1..1 | BackboneElement | Medication dispense composition | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Patient | 1..* | BackboneElement | The patient targeted by this medication treatment plan | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Practitioner | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:PractitionerRole | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Organization | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPROrganization | CH EMED Organization | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:RelatedPerson | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Device | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Encounter | D | 0..* | BackboneElement | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Location | D | 0..* | BackboneElement | ✕ This element is not supported |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:Binary | 0..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:MedicationDispense | 1..* | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
entry:MedicationAdministration | D | 0..0 | ||
entry:ObsBodyWeight | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
modifierExtension | 0..0 | |||
link | 0..0 | |||
resource | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | |
search | 0..0 | |||
request | 0..0 | |||
response | 0..0 | |||
signature | D | 0..1 | Signature | ✕ This element is not supported |
Documentation for this format |
Id | Grade | Path(s) | Details | Requirements |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. | ||||
id | Σ | 0..1 | id | ✕ This element is not supported | ||||
language | 0..1 | code | ✕ This element is not supported Binding: CommonLanguages (preferred): A human language.
| |||||
identifier | Σ | 1..1 | Identifier | Persistent identifier for the bundle | ||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | ✕ This element is not supported Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:ietf:rfc:3986 | ||||
value | ΣC | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') Example General: 123456 Example CH Core: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 | ||||
period | Σ | 0..1 | Period | ✕ This element is not supported | ||||
assigner | Σ | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported | ||||
type | Σ | 1..1 | code | document Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
timestamp | Σ | 1..1 | instant | The document's creation date and time | ||||
link | Σ | 0..* | BackboneElement | ✕ This element is not supported | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
url | Σ | 1..1 | uri | Reference details for the link | ||||
Slices for entry | ΣC | 3..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Open by profile:resource This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
entry:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | ✕ This element is not supported | |||||
fullUrl | ΣC | 1..1 | uri | URN-encoded UUID for resource | ||||
entry:Composition | ΣC | 1..1 | BackboneElement | Medication dispense composition This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |||||
entry:Patient | ΣC | 1..* | BackboneElement | The patient targeted by this medication treatment plan This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | ||||
entry:Practitioner | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | ||||
entry:PractitionerRole | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |||||
entry:Organization | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | C | 1..1 | CHEMEDEPROrganization | CH EMED Organization | ||||
entry:RelatedPerson | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
entry:Device | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | Device | Item used in healthcare | |||||
entry:Encounter | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHCoreEncounter | CH Core Encounter | |||||
entry:Location | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
resource | 1..1 | CHCoreLocation | CH Core Location | |||||
entry:Binary | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Binary | Pure binary content defined by a format other than FHIR | |||||
entry:MedicationDispense | ΣC | 1..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | ||||
entry:ObsBodyWeight | ΣC | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | ||||
signature | Σ | 0..1 | Signature | ✕ This element is not supported | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Bundle.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Bundle.identifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Bundle.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Bundle.type | required | Fixed Value: documenthttp://hl7.org/fhir/ValueSet/bundle-type|4.0.1 from the FHIR Standard | ||||
Bundle.entry.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
bdl-1 | error | Bundle | total only when a search or history : total.empty() or (type = 'searchset') or (type = 'history') | |
bdl-2 | error | Bundle | entry.search only when a search : entry.search.empty() or (type = 'searchset') | |
bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited : entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history')) | |
bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited : entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history')) | |
bdl-5 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | must be a resource unless there's a request or response : resource.exists() or request.exists() or response.exists() | |
bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) : (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct() | |
bdl-8 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | fullUrl cannot be a version specific reference : fullUrl.contains('/_history/').not() | |
bdl-9 | error | Bundle | A document must have an identifier with a system and a value : type = 'document' implies (identifier.system.exists() and identifier.value.exists()) | |
bdl-10 | error | Bundle | A document must have a date : type = 'document' implies (timestamp.hasValue()) | |
bdl-11 | error | Bundle | A document must have a Composition as the first resource : type = 'document' implies entry.first().resource.is(Composition) | |
bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource : type = 'message' implies entry.first().resource.is(MessageHeader) | |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
ch-core-doc-1 | error | Bundle.entry.fullUrl, Bundle.entry:Binary.fullUrl, Bundle.entry:MedicationDispense.fullUrl, Bundle.entry:MedicationAdministration.fullUrl, Bundle.entry:ObsBodyWeight.fullUrl | The fullUrl must be an absolute URL server address or an UUID : startsWith('http') or startsWith('urn:uuid:') = true | |
ch-core-doc-2 | error | Bundle.identifier.value | The identifier must be an UUID : startsWith('urn:uuid:') | |
ch-pat-1 | error | Bundle.entry:Patient.resource | At least one HumanName with given and family name must be provided. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pat-2 | warning | Bundle.entry:Patient.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
ch-pract-1 | error | Bundle.entry:Practitioner.resource | If a HumanName is provided, at least one HumanName must have a given and family name. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pract-2 | warning | Bundle.entry:Practitioner.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
dom-2 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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() | |
mdd-1 | error | Bundle.entry:MedicationDispense.resource | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared | |
obs-6 | error | Bundle.entry:ObsBodyWeight.resource | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Bundle.entry:ObsBodyWeight.resource | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() | |
org-1 | error | Bundle.entry:Organization.resource | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Bundle | C | 0..* | CHEMEDDocumentMedicationDispense | CH EMED Medication Dispense Document bundle-composition-same-id: The bundle and the composition resources must have the same identifier. | ||||
id | Σ | 0..1 | id | ✕ This element is not supported | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
versionId | Σ | 0..1 | id | ✕ This element is not supported | ||||
lastUpdated | Σ | 0..1 | instant | ✕ This element is not supported | ||||
source | Σ | 0..1 | uri | ✕ This element is not supported | ||||
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
security | Σ | 0..* | Coding | ✕ This element is not supported Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
tag | Σ | 0..* | Coding | ✕ This element is not supported Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | ||||
language | 0..1 | code | ✕ This element is not supported Binding: CommonLanguages (preferred): A human language.
| |||||
identifier | Σ | 1..1 | Identifier | Persistent identifier for the bundle | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | ✕ This element is not supported Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | ✕ This element is not supported Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Fixed Value: urn:ietf:rfc:3986 | ||||
value | ΣC | 1..1 | string | The value that is unique urn-uuid-invariant: The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') Example General: 123456 Example CH Core: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 Example CH EMED: urn:uuid:daa8cd41-34a1-4a9c-9a6d-cd3f850142e9 | ||||
period | Σ | 0..1 | Period | ✕ This element is not supported | ||||
assigner | Σ | 0..1 | Reference(CH EMED EPR Organization) | ✕ This element is not supported | ||||
type | Σ | 1..1 | code | document Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used. Fixed Value: document | ||||
timestamp | Σ | 1..1 | instant | The document's creation date and time | ||||
link | Σ | 0..* | BackboneElement | ✕ This element is not supported | ||||
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 | ||||
relation | Σ | 1..1 | string | See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1 | ||||
url | Σ | 1..1 | uri | Reference details for the link | ||||
Slices for entry | ΣC | 3..* | BackboneElement | Entry in the bundle - will have a resource or information Slice: Unordered, Open by profile:resource This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
entry:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | ✕ This element is not supported | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URN-encoded UUID for resource | ||||
resource | Σ | 0..1 | Resource | A resource in the bundle | ||||
entry:Composition | ΣC | 1..1 | BackboneElement | Medication dispense composition This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHEMEDEPRCompositionMedicationDispense | CH EMED Medication Dispense Composition | |||||
entry:Patient | ΣC | 1..* | BackboneElement | The patient targeted by this medication treatment plan This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRPatient | CH Core Patient EPR (to include the patient in an EPR document) | ||||
entry:Practitioner | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRPractitioner | CH EMED Practitioner | ||||
entry:PractitionerRole | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHEMEDEPRPractitionerRole | CH EMED PractitionerRole | |||||
entry:Organization | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPROrganization | CH EMED Organization | ||||
entry:RelatedPerson | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | RelatedPerson | A person that is related to a patient, but who is not a direct target of care | |||||
entry:Device | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Device | Item used in healthcare | |||||
entry:Encounter | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHCoreEncounter | CH Core Encounter | |||||
entry:Location | ΣC | 0..* | BackboneElement | ✕ This element is not supported This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | Σ | 0..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | CHCoreLocation | CH Core Location | |||||
entry:Binary | ΣC | 0..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | 1..1 | Binary | Pure binary content defined by a format other than FHIR | |||||
entry:MedicationDispense | ΣC | 1..* | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRMedicationDispense | CH EMED MedicationDispense (DIS) | ||||
entry:ObsBodyWeight | ΣC | 0..1 | BackboneElement | Entry in the bundle - will have a resource or information This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
fullUrl | ΣC | 1..1 | uri | URI for resource (Absolute URL server address or URI for UUID/OID) | ||||
resource | C | 1..1 | CHEMEDEPRObservationBodyWeight | Measurements and simple assertions | ||||
signature | Σ | 0..1 | Signature | ✕ This element is not supported | ||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Bundle.meta.security | extensible | All Security Labelshttp://hl7.org/fhir/ValueSet/security-labels from the FHIR Standard | ||||
Bundle.meta.tag | example | CommonTagshttp://hl7.org/fhir/ValueSet/common-tags from the FHIR Standard | ||||
Bundle.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Bundle.identifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Bundle.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Bundle.type | required | Fixed Value: documenthttp://hl7.org/fhir/ValueSet/bundle-type|4.0.1 from the FHIR Standard | ||||
Bundle.entry.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Composition.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Patient.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Practitioner.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:PractitionerRole.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Organization.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:RelatedPerson.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Device.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Encounter.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Location.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:Binary.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationDispense.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:MedicationAdministration.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.search.mode | required | SearchEntryModehttp://hl7.org/fhir/ValueSet/search-entry-mode|4.0.1 from the FHIR Standard | ||||
Bundle.entry:ObsBodyWeight.request.method | required | HTTPVerbhttp://hl7.org/fhir/ValueSet/http-verb|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
bdl-1 | error | Bundle | total only when a search or history : total.empty() or (type = 'searchset') or (type = 'history') | |
bdl-2 | error | Bundle | entry.search only when a search : entry.search.empty() or (type = 'searchset') | |
bdl-3 | error | Bundle | entry.request mandatory for batch/transaction/history, otherwise prohibited : entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history')) | |
bdl-4 | error | Bundle | entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited : entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history')) | |
bdl-5 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | must be a resource unless there's a request or response : resource.exists() or request.exists() or response.exists() | |
bdl-7 | error | Bundle | FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) : (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct() | |
bdl-8 | error | Bundle.entry, Bundle.entry:Composition, Bundle.entry:Patient, Bundle.entry:Practitioner, Bundle.entry:PractitionerRole, Bundle.entry:Organization, Bundle.entry:RelatedPerson, Bundle.entry:Device, Bundle.entry:Encounter, Bundle.entry:Location, Bundle.entry:Binary, Bundle.entry:MedicationDispense, Bundle.entry:ObsBodyWeight | fullUrl cannot be a version specific reference : fullUrl.contains('/_history/').not() | |
bdl-9 | error | Bundle | A document must have an identifier with a system and a value : type = 'document' implies (identifier.system.exists() and identifier.value.exists()) | |
bdl-10 | error | Bundle | A document must have a date : type = 'document' implies (timestamp.hasValue()) | |
bdl-11 | error | Bundle | A document must have a Composition as the first resource : type = 'document' implies entry.first().resource.is(Composition) | |
bdl-12 | error | Bundle | A message must have a MessageHeader as the first resource : type = 'message' implies entry.first().resource.is(MessageHeader) | |
bundle-composition-same-id | error | Bundle | The bundle and the composition resources must have the same identifier. : identifier.single() = entry[0].resource.identifier.single() | |
ch-core-doc-1 | error | Bundle.entry.fullUrl, Bundle.entry:Binary.fullUrl, Bundle.entry:MedicationDispense.fullUrl, Bundle.entry:MedicationAdministration.fullUrl, Bundle.entry:ObsBodyWeight.fullUrl | The fullUrl must be an absolute URL server address or an UUID : startsWith('http') or startsWith('urn:uuid:') = true | |
ch-core-doc-2 | error | Bundle.identifier.value | The identifier must be an UUID : startsWith('urn:uuid:') | |
ch-pat-1 | error | Bundle.entry:Patient.resource | At least one HumanName with given and family name must be provided. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pat-2 | warning | Bundle.entry:Patient.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
ch-pract-1 | error | Bundle.entry:Practitioner.resource | If a HumanName is provided, at least one HumanName must have a given and family name. : name.where(family.exists() and given.exists()).count()>0 or name.empty() | |
ch-pract-2 | warning | Bundle.entry:Practitioner.resource | gender unknown is currently not used in Switzerland in eCH and the EPR : gender.empty() or gender!='unknown' | |
dom-2 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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 | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Bundle.entry:Composition.resource, Bundle.entry:Patient.resource, Bundle.entry:Practitioner.resource, Bundle.entry:PractitionerRole.resource, Bundle.entry:Organization.resource, Bundle.entry:RelatedPerson.resource, Bundle.entry:Device.resource, Bundle.entry:Encounter.resource, Bundle.entry:Location.resource, Bundle.entry:MedicationDispense.resource, Bundle.entry:MedicationAdministration.resource, Bundle.entry:ObsBodyWeight.resource | 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() | |
mdd-1 | error | Bundle.entry:MedicationDispense.resource | whenHandedOver cannot be before whenPrepared : whenHandedOver.empty() or whenPrepared.empty() or whenHandedOver >= whenPrepared | |
obs-6 | error | Bundle.entry:ObsBodyWeight.resource | dataAbsentReason SHALL only be present if Observation.value[x] is not present : dataAbsentReason.empty() or value.empty() | |
obs-7 | error | Bundle.entry:ObsBodyWeight.resource | If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present : value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty() | |
org-1 | error | Bundle.entry:Organization.resource | The organization SHALL at least have a name or an identifier, and possibly more than one : (identifier.count() + name.count()) > 0 | |
urn-uuid-invariant | error | Bundle.identifier.value | The value shall be an URN-encoded UUID ('urn:uuid:00000000-0000-0000-0000-000000000000') : $this.matches('^urn:uuid:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$') |
This structure is derived from CHEMEDDocumentMedicationDispense
Summary
Mandatory: 2 elements (1 nested mandatory element)
Prohibited: 73 elements
Structures
This structure refers to these other structures:
Other representations of profile: CSV, Excel, Schematron