Indivo Data Model: Procedure

Model Definition

As SDML:

{
    "__modelname__": "Procedure",
    "date": "Date",
    "name": "String",
    "name_type": "String",
    "name_value": "String",
    "name_abbrev": "String",
    "provider_name": "String",
    "provider_institution": "String",
    "location": "String",
    "comments": "String"
}

As a Django Model Class:

from django.db import models

from indivo.fields import CodedValueField, ProviderField
from indivo.models import Fact

class Procedure(Fact):
    date = models.DateTimeField(null=True)
    notes = models.TextField(null=True)
    name = CodedValueField()
    status = CodedValueField(null=True)
    provider = ProviderField(null=True)
    

Examples

As SDMJ:

{
    "__modelname__": "Procedure",
    "date": "2011-02-15T12:00:00Z",
    "notes": "Went great!",
    "name_title": "Appendectomy",
    "name_code_title": "Appendectomy",
    "name_code_system": "http://purl.bioontology.org/ontology/SNOMEDCT/",
    "name_code_identifier": "80146002",
    "status_code_title": "Complete",
    "status_code_system": "http://purl.bioontology.org/ontology/SNOMEDCT/",
    "status_code_identifier": "385658003",
    "provider_dea_number": "325555555",
    "provider_npi_number": "5235235",
    "provider_email": "joshua.mandel@fake.emailserver.com",
    "provider_name_given": "Josuha",
    "provider_name_family": "Mandel",
    "provider_tel_1_type": "w",
    "provider_tel_1_number": "1-235-947-3452",
    "provider_tel_1_preferred_p": True,
}

As SDMX:

<Models>
        <Model name="Procedure">
                <Field name="date">2011-02-15T12:00:00Z</Field>
            <Field name="notes">Went great!</Field>
            <Field name="name_title">Appendectomy</Field>
            <Field name="name_code_title">Appendectomy</Field>
            <Field name="name_code_system">http://purl.bioontology.org/ontology/SNOMEDCT/</Field>
            <Field name="name_code_identifier">80146002</Field>
            <Field name="status_code_title">Complete</Field>
            <Field name="status_code_system">http://purl.bioontology.org/ontology/SNOMEDCT/</Field>
            <Field name="status_code_identifier">385658003</Field>
            <Field name="provider_dea_number">325555555</Field>
            <Field name="provider_npi_number">5235235</Field>
            <Field name="provider_email">joshua.mandel@fake.emailserver.com</Field>
            <Field name="provider_name_given">Josuha</Field>
            <Field name="provider_name_family">Mandel</Field>
            <Field name="provider_tel_1_type">w</Field>
            <Field name="provider_tel_1_number">1-235-947-3452</Field>
            <Field name="provider_tel_1_preferred_p">True</Field>
        </Model>
</Models>

As a Fact object:

from indivo.models import Procedure
from indivo.lib.iso8601 import parse_iso8601_datetime as date

procedure_fact = Procedure(
    date=date("2011-02-15T12:00:00Z"),
    notes="Went great!",
    name_title="Appendectomy",
    name_code_title="Appendectomy",
    name_code_system="http://purl.bioontology.org/ontology/SNOMEDCT/",
    name_code_identifier="80146002",
    status_code_title="Complete",
    status_code_system="http://purl.bioontology.org/ontology/SNOMEDCT/",
    status_code_identifier="385658003",
    provider_dea_number="325555555",
    provider_npi_number="5235235",
    provider_email="joshua.mandel@fake.emailserver.com",
    provider_name_given="Josuha",
    provider_name_family="Mandel",
    provider_tel_1_type="w",
    provider_tel_1_number="1-235-555-55555",
    provider_tel_1_preferred_p=True,
    )