| Immunization | I |  | Immunization | Element IdShort description Immunization event informationDefinition Data TypeDescribes the event of a patient being administered a vaccine or a record of an immunization as reported by a patient, a clinician or another party.ImmunizationConstraints Mappingsdom-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()ukcore-imm-1:If the immunization was not given then Immunization.status value SHALL = 'not-done', and the Immunization.statusReason SHALL be populated
 (status != 'not-done') or (status = 'not-done' and statusReason.exists())
rim:Entity. Role, or Actworkflow:Eventv2:VXU_V04rim:SubstanceAdministration
 | 
| extension | I | 0..* | Extension | Element IdShort description Additional content defined by implementationsAlternate names extensions, user contentDefinition CommentsMay 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 TypeThere 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.ExtensionSliced: Unordered, Open, by url(Value)Constraints Mappingsele-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()
 | 
| parentPresent | I | 0..1 | Extension(boolean) | Element Id Short descriptionImmunization.extension:parentPresentWas a parent of the patient present at an immunisation?Alternate names extensions, user contentDefinition CommentsWas a parent of the patient present at an immunisation?Data TypeThere 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.Extension(boolean)Extension URL https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-ParentPresentConstraints Mappingsele-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()
 | 
| vaccinationProcedure | I | 0..1 | Extension(CodeableConcept) | Element Id Short descriptionImmunization.extension:vaccinationProcedureAn extension to hold an immunization procedure codeAlternate names extensions, user contentDefinition CommentsAn extension to hold an immunization procedure code.Data TypeThere 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.Extension(CodeableConcept)Extension URL https://fhir.hl7.org.uk/StructureDefinition/Extension-UKCore-VaccinationProcedureConstraints Mappingsele-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()
 | 
| identifier |  | 0..* | Identifier | There are no (further) constraints on this elementElement IdShort description Business identifierDefinition Data TypeA unique identifier assigned to this immunization record.IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierworkflow:Event.identifierw5:FiveWs.identifierrim:.idcda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/id
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| status | Σ ?! | 1..1 | codeBinding | There are no (further) constraints on this elementElement IdShort description completed | entered-in-error | not-doneDefinition CommentsIndicates the current status of the immunization event.Data TypeWill generally be set to show that the immunization has been completed or not done.  This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.codeBinding A set of codes indicating the current status of an Immunization.ImmunizationStatusCodes (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/aworkflow:Event.statusw5:FiveWs.statusrim:statusCode
 | 
| statusReason |  | 0..1 | CodeableConceptBinding | Element Id Short descriptionImmunization.statusReasonReason not doneDefinition CommentsIndicates the reason the immunization event was not performed.Data TypeThis is generally only used for the status of "not-done". The reason for performing the immunization event is captured in reasonCode, not here.CodeableConceptBinding The reason why a vaccine was not administered.UKCoreReasonImmunizationNotAdministered (preferred)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDworkflow:Event.statusReasonrim:.inboundRelationship[typeCode=SUBJ].source[classCode=CACT, moodCode=EVN].reasonCOde
 | 
| vaccineCode | Σ | 1..1 | CodeableConceptBinding | Element IdShort description Vaccine product administeredDefinition CommentsVaccine that was administered or was to be administered.Data TypeNot 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.CodeableConceptBinding The code for vaccine product administered.UKCoreVaccineCode (preferred)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDworkflow:Event.codew5:FiveWs.what[x]v2:RXA-5rim:.codecda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/realmCode/code
 | 
| patient | Σ I | 1..1 | Reference(UK Core Patient) | Element IdShort description Who was immunizedDefinition CommentsThe patient who either received or did not receive the immunization.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(UK Core Patient)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)workflow:Event.subjectw5:FiveWs.subject[x]v2:PID-3rim:.partipication[ttypeCode=].rolew5:FiveWs.subject
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.patient.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.patient.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.patient.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| encounter | I | 0..1 | Reference(UK Core Encounter) | Element IdShort description Encounter immunization was part ofDefinition CommentsThe visit or admission or other contact between patient and healthcare provider the immunization was performed as part of.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(UK Core Encounter)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)workflow:Event.contextw5:FiveWs.contextv2:PV1-19rim:component->EncounterEvent
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.encounter.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.encounter.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.encounter.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| occurrence[x] | Σ | 1..1 |  | There are no (further) constraints on this elementElement Id Short descriptionImmunization.occurrence[x]Vaccine administration dateDefinition CommentsDate vaccine administered or was to be administered.ConstraintsWhen immunizations are given a specific date and time should always be known.   When immunizations are patient reported, a specific date might not be known.  Although partial dates are allowed, an adult patient might not be able to recall the year a childhood immunization was given. An exact date is always preferable, but the use of the String data type is acceptable when an exact date is not known. A small number of vaccines (e.g. live oral typhoid vaccine) are given as a series of patient self-administered dose over a span of time. In cases like this, often, only the first dose (typically a provider supervised dose) is recorded with the occurrence indicating the date/time of the first dose.Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/aworkflow:Event.occurrence[x]w5:FiveWs.done[x]v2:RXA-3rim:.effectiveTimecda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/effectiveTime/value
 | 
| occurrenceDateTime |  |  | dateTime | There are no (further) constraints on this elementData Type dateTime | 
| occurrenceString |  |  | string | There are no (further) constraints on this elementData Type string | 
| recorded |  | 0..1 | dateTime | There are no (further) constraints on this elementElement IdShort description When the immunization was first captured in the subject's recordDefinition Data TypeThe date the occurrence of the immunization was first captured in the record - potentially significantly after the occurrence of the event.dateTimeConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/aw5:FiveWs.recordedrim:.participation[typeCode=AUT].time
 | 
| primarySource | Σ | 0..1 | boolean | There are no (further) constraints on this elementElement Id Short descriptionImmunization.primarySourceIndicates context the data was recorded inDefinition CommentsAn 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 TypeReflects the “reliability” of the content.booleanConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/aw5:FiveWs.sourcev2:RXA-9rim:immunization.uncertaintycode (if primary source=false, uncertainty=U)
 | 
| reportOrigin |  | 0..1 | CodeableConcept | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reportOriginIndicates the source of a secondarily reported recordDefinition CommentsThe source of the data when the report of the immunization event is not based on information from the person who administered the vaccine.Data TypeShould not be populated if primarySource = True, not required even if primarySource = False.CodeableConceptBinding The source of the data for a record which is not from a primary source.ImmunizationOriginCodes (example)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDw5:FiveWs.sourcev2:RXA-9rim:.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(UK Core Location) | Element IdShort description Where immunization occurredDefinition CommentsThe service delivery location where the vaccine administration occurred.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(UK Core Location)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)workflow:Event.locationw5:FiveWs.where[x]v2:RXA-27  (or RXA-11, deprecated as of v2.7)rim:.participation[typeCode=LOC].COCT_MT240000UV
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.location.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.location.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.location.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| manufacturer | I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.manufacturerVaccine manufacturerDefinition CommentsName of vaccine manufacturer.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(UK Core Organization)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)v2:RXA-17rim:.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=ORG]cda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacuturerOrganization/name
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.manufacturer.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.manufacturer.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.manufacturer.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| lotNumber |  | 0..1 | string | There are no (further) constraints on this elementElement IdShort description Vaccine lot numberDefinition CommentsLot number of the  vaccine product.Data TypeNote that FHIR strings SHALL NOT exceed 1MB in sizestringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:RXA-15rim:.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].idcda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/consumable/manfacturedProduct/manufacturedMaterial/lotNumberText
 | 
| expirationDate |  | 0..1 | date | There are no (further) constraints on this elementElement Id Short descriptionImmunization.expirationDateVaccine expiration dateDefinition Data TypeDate vaccine batch expires.dateConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:RXA-16rim:.participation[typeCode=CSM].role[classCode=INST].scopedRole.scoper[classCode=MMAT].expirationTime
 | 
| site |  | 0..1 | CodeableConceptBinding | Element IdShort description Body site vaccine  was administeredDefinition CommentsBody site where vaccine was administered.Data TypeNot 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.CodeableConceptBinding The site at which the vaccine was administered.UKCoreImmunizationAdministrationBodySite (preferred)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:RXR-2rim:observation.targetSiteCodecda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/approachSiteCode/code
 | 
| route |  | 0..1 | CodeableConceptBinding | Element IdShort description How vaccine entered bodyDefinition CommentsThe path by which the vaccine product is taken into the body.Data TypeNot 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.CodeableConceptBinding The route by which the vaccine was administered.UKCoreSubstanceOrProductAdministrationRoute (preferred)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:RXR-1rim:.routeCodecda:ClinicalDocument/component/StructuredBody/component/section/entry/substanceAdministration/routeCode/code
 | 
| doseQuantity | I | 0..1 | SimpleQuantity | There are no (further) constraints on this elementElement Id Short descriptionImmunization.doseQuantityAmount of vaccine administeredDefinition CommentsThe quantity of vaccine product that was administered.Data TypeThe 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.SimpleQuantityConstraints Mappingsele-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/av2:SN (see also Range) or CQrim:PQ, IVL<PQ>, MO, CO, depending on the valuesv2:RXA-6 / RXA-7rim:.doseQuantity
 | 
| performer | Σ | 0..* | BackboneElement | There are no (further) constraints on this elementElement IdShort description Who performed eventDefinition Data TypeIndicates who performed the immunization event.BackboneElementConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/aworkflow:Event.performerv2:ORC-12 / RXA-10rim:.participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
 | 
| function | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.performer.functionWhat type of performance was doneDefinition CommentsDescribes the type of performance (e.g. ordering provider, administering provider, etc.).Data TypeNot 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.CodeableConceptBinding The role a practitioner or organization plays in the immunization event.ImmunizationFunctionCodes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDworkflow:Event.performer.functionrim:.participation.functionCode
 | 
| actor | Σ I | 1..1 | Reference(UK Core Practitioner | UK Core PractitionerRole | UK Core Organization) | Element Id Short descriptionImmunization.performer.actorIndividual or organization who was performingDefinition CommentsThe practitioner or organization who performed the action.Data TypeWhen the individual practitioner who performed the action is known, it is best to send.Reference(UK Core Practitioner | UK Core PractitionerRole | UK Core Organization)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)workflow:Event.performer.actorw5:FiveWs.actorrim:.player
 | 
| note | Σ | 0..* | Annotation | There are no (further) constraints on this elementElement IdShort description Additional immunization notesDefinition CommentsExtra information about the immunization that is not conveyed by the other attributes.Data TypeFor systems that do not have structured annotations, they can simply communicate a single annotation with no author or time.  This element may need to be included in narrative because of the potential for modifying information.  Annotations SHOULD NOT be used to communicate "modifying" information that could be computable. (This is a SHOULD because enforcing user behavior is nearly impossible).AnnotationConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Actworkflow:Event.notev2:OBX-5 : OBX-3 = 48767-8rim:note
 | 
| author[x] | Σ | 0..1 |  | There are no (further) constraints on this elementElement Id Short descriptionImmunization.note.author[x]Individual responsible for the annotationDefinition CommentsThe individual responsible for making the annotation.ConstraintsOrganization is used when there's no need for specific attribution as to who made the comment.Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Act.participant[typeCode=AUT].role
 | 
| authorString |  |  | string | Data Type string | 
| authorReference |  |  | Reference(UK Core Practitioner | UK Core Patient | UK Core RelatedPerson | UK Core Organization) | Data Type Reference(UK Core Practitioner | UK Core Patient | UK Core RelatedPerson | UK Core Organization) | 
| time | Σ | 0..1 | dateTime | There are no (further) constraints on this elementElement IdShort description When the annotation was madeDefinition Data TypeIndicates when this particular annotation was made.dateTimeConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Act.effectiveTime
 | 
| text | Σ | 1..1 | markdown | There are no (further) constraints on this elementElement IdShort description The annotation  - text content (as markdown)Definition CommentsThe text of the annotation in markdown format.Data TypeSystems are not required to have markdown support, so the text should be readable without markdown processing. The markdown syntax is GFM - see https://github.github.com/gfm/markdownConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Act.text
 | 
| reasonCode |  | 0..* | CodeableConceptBinding | Element IdShort description Why immunization occurredDefinition CommentsReasons why the vaccine was administered.Data TypeNot 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.CodeableConceptBinding The reason why a vaccine was administered.ValueSet example: UKCore-ImmunizationExplanationReason (preferred)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDworkflow:Event.reasonCoderim:[actionNegationInd=false].reasonCode
 | 
| reasonReference | I | 0..* | Reference(UK Core Condition | UK Core Observation | UK Core DiagnosticReport) | Element Id Short descriptionImmunization.reasonReferenceWhy immunization occurredDefinition CommentsCondition, Observation or DiagnosticReport that supports why the immunization was administered.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(UK Core Condition | UK Core Observation | UK Core DiagnosticReport)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)workflow:Event.reasonReferencerim:N/A
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.reasonReference.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.reasonReference.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reasonReference.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| isSubpotent | Σ ?! | 0..1 | boolean | There are no (further) constraints on this elementElement IdShort description Dose potencyDefinition CommentsIndication if a dose is considered to be subpotent. By default, a dose should be considered to be potent.Data TypeTypically, the recognition of the dose being sub-potent is retrospective, after the administration (ex. notification of a manufacturer recall after administration). However, in the case of a partial administration (the patient moves unexpectedly and only some of the dose is actually administered), subpotency may be recognized immediately, but it is still important to record the event.booleanConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:RXA-20 = PA (partial administration)rim:N/A
 | 
| subpotentReason |  | 0..* | CodeableConcept | There are no (further) constraints on this elementElement Id Short descriptionImmunization.subpotentReasonReason for being subpotentDefinition CommentsReason why a dose is considered to be subpotent.Data TypeNot 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.CodeableConceptBinding The reason why a dose is considered to be subpotent.ImmunizationSubpotentReason (example)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDrim:N/A
 | 
| education | I | 0..* | BackboneElement | There are no (further) constraints on this elementElement IdShort description Educational material presented to patientDefinition Data TypeEducational material presented to the patient (or guardian) at the time of vaccine administration.BackboneElementConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())imm-1:One of documentType or reference SHALL be present
 documentType.exists() or reference.exists()
 | 
| documentType |  | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.education.documentTypeEducational material document identifierDefinition CommentsIdentifier of the material presented to the patient.Data TypeNote that FHIR strings SHALL NOT exceed 1MB in sizestringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:OBX-5 : OBX-3 = 69764-9rim:N/A
 | 
| reference |  | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.education.referenceEducational material reference pointerDefinition CommentsReference pointer to the educational material given to the patient if the information was on line.Data Typesee http://en.wikipedia.org/wiki/Uniform_resource_identifieruriConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| publicationDate |  | 0..1 | dateTime | There are no (further) constraints on this elementElement Id Short descriptionImmunization.education.publicationDateEducational material publication dateDefinition Data TypeDate the educational material was published.dateTimeConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:OBX-5 : OBX-3 = 29768-9rim:N/A
 | 
| presentationDate |  | 0..1 | dateTime | There are no (further) constraints on this elementElement Id Short descriptionImmunization.education.presentationDateEducational material presentation dateDefinition Data TypeDate the educational material was given to the patient.dateTimeConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:OBX-5 : OBX-3 = 29769-7rim:N/A
 | 
| programEligibility |  | 0..* | CodeableConcept | There are no (further) constraints on this elementElement Id Short descriptionImmunization.programEligibilityPatient eligibility for a vaccination programDefinition CommentsIndicates a patient's eligibility for a funding program.Data TypeNot 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.CodeableConceptBinding The patient's eligibility for a vaccation program.ImmunizationProgramEligibility (example)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:OBX-5 : OBX-3 = 64994-7rim:N/A
 | 
| fundingSource |  | 0..1 | CodeableConcept | There are no (further) constraints on this elementElement Id Short descriptionImmunization.fundingSourceFunding source for the vaccineDefinition CommentsIndicates the source of the vaccine actually administered. This may be different than the patient eligibility (e.g. the patient may be eligible for a publically purchased vaccine but due to inventory issues, vaccine purchased with private funds was actually administered).Data TypeNot 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.CodeableConceptBinding The source of funding used to purchase the vaccine administered.ImmunizationFundingSource (example)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDrim:N/A
 | 
| reaction |  | 0..* | BackboneElement | There are no (further) constraints on this elementElement IdShort description Details of a reaction that follows immunizationDefinition CommentsCategorical data indicating that an adverse event is associated in time to an immunization.Data TypeA reaction may be an indication of an allergy or intolerance and, if this is determined to be the case, it should be recorded as a new AllergyIntolerance resource instance as most systems will not query against past Immunization.reaction elements.BackboneElementConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:OBX-3rim:Observation[classCode=obs].code
 | 
| date |  | 0..1 | dateTime | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.dateWhen reaction startedDefinition Data TypeDate of reaction to the immunization.dateTimeConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:OBX-14 (ideally this would be reported in an IAM segment, but IAM is not part of the HL7 v2 VXU message - most likely would appear in OBX segments if at all)rim:.effectiveTime
 | 
| detail | I | 0..1 | Reference(UK Core Observation) | Element Id Short descriptionImmunization.reaction.detailAdditional information on reactionDefinition Comments 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(UK Core Observation)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)v2:OBX-5rim:.value
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.reaction.detail.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.reaction.detail.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.detail.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| reported |  | 0..1 | boolean | There are no (further) constraints on this elementElement Id Short descriptionImmunization.reaction.reportedIndicates self-reported reactionDefinition Data Type booleanConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:(HL7 v2 doesn't seem to provide for this)rim:.participation[typeCode=INF].role[classCode=PAT] (this syntax for self-reported=true)
 | 
| protocolApplied |  | 0..* | BackboneElement | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolAppliedProtocol followed by the providerDefinition Data TypeThe protocol (set of recommendations) being followed by the provider who administered the dose.BackboneElementConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| series |  | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.seriesName of vaccine seriesDefinition CommentsOne possible path to achieve presumed immunity against a disease - within the context of an authority.Data TypeNote that FHIR strings SHALL NOT exceed 1MB in sizestringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| authority | I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.protocolApplied.authorityWho is responsible for publishing the recommendationsDefinition CommentsIndicates the authority who published the protocol (e.g. ACIP) that is being followed.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(UK Core Organization)Constraints Mappingsele-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/arim:The target of a resource reference is a RIM entry point (Act, Role, or Entity)rim:N/A
 | 
| reference | Σ I | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.referenceLiteral reference, Relative, internal or absolute URLDefinition CommentsA 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 TypeUsing absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries.   Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| type | Σ | 0..1 | uriBinding | Element Id Short descriptionImmunization.protocolApplied.authority.typeType the reference refers to (e.g. "Patient")Definition CommentsThe 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 TypeThis 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.uriBinding A resource (or, for logical models, the URI of the logical model).ResourceType (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| identifier | Σ | 0..1 | Identifier | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifierLogical reference, when literal reference is not knownDefinition CommentsAn 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 TypeWhen 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).IdentifierConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2: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:Identifierrim:.identifier
 | 
| use | Σ ?! | 0..1 | codeBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifier.useusual | official | temp | secondary | old (If known)Definition RequirementsThe purpose of this identifier.CommentsAllows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.Data TypeApplications can assume that an identifier is permanent unless it explicitly says that it is temporary.codeBinding Identifies the purpose for this identifier, if known .IdentifierUse (required)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:N/Arim:Role.code or implied by context
 | 
| type | Σ | 0..1 | CodeableConceptBinding | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifier.typeDescription of identifierDefinition RequirementsA 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 TypeThis 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.CodeableConceptBinding A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.Identifier Type Codes (extensible)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDv2:CX.5rim:Role.code or implied by context
 | 
| system | Σ | 0..1 | uri | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifier.systemThe namespace for the identifier valueDefinition RequirementsEstablishes 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 TypeIdentifier.system is always case sensitive.uriConstraints Examplesele-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/av2:CX.4 / EI-2-4rim:II.root or Role.id.rootservd:./IdentifierType
 | 
| value | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifier.valueThe value that is uniqueDefinition CommentsThe portion of the identifier typically relevant to the user and which is unique within the context of the system.Data TypeIf the value is a full URI, then the system SHALL be urn:ietf:rfc:3986.  The value's primary purpose is computational mapping.  As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.)  A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.stringConstraints Examplesele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
Mappings
 rim:n/av2:CX.1 / EI.1rim:II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)servd:./Value
 | 
| period | Σ I | 0..1 | Period | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.identifier.periodTime period when id is/was valid for useDefinition CommentsTime period during which identifier is/was valid for use.Data TypeA 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.PeriodConstraints Mappingsele-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/av2:DRrim:IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"]v2:CX.7 + CX.8rim:Role.effectiveTime or implied by contextservd:./StartDate and ./EndDate
 | 
| assigner | Σ I | 0..1 | Reference(UK Core Organization) | Element Id Short descriptionImmunization.protocolApplied.authority.identifier.assignerOrganization that issued id (may be just text)Definition CommentsOrganization that issued/manages the identifier.Data TypeThe Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.Reference(UK Core Organization)Constraints Mappingsele-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/arim: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.scoperservd:./IdentifierIssuingAuthority
 | 
| display | Σ | 0..1 | string | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.authority.displayText alternative for the resourceDefinition CommentsPlain text narrative that identifies the resource in addition to the resource reference.Data TypeThis 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.stringConstraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| targetDisease |  | 0..* | CodeableConcept | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.targetDiseaseVaccine preventatable disease being targettedDefinition CommentsThe vaccine preventable disease the dose is being administered against.Data TypeNot 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.CodeableConceptBinding The vaccine preventable disease the dose is being administered for.ImmunizationTargetDiseaseCodes (example)Constraints Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
rim:n/av2:CE/CNE/CWErim:CDorim:fhir:CodeableConcept rdfs:subClassOf dt:CDrim:N/A
 | 
| doseNumber[x] |  | 1..1 |  | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.doseNumber[x]Dose number within seriesDefinition CommentsNominal position in a series.ConstraintsThe use of an integer is preferred if known. A string should only be used in cases where an integer is not available (such as when documenting a recurring booster dose).Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| doseNumberPositiveInt |  |  | positiveInt | There are no (further) constraints on this elementData Type positiveInt | 
| doseNumberString |  |  | string | There are no (further) constraints on this elementData Type string | 
| seriesDoses[x] |  | 0..1 |  | There are no (further) constraints on this elementElement Id Short descriptionImmunization.protocolApplied.seriesDoses[x]Recommended number of doses for immunityDefinition CommentsThe recommended number of doses to achieve immunity.ConstraintsThe use of an integer is preferred if known. A string should only be used in cases where an integer is not available (such as when documenting a recurring booster dose).Mappingsele-1:All FHIR elements must have a @value or children
 hasValue() or (children().count() > id.count())
 | 
| seriesDosesPositiveInt |  |  | positiveInt | There are no (further) constraints on this elementData Type positiveInt | 
| seriesDosesString |  |  | string | There are no (further) constraints on this elementData Type string |