Profile: Immunization (Panorama)
This Profile is created and maintained external to the LRA project and is provided here as an aid for implementers of the LRA in finding the base profile definitions. The reader should always verify the profile on the linked source page.
Overview
The scope of this integration is to store all immunizations and related resources retrieved from the Immunization Distribution Service (IDS) into the LRA Platform's Smile CDR. The IDS publishes immunization records from Panorama to a First-In-First-Out (FIFO) queue, which the LRA Platform consumes. Once stored in Smile CDR, it provides technical capabilities to read and query these resources based on various search parameters. Although LRA has the technical capability to retrieve FHIR resources, aligning this with business query requirements and addressing how clients will query immunization-related data will be tackled in the next release.Important Links
Simplifier Project Page: BCY Immunization Distribution Service
Example Usage Scenarios
Example Bundle: Example Bundle - Immunization
Profiles Content
The Immunization Distribution Service (IDS) sends an immunization bundle whenever a patient's immunization data is updated or changed. This bundle represents the current view of the patient’s immunization status, and while it may include resources that are identical to those in previous bundles, it provides a complete replacement of the prior data for the patient.
The structure of the Immunization bundle includes the following resources:
- MessageHeader 1..1
- Patient 1..1
- Organization 1..*
- Location 1..*
- Immunization 1..*
- AdverseEvent 0..*
- Consent 0..*
- ImmunizationRecommendation 0..*
- RiskAssessment 0..*
- MedicationRequest 0..*
- CarePlan 0..*
All resources within the Immunization bundle conform to IDS-defined profiles, which are based on HL7 FHIR R4 (4.0.1). Some resources, such as Consent and CarePlan, may include contained resources. In such cases, the outer resource, along with all contained resources, should be stored as a single resource.
-
MessageHeader
The MessageHeader resource captures key metadata about the immunization bundle, including details about the source and the destination for the message. This resource helps to understand the context of the immunization data exchange and not stored in the Smile CDR.
MessageHeader I MessageHeader There are no (further) constraints on this elementElement idShort descriptionMessageHeader
A resource that describes a message that is exchanged between systems
DefinitionData type ConstraintsThe header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-4: 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-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
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-6: A resource should have narrative for robust management
text.`div`.exists()
- dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- rim: Entity. Role, or Act
- v2: MSH / MSA / ERR
- rim: Message
id Σ 1..1 string Element id Short descriptionMessageHeader.id
Same unique GUID as resourceBundle.id
DefinitionCommentsThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
Data type MappingsSee Mappings
- bundleID: (bundle.id)
meta Σ 1..1 Meta There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
versionId Σ 0..1 id Element id Short descriptionMessageHeader.meta.versionId
Version specific identifier
DefinitionCommentsThe version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Data type ConstraintsApply '2024.26' (This indicates FHIR changes on 2024 April). Mappings for element REASON updated with Event_Type.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
lastUpdated Σ 0..0 instant There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.lastUpdated
When the resource version last changed
DefinitionCommentsWhen the resource last changed - e.g. when the version changed.
Data type ConstraintsThis value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
source Σ 0..0 uri There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.source
Identifies where the resource comes from
DefinitionCommentsA uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
Data type ConstraintsIn the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used.
This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
profile Σ 1..1 canonical(StructureDefinition)Fixed Value Element id Short descriptionMessageHeader.meta.profile
Profiles this resource claims to conform to
DefinitionCommentsA list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Data typeUse 'http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/MessageHeader'
canonical(StructureDefinition)
ConstraintsFixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingshttp://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/MessageHeader
- rim: n/a
security Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.security
Security Labels applied to this resource
DefinitionCommentsSecurity labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Data type BindingThe security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
All Security Labels (extensible)ConstraintsSecurity Labels from the Healthcare Privacy and Security Classification System.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
tag Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.meta.tag
Tags applied to this resource
DefinitionCommentsTags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Data type BindingThe tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
CommonTags (example)ConstraintsCodes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
implicitRules Σ ?! 0..0 uri There are no (further) constraints on this elementElement idShort descriptionMessageHeader.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
language 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
text 0..0 Narrative There are no (further) constraints on this elementElement idShort descriptionMessageHeader.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- rim: Act.text?
contained 0..0 Resource There are no (further) constraints on this elementElement idShort descriptionMessageHeader.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: Entity. Role, or Act
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
event[x] Σ 1..1 Fixed Value Element id Short descriptionMessageHeader.event[x]
Code for the event this message represents or link to event definition
DefinitionRequirementsCode that identifies the event this message represents and connects it with its definition. Events defined as part of the FHIR specification have the system value "http://terminology.hl7.org/CodeSystem/message-events". Alternatively uri to the EventDefinition.
CommentsDrives the behavior associated with this message.
BindingApply 'http://ehealth.bc.ca/panorama/fhir/MessageHeader'
MessageEvent (example)ConstraintsOne of the message events defined as part of this version of FHIR.
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingshttp://ehealth.bc.ca/panorama/fhir/MessageHeader
- rim: n/a
- w5: FiveWs.what[x]
- v2: MSH-9.2
- rim: ./payload[classCode="CACT" and moodCode="EVN" and isNormalAct()]/code[isNormalDatatype()]/code
eventUri uri Data type destination Σ 1..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination
Message destination application(s)
DefinitionRequirementsThe destination application which the message is intended for.
CommentsIndicates where message is to be sent for routing purposes. Allows verification of "am I the intended recipient".
Data type ConstraintsThere SHOULD be at least one destination, but in some circumstances, the source system is unaware of any particular destination system.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.subject[x]
- rim: ./communicationFunction[typeCode="RCV"]
- w5: FiveWs.subject
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
name Σ 1..1 string Element id Short descriptionMessageHeader.destination.name
Name of system
DefinitionRequirementsHuman-readable name for the target system.
CommentsMay be used for routing of response and/or to support audit.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: MSH-5
- rim: unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"]/name[type='ST' and isNormalDatatype()])
- dest-fha: fha
- dest-HealthGateway: hgwy
- dest-iha: iha
- dest-nha: nha
- dest-vcha: vcha
- dest-viha: viha
- dest-indigenousHealthOrganization: indigenous health organizations
target Σ I 0..0 Reference(Device) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.target
Particular delivery destination within the destination
DefinitionRequirementsIdentifies the target end system in situations where the initial message transmission is to an intermediary system.
CommentsSupports multi-hop routing.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- rim: unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"]
endpoint Σ 1..1 url Element id Short descriptionMessageHeader.destination.endpoint
Actual destination address or id
DefinitionRequirementsIndicates where the message should be routed to.
CommentsIdentifies where to route the message.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: MSH-25 (or MSH-6)
- rim: ./telecom
- dest-fha: [id-system-local-base]/ca-bc-fha
- dest-HealthGateway: [id-system-local-base]/ca-bc-healthGateway
- dest-iha: [id-system-local-base]/ca-bc-iha
- dest-nha: [id-system-local-base]/ca-bc-nha
- dest-OutOfBC: [id-system-local-base]/ca-bc-outofprovince
- dest-vch: [id-system-local-base]/ca-bc-vcha
- dest-viha: [id-system-local-base]/ca-bc-viha
- dest-IndigenousHealthOrganizations: [id-system-local-base]/ca-bc-indigenous health organizations
receiver Σ I 0..0 Reference(Practitioner | PractitionerRole | Organization) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.destination.receiver
Intended "real-world" recipient for the data
DefinitionRequirementsAllows data conveyed by a message to be addressed to a particular person or department when routing to a specific application isn't sufficient.
CommentsAllows routing beyond just the application level.
Data typeReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- w5: FiveWs.subject[x]
- v2: PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR'
- rim: Not directly supported. Could be shared using attentionLine.value with an appropriate keyWordText
- w5: FiveWs.subject
sender Σ I 0..0 Reference(Practitioner | PractitionerRole | Organization) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.sender
Real world sender of the message
DefinitionRequirementsIdentifies the sending system to allow the use of a trust relationship.
CommentsAllows routing beyond just the application level.
Data typeUse case is for where a (trusted) sending system is responsible for multiple organizations, and therefore cannot differentiate based on source endpoint / authentication alone.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- w5: FiveWs.subject[x]
- v2: PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR'
- rim: Not directly supported. Could be shared using attentionLine.value with an appropriate keyWordText
- w5: FiveWs.subject
enterer Σ I 0..0 Reference(Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.enterer
The source of the data entry
DefinitionRequirementsThe person or device that performed the data entry leading to this message. When there is more than one candidate, pick the most proximal to the message. Can provide other enterers in extensions.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeUsually only for the request but can be used in a response.
Reference(Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- w5: FiveWs.author
- v2: EVN-5 / ORC-10 / PRT-5:PRT-4='EP' / ROL where ROL.3 is EP or ORC.10
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="ENT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"])
author Σ I 0..0 Reference(Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.author
The source of the decision
DefinitionRequirementsThe logical author of the message - the person or device that decided the described event should happen. When there is more than one candidate, pick the most proximal to the MessageHeader. Can provide other authors in extensions.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeUsually only for the request but can be used in a response.
Reference(Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- w5: FiveWs.author
- v2: ORC-19 / PRT-5:PRT-4='AUT' / ROL where ROL.3 is IP or ORC.12
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="AUT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"])
source Σ 1..1 BackboneElement Element id Short descriptionMessageHeader.source
Message source application - PIR
DefinitionRequirementsThe source application from which this message originated - Provincial Immunization Registry (PIR)
Data type ConstraintsAllows replies, supports audit.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.actor
- rim: unique(./communicationFunction[typeCode="SND"])
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
name Σ 1..1 stringFixed Value Element id Short descriptionMessageHeader.source.name
Name of system
DefinitionRequirementsHuman-readable name for the source system.
CommentsMay be used to support audit.
Data type ConstraintsHardcode as "PIR Immz"
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
MappingsPIR Immz
- rim: n/a
- v2: MSH-3
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/name[type='ST' and isNormalDatatype()])
software Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.software
Name of software running the system
DefinitionRequirementsMay include configuration or other information useful in debugging.
CommentsSupports audit and possibly interface engine behavior.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: SFT-3 ( +SFT-1)
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/softwareName[isNormalDatatype()])
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.version
Version of software running
DefinitionRequirementsCan convey versions of multiple systems in situations where a message passes through multiple hands.
CommentsSupports audit and possibly interface engine behavior.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: SFT-2
- rim: (Not supported)
contact Σ I 0..0 ContactPoint There are no (further) constraints on this elementElement idShort descriptionMessageHeader.source.contact
Human contact for problems
DefinitionRequirementsAn e-mail, phone, website or other contact point to use to resolve issues with message communications.
Data type ConstraintsAllows escalation of technical issues.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- cpt-2: A system is required if a value is provided.
value.empty() or system.exists()
- rim: n/a
- v2: XTN
- rim: TEL
- servd: ContactPoint
- v2: (MSH-22?)
- rim: unique(./entity[determinerCode="INST" and classCode="DEV"]/scopesRole[normalRole() and classCode="CON" and layer[classCode="PSN"]/telecom[isNormalDatatype()])
endpoint Σ 1..1 url Element id Short descriptionMessageHeader.source.endpoint
Actual message source address or id
DefinitionRequirementsIdentifies the routing target to send acknowledgements to.
CommentsIdentifies where to send responses, may influence security permissions.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: MSH-24
- rim: ./telecom[isNormalDatatype()]
- PIRtest: https://pir.healthbc.org/test/immunization
- PIRprod: https://pir.healthbc.org/prod/immunization
responsible Σ I 1..1 Reference(Practitioner | PractitionerRole | Organization) Element id Short descriptionMessageHeader.responsible
The Panorama Organizational Unit and/or Client Health Region which submitted the message contents.
DefinitionRequirementsThe Panorama Organizational Unit and/or Client Health Region (CHR) that accepts overall responsibility for the contents of the message. The implication is that the message event happened under the policies of the responsible party.
CommentsNeed to know for audit/traceback requirements and possibly for authorization.
Data typeSee Mappings
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- w5: FiveWs.witness
- v2: ORC-12 / PRT-5:PRT-4='OP' / PRT-8:PRT-4='OP' / ROL where ROL.3 is RO or ORC.11
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode="PSN" and determinerCode="INST"] or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/scoper[isNormalEntity() and classCode="ORG" and determinerCode="INST"])
- source-PIR: CHR or Submitter's Org
- source-PHSL: clientHealthRegion
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 1..1 string Element id Short descriptionMessageHeader.responsible.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsfullURL of Panorama + 'Organization' + (PIR Org ID).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
type Σ 0..0 uriBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
identifier Σ 0..0 Identifier There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- rim: .identifier
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.responsible.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
reason Σ 0..1 CodeableConcept Element id Short descriptionMessageHeader.reason
Cause of event
DefinitionRequirementsCoded indication of the cause for the event - indicates a reason for the occurrence of the event that is a focus of this message.
CommentsNeed to be able to track why resources are being changed and report in the audit log/history of the resource. May affect authorization.
Data type BindingSee Mappings. List of event type(s) in alphabetical which have been triggered, also can be applied for filtering purposes.
ExampleMessageReasonCodes (example)ConstraintsReason for event occurrence.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- w5: FiveWs.why[x]
- v2: EVN.4 / ORC.16 / OBR-31-reason for study / BPO-13-BP indication for use / RXO-20-indication / RXE-27-give indication / RXD-21-indication / RXG-22-indication / RXA-19-indication
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/reasonCode[isNormalDatatype()])
- trigger-CHR: CLIENT
- trriger-humanSubject: CLIENT
- trigger-riskFactor: RISKFACTOR
- trigger-subjectName: CLIENT
- trigger-consent: CONSENT
- trigger-consentComment: CONSENTCMMT
- trigger-AEFI: AEFI
- trigger-aefiRecommendation: AEFI
- trigger-invalidVaccine: IMMS
- trigger-deferral: DEFERRAL
- trigger-forecast: FORECAST
- trigger-vaccination: IMMS
- trigger-immsComments-IC: IMMSCMMTIC
- trigger-immsComments-SC: IMMSCMMTSC
- trigger-immsComments-DF: IMMSCMMTDF
- trigger-immsComments-AE: IMMSCMMTAE
- trigger-specialConsideration: SPECIALCONSID
- trigger-vaccineStatus: IMMS
- trigger-clientMerge: CLIENT
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.reason.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.reason.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.reason.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
text Σ 0..1 string Element id Short descriptionMessageHeader.reason.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsTo be applied if IDS message contains only Forecasting data only. See Mappings.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: Forecast
response Σ 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionMessageHeader.response
If this is a reply to prior message
DefinitionData type ConstraintsInformation about the message that this message is a response to. Only present if this message is a response.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: MSA
- rim: ./conveyedAcknowledgement
focus Σ I 1..1 Reference(Resource) Element id Short descriptionMessageHeader.focus
The actual content of the message related to a specific patient.
DefinitionRequirementsThe actual data of the message all related to a specific patient.
CommentsEvery message event is about actual data, a single resource, that is identified in the definition of the event, and perhaps some or all linked resources.
Data type ConstraintsThe data is defined where the transaction type is defined. The transaction data is always included in the bundle that is the full message. Only the root resource is specified. The resources it references should be contained in the bundle but are not also listed here. Multiple repetitions are allowed to cater for merges and other situations with multiple focal targets.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- rim: unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="SUBJ" and isNormalParticipation]/role or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/outboundRelationship[typeCode="SBJ" and isNormalActRelatoinship]/target)
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.focus.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionMessageHeader.focus.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 1..1 string Element id Short descriptionMessageHeader.focus.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsfullURL of Panorama + 'Patient' + PIR Client ID
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
type Σ 0..0 uriBinding There are no (further) constraints on this elementElement idShort descriptionMessageHeader.focus.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
identifier Σ 0..0 Identifier There are no (further) constraints on this elementElement idShort descriptionMessageHeader.focus.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- rim: .identifier
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionMessageHeader.focus.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
definition Σ 0..0 canonical(MessageDefinition) There are no (further) constraints on this elementElement idShort descriptionMessageHeader.definition
Link to the definition for this message
DefinitionRequirementsPermanent link to the MessageDefinition for this message.
Comments Data type ConstraintsAllows sender to define the expected contents of the message.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: Not directly supported.
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
Patient
The Patient resource contains demographic information about the individual receiving immunization services. This includes essential details such as name, date of birth, and identifiers. The Patient data is retrieved as part of the immunization bundle and reflects the current status of the patient at the time of immunization.
Patient_CAbaseline (Patient) I Patient Element id Short descriptionPatient
IFHIR resource applies for PIR Client
Alternate namesSubjectOfCare Client Resident
DefinitionData type ConstraintsIFHIR resource applies for PIR Client
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-4: 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-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
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-6: A resource should have narrative for robust management
text.`div`.exists()
- dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- rim: Entity. Role, or Act
- rim: Patient[classCode=PAT]
- cda: ClinicalDocument.recordTarget.patientRole
id Σ 1..1 string Element id Short descriptionPatient.id
PIR Client ID
DefinitionCommentsUnique Panorama Client ID
Data type MappingsSee Mappings
- source-PIR: PIR subject_id
meta Σ 1..1 Meta There are no (further) constraints on this elementElement idShort descriptionPatient.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.meta.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.meta.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
versionId Σ 0..1 id Element id Short descriptionPatient.meta.versionId
Version specific identifier
DefinitionCommentsThe version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Data type ConstraintsApply '2024.03' (This indicates the FHIR Specs changes on 2024-Mar)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
lastUpdated Σ 0..0 instant There are no (further) constraints on this elementElement idShort descriptionPatient.meta.lastUpdated
When the resource version last changed
DefinitionCommentsWhen the resource last changed - e.g. when the version changed.
Data type ConstraintsThis value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
source Σ 0..0 uri There are no (further) constraints on this elementElement idShort descriptionPatient.meta.source
Identifies where the resource comes from
DefinitionCommentsA uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
Data type ConstraintsIn the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used.
This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
profile Σ 1..1 canonical(StructureDefinition) Element id Short descriptionPatient.meta.profile
Profiles this resource claims to conform to
DefinitionCommentsA list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Data typeUse 'http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/Patient'
canonical(StructureDefinition)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
security Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionPatient.meta.security
Security Labels applied to this resource
DefinitionCommentsSecurity labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Data type BindingThe security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
All Security Labels (extensible)ConstraintsSecurity Labels from the Healthcare Privacy and Security Classification System.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
tag Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionPatient.meta.tag
Tags applied to this resource
DefinitionCommentsTags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Data type BindingThe tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
CommonTags (example)ConstraintsCodes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
implicitRules Σ ?! 0..0 uri There are no (further) constraints on this elementElement idShort descriptionPatient.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
language 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
text 0..0 Narrative There are no (further) constraints on this elementElement idShort descriptionPatient.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- rim: Act.text?
contained 0..0 Resource There are no (further) constraints on this elementElement idShort descriptionPatient.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: Entity. Role, or Act
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
genderIdentityExtension I 0..* Extension(CodeableConcept) Element id Short descriptionPatient.extension:genderIdentityExtension
Optional Extensions Element
Alternate namesextensions, user content
DefinitionCommentsOptional Extension Element - found in all resources.
Data type Extension URLThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
http://hl7.org/fhir/StructureDefinition/patient-genderIdentity
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
url 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
Mappingshttp://hl7.org/fhir/StructureDefinition/patient-genderIdentity
- rim: N/A
value[x] 0..1 There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x]
Value of extension
DefinitionConstraintsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
valueCodeableConcept CodeableConcept There are no (further) constraints on this elementData typeid 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 1..1 Coding There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 1..1 uri There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
- source-PIR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-code
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 1..1 code Element id Short descriptionPatient.extension:genderIdentityExtension.value[x].coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
- source-PIR: CLIENT.HUMAN_SUBJECT.GENDER_IDENTITY_CODED_CNCPT_ID
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionPatient.extension:genderIdentityExtension.value[x].coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..1 string Element id Short descriptionPatient.extension:genderIdentityExtension.value[x].text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsMandatory if CODE = 3131-1 (Other Gender). See Mappings.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: CLIENT.HUMAN_SUBJECT.GENDER_IDENTITY_OTHER
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
identifier Σ 1..* Identifier Element id Short descriptionPatient.identifier
Identifier(s) for this patient
DefinitionRequirementsDifferent types of patient identifier which includes JHN (Jurisdictional Health Number e.g. BC PHN), PI (Patient Internal Identifier e.g. PIR Client ID, HAs' Internal Client ID).
CommentsPatients are almost always assigned specific numerical identifiers.
Data type ConstraintsExtract from PIR <client.human_subject>
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- w5: FiveWs.identifier
- v2: PID-3
- rim: id
- cda: .id
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: N/A
- rim: Role.code or implied by context
type Σ 1..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: CX.5
- rim: Role.code or implied by context
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 1..* Coding There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 0..1 uriFixed Value Element id Short descriptionPatient.identifier.type.coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type Constraintshttp://terminology.hl7.org/CodeSystem/v2-0203
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Mappingshttp://terminology.hl7.org/CodeSystem/v2-0203
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 0..1 code Element id Short descriptionPatient.identifier.type.coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
- JHN: JHN
- JPID: JPID
- MR: MR
- PI: PI
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.type.coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..1 string Element id Short descriptionPatient.identifier.type.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: Panorama Client ID
- source-FHA: FHA-PARIS Client ID
- source-NHA-CeDaR: NHA- CeDaR ID
- source-NHA-MOIS: NHA - MOIS ID
- source-VCH: VCH-PARIS Client ID
- source-ProfileEMR: ProfileEMR_ClientID
- source-CAN-ArmedForces: Canadian Armed Forces IDentification Number
- source-CAN-RCMP: Canadian RCMP Regiment Number
- source-CAN-VeteranAffairs: Veteran Affairs CAnadian Identification Number
system Σ 1..1 uri Element id Short descriptionPatient.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsSee Mappings below for appropriate URLs and URNs.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- rim: n/a
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
- JHN-BC: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-patient-healthcare-id
- PI-PIR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-client-id
- JHN-YT: https://fhir.infoway-inforoute.ca/NamingSystem/ca-yt-patient-healthcare-id
- PI-FHA: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-fha-patient-id
- PI-NHA: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-nha-patient-id
- PI-VCH: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-vcha-patient-id
- PI-CAN-ArmedForces: urn: 2.16.840.1.113883.3.51.1.1.6.15
- PI-RCMP: urn:2.16.840.1.113883.3.51.1.1.6.16
- PI-CAN-VeteranAffairs: urn:2.16.840.1.113883.3.51.1.1.6.18
- PI-ProfileEMR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-profile-emr-patient-id
value Σ 1..1 string Element id Short descriptionPatient.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsPIR Client ID: Extract from PIR (client.human_subject.subject_id); BC PHN or Yukon PHN: Extract from PIR (client.human_subject.health_card_number)
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- rim: n/a
- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
- JHN-BC: Extract from PIR (client.human_subject.health_card_number)
- JHN-YT: Extract from PIR (client.human_subject.health_card_number)
- PI-PIR: Extract from PIR (client.human_subject.subject_id)
- PI-FHA: FHA-PARIS Client ID
- PI-NHA: NHA- CeDaR ID
- PI-VCH: VCH-PARIS Client ID
period Σ I 0..0 Period There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.period
Time period when id is/was valid for use
DefinitionCommentsTime period during which identifier is/was valid for use.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPatient.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
active Σ ?! 1..1 boolean Element id Short descriptionPatient.active
Whether this patient's record is in active use in PIR.
DefinitionRequirementsIt is used to filter patient lists to exclude inactive patients Inactive patient lists include inactive reasons in (Created in Error, Retruned to Birth Parent, Adopted, Soft Deleted, Deceased).
CommentsNeed to be able to mark a patient record as not to be used because it was created in error.
Meaning when missingHardcode as 'True' for all PIR active clients.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.status
- rim: statusCode
- cda: n/a
name Σ 1..* HumanName Element id Short descriptionPatient.name
A name associated with the patient
DefinitionRequirementsPIR Client Lastname, Firstname, Middlename
CommentsNeed to be able to track the patient by multiple names. Examples are your official name and a partner name.
Data type ConstraintsExtract from PIR <client.human_subject>
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN
- rim: EN (actually, PN)
- servd: ProviderName
- v2: PID-5, PID-9
- rim: name
- cda: .patient.name
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.name.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..1 codeBinding Element id Short descriptionPatient.name.use
usual | official | temp | nickname | anonymous | old | maiden
DefinitionRequirementsIdentifies the purpose for this name.
CommentsAllows the appropriate name for a particular context of use to be selected from among a set of names.
Data type BindingSee Mappings
NameUse (required)ConstraintsThe use of a human name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN.7, but often indicated by which field contains the name
- rim: unique(./use)
- servd: ./NamePurpose
- legal: official
- alias: usual
text Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.text
Text representation of the full name
DefinitionRequirementsSpecifies the entire name as it should be displayed e.g. on an application UI. This may be provided instead of or as well as the specific parts.
CommentsA renderable, unencoded form.
Data type ConstraintsCan provide both a text representation and parts. Applications updating a name SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: implied by XPN.11
- rim: ./formatted
family Σ 1..1 string Element id Short descriptionPatient.name.family
Patient Family Name
Alternate namessurname
DefinitionCommentsPatient Family Name
Data type ConstraintsPatient Family Name
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN.1/FN.1
- rim: ./part[partType = FAM]
- servd: ./FamilyName
given Σ 1..* string Element id Short descriptionPatient.name.given
Patient Given Names
Alternate namesfirst name, middle name
DefinitionCommentsPatient Given Names
Data type ConstraintsPatient Given Names
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN.2 + XPN.3
- rim: ./part[partType = GIV]
- servd: ./GivenNames
prefix Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.prefix
Parts that come before the name
DefinitionCommentsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the start of the name.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN.5
- rim: ./part[partType = PFX]
- servd: ./TitleCode
suffix Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.name.suffix
Parts that come after the name
DefinitionCommentsPart of the name that is acquired as a title due to academic, legal, employment or nobility status, etc. and that appears at the end of the name.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XPN/4
- rim: ./part[partType = SFX]
period Σ I 0..0 Period There are no (further) constraints on this elementElement idShort descriptionPatient.name.period
Time period when name was/is in use
DefinitionRequirementsIndicates the period of time when this name was valid for the named person.
CommentsAllows names to be placed in historical context.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: XPN.13 + XPN.14
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
telecom Σ I 0..* ContactPoint Element id Short descriptionPatient.telecom
A contact detail for the PIR Client
DefinitionRequirementsA contact detail (e.g. a telephone number or an email address) by which the PIR client may be contacted.
CommentsPeople have (primary) ways to contact them in some way such as phone, email.
Data type ConstraintsA Patient may have multiple ways to be contacted with different uses or applicable periods. May need to have options for contacting the person urgently and also to help with identification. The address might not go directly to the individual, but may reach another party that is able to proxy for the patient (i.e. home phone, or pet owner's phone).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- cpt-2: A system is required if a value is provided.
value.empty() or system.exists()
- rim: n/a
- v2: XTN
- rim: TEL
- servd: ContactPoint
- v2: PID-13, PID-14, PID-40
- rim: telecom
- cda: .telecom
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ I 0..1 codeBinding Element id Short descriptionPatient.telecom.system
phone | fax | email | pager | url | sms | other
DefinitionCommentsTelecommunications form for contact point - what communications system is required to make use of the contact.
Data type BindingUse 'phone | email'. Extract the current phone or email from PIR, not the ones with 'Effective Date To' populated.
ContactPointSystem (required)ConstraintsTelecommunications form for contact point.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XTN.3
- rim: ./scheme
- servd: ./ContactPointType
value Σ 0..1 string Element id Short descriptionPatient.telecom.value
Patient Phone Number or Email
DefinitionRequirementsPatient Phone Number or Email
CommentsNeed to support legacy numbers that are not in a tightly controlled format.
Data type ConstraintsPatient Phone Number | Email
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XTN.1 (or XTN.12)
- rim: ./url
- servd: ./Value
use Σ ?! 0..1 codeBinding Element id Short descriptionPatient.telecom.use
home | work | mobile - purpose of this contact point
DefinitionRequirementsIdentifies the purpose for the contact point.
CommentsNeed to track the way a person uses this contact, so a user can choose which is appropriate for their purpose.
Data type BindingUse "home" | "work" |"mobile" (See Mappings). If not listed in the mappings, drop the attirubte USE, do not send.
ContactPointUse (required)ConstraintsUse of contact point.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XTN.2 - but often indicated by field
- rim: unique(./use)
- servd: ./ContactPointPurpose
- pirHOME: home
- pirBUSINESS: work
- pirMOBILE: mobile
rank Σ 0..0 positiveInt There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.rank
Specify preferred order of use (1 = highest)
DefinitionCommentsSpecifies a preferred order in which to use a set of contacts. ContactPoints with lower rank values are more preferred than those with higher rank values.
Data type ConstraintsNote that rank does not necessarily follow the order in which the contacts are represented in the instance.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: n/a
period Σ I 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.period
Time period when the contact point was/is in use
DefinitionCommentsTime period when the contact point was/is in use.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: N/A
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.period.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.period.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
start Σ I 0..1 dateTime There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.period.start
Starting time with inclusive boundary
DefinitionCommentsThe start of the period. The boundary is inclusive.
Data type ConstraintsIf the low element is missing, the meaning is that the low boundary is not known.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: DR.1
- rim: ./low
end Σ I 0..1 dateTime There are no (further) constraints on this elementElement idShort descriptionPatient.telecom.period.end
End time with inclusive boundary, if not ongoing
DefinitionCommentsThe end of the period. If the end of the period is missing, it means no end was known or planned at the time the instance was created. The start may be in the past, and the end date in the future, which means that period is expected/planned to end at that time.
Meaning when missingThe high value includes any matching date/time. i.e. 2012-02-03T10:00:00 is in a period that has an end value of 2012-02-03.
Data type ConstraintsIf the end of the period is missing, it means that the period is ongoing
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: DR.2
- rim: ./high
gender Σ 1..1 codeBinding Element id Short descriptionPatient.gender
male | female | other | unknown
DefinitionRequirementsPatient Administrative Gender. PIR gender "Undifferentiate" is mapped to "unknown" in FHIR.
CommentsNeeded for identification of the individual, in combination with (at least) name and birth date.
Data type BindingPatient Administrative Gender
AdministrativeGender (required)ConstraintsThe gender of a person used for administrative purposes.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: PID-8
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
- cda: .patient.administrativeGenderCode
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.gender.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.gender.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
value 0..1 System.String There are no (further) constraints on this elementElement idShort descriptionPatient.gender.value
Primitive value for code
DefinitionData typePrimitive value for code
System.String
Maximum string length1048576
birthDate Σ 1..1 date Element id Short descriptionPatient.birthDate
Patient Date of Birth
DefinitionRequirementsPatient Date of Birth
CommentsAge of the individual drives many clinical processes.
Data type ConstraintsPatient Date of Birth (yyyy-mm-dd)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: PID-7
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime
- cda: .patient.birthTime
- loinc: 21112-8
deceased[x] Σ ?! 0..0 There are no (further) constraints on this elementElement idShort descriptionPatient.deceased[x]
Indicates if the individual is deceased or not
DefinitionRequirementsIndicates if the individual is deceased or not.
CommentsThe fact that a patient is deceased influences the clinical process. Also, in human communication and relation management it is necessary to know whether the person is alive.
ConstraintsIf there's no value in the instance, it means there is no statement on whether or not the individual is deceased. Most systems will interpret the absence of a value as a sign of the person being alive.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: PID-30 (bool) and PID-29 (datetime)
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
- cda: n/a
address Σ 0..1 Address Element id Short descriptionPatient.address
An address for the individual
DefinitionRequirementsAn address for the individual.
CommentsMay need to keep track of patient addresses for contacting, billing or reporting requirements and also to help with identification.
Data type ConstraintsExtract the LATEST client address from PIR
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XAD
- rim: AD
- servd: Address
- v2: PID-11
- rim: addr
- cda: .addr
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.address.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..1 codeBinding Element id Short descriptionPatient.address.use
home | work | temp | old | billing - purpose of this address
DefinitionRequirementsThe purpose of this address: home | work
CommentsAllows an appropriate address to be chosen from a list of many.
Data type BindingSee Mappings
AddressUse (required)ConstraintsThe use of an address.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhome
Mappings- rim: n/a
- v2: XAD.7
- rim: unique(./use)
- servd: ./AddressPurpose
- pir-PrimaryHome: home
type Σ 0..1 codeBinding Element id Short descriptionPatient.address.type
postal | physical | both
DefinitionCommentsDistinguishes between physical addresses (those you can visit) and mailing addresses (e.g. PO Boxes and care-of addresses). Most addresses are both.
Data type BindingSee Mappings.
AddressType (required)ConstraintsThe type of an address (physical / postal).
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalboth
Mappings- rim: n/a
- v2: XAD.18
- rim: unique(./use)
- vcard: address type parameter
- pir-PostalAddress: postal
text Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.text
Text representation of the address
DefinitionRequirementsSpecifies the entire address as it should be displayed e.g. on a postal label. This may be provided instead of or as well as the specific parts.
CommentsA renderable, unencoded form.
Data type ConstraintsCan provide both a text representation and parts. Applications updating an address SHALL ensure that when both text and parts are present, no content is included in the text that isn't found in a part.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General137 Nowhere Street, Erewhon 9132
Mappings- rim: n/a
- v2: XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6
- rim: ./formatted
- vcard: address label parameter
line Σ 0..* string Element id Short descriptionPatient.address.line
Street name, number, direction & P.O. Box etc.
DefinitionCommentsThis component contains the house number, apartment number, street name, street direction, P.O. Box number, delivery hints, and similar address information.
Data type ConstraintsUse address.line for international address
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General137 Nowhere Street
Mappings- rim: n/a
- v2: XAD.1 + XAD.2 (note: XAD.1 and XAD.2 have different meanings for a company address than for a person address)
- rim: AD.part[parttype = AL]
- vcard: street
- servd: ./StreetAddress (newline delimitted)
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.line.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.address.line.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
_line I 0..1 Extension(string) Element id Short descriptionPatient.address.line.extension:_line
Optional Extensions Element
Alternate namesextensions, user content
DefinitionCommentsOptional Extension Element - found in all resources.
Data type Extension URLSee Mappings
http://hl7.org/fhir/StructureDefinition/iso21090-ADXP
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
- houseNumber: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-houseNumber
- streetName: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetName
- streetNameType: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-streetNameType
- direction: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-direction
- unitID: http://hl7.org/fhir/StructureDefinition/iso21090-ADXP-unitID
value 0..1 System.String There are no (further) constraints on this elementElement idShort descriptionPatient.address.line.value
Primitive value for string
DefinitionData typePrimitive value for string
System.String
Maximum string length1048576
city Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.city
Name of city, town etc.
Alternate namesMunicpality
DefinitionCommentsThe name of the city, town, suburb, village or other community or delivery center.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
GeneralErewhon
Mappings- rim: n/a
- v2: XAD.3
- rim: AD.part[parttype = CTY]
- vcard: locality
- servd: ./Jurisdiction
district Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.district
District name (aka county)
Alternate namesCounty
DefinitionCommentsThe name of the administrative area (county).
Data type ConstraintsDistrict is sometimes known as county, but in some regions 'county' is used in place of city (municipality), so county name should be conveyed in city instead.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
GeneralMadison
Mappings- rim: n/a
- v2: XAD.9
- rim: AD.part[parttype = CNT | CPA]
state Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.state
Sub-unit of country (abbreviations ok)
Alternate namesProvince, Territory
DefinitionCommentsSub-unit of a country with limited sovereignty in a federally organized country. A code may be used if codes are in common use (e.g. US 2 letter state codes).
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XAD.4
- rim: AD.part[parttype = STA]
- vcard: region
- servd: ./Region
postalCode Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.postalCode
Postal code for area
Alternate namesZip
DefinitionCommentsA postal code designating a region defined by the postal service.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General9132
Mappings- rim: n/a
- v2: XAD.5
- rim: AD.part[parttype = ZIP]
- vcard: code
- servd: ./PostalIdentificationCode
country Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.country
Country (e.g. can be ISO 3166 2 or 3 letter code)
DefinitionCommentsCountry - a nation as commonly understood or generally accepted.
Data type ConstraintsISO 3166 3 letter codes can be used in place of a human readable country name.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XAD.6
- rim: AD.part[parttype = CNT]
- vcard: country
- servd: ./Country
period Σ I 0..1 Period There are no (further) constraints on this elementElement idShort descriptionPatient.address.period
Time period when address was/is in use
DefinitionRequirementsTime period when address was/is in use.
CommentsAllows addresses to be placed in historical context.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
General{ "start": "2010-03-23", "end": "2010-07-01" }
Mappings- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: XAD.12 / XAD.13 + XAD.14
- rim: ./usablePeriod[type="IVL<TS>"]
- servd: ./StartDate and ./EndDate
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionPatient.address.period.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionPatient.address.period.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
start Σ I 0..1 dateTime There are no (further) constraints on this elementElement idShort descriptionPatient.address.period.start
Starting time with inclusive boundary
DefinitionCommentsThe start of the period. The boundary is inclusive.
Data type ConstraintsIf the low element is missing, the meaning is that the low boundary is not known.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: DR.1
- rim: ./low
end Σ I 0..1 dateTime There are no (further) constraints on this elementElement idShort descriptionPatient.address.period.end
End time with inclusive boundary, if not ongoing
DefinitionCommentsThe end of the period. If the end of the period is missing, it means no end was known or planned at the time the instance was created. The start may be in the past, and the end date in the future, which means that period is expected/planned to end at that time.
Meaning when missingThe high value includes any matching date/time. i.e. 2012-02-03T10:00:00 is in a period that has an end value of 2012-02-03.
Data type ConstraintsIf the end of the period is missing, it means that the period is ongoing
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: DR.2
- rim: ./high
maritalStatus 0..0 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionPatient.maritalStatus
Marital (civil) status of a patient
DefinitionRequirementsThis field contains a patient's most recent marital (civil) status.
CommentsMost, if not all systems capture it.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
Marital Status Codes (extensible)ConstraintsThe domestic partnership status of a person.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: PID-16
- rim: player[classCode=PSN]/maritalStatusCode
- cda: .patient.maritalStatusCode
multipleBirth[x] 0..0 There are no (further) constraints on this elementElement idShort descriptionPatient.multipleBirth[x]
Whether patient is part of a multiple birth
DefinitionRequirementsIndicates whether the patient is part of a multiple (boolean) or indicates the actual birth order (integer).
CommentsFor disambiguation of multiple-birth children, especially relevant where the care provider doesn't meet the patient, such as labs.
ConstraintsWhere the valueInteger is provided, the number is the birth number in the sequence. E.g. The middle birth in triplets would be valueInteger=2 and the third born would have valueInteger=3 If a boolean value was provided for this triplets example, then all 3 patient records would have valueBoolean=true (the ordering is not indicated).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: PID-24 (bool), PID-25 (integer)
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
- cda: n/a
photo I 0..0 Attachment There are no (further) constraints on this elementElement idShort descriptionPatient.photo
Image of the patient
DefinitionRequirementsImage of the patient.
CommentsMany EHR systems have the capability to capture an image of the patient. Fits with newer social media usage too.
Data type ConstraintsGuidelines:
- Use id photos, not clinical photos.
- Limit dimensions to thumbnail.
- Keep byte count low to ease resource updates.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- att-1: If the Attachment has data, it SHALL have a contentType
data.empty() or contentType.exists()
- rim: n/a
- v2: ED/RP
- rim: ED
- v2: OBX-5 - needs a profile
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
- cda: n/a
contact I 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.contact
A contact party (e.g. guardian, partner, friend) for the patient
DefinitionRequirementsA contact party (e.g. guardian, partner, friend) for the patient.
CommentsNeed to track people you can contact about the patient.
Data type ConstraintsContact covers all kinds of contact parties: family members, business contacts, guardians, caregivers. Not applicable to register pedigree and family ties beyond use of having contact.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- pat-1: SHALL at least contain a contact's details or a reference to an organization
name.exists() or telecom.exists() or address.exists() or organization.exists()
- rim: n/a
- rim: player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
- cda: n/a
communication 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.communication
A language which may be used to communicate with the patient about his or her health
DefinitionRequirementsA language which may be used to communicate with the patient about his or her health.
CommentsIf a patient does not speak the local language, interpreters may be required, so languages spoken and proficiency are important things to keep track of both for patient and other persons of interest.
Data type ConstraintsIf no language is specified, this implies that the default local language is spoken. If you need to convey proficiency for multiple modes, then you need multiple Patient.Communication associations. For animals, language is not a relevant field, and should be absent from the instance. If the Patient does not speak the default local language, then the Interpreter Required Standard can be used to explicitly declare that an interpreter is required.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: LanguageCommunication
- cda: patient.languageCommunication
generalPractitioner I 0..0 Reference(Organization | Practitioner | PractitionerRole) There are no (further) constraints on this elementElement idShort descriptionPatient.generalPractitioner
Patient's nominated primary care provider
Alternate namescareProvider
DefinitionCommentsPatient's nominated care provider.
Data typeThis may be the primary care provider (in a GP context), or it may be a patient nominated care manager in a community/disability setting, or even organization that will provide people to perform the care provider roles. It is not to be used to record Care Teams, these should be in a CareTeam resource that may be linked to the CarePlan or EpisodeOfCare resources. Multiple GPs may be recorded against the patient for various reasons, such as a student that has his home GP listed along with the GP at university during the school semesters, or a "fly-in/fly-out" worker that has the onsite GP also included with his home GP to remain aware of medical issues.
Jurisdictions may decide that they can profile this down to 1 if desired, or 1 per type.
Reference(Organization | Practitioner | PractitionerRole)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: PD1-4
- rim: subjectOf.CareEvent.performer.AssignedEntity
- cda: n/a
managingOrganization Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionPatient.managingOrganization
Organization that is the custodian of the patient record
DefinitionRequirementsOrganization that is the custodian of the patient record.
CommentsNeed to know who recognizes this patient record, manages and updates it.
Data type ConstraintsThere is only one managing organization for a specific patient record. Other organizations will have their own Patient record, and may use the Link property to join the records together (or a Person resource which can include confidence ratings for the association).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- rim: scoper
- cda: .providerOrganization
link Σ ?! 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionPatient.link
Link to another patient resource that concerns the same actual person
DefinitionRequirementsLink to another patient resource that concerns the same actual patient.
CommentsThere are multiple use cases:
- Duplicate patient records due to the clerical errors associated with the difficulties of identifying humans consistently, and
- Distribution of patient information across multiple servers.
Data type ConstraintsThere is no assumption that linked patient records have mutual links.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: outboundLink
- cda: n/a
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
Organization
The Organization resource represents the health facility or institution associated with the immunization data. This resource is crucial for identifying which organization is responsible for providing immunization services and managing the immunization data.
OrganizationPIR (Organization) I Organization Element id Short descriptionOrganization
FHIR resource applies for PIR/Panorama as root organization
DefinitionData type ConstraintsFHIR resource applies for PIR/Panorama as root organization
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-4: 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-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
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-6: A resource should have narrative for robust management
text.`div`.exists()
- dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- org-1: The organization SHALL at least have a name or an identifier, and possibly more than one
(identifier.count() + name.count()) > 0
- rim: Entity. Role, or Act
- v2: (also see master files messages)
- rim: Organization(classCode=ORG, determinerCode=INST)
- servd: Organization
id Σ 1..1 string Element id Short descriptionOrganization.id
PIR Organizational ID of Panorama as the root.
DefinitionCommentsPIR Organizational ID of Panorama as the root.
Data type MappingsSee Mappings
- Org-PIR: "1"
meta Σ 1..1 Meta There are no (further) constraints on this elementElement idShort descriptionOrganization.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
versionId Σ 0..1 id Element id Short descriptionOrganization.meta.versionId
Version specific identifier
DefinitionCommentsThe version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Data type ConstraintsApply '2023.01' (This indicates FHIR changes on 2023-Jan)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
lastUpdated Σ 0..0 instant There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.lastUpdated
When the resource version last changed
DefinitionCommentsWhen the resource last changed - e.g. when the version changed.
Data type ConstraintsThis value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
source Σ 0..0 uri There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.source
Identifies where the resource comes from
DefinitionCommentsA uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
Data type ConstraintsIn the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used.
This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
profile Σ 1..1 canonical(StructureDefinition) Element id Short descriptionOrganization.meta.profile
Profiles this resource claims to conform to
DefinitionCommentsA list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Data typeApply "http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/OrganizationPIR"
canonical(StructureDefinition)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
security Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.security
Security Labels applied to this resource
DefinitionCommentsSecurity labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Data type BindingThe security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
All Security Labels (extensible)ConstraintsSecurity Labels from the Healthcare Privacy and Security Classification System.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
tag Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionOrganization.meta.tag
Tags applied to this resource
DefinitionCommentsTags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Data type BindingThe tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
CommonTags (example)ConstraintsCodes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
implicitRules Σ ?! 0..0 uri There are no (further) constraints on this elementElement idShort descriptionOrganization.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
language 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
text 0..0 Narrative There are no (further) constraints on this elementElement idShort descriptionOrganization.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- rim: Act.text?
contained 0..0 Resource There are no (further) constraints on this elementElement idShort descriptionOrganization.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: Entity. Role, or Act
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
identifier Σ I 1..1 Identifier Element id Short descriptionOrganization.identifier
PIR Organizational ID of Panorama as the root.
DefinitionRequirementsPIR Organizational ID of Panorama as the root.
Data type ConstraintsOrganizations are known by a variety of ids. Some institutions maintain several, and most collect identifiers for exchange with other organizations concerning the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- w5: FiveWs.identifier
- v2: XON.10 / XON.3
- rim: .scopes[Role](classCode=IDENT)
- servd: ./Identifiers
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..0 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: CX.5
- rim: Role.code or implied by context
system Σ 1..1 uri Element id Short descriptionOrganization.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsUse 'https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-organization-unit-id'
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- rim: n/a
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
value Σ 1..1 string Element id Short descriptionOrganization.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsApply "1" to indicate Panorama.
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- rim: n/a
- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ I 0..0 Period There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.period
Time period when id is/was valid for use
DefinitionCommentsTime period during which identifier is/was valid for use.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionOrganization.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
active Σ ?! 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionOrganization.active
Whether the organization's record is still in active use
DefinitionRequirementsWhether the organization's record is still in active use.
CommentsNeed a flag to indicate a record is no longer to be used and should generally be hidden for the user in the UI.
Meaning when missingThis active flag is not intended to be used to mark an organization as temporarily closed or under construction. Instead the Location(s) within the Organization should have the suspended status. If further details of the reason for the suspension are required, then an extension on this element should be used.
This element is labeled as a modifier because it may be used to mark that the resource was created in error.
Data type ConstraintsThis resource is generally assumed to be active if no value is provided for the active element
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.status
- v2: No equivalent in HL7 v2
- rim: .status
- servd: ./Status (however this concept in ServD more covers why the organization is active or not, could be delisted, deregistered, not operational yet) this could alternatively be derived from ./StartDate and ./EndDate and given a context date.
type Σ 0..0 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionOrganization.type
Kind of organization
DefinitionRequirementsThe kind(s) of organization that this is.
CommentsNeed to be able to track the kind of organization that this is - different organization types have different uses.
Data type BindingOrganizations can be corporations, wards, sections, clinical teams, government departments, etc. Note that code is generally a classifier of the type of organization; in many applications, codes are used to identity a particular organization (say, ward) as opposed to another of the same type - these are identifiers, not codes
When considering if multiple types are appropriate, you should evaluate if child organizations would be a more appropriate use of the concept, as different types likely are in different sub-areas of the organization. This is most likely to be used where type values have orthogonal values, such as a religious, academic and medical center.
We expect that some jurisdictions will profile this optionality to be a single cardinality.
OrganizationType (example)ConstraintsUsed to categorize the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- w5: FiveWs.class
- v2: No equivalent in v2
- rim: .code
- servd: n/a
name Σ I 1..1 string Element id Short descriptionOrganization.name
Name used for the organization - Panorama
DefinitionRequirementsA name associated with the organization - Panorama
CommentsNeed to use the name as the label of the organization.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XON.1
- rim: .name
- servd: .PreferredName/Name
- source-PIR: ploephs.organization_unit.name
alias 0..0 string There are no (further) constraints on this elementElement idShort descriptionOrganization.alias
A list of alternate names that the organization is known as, or was known as in the past
DefinitionRequirementsA list of alternate names that the organization is known as, or was known as in the past.
CommentsOver time locations and organizations go through many changes and can be known by different names.
For searching knowing previous names that the organization was known by can be very useful.
Data type ConstraintsThere are no dates associated with the alias/historic names, as this is not intended to track when names were used, but to assist in searching so that older names can still result in identifying the organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .name
telecom I 0..0 ContactPoint There are no (further) constraints on this elementElement idShort descriptionOrganization.telecom
A contact detail for the organization
DefinitionRequirementsA contact detail for the organization.
CommentsHuman contact for the organization.
Data type ConstraintsThe use code 'home' is not to be used. Note that these contacts are not the contact details of people who are employed by or represent the organization, but official contacts for the organization itself.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- cpt-2: A system is required if a value is provided.
value.empty() or system.exists()
- org-3: The telecom of an organization can never be of use 'home'
where(use = 'home').empty()
- rim: n/a
- v2: XTN
- rim: TEL
- servd: ContactPoint
- v2: ORC-22?
- rim: .telecom
- servd: ./ContactPoints
address I 0..0 Address There are no (further) constraints on this elementElement idShort descriptionOrganization.address
An address for the organization
DefinitionRequirementsAn address for the organization.
CommentsMay need to keep track of the organization's addresses for contacting, billing or reporting requirements.
Data type ConstraintsOrganization may have multiple addresses with different uses or applicable periods. The use code 'home' is not to be used.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- org-2: An address of an organization can never be of use 'home'
where(use = 'home').empty()
- rim: n/a
- v2: XAD
- rim: AD
- servd: Address
- v2: ORC-23?
- rim: .address
- servd: ./PrimaryAddress and ./OtherAddresses
partOf Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionOrganization.partOf
The organization of which this organization forms a part
DefinitionRequirementsThe organization of which this organization forms a part.
CommentsNeed to be able to track the hierarchy of organizations within an organization.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: No equivalent in HL7 v2
- rim: .playedBy[classCode=Part].scoper
- servd: n/a
contact 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionOrganization.contact
Contact for the organization for a certain purpose
DefinitionRequirementsContact for the organization for a certain purpose.
CommentsNeed to keep track of assigned contact points within bigger organization.
Data type ConstraintsWhere multiple contacts for the same purpose are provided there is a standard extension that can be used to determine which one is the preferred contact to use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .contactParty
endpoint I 0..0 Reference(Endpoint) There are no (further) constraints on this elementElement idShort descriptionOrganization.endpoint
Technical endpoints providing access to services operated for the organization
DefinitionRequirementsTechnical endpoints providing access to services operated for the organization.
CommentsOrganizations have multiple systems that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
Location
The Location resource identifies the physical site where immunizations were administered. This resource helps to associate the immunization event with a specific place, which is essential for tracking the location of immunization delivery.
Location I Location Element id Short descriptionLocation
FHIR resource applies for PIR Vaccine Administered SDL
DefinitionData type ConstraintsFHIR resource applies for PIR Vaccine Administered Service Delivery Location (SDL)
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-4: 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-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
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-6: A resource should have narrative for robust management
text.`div`.exists()
- dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- rim: Entity. Role, or Act
- rim: .Role[classCode=SDLC]
id Σ 1..1 string Element id Short descriptionLocation.id
PIR internal SDL ID + PIR internal Immz Org
DefinitionCommentsPIR internal Service Delivery Location (SDL) Identifier + PIR internal Immunization Organization (Immz Org) Identifier. SDL refers to the site where vaccine is being administered.
Data type MappingsSee Mappings
- source-PIR: (PIR Location Id) + 'org' + (PIR Imms Org ID)
meta Σ 1..1 Meta There are no (further) constraints on this elementElement idShort descriptionLocation.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.meta.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionLocation.meta.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
versionId Σ 0..1 id Element id Short descriptionLocation.meta.versionId
Version specific identifier
DefinitionCommentsThe version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Data type ConstraintsUse '2023.01' (This indicates FHIR changes on 2023-Jan)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
lastUpdated Σ 0..0 instant There are no (further) constraints on this elementElement idShort descriptionLocation.meta.lastUpdated
When the resource version last changed
DefinitionCommentsWhen the resource last changed - e.g. when the version changed.
Data type ConstraintsThis value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
source Σ 0..0 uri There are no (further) constraints on this elementElement idShort descriptionLocation.meta.source
Identifies where the resource comes from
DefinitionCommentsA uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
Data type ConstraintsIn the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used.
This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
profile Σ 1..1 canonical(StructureDefinition) Element id Short descriptionLocation.meta.profile
Profiles this resource claims to conform to
DefinitionCommentsA list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Data typeUse 'http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/Location'
canonical(StructureDefinition)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
security Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionLocation.meta.security
Security Labels applied to this resource
DefinitionCommentsSecurity labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Data type BindingThe security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
All Security Labels (extensible)ConstraintsSecurity Labels from the Healthcare Privacy and Security Classification System.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
tag Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionLocation.meta.tag
Tags applied to this resource
DefinitionCommentsTags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Data type BindingThe tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
CommonTags (example)ConstraintsCodes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
implicitRules Σ ?! 0..0 uri There are no (further) constraints on this elementElement idShort descriptionLocation.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
language 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionLocation.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
text 0..0 Narrative There are no (further) constraints on this elementElement idShort descriptionLocation.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- rim: Act.text?
contained 0..0 Resource There are no (further) constraints on this elementElement idShort descriptionLocation.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: Entity. Role, or Act
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionLocation.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionLocation.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
identifier Σ 1..1 Identifier Element id Short descriptionLocation.identifier
PIR internal SDL ID
DefinitionRequirementsPIR internal Service Delivery Location (SDL) Identifier. SDL refers to the site where vaccine is being administered.
Data type ConstraintsOrganization label locations in registries, need to keep track of those.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- w5: FiveWs.identifier
- rim: .id
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: N/A
- rim: Role.code or implied by context
type Σ 0..0 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: CX.5
- rim: Role.code or implied by context
system Σ 1..1 uri Element id Short descriptionLocation.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsSee Mappings
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- rim: n/a
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
- source-PIR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-service-delivery-location-id
value Σ 1..1 string Element id Short descriptionLocation.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsExtract from (imms.h33_vaccination_master.location_id)
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- rim: n/a
- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
period Σ I 0..0 Period There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.period
Time period when id is/was valid for use
DefinitionCommentsTime period during which identifier is/was valid for use.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionLocation.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
status Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionLocation.status
active | suspended | inactive
DefinitionCommentsThe status property covers the general availability of the resource, not the current value which may be covered by the operationStatus, or by a schedule/slots if they are configured for the location.
Data type BindingNote that FHIR strings SHALL NOT exceed 1MB in size
LocationStatus (required)ConstraintsIndicates whether the location is still in use.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.status
- rim: .statusCode
operationalStatus Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionLocation.operationalStatus
The operational status of the location (typically only for a bed/room)
DefinitionCommentsThe operational status covers operation values most relevant to beds (but can also apply to rooms/units/chairs/etc. such as an isolation unit/dialysis chair). This typically covers concepts such as contamination, housekeeping, and other activities like maintenance.
Data type BindingCodes may be defined very casually in enumerations or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information.
v2.0116 (preferred)ConstraintsThe operational status if the location (where typically a bed/room).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- w5: FiveWs.status
name Σ 0..1 string Element id Short descriptionLocation.name
Name of the SDL
DefinitionCommentsName of the Service Delivery Location where vaccine is being administered.
Data type ConstraintsSDL - Derive name from location name (imms.h33_vaccination_master.location_id)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .name
alias 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.alias
A list of alternate names that the location is known as, or was known as, in the past
DefinitionRequirementsA list of alternate names that the location is known as, or was known as, in the past.
CommentsOver time locations and organizations go through many changes and can be known by different names.
For searching knowing previous names that the location was known by can be very useful.
Data type ConstraintsThere are no dates associated with the alias/historic names, as this is not intended to track when names were used, but to assist in searching so that older names can still result in identifying the location.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .name
description Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.description
Additional details about the location that could be displayed as further information to identify the location beyond its name
DefinitionRequirementsDescription of the Location, which helps in finding or referencing the place.
CommentsHumans need additional information to verify a correct location has been identified.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .playingEntity[classCode=PLC determinerCode=INSTANCE].desc
mode Σ 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionLocation.mode
instance | kind
DefinitionRequirementsIndicates whether a resource instance represents a specific location or a class of locations.
CommentsWhen using a Location resource for scheduling or orders, we need to be able to refer to a class of Locations instead of a specific Location.
Data type BindingThis is labeled as a modifier because whether or not the location is a class of locations changes how it can be used and understood.
LocationMode (required)ConstraintsIndicates whether a resource instance represents a specific location or a class of locations.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.class
- rim: .playingEntity[classCode=PLC].determinerCode
type Σ 0..0 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionLocation.type
Type of function performed
DefinitionCommentsIndicates the type of function performed at the location.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
v3.ServiceDeliveryLocationRoleType (extensible)ConstraintsIndicates the type of function performed at the location.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- w5: FiveWs.class
- rim: .code
telecom I 0..0 ContactPoint There are no (further) constraints on this elementElement idShort descriptionLocation.telecom
Contact details of the location
DefinitionData type ConstraintsThe contact details of communication devices available at the location. This can include phone numbers, fax numbers, mobile numbers, email addresses and web sites.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- cpt-2: A system is required if a value is provided.
value.empty() or system.exists()
- rim: n/a
- v2: XTN
- rim: TEL
- servd: ContactPoint
- rim: .telecom
address 0..0 Address There are no (further) constraints on this elementElement idShort descriptionLocation.address
Physical location
DefinitionRequirementsPhysical location.
CommentsIf locations can be visited, we need to keep track of their address.
Data type ConstraintsAdditional addresses should be recorded using another instance of the Location resource, or via the Organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: XAD
- rim: AD
- servd: Address
- rim: .addr
physicalType Σ 0..0 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionLocation.physicalType
Physical form of the location
DefinitionRequirementsPhysical form of the location, e.g. building, room, vehicle, road.
CommentsFor purposes of showing relevant locations in queries, we need to categorize locations.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
LocationType (example)ConstraintsPhysical form of the location.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- w5: FiveWs.class
- rim: .playingEntity [classCode=PLC].code
position 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionLocation.position
The absolute geographic location
DefinitionRequirementsThe absolute geographic location of the Location, expressed using the WGS84 datum (This is the same co-ordinate system used in KML).
Data type ConstraintsFor mobile applications and automated route-finding knowing the exact location of the Location is required.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .playingEntity [classCode=PLC determinerCode=INSTANCE].positionText
managingOrganization Σ I 1..1 Reference(Organization) Element id Short descriptionLocation.managingOrganization
Immunization Organization responsible for the SDL
DefinitionRequirementsThe immunization organization responsible for the provisioning and upkeep of the service delivery location.
CommentsNeed to know who manages the location.
Data type ConstraintsThis can also be used as the part of the organization hierarchy where this location provides services. These services can be defined through the HealthcareService resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- rim: .scopingEntity[classCode=ORG determinerKind=INSTANCE]
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.managingOrganization.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionLocation.managingOrganization.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 1..1 string Element id Short descriptionLocation.managingOrganization.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsfullURL of Panorama + 'Organization' + (PIR Imms Org ID from vaccine_master)
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
type Σ 0..0 uriBindingFixed Value Element id Short descriptionLocation.managingOrganization.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingHardcode as "Organization"
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Fixed value- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
MappingsOrganization
- rim: n/a
- rim: N/A
identifier Σ 0..0 Identifier There are no (further) constraints on this elementElement idShort descriptionLocation.managingOrganization.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- rim: .identifier
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.managingOrganization.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
partOf I 0..0 Reference(Location) There are no (further) constraints on this elementElement idShort descriptionLocation.partOf
Another Location this one is physically a part of
DefinitionRequirementsAnother Location of which this Location is physically a part of.
CommentsFor purposes of location, display and identification, knowing which locations are located within other locations is important.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- rim: .inboundLink[typeCode=PART].source[classCode=SDLC]
hoursOfOperation 0..0 BackboneElement There are no (further) constraints on this elementElement idShort descriptionLocation.hoursOfOperation
What days/times during a week is this location usually open
DefinitionCommentsWhat days/times during a week is this location usually open.
Data type ConstraintsThis type of information is commonly found published in directories and on websites informing customers when the facility is available.
Specific services within the location may have their own hours which could be shorter (or longer) than the locations hours.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: .effectiveTime
availabilityExceptions 0..0 string There are no (further) constraints on this elementElement idShort descriptionLocation.availabilityExceptions
Description of availability exceptions
DefinitionCommentsA description of when the locations opening ours are different to normal, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as detailed in the opening hours Times.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
endpoint I 0..0 Reference(Endpoint) There are no (further) constraints on this elementElement idShort descriptionLocation.endpoint
Technical endpoints providing access to services operated for the location
DefinitionRequirementsTechnical endpoints providing access to services operated for the location.
CommentsOrganizations may have different systems at different locations that provide various services and need to be able to define the technical connection details for how to connect to them, and for what purpose.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
-
Immunization
The Immunization resource records the immunization event, including the vaccine administered, the patient receiving the immunization, and other pertinent details such as lot number and expiration date. It represents both current and historical immunization data, providing a complete record of a patient’s immunization history. This data is essential for tracking the vaccines received by a patient over time, supporting clinical decision-making, and ensuring compliance with immunization schedules. The patient and location references are mapped to corresponding records stored as part of the immunization bundle.
Immunization I Immunization Element id Short descriptionImmunization
FHIR resource applies for PIR Immunization History
DefinitionData type ConstraintsFHIR resource applies for PIR Immunization History
Mappings- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
- dom-4: 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-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
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-6: A resource should have narrative for robust management
text.`div`.exists()
- dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
- rim: Entity. Role, or Act
- workflow: Event
- v2: VXU_V04
- rim: SubstanceAdministration
id Σ 1..1 string Element id Short descriptionImmunization.id
PIR Internal Immunization ID
DefinitionCommentsPIR Internal Immunization ID
Data type MappingsSee Mappings
- source-PIR: PIR Imms ID
- source-PHSL: immunizationId
meta Σ 1..1 Meta There are no (further) constraints on this elementElement idShort descriptionImmunization.meta
Metadata about the resource
DefinitionData type ConstraintsThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
versionId Σ 0..1 id Element id Short descriptionImmunization.meta.versionId
Version specific identifier
DefinitionCommentsThe version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.
Data type ConstraintsApply "2024.04". This indicates the FHIR Specs as of year 2024 April. Replaces CVC code with NVC code.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
lastUpdated Σ 0..0 instant There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.lastUpdated
When the resource version last changed
DefinitionCommentsWhen the resource last changed - e.g. when the version changed.
Data type ConstraintsThis value is always populated except when the resource is first being created. The server / resource manager sets this value; what a client provides is irrelevant. This is equivalent to the HTTP Last-Modified and SHOULD have the same value on a read interaction.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
source Σ 0..0 uri There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.source
Identifies where the resource comes from
DefinitionCommentsA uri that identifies the source system of the resource. This provides a minimal amount of Provenance information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.
Data type ConstraintsIn the provenance resource, this corresponds to Provenance.entity.what[x]. The exact use of the source (and the implied Provenance.entity.role) is left to implementer discretion. Only one nominated source is allowed; for additional provenance details, a full Provenance resource should be used.
This element can be used to indicate where the current master source of a resource that has a canonical URL if the resource is no longer hosted at the canonical URL.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
profile Σ 1..1 canonical(StructureDefinition) Element id Short descriptionImmunization.meta.profile
Profiles this resource claims to conform to
DefinitionCommentsA list of profiles (references to StructureDefinition resources) that this resource claims to conform to. The URL is a reference to StructureDefinition.url.
Data typeUse 'http://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/Immunization'
canonical(StructureDefinition)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
security Σ 0..0 CodingBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.security
Security Labels applied to this resource
DefinitionCommentsSecurity labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.
Data type BindingThe security labels can be updated without changing the stated version of the resource. The list of security labels is a set. Uniqueness is based the system/code, and version and display are ignored.
All Security Labels (extensible)ConstraintsSecurity Labels from the Healthcare Privacy and Security Classification System.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
tag Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.meta.tag
Tags applied to this resource
DefinitionCommentsTags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.
Data type BindingThe tags can be updated without changing the stated version of the resource. The list of tags is a set. Uniqueness is based the system/code, and version and display are ignored.
CommonTags (example)ConstraintsCodes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
implicitRules Σ ?! 0..0 uri There are no (further) constraints on this elementElement idShort descriptionImmunization.implicitRules
A set of rules under which this content was created
DefinitionCommentsA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
Data type ConstraintsAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
language 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.language
Language of the resource content
DefinitionCommentsThe base language in which the resource is written.
Data type BindingLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).
CommonLanguages (preferred)ConstraintsA human language.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
text 0..0 Narrative There are no (further) constraints on this elementElement idShort descriptionImmunization.text
Text summary of the resource, for human interpretation
Alternate namesnarrative, html, xhtml, display
DefinitionCommentsA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
Data type ConstraintsContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- rim: Act.text?
contained 0..0 Resource There are no (further) constraints on this elementElement idShort descriptionImmunization.contained
Contained, inline Resources
Alternate namesinline resources, anonymous resources, contained resources
DefinitionCommentsThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
Data type MappingsThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.
- rim: Entity. Role, or Act
- rim: N/A
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
antigenDose I 0..* Extension(Complex) Element id Short descriptionImmunization.extension:antigenDose
Antgien(s) + Antigen Dose Number + Antigen Dose Status associated with the Agent administered
Alternate namesextensions, user content
DefinitionCommentsAntgien(s) + Antigen Dose Number + Antigen Dose Status associated with the Agent administered
Data typeTo apply for antigens information
Extension(Complex)
Extension URLhttp://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/immz-antigen
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
antigenCode I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode
Imms Antigen
Alternate namesextensions, user content
DefinitionCommentsImms Antigen
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
url 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
MappingsantigenCode
- rim: N/A
value[x] 0..1 There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x]
Value of extension
DefinitionConstraintsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
valueCodeableConcept CodeableConcept There are no (further) constraints on this elementData typeid 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..* Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 1..1 uri Element id Short descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
- code-NVC: https://nvc-cnv.canada.ca
- code-SNOMED: http://snomed.info/sct
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 1..1 code There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
display Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenCode.value[x].text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: immunizationAntigenCombinedDescription
antigenDoseNum I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseNum
Imms Antigen Dose Number
Alternate namesextensions, user content
DefinitionCommentsImms Antigen Dose Number
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseNum.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseNum.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
url 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseNum.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
MappingsantigenDoseNum
- rim: N/A
value[x] 1..1 There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseNum.value[x]
Value of extension
DefinitionConstraintsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
valueString string There are no (further) constraints on this elementData typeantigenDoseStatus I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseStatus
Imms Antigen Dose Status
Alternate namesextensions, user content
DefinitionCommentsImms Antigen Dose Status
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseStatus.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseStatus.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
url 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseStatus.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
MappingsantigenDoseStatus
- rim: N/A
value[x] 1..1 There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.extension:antigenDoseStatus.value[x]
Value of extension
DefinitionConstraintsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
valueString string There are no (further) constraints on this elementData typeurl 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
Mappingshttp://ehealth.bc.ca/fhir/StructureDefinition/bc-bcyimmunizationdistribution/immz-antigen
- rim: N/A
value[x] 0..0 There are no (further) constraints on this elementElement idShort descriptionImmunization.extension:antigenDose.value[x]
Value of extension
DefinitionConstraintsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
modifierExtension ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.modifierExtension
Extensions that cannot be ignored
Alternate namesextensions, user content
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
identifier 1..* Identifier Element id Short descriptionImmunization.identifier
PIR internal Immunization Identifier + External Immunization ID from source system(s)
DefinitionData type ConstraintsPIR Immunization Identifier(s) which include Panorama Internal Immunization ID, External Immunization ID from different source systems).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- workflow: Event.identifier
- w5: FiveWs.identifier
- rim: .id
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/id
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
use Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.use
usual | official | temp | secondary | old (If known)
DefinitionRequirementsThe purpose of this identifier.
CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.
Data type BindingApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.
IdentifierUse (required)ConstraintsIdentifies the purpose for this identifier, if known .
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: N/A
- rim: Role.code or implied by context
type Σ 1..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.type
Description of identifier
DefinitionRequirementsA coded type for the identifier that can be used to determine which identifier to use for a specific purpose.
CommentsAllows users to make use of identifiers when the identifier system is not known.
Data type BindingThis element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.
Identifier Type Codes (extensible)ConstraintsA coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: CX.5
- rim: Role.code or implied by context
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.type.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.type.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..0 Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.type.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
text Σ 1..1 string Element id Short descriptionImmunization.identifier.type.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: PANORAMAIMMZID'
- source-NHA: NHACEDARIMMS
- source-VCH: VCHPARISIMMS
- source-FHA: FHAPARISIMMS
- source-PNet: PHARMANETIMMS
- source-CznSub: CZNSUBIMMSID
- source-immsBC: HEALTHCONNECT
- source-eForms: EFORMIMMSID
system Σ 1..1 uri Element id Short descriptionImmunization.identifier.system
The namespace for the identifier value
DefinitionRequirementsEstablishes the namespace for the value - that is, a URL that describes a set values that are unique.
CommentsThere are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.
Data type ConstraintsSee Mappings
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
Generalhttp://www.acme.com/identifiers/patient
Mappings- rim: n/a
- v2: CX.4 / EI-2-4
- rim: II.root or Role.id.root
- servd: ./IdentifierType
- source-PIR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-document-number
- source-NHA: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-nha
- source-FHA: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-fha
- source-VCH: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-vcha
- source-PNet: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-pharmanet-document-number
- source-CznSub: https://ehealthbc.ca/NamingSystem/ca-bc-citizen-submission
- source-eForms: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-eForm
- source-immsBC: https://ehealthbc.ca/NamingSystem/ca-bc-health-connect
value Σ 1..1 string Element id Short descriptionImmunization.identifier.value
The value that is unique
DefinitionCommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.
Data type ConstraintsSee Mappings
Examples- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
General123456
Mappings- rim: n/a
- v2: CX.1 / EI.1
- rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
- servd: ./Value
- source-PIR: PIR Immunization ID
- source-FHA: FHA PARIS Immunization ID
- source-NHA: NHA CeDaR Immunization ID
- source-VCH: VCH PARIS Immunization ID
- source-PNet: PharmaNet Immunization ID
- source-PHSL: immunizationId
period Σ I 0..0 Period There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.period
Time period when id is/was valid for use
DefinitionCommentsTime period during which identifier is/was valid for use.
Data type ConstraintsA Period specifies a range of time; the context of use will specify whether the entire range applies (e.g. "the patient was an inpatient of the hospital for this time range") or one value from the range applies (e.g. "give to the patient between these two times").
Period is not used for a duration (a measure of elapsed time). See Duration.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- per-1: If present, start SHALL have a lower value than end
start.hasValue().not() or end.hasValue().not() or (start <= end)
- rim: n/a
- v2: DR
- rim: IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]
- v2: CX.7 + CX.8
- rim: Role.effectiveTime or implied by context
- servd: ./StartDate and ./EndDate
assigner Σ I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionImmunization.identifier.assigner
Organization that issued id (may be just text)
DefinitionCommentsOrganization that issued/manages the identifier.
Data type ConstraintsThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: CX.4 / (CX.4,CX.9,CX.10)
- rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
- servd: ./IdentifierIssuingAuthority
status Σ ?! 1..1 codeBinding Element id Short descriptionImmunization.status
completed | entered-in-error |
DefinitionCommentsIndicates the current status of the immunization record.
Data type BindingIDS sends "completed" or "entered-in-error" immunization records only.
ImmunizationStatusCodes (required)ConstraintsA set of codes indicating the current status of an Immunization.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- workflow: Event.status
- w5: FiveWs.status
- rim: statusCode
statusReason 0..0 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionImmunization.statusReason
Reason not done
DefinitionCommentsIndicates the reason the immunization event was not performed.
Data type BindingThis is generally only used for the status of "not-done". The reason for performing the immunization event is captured in reasonCode, not here.
ImmunizationStatusReasonCodes (example)ConstraintsThe reason why a vaccine was not administered.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- workflow: Event.statusReason
- rim: .inboundRelationship[typeCode=SUBJ].source[classCode=CACT, moodCode=EVN].reasonCOde
vaccineCode Σ 1..1 CodeableConcept Element id Short descriptionImmunization.vaccineCode
Vaccine product administered
DefinitionCommentsVaccine that was administered.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
VaccineAdministeredValueSet (example)ConstraintsThe code for vaccine product administered.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- workflow: Event.code
- w5: FiveWs.what[x]
- v2: RXA-5
- rim: .code
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/realmCode/code
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..* Coding Element id Short descriptionImmunization.vaccineCode.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type Sliced:Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Unordered, Open, by code(Value)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
(All Slices) There are no (further) constraints on this elementid 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 0..1 uri There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsThe URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
version Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 0..1 code There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..1 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
AgentNVC Σ 1..1 Coding Element id Short descriptionImmunization.vaccineCode.coding:AgentNVC
Agent administered
DefinitionRequirementsAgent code and name in NVC
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentNVC.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentNVC.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 1..1 uri Element id Short descriptionImmunization.vaccineCode.coding:AgentNVC.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
- code-NVC: https://nvc-cnv.canada.ca
- code-SNOMED: http://snomed.info/sct
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentNVC.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 1..1 code Element id Short descriptionImmunization.vaccineCode.coding:AgentNVC.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
- source-PIR: BCYREPORTING.RBCY_FN_GET_CONCEPT_CODE(H33_VACCINATION_MASTER_ASIIS_VACC_CODE)
- source-PHSL: immunizationAgentCode
display Σ 1..1 string Element id Short descriptionImmunization.vaccineCode.coding:AgentNVC.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
- source-PIR: REPORTING.GET_ITERM_DESC(H33_VACCINATION_MASTER_ASIIS_VACC_CODE)
- source-PHSL: immunizationAgentDescription
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentNVC.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
AgentPIR Σ 0..1 Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 1..1 uri Element id Short descriptionImmunization.vaccineCode.coding:AgentPIR.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
- code-PIR: https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-panorama-code
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 1..1 code There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
display Σ 1..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:AgentPIR.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
Tradename Σ 0..1 Coding Element id Short descriptionImmunization.vaccineCode.coding:Tradename
Tradename administered
DefinitionRequirementsTradename of agent administered
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsTradename of agent administered
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:Tradename.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:Tradename.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 1..1 uri Element id Short descriptionImmunization.vaccineCode.coding:Tradename.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
- code-CVC: https://cvc.canimmunize.ca
- code-SNOMED: http://snomed.info/sct
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:Tradename.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 1..1 code Element id Short descriptionImmunization.vaccineCode.coding:Tradename.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
- source-PIR: BCYREPORTNG.RBCY_FN_GET_CONCEPT_CODE (H33_VACCINATION_MASTER.ASIIS_VACC_CODE)
- source-PHSL: tradeName
display Σ 0..1 string Element id Short descriptionImmunization.vaccineCode.coding:Tradename.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
- source-PIR: REPORTNG.GET_ITERM_DESC(H33_VACCINATION_MASTER.ASIIS_VACC_CODE)
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.vaccineCode.coding:Tradename.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..1 string Element id Short descriptionImmunization.vaccineCode.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
- source-PIR: immunizationAgentCombineDescription
- source-PHSL: immunizationAgentCombineDescription
patient Σ I 1..1 Reference(Patient) There are no (further) constraints on this elementElement idShort descriptionImmunization.patient
Who was immunized
DefinitionCommentsThe patient who either received or did not receive the immunization.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- workflow: Event.subject
- w5: FiveWs.subject[x]
- v2: PID-3
- rim: .partipication[ttypeCode=].role
- w5: FiveWs.subject
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.patient.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.patient.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 1..1 string Element id Short descriptionImmunization.patient.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
- source-PIR: fullURL of Panorama + "Patient'+PIR Client ID
type Σ 0..0 uriBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.patient.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
identifier Σ 0..0 Identifier There are no (further) constraints on this elementElement idShort descriptionImmunization.patient.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- rim: .identifier
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.patient.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
encounter I 0..0 Reference(Encounter) There are no (further) constraints on this elementElement idShort descriptionImmunization.encounter
Encounter immunization was part of
DefinitionCommentsThe visit or admission or other contact between patient and health care provider the immunization was performed as part of.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- workflow: Event.context
- w5: FiveWs.context
- v2: PV1-19
- rim: component->EncounterEvent
occurrence[x] Σ 1..1 Element id Short descriptionImmunization.occurrence[x]
Vaccine administration date
DefinitionCommentsDate vaccine administered
ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- workflow: Event.occurrence[x]
- w5: FiveWs.done[x]
- v2: RXA-3
- rim: .effectiveTime
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/effectiveTime/value
- source-PIR: imms.h33_vaccination_master.vacc_date
- source-PHSL: vaccDate
occurrenceDateTime dateTime Data type id 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
_occurrenceDateTime I 0..* Extension(boolean) Element id Short descriptionImmunization.occurrence[x].extension:_occurrenceDateTime
Estimated Flag for Vaccination Date
Alternate namesextensions, user content
DefinitionCommentsEstimated Flag for Vaccination Date
Data type Extension URLSee Mappings
https://ehealthontario.ca/API/FHIR/StructureDefinition/ca-on-extension-estimated-date
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
- source-PHSL: VM.VACC_DATE_ESTIMATED_IND = 'Y
- source-PHSL: note="E"
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].extension:_occurrenceDateTime.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].extension:_occurrenceDateTime.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
url 1..1 uriFixed Value There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].extension:_occurrenceDateTime.url
identifies the meaning of the extension
DefinitionCommentsSource of the definition for the extension code - a logical name or a URL.
Data type Fixed valueThe definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.
Mappingshttps://ehealthontario.ca/API/FHIR/StructureDefinition/ca-on-extension-estimated-date
- rim: N/A
value[x] 0..1 Element id Short descriptionImmunization.occurrence[x].extension:_occurrenceDateTime.value[x]
Value of extension
DefinitionCommentsValue of extension - must be one of a constrained set of the data types (see Extensibility for a list).
ConstraintsApply PIR: H33_VACCINATION_MASTER.VACC_DATE
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
valueBoolean boolean There are no (further) constraints on this elementData typevalue 0..1 System.DateTime There are no (further) constraints on this elementElement idShort descriptionImmunization.occurrence[x].value
Primitive value for dateTime
DefinitionData typePrimitive value for dateTime
System.DateTime
recorded 0..0 dateTime There are no (further) constraints on this elementElement idShort descriptionImmunization.recorded
When the immunization was first captured in the subject's record
DefinitionData type ConstraintsThe date the occurrence of the immunization was first captured in the record - potentially significantly after the occurrence of the event.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.recorded
- rim: .participation[typeCode=AUT].time
primarySource Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.primarySource
Indicates context the data was recorded in
DefinitionCommentsAn indication that the content of the record is based on information from the person who administered the vaccine. This reflects the context under which the data was originally recorded.
Data type ConstraintsReflects the “reliability” of the content.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- w5: FiveWs.source
- v2: RXA-9
- rim: immunization.uncertaintycode (if primary source=false, uncertainty=U)
reportOrigin 0..0 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionImmunization.reportOrigin
Indicates the source of a secondarily reported record
DefinitionCommentsThe source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.
Data type BindingShould not be populated if primarySource = True, not required even if primarySource = False.
ImmunizationOriginCodes (example)ConstraintsThe source of the data for a record which is not from a primary source.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- w5: FiveWs.source
- v2: RXA-9
- rim: .participation[typeCode=INF].role[classCode=PAT] (this syntax for self-reported) .participation[typeCode=INF].role[classCode=LIC] (this syntax for health care professional) .participation[typeCode=INF].role[classCode=PRS] (this syntax for family member)
location I 0..1 Reference(Location) Element id Short descriptionImmunization.location
Immunization Service Delivery Location (SDL)
DefinitionCommentsImmunization Service Delivery Location (SDL)
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- workflow: Event.location
- w5: FiveWs.where[x]
- v2: RXA-27 (or RXA-11, deprecated as of v2.7)
- rim: .participation[typeCode=LOC].COCT_MT240000UV
- source-PHSL: serviceDeliveryLocationName
- source-PIR: H33_VACCINATION_MASTER.location_id
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.location.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.location.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 1..1 string Element id Short descriptionImmunization.location.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsfullURL of Panorama + 'Location' + PIR Loc ID + 'org' + PIR Imms Org ID
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
type Σ 0..0 uriBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.location.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
identifier Σ 0..0 Identifier There are no (further) constraints on this elementElement idShort descriptionImmunization.location.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
Data type ConstraintsWhen an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.
When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference
Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.
Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CX / EI (occasionally, more often EI maps to a resource id or a URL)
- rim: II - The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]
- servd: Identifier
- rim: .identifier
display Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.location.display
Text alternative for the resource
DefinitionCommentsPlain text narrative that identifies the resource in addition to the resource reference.
Data type ConstraintsThis is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
manufacturer I 0..0 Reference(Organization) There are no (further) constraints on this elementElement idShort descriptionImmunization.manufacturer
Vaccine manufacturer
DefinitionCommentsName of vaccine manufacturer.
Data type ConstraintsReferences SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc.). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- v2: RXA-17
- rim: .participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=ORG]
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacuturerOrganization/name
lotNumber 0..1 string Element id Short descriptionImmunization.lotNumber
Vaccine lot number
DefinitionCommentsLot number of the vaccine product.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: RXA-15
- rim: .participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].id
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/lotNumberText
- source-PIR: INV_PRODUCT_LOT_INFO.LOT_NUMBER
- source-PHSL: lotNumber
expirationDate 0..1 date There are no (further) constraints on this elementElement idShort descriptionImmunization.expirationDate
Vaccine expiration date
DefinitionData type ConstraintsDate vaccine batch expires.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: RXA-16
- rim: .participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].expirationTime
site 0..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionImmunization.site
Body site vaccine was administered
DefinitionCommentsBody site where vaccine was administered.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
CodesForImmunizationSiteOfAdministration (example)ConstraintsThe site at which the vaccine was administered.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: RXR-2
- rim: observation.targetSiteCode
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/approachSiteCode/code
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.site.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.site.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..* Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 0..1 uri Element id Short descriptionImmunization.site.coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsUse 'http://snomed.info/sct''
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 0..1 code Element id Short descriptionImmunization.site.coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsApply SNOMED code
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.site.coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.site.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsVery often the text is the same as a displayName of one of the codings.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
route 0..1 CodeableConcept There are no (further) constraints on this elementElement idShort descriptionImmunization.route
How vaccine entered body
DefinitionCommentsThe path by which the vaccine product is taken into the body.
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
ImmunizationRouteCodes (example)ConstraintsThe route by which the vaccine was administered.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- v2: RXR-1
- rim: .routeCode
- cda: ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/routeCode/code
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.route.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.route.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
coding Σ 0..* Coding There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding
Code defined by a terminology system
DefinitionRequirementsA reference to a code defined by a terminology system.
CommentsAllows for alternative encodings within a code system, and translations to other code systems.
Data type ConstraintsCodes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE subset one of the sets of component 1-3 or 4-6
- rim: CV
- orim: fhir:Coding rdfs:subClassOf dt:CDCoding
- v2: C*E.1-8, C*E.10-22
- rim: union(., ./translation)
- orim: fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
system Σ 0..1 uri Element id Short descriptionImmunization.route.coding.system
Identity of the terminology system
DefinitionRequirementsThe identification of the code system that defines the meaning of the symbol in the code.
CommentsNeed to be unambiguous about the source of the definition of the symbol.
Data type ConstraintsUse 'http://snomed.info/sct'
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.3
- rim: ./codeSystem
- orim: fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem
version Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding.version
Version of the system - if relevant
DefinitionCommentsThe version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured, and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.
Data type ConstraintsWhere the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.7
- rim: ./codeSystemVersion
- orim: fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion
code Σ 0..1 code Element id Short descriptionImmunization.route.coding.code
Symbol in syntax defined by the system
DefinitionRequirementsA symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).
CommentsNeed to refer to a particular code in the system.
Data type ConstraintsApply SNOMED code
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.1
- rim: ./code
- orim: fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code
display Σ 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding.display
Representation defined by the system
DefinitionRequirementsA representation of the meaning of the code in the system, following the rules of the system.
CommentsNeed to be able to carry a human-readable meaning of the code for readers that do not know the system.
Data type ConstraintsNote that FHIR strings SHALL NOT exceed 1MB in size
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.2 - but note this is not well followed
- rim: CV.displayName
- orim: fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName
userSelected Σ 0..0 boolean There are no (further) constraints on this elementElement idShort descriptionImmunization.route.coding.userSelected
If this coding was chosen directly by the user
DefinitionRequirementsIndicates that this coding was chosen by a user directly - e.g. off a pick list of available items (codes or displays).
CommentsThis has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.
Data type ConstraintsAmongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: Sometimes implied by being first
- rim: CD.codingRationale
- orim: fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ]
text Σ 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.route.text
Plain text representation of the concept
DefinitionRequirementsA human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.
CommentsThe codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.
Data type ConstraintsVery often the text is the same as a displayName of one of the codings.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: C*E.9. But note many systems use C*E.2 for this
- rim: ./originalText[mediaType/code="text/plain"]/data
- orim: fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText
doseQuantity I 0..1 SimpleQuantity There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity
Amount of vaccine administered
DefinitionCommentsThe quantity of vaccine product that was administered.
Data type ConstraintsThe context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- qty-3: If a code for the unit is present, the system SHALL also be present
code.empty() or system.exists()
- sqty-1: The comparator is not used on a SimpleQuantity
comparator.empty()
- rim: n/a
- v2: SN (see also Range) or CQ
- rim: PQ, IVL<PQ>, MO, CO, depending on the values
- v2: RXA-6 / RXA-7
- rim: .doseQuantity
id 0..0 string There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
value Σ 0..1 decimal Element id Short descriptionImmunization.doseQuantity.value
Numerical value (with implicit precision)
DefinitionRequirementsThe value of the measured amount. The value includes an implicit precision in the presentation of the value.
CommentsPrecision is handled implicitly in almost all cases of measurement.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: SN.2 / CQ - N/A
- rim: PQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value
- source-PIR: H33_VACCINATION_MASTER.CC_VOLUME
- source-PHSL: dosage
comparator Σ ?! 0..0 codeBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity.comparator
< | <= | >= | > - how to understand the value
DefinitionRequirementsNot allowed to be used in this context
CommentsNeed a framework for handling measures where the value is <5ug/L or >400mg/L due to the limitations of measuring methodology.
Meaning when missingNote that FHIR strings SHALL NOT exceed 1MB in size
Data type BindingIf there is no comparator, then there is no modification of the value
QuantityComparator (required)ConstraintsHow the Quantity should be understood and represented.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: SN.1 / CQ.1
- rim: IVL properties
unit Σ 0..1 string Element id Short descriptionImmunization.doseQuantity.unit
Unit representation
DefinitionRequirementsA human-readable form of the unit.
CommentsThere are many representations for units of measure and in many contexts, particular representations are fixed and required. I.e. mcg for micrograms.
Data type ConstraintsSee Mappings
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: (see OBX.6 etc.) / CQ.2
- rim: PQ.unit
- source-PIR: H33_VACCINATION_MASTER.DOSAGE_UOM_CNCPT_ID
- source-PHSL: dosageUOMDescription
system Σ I 0..0 uri There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity.system
System that defines coded unit form
DefinitionRequirementsThe identification of the system that provides the coded form of the unit.
CommentsNeed to know the system that defines the coded form of the unit.
Data type Constraintssee http://en.wikipedia.org/wiki/Uniform_resource_identifier
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: (see OBX.6 etc.) / CQ.2
- rim: CO.codeSystem, PQ.translation.codeSystem
code Σ 0..0 code There are no (further) constraints on this elementElement idShort descriptionImmunization.doseQuantity.code
Coded form of the unit
DefinitionRequirementsA computer processable form of the unit in some unit representation system.
CommentsNeed a computable form of the unit that is fixed across all forms. UCUM provides this for quantities, but SNOMED CT provides many units of interest.
Data type ConstraintsThe preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: (see OBX.6 etc.) / CQ.2
- rim: PQ.code, MO.currency, PQ.translation.code
performer Σ 0..* BackboneElement There are no (further) constraints on this elementElement idShort descriptionImmunization.performer
Who performed event
DefinitionData type ConstraintsIndicates who performed the immunization event.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- workflow: Event.performer
- v2: ORC-12 / RXA-10
- rim: .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
modifierExtension Σ ?! I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.modifierExtension
Extensions that cannot be ignored even if unrecognized
Alternate namesextensions, user content, modifiers
DefinitionRequirementsMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
CommentsModifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.
Data type ConstraintsThere can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
function Σ 0..1 CodeableConceptBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.function
What type of performance was done
DefinitionCommentsDescribes the type of performance (e.g. ordering provider, administering provider, etc.).
Data type BindingNot all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.
ImmunizationFunctionCodes (extensible)ConstraintsThe role a practitioner or organization plays in the immunization event.
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- v2: CE/CNE/CWE
- rim: CD
- orim: fhir:CodeableConcept rdfs:subClassOf dt:CD
- workflow: Event.performer.function
- rim: .participation.functionCode
actor Σ I 1..1 Reference(Practitioner | PractitionerRole | Organization) Element id Short descriptionImmunization.performer.actor
Provider who administered the vaccine
DefinitionCommentsProvider who administered the vaccine
Data typeWhen the individual practitioner who performed the action is known, it is best to send.
Reference(Practitioner | PractitionerRole | Organization)
ConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ref-1: SHALL have a contained resource if a local reference is provided
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))
- rim: n/a
- rim: The target of a resource reference is a RIM entry point (Act, Role, or Entity)
- workflow: Event.performer.actor
- w5: FiveWs.actor
- rim: .player
id 0..1 string There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.actor.id
Unique id for inter-element referencing
DefinitionData type MappingsUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
- rim: n/a
extension I 0..* Extension There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.actor.extension
Additional content defined by implementations
Alternate namesextensions, user content
DefinitionCommentsMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
Data type Sliced:There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
Unordered, Open, by url(Value)
Extensions are always sliced by (at least) urlConstraintsMappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- ext-1: Must have either extensions or value[x], not both
extension.exists() != value.exists()
- rim: n/a
- rim: N/A
reference Σ I 0..1 string Element id Short descriptionImmunization.performer.actor.reference
Literal reference, Relative, internal or absolute URL
DefinitionCommentsA reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.
Data type ConstraintsfullURL of Panorama + 'Practitioner' + PIR Provider ID
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
type Σ 0..1 uriBinding There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.actor.type
Type the reference refers to (e.g. "Patient")
DefinitionCommentsThe expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.
The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).
Data type BindingThis element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.
ResourceType (extensible)ConstraintsAa resource (or, for logical models, the URI of the logical model).
Mappings- ele-1: All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
- rim: n/a
- rim: N/A
identifier Σ 0..1 Identifier There are no (further) constraints on this elementElement idShort descriptionImmunization.performer.actor.identifier
Logical reference, when literal reference is not known
DefinitionCommentsAn identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.
When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands
- dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources