Panorama Immunization Registry

This Profile is created and maintained external to the LRA project and is provided here as an aid for implementers of the LRA in finding the base profile definitions. The reader should always verify the profile on the linked source page.

Overview

LRA integrates with the Panorama Immunization Registry (PIR) by consuming PIR-defined FHIR Bundles and persisting the included resources in the LRA Platform (Smile CDR). LRA does not create or maintain immunization profiles; implementers should treat the PIR Simplifier project as the source of truth for profile definitions and constraints.

Conformance

  • All resources are expected to conform to PIR-defined profiles (HL7 FHIR R4 / 4.0.1).
  • LRA preserves the PIR meta.profile declarations on persisted resources.

Persistence conventions

  • Resources are persisted as individual FHIR resources in Smile CDR.
  • MessageHeader is not persisted (used for ingestion/message context only).
  • Resources with contained resources (e.g., Consent, CarePlan) are stored as a single resource (outer + contained content). (need to fix the language)

LRA metadata additions on persisted resources

  • meta.source captures the original PIR Bundle ID (traceability back to PIR).
  • meta.tag includes an LRA source-system tag (e.g., PIR = Provincial Immunization Registry) to support filtering/partitioning.

Logical ID strategy

  • LRA uses PIR logical IDs but prefixes them for uniqueness across LRA domains.
    • Example: id = "PIR-462321729"
  • LRA uses PIR-assigned logical IDs and applies a source prefix for uniqueness, rather than using Smile CDR auto-generated IDs, to preserve a consistent, traceable mapping back to PIR-originated records.

Query and Retrieval Guidance

There are several ways to retrieve Immunization resources and their related context resources from the LRA platform.

In the current release, implementers typically begin with a Patient search using a BC PHN, then use a set of FHIR reverse-includes (_revinclude) to retrieve associated immunization-related resources linked to that patient.

Note: To retrieve the full immunization longitudinal record for a patient, see the Unified Immunization Query section below.

Search by Patient Identifier (PHN)

The following search parameters and search parameter combinations SHALL be supported.

The system SHALL support searching for a Patient by identifier, such as a BC PHN, using the identifier and tag search parameters:

GET [base]/Patient?identifier={system|}[code]&_tag=http://phsa.ca/fhir/lra/CodeSystem/source-system|PIR

Example:

GET [base]/Patient?identifier=https://fhir.infoway-inforoute.ca/NamingSystem/ca-bc-patient-healthcare-id|9872728523&_tag=http://phsa.ca/fhir/lra/CodeSystem/source-system|PIR

Search by Reverse-Include Immunization Context Resources

After locating the correct Patient, the system SHALL support retrieving immunization-related resources using the _revinclude parameter via the Patient search.

The following reverse-include relationships SHALL be supported:

FHIR Resource Reverse Include Parameter General Description
AdverseEvent AdverseEvent:subject Safety / AEFI events
CarePlan CarePlan:subject Special considerations (includes contained Condition)
Consent Consent:patient Immunization consent information
Condition Not returned via _revinclude Conditions are represented as contained resources within CarePlan
Immunization Immunization:patient Vaccine doses
ImmunizationRecommendation ImmunizationRecommendation:patient Forecasts, including due / overdue recommendations
MedicationRequest MedicationRequest:subject Temporary contraindications
RiskAssessment RiskAssessment:subject Clinical risks affecting immunization

The Unified Immunization Query example below shows only the reverse-included resources that are fully supported in the current release. Additional related resources, such as Location and Organization, may be enabled in a future release once their references are populated.

Unified Immunization Query

The system SHALL support retrieving the immunization longitudinal record using a Patient BC PHN.

GET [baseURL]/fhir/Patient?identifier={system|}[code]&_tag=http://phsa.ca/fhir/lra/CodeSystem/source-system|PIR&_revinclude=Immunization:patient&_revinclude=ImmunizationRecommendation:patient&_revinclude=AdverseEvent:subject&_revinclude=MedicationRequest:subject&_revinclude=RiskAssessment:subject&_revinclude=CarePlan:subject&_revinclude=Consent:patient

This query returns the Patient and all currently supported reverse-included immunization context resources associated with that patient within the PIR source domain.

ImmunizationRecommendation (Forecasts) by Last Updated

The system SHALL support retrieving ImmunizationRecommendation resources by _tag and _lastUpdated using a specific date/time.

_lastUpdated may be used with a single lower-bound timestamp for incremental retrieval, or with both lower-bound and upper-bound timestamps to define a time window.

Example: Incremental retrieval from a specific timestamp

GET [baseURL]/fhir/ImmunizationRecommendation?_lastUpdated=ge2026-02-25T00:00:00Z&_tag=http://phsa.ca/fhir/lra/CodeSystem/source-system|PIR

This query supports incremental retrieval of immunization forecast records that have been created or updated on or after the specified timestamp.

Example: Retrieval within a 1-hour window

GET [baseURL]/fhir/ImmunizationRecommendation?_lastUpdated=ge2026-03-08T06:09:34.084Z&_lastUpdated=lt2026-03-08T07:09:34.084Z&_tag=http://phsa.ca/fhir/lra/CodeSystem/source-system|PIR

This query retrieves ImmunizationRecommendation resources tagged with the source system PIR that were last updated within the specified 1-hour window.

  • _lastUpdated=ge2026-03-08T06:09:34.084Z
    Retrieves ImmunizationRecommendation resources last updated on or after 2026-03-08T06:09:34.084Z.

  • _lastUpdated=lt2026-03-08T07:09:34.084Z
    Retrieves ImmunizationRecommendation resources last updated before 2026-03-08T07:09:34.084Z.


Important Links

Simplifier Project Page: BCY Immunization Distribution Service

Example Usage Scenarios

Example Bundle: Example Bundle - Immunization

Profiles Content

The Panorama Immunization Registry (PIR) sends an immunization bundle whenever a patient's immunization data is updated or changed. This bundle represents the current view of the patient’s immunization status, and while it may include resources that are identical to those in previous bundles, it provides a complete replacement of the prior data for the patient.

The structure of the Immunization bundle includes the following resources:

  • MessageHeader 1..1
  • Patient 1..1
  • Organization 1..*
  • Location 1..*
  • Immunization 1..*
  • AdverseEvent 0..*
  • Consent 0..*
  • ImmunizationRecommendation 0..*
  • RiskAssessment 0..*
  • MedicationRequest 0..*
  • CarePlan 0..*

All resources within the Immunization bundle conform to PIR-defined profiles, which are based on HL7 FHIR R4 (4.0.1). Some resources, such as Consent and CarePlan, may include contained resources. In such cases, the outer resource, along with all contained resources, should be stored as a single resource.

  • MessageHeader

    The MessageHeader resource captures key metadata about the immunization bundle, including details about the source and the destination for the message. This resource helps to understand the context of the immunization data exchange and not stored in the Smile CDR.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)Fixed Value
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    extensionC0..*Extension
    modifierExtension?! C0..*Extension
    eventUriuri
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    nameΣ1..1string
    id0..0string
    extensionC0..*Extension
    referenceΣ C0..0string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    endpointΣ1..1url
    receiverΣ C0..1Reference(Organization | Practitioner | PractitionerRole)
    senderΣ C0..1Reference(Organization | Practitioner | PractitionerRole)
    entererΣ C0..1Reference(Practitioner | PractitionerRole)
    authorΣ C0..1Reference(Practitioner | PractitionerRole)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    nameΣ1..1stringFixed Value
    softwareΣ0..1string
    versionΣ0..1string
    contactΣ C0..1ContactPoint
    endpointΣ1..1url
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    id0..0string
    extensionC0..*Extension
    codingΣ0..0Coding
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    identifierΣ1..1id
    codeΣ1..1codeBinding
    detailsΣ C0..1Reference(OperationOutcome)
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    definitionΣ0..1canonical(MessageDefinition)
  • Patient

    The Patient resource contains demographic information about the individual receiving immunization services. This includes essential details such as name, date of birth, and identifiers. The Patient data is retrieved as part of the immunization bundle and reflects the current status of the patient at the time of immunization.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    genderIdentityExtensionC0..1Extension(CodeableConcept)
    clientWarningExtensionC0..*Extension(Complex)
    inactiveClientReasonExtensionC0..1Extension(CodeableConcept)
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ0..1uriFixed Value
    versionΣ0..1string
    codeΣ0..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    activeΣ ?!1..1boolean
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    textΣ0..1string
    familyΣ1..1string
    givenΣ1..*string
    prefixΣ0..1string
    suffixΣ0..1string
    periodΣ C0..1Period
    id0..0string
    extensionC0..*Extension
    systemΣ C0..1codeBinding
    valueΣ0..1string
    useΣ ?!0..1codeBinding
    rankΣ0..0positiveInt
    id0..0string
    extensionC0..*Extension
    startΣ C0..1dateTime
    endΣ C0..1dateTime
    id0..0string
    extensionC0..*Extension
    value0..1System.String
    birthDateΣ1..1date
    deceasedBooleanboolean
    deceasedDateTimedateTime
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    typeΣ0..1codeBinding
    textΣ0..1string
    id0..1string
    _lineC0..1Extension(string)
    value0..1System.String
    cityΣ0..1string
    districtΣ0..1string
    stateΣ0..1string
    postalCodeΣ0..1string
    countryΣ0..1string
    periodΣ C0..1Period
    maritalStatus0..1CodeableConceptBinding
    multipleBirthBooleanboolean
    multipleBirthIntegerinteger
    photoC0..1Attachment
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    relationship0..*CodeableConceptBinding
    name0..1HumanName
    telecomC0..*ContactPoint
    address0..1Address
    gender0..1codeBinding
    organizationC0..1Reference(Organization)
    periodC0..1Period
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    language1..1CodeableConceptBinding
    preferred0..1boolean
    generalPractitionerC0..1Reference(Organization | Practitioner | PractitionerRole)
    managingOrganizationΣ C0..1Reference(Organization)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..0string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    typeΣ1..1codeBinding
  • Organization

    The Organization resource represents the health facility or institution associated with the immunization data. This resource is crucial for identifying which organization is responsible for providing immunization services and managing the immunization data.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..0CodingBinding
    tagΣ0..0Coding
    implicitRulesΣ ?!0..0uri
    language0..0codeBinding
    text0..0Narrative
    contained0..0Resource
    extensionC0..*Extension
    modifierExtension?! C0..*Extension
    id0..0string
    extensionC0..*Extension
    useΣ ?!0..0codeBinding
    typeΣ0..0CodeableConceptBinding
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..0Period
    assignerΣ C0..0Reference(Organization)
    activeΣ ?!0..0boolean
    typeΣ0..0CodeableConcept
    nameΣ C1..1string
    alias0..0string
    telecomC0..0ContactPoint
    addressC0..0Address
    partOfΣ C0..0Reference(Organization)
    endpointC0..0Reference(Endpoint)
  • Location

    The Location resource identifies the physical site where immunizations were administered. This resource helps to associate the immunization event with a specific place, which is essential for tracking the location of immunization delivery.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    extensionC0..*Extension
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    typeΣ0..1CodeableConceptBinding
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    statusΣ ?!0..1codeBinding
    operationalStatusΣ0..1CodingBinding
    nameΣ0..1string
    alias0..1string
    descriptionΣ0..1string
    modeΣ0..1codeBinding
    typeΣ0..1CodeableConceptBinding
    telecomC0..1ContactPoint
    address0..1Address
    physicalTypeΣ0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    longitude1..1decimal
    latitude1..1decimal
    altitude0..1decimal
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBindingFixed Value
    identifierΣ0..1Identifier
    displayΣ0..1string
    id1..1string
    extensionC0..*Extension
    referenceΣ C0..1string
    typeΣ0..1uriBindingFixed Value
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    typeΣ0..1CodeableConceptBinding
    systemΣ0..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    displayΣ0..1string
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    daysOfWeek0..*codeBinding
    allDay0..1boolean
    openingTime0..1time
    closingTime0..1time
    availabilityExceptions0..1string
    endpointC0..1Reference(Endpoint)
  • Immunization

    The Immunization resource records the immunization event, including the vaccine administered, the patient receiving the immunization, and other pertinent details such as lot number and expiration date. It represents both current and historical immunization data, providing a complete record of a patient’s immunization history. This data is essential for tracking the vaccines received by a patient over time, supporting clinical decision-making, and ensuring compliance with immunization schedules. The patient and location references are mapped to corresponding records stored as part of the immunization bundle.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    antigenDoseC0..*Extension(Complex)
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..0string
    extensionC0..*Extension
    codingΣ0..0Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    statusΣ ?!1..1codeBinding
    statusReason0..1CodeableConcept
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ0..1uri
    versionΣ0..1string
    codeΣ0..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..0boolean
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..0boolean
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..0boolean
    textΣ0..1string
    id0..0string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    encounterC0..1Reference(Encounter)
    id0..1string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueBooleanboolean
    value0..1System.DateTime
    recorded0..1dateTime
    primarySourceΣ0..1boolean
    reportOrigin0..1CodeableConcept
    id0..0string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    manufacturerC0..1Reference(Organization)
    lotNumber0..1string
    expirationDate0..1date
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ0..1uri
    versionΣ0..0string
    codeΣ0..1code
    displayΣ0..1string
    userSelectedΣ0..0boolean
    textΣ0..0string
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ0..1uri
    versionΣ0..0string
    codeΣ0..1code
    displayΣ0..1string
    userSelectedΣ0..0boolean
    textΣ0..0string
    id0..0string
    extensionC0..*Extension
    valueΣ0..1decimal
    comparatorΣ ?!0..0codeBinding
    unitΣ0..1string
    systemΣ C0..0uri
    codeΣ0..0code
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    functionΣ0..1CodeableConceptBinding
    id0..1string
    extensionC0..*Extension
    referenceΣ C0..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    id0..1string
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    authorReferenceReference(Organization | Patient | Practitioner | RelatedPerson)
    authorStringstring
    timeΣ0..1dateTime
    textΣ1..1markdown
    reasonCode0..1CodeableConcept
    reasonReferenceC0..1Reference(Condition | DiagnosticReport | Observation)
    isSubpotentΣ ?!0..1boolean
    id0..1string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    documentType0..1string
    reference0..1uri
    publicationDate0..1dateTime
    presentationDate0..1dateTime
    programEligibility0..1CodeableConcept
    fundingSource0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    date0..1dateTime
    detailC0..1Reference(Observation)
    reported0..1boolean
    id0..0string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    series0..0string
    authorityC0..0Reference(Organization)
    targetDisease0..0CodeableConcept
    id0..1string
    _doseNumberC0..1Extension(Complex)
    value0..1System.String
  • AdverseEvent

    The AdverseEvent resource captures any adverse reactions reported following an immunization. This resource includes details such as the severity of the event, the patient affected, and the suspected cause. The event data helps to monitor vaccine safety and patient outcomes.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    id0..0string
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueAnnotationAnnotation
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueDateTimedateTime
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    id0..1string
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    value0..1System.String
    url1..1uriFixed Value
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..0string
    extensionC0..*Extension
    useΣ ?!0..0codeBinding
    id0..0string
    extensionC0..*Extension
    codingΣ0..0Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..0Period
    assignerΣ C0..0Reference(Organization)
    id0..1string
    id0..0string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..0boolean
    textΣ0..0string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    url1..1uriFixed Value
    value0..1System.String
    categoryΣ0..1CodeableConceptBinding
    eventΣ0..1CodeableConcept
    id0..0string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    encounterΣ C0..1Reference(Encounter)
    dateΣ0..1dateTime
    detectedΣ0..1dateTime
    recordedDateΣ1..1dateTime
    resultingConditionΣ C0..1Reference(Condition)
    locationΣ C0..1Reference(Location)
    seriousnessΣ0..1CodeableConcept
    severityΣ0..1CodeableConceptBinding
    outcomeΣ0..1CodeableConceptBinding
    recorderΣ C0..1Reference(Patient | Practitioner | PractitionerRole | RelatedPerson)
    contributorΣ C0..1Reference(Device | Practitioner | PractitionerRole)
    id0..0string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..0string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    subjectMedicalHistoryΣ C0..1Reference(AllergyIntolerance | Condition | DocumentReference | FamilyMemberHistory | Immunization | Media | Observation | Procedure)
    referenceDocumentΣ C0..1Reference(DocumentReference)
    studyΣ C0..1Reference(ResearchStudy)
  • Consent

    The Consent resource documents the patient's agreement or dissent for specific immunization-related activities. This resource may include other contained resources, such as references to the patient or related persons involved in the consent process. Consent data ensures compliance with regulatory and patient-specific preferences.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained1..*PractitionerConsentGivenTo, RelatedPerson
    id0..1string
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..0Extension
    url1..1uriFixed Value
    id0..0string
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    timeΣ0..1dateTime
    textΣ1..1markdown
    url1..1uriFixed Value
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..1string
    extensionC0..*Extension
    codingΣ0..1Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    statusΣ ?!1..1codeBinding
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    dateTimeΣ0..1dateTime
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    organizationΣ C0..1Reference(Organization)
    sourceAttachmentAttachment
    sourceReferenceReference(Consent | Contract | DocumentReference | QuestionnaireResponse)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    authorityC0..1uri
    uriC0..1uri
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    verifiedΣ1..1boolean
    verifiedWithC0..1Reference(Patient | RelatedPerson)
    verificationDate0..1dateTime
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    typeΣ0..1codeBinding
    id0..1string
    extensionC0..*Extension
    startΣ C1..1dateTime
    endΣ C0..1dateTime
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    securityLabelΣ0..1CodingBinding
    purposeΣ0..1CodingBinding
    classΣ0..1CodingBinding
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    dataPeriodΣ C0..1Period
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    meaningΣ1..1codeBinding
    referenceΣ C1..1Reference(Resource)
    provision0..1see (provision)
  • ImmunizationRecommendation

    The ImmunizationRecommendation resource provides guidance on future immunizations, based on the patient’s current immunization history. It helps inform the healthcare provider or system about what immunizations may be due or overdue, providing a forecast for continued vaccination care.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..0string
    extensionC0..*Extension
    codingΣ0..0Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    dateΣ1..1dateTime
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    id0..1string
    forecastedDoseVolumeExtensionC0..1Extension(Quantity)
    forecastMoreInfoEDSExtensionC0..1Extension(CodeableConcept)
    forecastMoreInfoLOAExtensionC0..1Extension(CodeableConcept)
    modifierExtensionΣ ?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ0..1uri
    versionΣ0..1string
    codeΣ0..1code
    displayΣ0..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..0boolean
    textΣ0..0string
    contraindicatedVaccineCodeΣ0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ0..1string
    userSelectedΣ0..0boolean
    textΣ0..1string
    forecastReasonΣ0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..0string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..0boolean
    textΣ1..1string
    value1..1dateTime
    description1..1string
    series0..1string
    doseNumberStringstring
    seriesDosesPositiveIntpositiveInt
    seriesDosesStringstring
    supportingImmunizationC0..1Reference(Immunization | ImmunizationEvaluation)
    supportingPatientInformationC0..1Reference(Resource)
  • RiskAssessment

    The RiskAssessment resource evaluates the potential risk factors that may affect the patient's immunization needs or outcomes. These assessments are tied to the patient's clinical history and are used to guide immunization decision-making based on identified risks.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    id0..1string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    url1..1uriFixed Value
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..1string
    extensionC0..*Extension
    codingΣ0..1Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    basedOnC0..1Reference(Resource)
    parentC0..1Reference(Resource)
    statusΣ1..1codeBinding
    methodΣ0..1CodeableConcept
    codeΣ0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    encounterΣ C0..1Reference(Encounter)
    id0..0string
    extensionC0..*Extension
    value0..1System.DateTime
    conditionΣ C0..1Reference(Condition)
    performerΣ C0..1Reference(Device | Practitioner | PractitionerRole)
    reasonCode0..1CodeableConcept
    reasonReferenceC0..1Reference(Condition | DiagnosticReport | DocumentReference | Observation)
    basisC0..1Reference(Resource)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    probabilityDecimaldecimal
    probabilityRangeRange
    qualitativeRisk0..1CodeableConcept
    relativeRisk0..1decimal
    id0..1string
    extensionC0..*Extension
    startΣ C0..1dateTime
    endΣ C0..1dateTime
    rationale1..1string
    mitigation0..1string
    id0..0string
    extensionC0..0Extension
    timeΣ0..1dateTime
    textΣ1..1markdown
  • MedicationRequest

    The MedicationRequest resource is used for deferrals of immunization due to various reasons such as medical contraindications or other factors. The resource includes the deferral reason and the time frame during which the immunization is deferred, aiding healthcare providers in managing patient-specific immunization schedules.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    contained0..1Resource
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..1string
    extensionC0..*Extension
    codingΣ0..0Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    id0..1string
    id0..0string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    url1..1uriFixed Value
    value0..1System.String
    id0..1string
    extensionC0..*Extension
    id0..0string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..0string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..0boolean
    textΣ0..1string
    intentΣ ?!1..1codeBinding
    category0..1CodeableConcept
    priorityΣ0..1codeBinding
    doNotPerformΣ ?!1..1boolean
    reportedBooleanboolean
    reportedReferenceReference(Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..0string
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    encounterC0..1Reference(Encounter)
    supportingInformationC0..1Reference(Resource)
    authoredOnΣ0..1dateTime
    requesterΣ C0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    performerC0..1Reference(CareTeam | Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    performerTypeΣ0..1CodeableConcept
    recorderC0..1Reference(Practitioner | PractitionerRole)
    reasonCode0..1CodeableConcept
    reasonReferenceC0..1Reference(Condition | Observation)
    instantiatesCanonicalΣ0..1canonical
    instantiatesUriΣ0..1uri
    basedOnΣ C0..1Reference(CarePlan | ImmunizationRecommendation | MedicationRequest | ServiceRequest)
    groupIdentifierΣ0..1Identifier
    courseOfTherapyType0..1CodeableConcept
    insuranceC0..1Reference(ClaimResponse | Coverage)
    id0..0string
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    timeΣ0..1dateTime
    textΣ1..1markdown
    dosageInstruction0..1Dosage
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    quantityC0..1SimpleQuantity
    durationC0..1Duration
    dispenseIntervalC0..1Duration
    id0..1string
    extensionC0..*Extension
    startΣ C1..1dateTime
    endΣ C0..1dateTime
    numberOfRepeatsAllowed0..1unsignedInt
    quantityC0..1SimpleQuantity
    expectedSupplyDurationC0..1Duration
    performerC0..1Reference(Organization)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    allowedBooleanboolean
    allowedCodeableConceptCodeableConcept
    reason0..1CodeableConcept
    priorPrescriptionC0..1Reference(MedicationRequest)
    detectedIssueC0..1Reference(DetectedIssue)
    eventHistoryC0..1Reference(Provenance)
  • CarePlan

    The CarePlan resource provides an outline of special considerations related to immunizations, including any medical conditions or factors that may influence immunization decisions. It includes references to relevant conditions and helps providers tailor care plans according to patient needs.

    idΣ1..1id
    id0..1string
    extensionC0..*Extension
    versionIdΣ0..1id
    lastUpdatedΣ0..1instant
    sourceΣ0..1uri
    profileΣ1..1canonical(StructureDefinition)
    securityΣ0..1CodingBinding
    tagΣ0..1Coding
    implicitRulesΣ ?!0..1uri
    language0..1codeBinding
    text0..1Narrative
    containedC1..1Condition
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    modifierExtension?! C0..*Extension
    id0..1string
    extensionC0..*Extension
    useΣ ?!0..1codeBinding
    id0..1string
    extensionC0..*Extension
    codingΣ0..1Coding
    textΣ1..1string
    systemΣ1..1uri
    valueΣ1..1string
    periodΣ C0..1Period
    assignerΣ C0..1Reference(Organization)
    instantiatesCanonicalΣ0..1canonical(ActivityDefinition | Measure | OperationDefinition | PlanDefinition | Questionnaire)
    instantiatesUriΣ0..1uri
    basedOnΣ C0..1Reference(CarePlan)
    replacesΣ C0..1Reference(CarePlan)
    partOfΣ C0..1Reference(CarePlan)
    id0..1string
    id0..0string
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    id0..0string
    extensionC0..*Extension
    url1..1uriFixed Value
    valueStringstring
    url1..1uriFixed Value
    value0..1System.String
    intentΣ ?!1..1codeBinding
    categoryΣ0..1CodeableConcept
    titleΣ0..1string
    descriptionΣ0..1string
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    encounterΣ C0..1Reference(Encounter)
    id0..0string
    extensionC0..*Extension
    startΣ C1..1dateTime
    endΣ C0..1dateTime
    createdΣ0..1dateTime
    authorΣ C0..1Reference(CareTeam | Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    contributorC0..1Reference(CareTeam | Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    careTeamC0..1Reference(CareTeam)
    addressesΣ C0..1Reference(Condition)
    supportingInfoC0..1Reference(Resource)
    goalC0..1Reference(Goal)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    outcomeCodeableConcept0..1CodeableConcept
    outcomeReferenceC0..1Reference(Resource)
    progress0..1Annotation
    referenceC0..1Reference(Appointment | CommunicationRequest | DeviceRequest | MedicationRequest | NutritionOrder | RequestGroup | ServiceRequest | Task | VisionPrescription)
    id0..1string
    extensionC0..*Extension
    modifierExtensionΣ ?! C0..*Extension
    kind0..1codeBinding
    instantiatesCanonical0..1canonical(ActivityDefinition | Measure | OperationDefinition | PlanDefinition | Questionnaire)
    instantiatesUri0..1uri
    code0..1CodeableConcept
    reasonCode0..1CodeableConcept
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..1uriBinding
    identifierΣ0..1Identifier
    displayΣ0..1string
    goalC0..1Reference(Goal)
    status?!1..1codeBinding
    statusReason0..1CodeableConcept
    doNotPerform?!0..1boolean
    scheduledPeriodPeriod
    scheduledStringstring
    scheduledTimingTiming
    id0..1string
    extensionC0..*Extension
    referenceΣ C1..1string
    typeΣ0..0uriBinding
    identifierΣ0..0Identifier
    displayΣ0..0string
    performerC0..1Reference(CareTeam | Device | HealthcareService | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
    id0..1string
    extensionC0..*Extension
    id0..1string
    extensionC0..*Extension
    systemΣ1..1uri
    versionΣ0..1string
    codeΣ1..1code
    displayΣ1..1string
    userSelectedΣ0..1boolean
    textΣ0..1string
    dailyAmountC0..1SimpleQuantity
    quantityC0..1SimpleQuantity
    description0..1string
    id0..0string
    pIRIdentifierExtensionC1..1Extension(string)
    pIRLockSeqNumberExtensionC1..1Extension(integer)
    timeΣ0..1dateTime
    textΣ1..1markdown