{
  "resourceType": "StructureDefinition",
  "id": "immunization-ca-core",
  "extension": [
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger": 2
    }
  ],
  "url": "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/immunization-ca-core",
  "version": "1.1.0",
  "name": "ImmunizationCACore",
  "title": "Immunization (CA-Core)",
  "status": "active",
  "experimental": false,
  "date": "2025-03-06",
  "publisher": "Canada Health Infoway",
  "contact": [
    {
      "name": "National Standards Release Centre",
      "telecom": [
        {
          "system": "url",
          "value": "http://www.infoway-inforoute.ca"
        },
        {
          "system": "email",
          "value": "standards@infoway-inforoute.ca"
        }
      ]
    }
  ],
  "description": "This profile applies constraints to the Immunization resource for CA Core+ to support documentation of administered vaccines in the pan-Canadian context.",
  "jurisdiction": [
    {
      "coding": [
        {
          "code": "CA",
          "system": "urn:iso:std:iso:3166"
        }
      ]
    }
  ],
  "copyright": "Copyright © 2025+ Canada Health Infoway. All rights reserved. [Terms of Use and License Agreements](https://ic.infoway-inforoute.ca/en/about/tou). [Privacy Policy](https://www.infoway-inforoute.ca/en/legal/privacy-policy).",
  "fhirVersion": "4.0.1",
  "mapping": [
    {
      "identity": "CACDI",
      "name": "Canadian Core Data for Interoperability (CACDI)",
      "comment": "Mapping for ImmunizationCACore to  Canadian Core Data for Interoperability (CACDI)."
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Immunization",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Immunization",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Immunization",
        "path": "Immunization",
        "constraint": [
          {
            "key": "ca-core-im-1",
            "human": "Immunization records created during an encounter event are expected to have occurrence populated. Occurrence SHALL be present if the primarySource is 'true'",
            "source": "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/immunization-ca-core",
            "severity": "warning",
            "expression": "Immunization.primarySource = true implies Immunization.occurrence.exists()"
          }
        ]
      },
      {
        "id": "Immunization.vaccineCode",
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/obligation",
            "extension": [
              {
                "url": "code",
                "valueCode": "MAY:populate-if-known"
              },
              {
                "url": "actor",
                "valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
              }
            ]
          },
          {
            "extension": [
              {
                "url": "code",
                "valueCode": "SHALL:no-error"
              },
              {
                "url": "actor",
                "valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
              }
            ],
            "url": "http://hl7.org/fhir/StructureDefinition/obligation"
          }
        ],
        "path": "Immunization.vaccineCode",
        "comment": "The additionalBinding extension will be used to express the valueSet for additional negation/exclusion codes for reporting the known absence of immunizations. At the time of this release, the publisher of the current ValueSet for absence codes (IPS) is developing a SNOMED ValueSet that will replace the current http://hl7.org/fhir/uv/ips/ValueSet/absent-or-unknown-immunizations-uv-ips",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/codeableconcept-ca-core"
            ]
          }
        ],
        "binding": {
          "strength": "preferred",
          "valueSet": "https://fhir.infoway-inforoute.ca/ValueSet/vaccineadministeredtradenamecode",
          "extension": [
            {
              "url": "http://hl7.org/fhir/tools/StructureDefinition/additional-binding",
              "extension": [
                {
                  "url": "purpose",
                  "valueCode": "preferred"
                },
                {
                  "url": "valueSet",
                  "valueCanonical": "https://fhir.infoway-inforoute.ca/ValueSet/vaccinehistoricalnamecode"
                },
                {
                  "url": "documentation",
                  "valueMarkdown": "Recommended for use when conveying vaccine generic names for scenarios when brand name is not known or does not exist (e.g., immunization history where provider does not have detail of the trade name, the product has been discontinued and/or never licensed in Canada)."
                }
              ]
            },
            {
              "extension": [
                {
                  "url": "purpose",
                  "valueCode": "preferred"
                },
                {
                  "url": "valueSet",
                  "valueCanonical": "https://fhir.infoway-inforoute.ca/ValueSet/passiveadministeredimmunizingagentcode"
                },
                {
                  "url": "documentation",
                  "valueMarkdown": "per pCHDCF: Alternate value sets can be used when passive immunization products are used"
                }
              ],
              "url": "http://hl7.org/fhir/tools/StructureDefinition/additional-binding"
            },
            {
              "extension": [
                {
                  "url": "purpose",
                  "valueCode": "preferred"
                },
                {
                  "url": "valueSet",
                  "valueCanonical": "https://fhir.infoway-inforoute.ca/ValueSet/passivehistoricalimmunizingagentcode"
                },
                {
                  "url": "documentation",
                  "valueMarkdown": "per pCHDCF: Alternate value sets can be used when passive immunization products are used"
                }
              ],
              "url": "http://hl7.org/fhir/tools/StructureDefinition/additional-binding"
            },
            {
              "extension": [
                {
                  "url": "purpose",
                  "valueCode": "candidate"
                },
                {
                  "url": "valueSet",
                  "valueCanonical": "http://hl7.org/fhir/uv/ips/ValueSet/absent-or-unknown-immunizations-uv-ips"
                },
                {
                  "url": "documentation",
                  "valueMarkdown": "Absent or unknown codes"
                }
              ],
              "url": "http://hl7.org/fhir/tools/StructureDefinition/additional-binding"
            }
          ]
        },
        "mapping": [
          {
            "identity": "CACDI",
            "map": "Immunization"
          }
        ]
      },
      {
        "id": "Immunization.patient",
        "path": "Immunization.patient",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/patient-ca-core"
            ]
          }
        ]
      },
      {
        "id": "Immunization.patient.reference",
        "path": "Immunization.patient.reference",
        "min": 1
      },
      {
        "id": "Immunization.occurrence[x]",
        "path": "Immunization.occurrence[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        }
      },
      {
        "id": "Immunization.occurrence[x]:occurrenceDateTime",
        "path": "Immunization.occurrence[x]",
        "sliceName": "occurrenceDateTime",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "dateTime"
          }
        ],
        "mapping": [
          {
            "identity": "CACDI",
            "map": "Immunization Date"
          },
          {
            "identity": "CACDI",
            "map": "Event Start Date and Time"
          },
          {
            "identity": "CACDI",
            "map": "Reported Clinical Information Date Time"
          }
        ]
      },
      {
        "id": "Immunization.occurrence[x]:occurrenceString",
        "path": "Immunization.occurrence[x]",
        "sliceName": "occurrenceString",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "string"
          }
        ],
        "mapping": [
          {
            "identity": "CACDI",
            "map": "Reported Clinical Information Date Time"
          }
        ]
      },
      {
        "id": "Immunization.reportOrigin",
        "path": "Immunization.reportOrigin",
        "mapping": [
          {
            "identity": "CACDI",
            "map": "Reported Clinical Information Source (Recommended)"
          }
        ]
      },
      {
        "id": "Immunization.location",
        "path": "Immunization.location",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/location-ca-core"
            ]
          }
        ]
      },
      {
        "id": "Immunization.lotNumber",
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/obligation",
            "extension": [
              {
                "url": "code",
                "valueCode": "MAY:populate-if-known"
              },
              {
                "url": "actor",
                "valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/producer"
              }
            ]
          },
          {
            "extension": [
              {
                "url": "code",
                "valueCode": "SHALL:no-error"
              },
              {
                "url": "actor",
                "valueCanonical": "http://fhir.infoway-inforoute.ca/ca-core/ActorDefinition/consumer"
              }
            ],
            "url": "http://hl7.org/fhir/StructureDefinition/obligation"
          }
        ],
        "path": "Immunization.lotNumber",
        "mapping": [
          {
            "identity": "CACDI",
            "map": "Immunization Lot Number"
          }
        ]
      },
      {
        "id": "Immunization.performer.actor",
        "path": "Immunization.performer.actor",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitioner-ca-core",
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/practitionerRole-ca-core",
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/organization-ca-core"
            ]
          }
        ]
      },
      {
        "id": "Immunization.reasonReference",
        "path": "Immunization.reasonReference",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "http://fhir.infoway-inforoute.ca/cacore/StructureDefinition/condition-ca-core",
              "http://hl7.org/fhir/StructureDefinition/Observation",
              "http://hl7.org/fhir/StructureDefinition/DiagnosticReport"
            ]
          }
        ]
      }
    ]
  }
}