{
  "resourceType": "StructureDefinition",
  "id": "profile-immunization",
  "url": "https://fhir.synapxe.sg/StructureDefinition/profile-immunization",
  "name": "Immunization",
  "title": "Immunization Profile",
  "status": "active",
  "publisher": "Synapxe",
  "description": "This resource will be used to store details of 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.",
  "fhirVersion": "5.0.0",
  "kind": "resource",
  "abstract": false,
  "type": "Immunization",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Immunization",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Immunization.extension:wasNotGiven",
        "path": "Immunization.extension",
        "sliceName": "wasNotGiven",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-wasNotGiven"
            ]
          }
        ]
      },
      {
        "id": "Immunization.extension:reported",
        "path": "Immunization.extension",
        "sliceName": "reported",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-reported"
            ]
          }
        ]
      },
      {
        "id": "Immunization.extension:derived",
        "path": "Immunization.extension",
        "sliceName": "derived",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-derived"
            ]
          }
        ]
      },
      {
        "id": "Immunization.extension:materialNumber",
        "path": "Immunization.extension",
        "sliceName": "materialNumber",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-materialNumber"
            ]
          }
        ]
      },
      {
        "id": "Immunization.extension:productName",
        "path": "Immunization.extension",
        "sliceName": "productName",
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-productName"
            ]
          }
        ]
      },
      {
        "id": "Immunization.identifier",
        "path": "Immunization.identifier",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Identifier",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-identifier"
            ]
          }
        ]
      },
      {
        "id": "Immunization.basedOn",
        "path": "Immunization.basedOn",
        "max": "0"
      },
      {
        "id": "Immunization.statusReason",
        "path": "Immunization.statusReason",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.statusReason.extension",
        "path": "Immunization.statusReason.extension",
        "max": "0"
      },
      {
        "id": "Immunization.vaccineCode",
        "path": "Immunization.vaccineCode",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.vaccineCode.extension",
        "path": "Immunization.vaccineCode.extension",
        "max": "0"
      },
      {
        "id": "Immunization.administeredProduct",
        "path": "Immunization.administeredProduct",
        "max": "0"
      },
      {
        "id": "Immunization.manufacturer",
        "path": "Immunization.manufacturer",
        "type": [
          {
            "code": "CodeableReference",
            "targetProfile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-organization"
            ]
          }
        ]
      },
      {
        "id": "Immunization.patient",
        "path": "Immunization.patient",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-reference-patient"
            ],
            "targetProfile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-patient"
            ]
          }
        ]
      },
      {
        "id": "Immunization.encounter",
        "path": "Immunization.encounter",
        "max": "0"
      },
      {
        "id": "Immunization.supportingInformation",
        "path": "Immunization.supportingInformation",
        "max": "0"
      },
      {
        "id": "Immunization.occurrence[x]",
        "path": "Immunization.occurrence[x]",
        "type": [
          {
            "code": "dateTime"
          }
        ]
      },
      {
        "id": "Immunization.informationSource",
        "path": "Immunization.informationSource",
        "max": "0"
      },
      {
        "id": "Immunization.location",
        "path": "Immunization.location",
        "max": "0"
      },
      {
        "id": "Immunization.site",
        "path": "Immunization.site",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.site.extension",
        "path": "Immunization.site.extension",
        "max": "0"
      },
      {
        "id": "Immunization.site.coding.version",
        "path": "Immunization.site.coding.version",
        "max": "0"
      },
      {
        "id": "Immunization.route",
        "path": "Immunization.route",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.route.extension",
        "path": "Immunization.route.extension",
        "max": "0"
      },
      {
        "id": "Immunization.route.coding.version",
        "path": "Immunization.route.coding.version",
        "max": "0"
      },
      {
        "id": "Immunization.doseQuantity.id",
        "path": "Immunization.doseQuantity.id",
        "max": "0"
      },
      {
        "id": "Immunization.doseQuantity.extension",
        "path": "Immunization.doseQuantity.extension",
        "max": "0"
      },
      {
        "id": "Immunization.doseQuantity.value",
        "path": "Immunization.doseQuantity.value",
        "min": 1
      },
      {
        "id": "Immunization.doseQuantity.unit",
        "path": "Immunization.doseQuantity.unit",
        "min": 1
      },
      {
        "id": "Immunization.doseQuantity.system",
        "path": "Immunization.doseQuantity.system",
        "min": 1
      },
      {
        "id": "Immunization.doseQuantity.code",
        "path": "Immunization.doseQuantity.code",
        "min": 1
      },
      {
        "id": "Immunization.performer.function",
        "path": "Immunization.performer.function",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.performer.actor",
        "path": "Immunization.performer.actor",
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-practitionerrole"
            ]
          }
        ]
      },
      {
        "id": "Immunization.performer.actor.type",
        "path": "Immunization.performer.actor.type",
        "max": "0"
      },
      {
        "id": "Immunization.performer.actor.identifier",
        "path": "Immunization.performer.actor.identifier",
        "max": "0"
      },
      {
        "id": "Immunization.performer.actor.display",
        "path": "Immunization.performer.actor.display",
        "max": "0"
      },
      {
        "id": "Immunization.note",
        "path": "Immunization.note",
        "max": "1",
        "type": [
          {
            "code": "Annotation",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-annotation"
            ]
          }
        ]
      },
      {
        "id": "Immunization.reason",
        "path": "Immunization.reason",
        "max": "1"
      },
      {
        "id": "Immunization.reason.id",
        "path": "Immunization.reason.id",
        "max": "0"
      },
      {
        "id": "Immunization.reason.extension",
        "path": "Immunization.reason.extension",
        "max": "0"
      },
      {
        "id": "Immunization.reason.concept",
        "path": "Immunization.reason.concept",
        "min": 1,
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.reason.concept.extension",
        "path": "Immunization.reason.concept.extension",
        "max": "0"
      },
      {
        "id": "Immunization.reason.reference",
        "path": "Immunization.reason.reference",
        "min": 1
      },
      {
        "id": "Immunization.isSubpotent",
        "path": "Immunization.isSubpotent",
        "max": "0"
      },
      {
        "id": "Immunization.subpotentReason",
        "path": "Immunization.subpotentReason",
        "max": "0"
      },
      {
        "id": "Immunization.programEligibility",
        "path": "Immunization.programEligibility",
        "max": "0"
      },
      {
        "id": "Immunization.fundingSource",
        "path": "Immunization.fundingSource",
        "max": "0"
      },
      {
        "id": "Immunization.reaction",
        "path": "Immunization.reaction",
        "max": "1"
      },
      {
        "id": "Immunization.reaction.id",
        "path": "Immunization.reaction.id",
        "max": "0"
      },
      {
        "id": "Immunization.reaction.extension",
        "path": "Immunization.reaction.extension",
        "max": "0"
      },
      {
        "id": "Immunization.reaction.modifierExtension",
        "path": "Immunization.reaction.modifierExtension",
        "max": "0"
      },
      {
        "id": "Immunization.reaction.date",
        "path": "Immunization.reaction.date",
        "min": 1
      },
      {
        "id": "Immunization.reaction.manifestation",
        "path": "Immunization.reaction.manifestation",
        "min": 1
      },
      {
        "id": "Immunization.reaction.manifestation.id",
        "path": "Immunization.reaction.manifestation.id",
        "max": "0"
      },
      {
        "id": "Immunization.reaction.manifestation.extension",
        "path": "Immunization.reaction.manifestation.extension",
        "max": "0"
      },
      {
        "id": "Immunization.reaction.manifestation.concept",
        "path": "Immunization.reaction.manifestation.concept",
        "type": [
          {
            "code": "CodeableConcept",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-codeableconcept"
            ]
          }
        ]
      },
      {
        "id": "Immunization.reaction.reported",
        "path": "Immunization.reaction.reported",
        "min": 1
      },
      {
        "id": "Immunization.protocolApplied.id",
        "path": "Immunization.protocolApplied.id",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.extension",
        "path": "Immunization.protocolApplied.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "ordered": false,
          "rules": "open"
        }
      },
      {
        "id": "Immunization.protocolApplied.extension:description",
        "path": "Immunization.protocolApplied.extension",
        "sliceName": "description",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-description"
            ]
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.extension:description.url",
        "path": "Immunization.protocolApplied.extension.url",
        "fixedUri": "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-description"
      },
      {
        "id": "Immunization.protocolApplied.extension:description.value[x]",
        "path": "Immunization.protocolApplied.extension.value[x]",
        "min": 1,
        "type": [
          {
            "code": "string"
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.extension:doseStatus",
        "path": "Immunization.protocolApplied.extension",
        "sliceName": "doseStatus",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-doseStatus"
            ]
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.extension:doseStatus.url",
        "path": "Immunization.protocolApplied.extension.url",
        "fixedUri": "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-doseStatus"
      },
      {
        "id": "Immunization.protocolApplied.extension:doseStatus.value[x]",
        "path": "Immunization.protocolApplied.extension.value[x]",
        "min": 1,
        "type": [
          {
            "code": "Coding"
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.extension:doseReason",
        "path": "Immunization.protocolApplied.extension",
        "sliceName": "doseReason",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-doseReason"
            ]
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.extension:doseReason.url",
        "path": "Immunization.protocolApplied.extension.url",
        "fixedUri": "https://fhir.synapxe.sg/StructureDefinition/ext-immunization-doseReason"
      },
      {
        "id": "Immunization.protocolApplied.extension:doseReason.value[x]",
        "path": "Immunization.protocolApplied.extension.value[x]",
        "min": 1,
        "type": [
          {
            "code": "Coding"
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.modifierExtension",
        "path": "Immunization.protocolApplied.modifierExtension",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.authority",
        "path": "Immunization.protocolApplied.authority",
        "type": [
          {
            "code": "Reference",
            "profile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-reference-organization"
            ],
            "targetProfile": [
              "https://fhir.synapxe.sg/StructureDefinition/profile-organization"
            ]
          }
        ]
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.id",
        "path": "Immunization.protocolApplied.targetDisease.id",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.extension",
        "path": "Immunization.protocolApplied.targetDisease.extension",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding",
        "path": "Immunization.protocolApplied.targetDisease.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.id",
        "path": "Immunization.protocolApplied.targetDisease.coding.id",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.extension",
        "path": "Immunization.protocolApplied.targetDisease.coding.extension",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.system",
        "path": "Immunization.protocolApplied.targetDisease.coding.system",
        "min": 1
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.code",
        "path": "Immunization.protocolApplied.targetDisease.coding.code",
        "min": 1
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.display",
        "path": "Immunization.protocolApplied.targetDisease.coding.display",
        "min": 1
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.coding.userSelected",
        "path": "Immunization.protocolApplied.targetDisease.coding.userSelected",
        "max": "0"
      },
      {
        "id": "Immunization.protocolApplied.targetDisease.text",
        "path": "Immunization.protocolApplied.targetDisease.text",
        "max": "0"
      }
    ]
  }
}