Indivo Data Model: Immunization

Model Definition

As SDML:

{
    "__modelname__": "Immunization",
    "date": "Date",
    "administration_status": "CodedValue",
    "product_class": "CodedValue",
    "product_class_2": "CodedValue",
    "product_name": "CodedValue",
    "refusal_reason": "CodedValue"
}

As a Django Model Class:

from indivo.models import Fact
from django.db import models
from indivo.fields import CodedValueField

class Immunization(Fact):
    date = models.DateTimeField(null=True)
    administration_status = CodedValueField()
    product_class = CodedValueField()
    product_class_2 = CodedValueField()
    product_name = CodedValueField()
    refusal_reason = CodedValueField()

Examples

As SDMJ:

{
    "__modelname__": "Immunization",
    "date": "2009-05-16T12:00:00Z",
    "administration_status_title": "Not Administered",
    "administration_status_system": "http://smartplatforms.org/terms/codes/ImmunizationAdministrationStatus#",
    "administration_status_identifier": "notAdministered", 
    "product_class_title": "TYPHOID",
    "product_class_system": "http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=vg#",
    "product_class_identifier": "TYPHOID",
    "product_name_title": "typhoid, oral",
    "product_name_system": "http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=cvx#",
    "product_name_identifier": "25",
    "refusal_reason_title": "Allergy to vaccine/vaccine components, or allergy to eggs",
    "refusal_reason_system": "http://smartplatforms.org/terms/codes/ImmunizationRefusalReason#",
    "refusal_reason_identifier": "allergy"
}

As SDMX:

<Models>
  <Model name="Immunization">
    <Field name="date">2009-05-16T12:00:00Z</Field>
    <Field name="administration_status_title">Not Administered</Field>
    <Field name="administration_status_system">http://smartplatforms.org/terms/codes/ImmunizationAdministrationStatus#</Field>
    <Field name="administration_status_identifier">notAdministered</Field> 
    <Field name="product_class_title">TYPHOID</Field>
    <Field name="product_class_system">http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=vg#</Field>
    <Field name="product_class_identifier">TYPHOID</Field>
    <Field name="product_name_title">typhoid, oral</Field>
    <Field name="product_name_system">http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=cvx#</Field>
    <Field name="product_name_identifier">25</Field>
    <Field name="refusal_reason_title">Allergy to vaccine/vaccine components, or allergy to eggs</Field>
    <Field name="refusal_reason_system">http://smartplatforms.org/terms/codes/ImmunizationRefusalReason#</Field>
    <Field name="refusal_reason_identifier">allergy</Field>
  </Model>
</Models>

As a Fact object:

from indivo.models import Immunization
from indivo.lib.iso8601 import parse_utc_date as date

immunization_fact = Immunization(
    date=date("2009-05-16T12:00:00Z"),
    administration_status_title="Not Administered",
    administration_status_system="http://smartplatforms.org/terms/codes/ImmunizationAdministrationStatus#",
    administration_status_identifier="notAdministered", 
    product_class_title="TYPHOID",
    product_class_system="http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=vg#",
    product_class_identifier="TYPHOID",
    product_name_title="typhoid, oral",
    product_name_system="http://www2a.cdc.gov/nip/IIS/IISStandards/vaccines.asp?rpt=cvx#",
    product_name_identifier="25",
    refusal_reason_title="Allergy to vaccine/vaccine components, or allergy to eggs",
    refusal_reason_system="http://smartplatforms.org/terms/codes/ImmunizationRefusalReason#",
    refusal_reason_identifier="allergy",
  )