Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

List of content:

Description:

The OpenIMIS Policy object (from the openimis-be-policy_py module) was mapped to the FHIR Coverage resource. 

Notes / Assumptions:

  • The endpoint uses the UUID as a primary key

FHIR resources:

Fields mapping:

Table legend:

ColorDescription

Mapped - the final choice, the most suitable choice

Need to be found the best place for the field (not mapped currently)

Currently not important - not mapped

Mapping:

OpenIMIS fieldDB typeFHIR fieldDescriptionNoteSTPHMapping status
PolicyIDPKIdentifier

Use only PolicyUUIDThis is the Database ID and should be used only internally
PolicyUUIDUniqueIdentifierIdentifierThe unique identifier used as PK for FHIR
Addedmapped
FamilyIDFK(tblFamilies)policyHolder

We use the policyHolder to represent the reference to the Patient (head of the family). The insurance code is used to point the appropriate Patient.

(was updated by SD) OKmapped
EnrollDatedateExtension
The FHIR representation doesn't contain this type of value. If needed we can consider adding the FHIR extension.Extension
StartDatedateperiod

OKmapped
EffectiveDatedateExtension
The FHIR representation doesn't contain this type of value. If needed we can consider adding the FHIR extension.Extension
ExpiryDatedateperiod

OKmapped
PolicyStatustinyintstatusDefault: 1
1 - Idle
2 - active
4 - suspended
8 - Expired
There are some differences between the Policy and FHIR statuses. List of FHIR coverage statuses:
1) active
2) cancelled
3) draft
4) entered-in-error
okmapped
PolicyValuedecimalcontract.valuedItem.net
The FHIR representation doesn't contain this type of value. If needed we can consider adding the FHIR extension.
contract.valuedItem.net

ProdIDFK(tblProduct)grouping
The FHIR representation doesn't contain exactly the same type of value. The coverage classifications can be contained in the "grouping" field and we can join it with a product using grouping.plan. See example: https://hl7.org/fhir/STU3/coverage-example.json.htmlI would suggest to check Contract entity => Coverage.contract 
OfficerIDFK(tblOfficer)contract.agent.actor
The FHIR representation doesn't contain this type of value. If needed we can consider adding the FHIR extension.
subscriber

PolicyStagechar(1)
Default: N
N - New Policy
R - Renewed Policy
The FHIR representation doesn't contain this type of value. If needed we can consider adding the FHIR extension.
Will be added after when the final approach will be established
ValidityFromdatetime
This information are valuable for OpenIMIS but I probably not required by external systems.



Internal field

ValidityTodatetime

LegacyIDint

AuditUserIDint

RowIDtimestamp

I'm not sure but this is probably some unique value used to distinguish database rows. Probably not useful for external systems.Internal field
isOfflineint

I'm not sure but this is probably used to determine the source of row (offline/online app). Probably information isn't valuable for external systems.Internal field

Note:

  • The contract field could be use to map the Insurance Products to the Policies

Endpoint specification:

Coverage endpoint

Example of endpoint URL:

http://localhost:8000/api_fhir/Coverage/

Supported HTTP operation:

  • READ - by default return list of all available resources. To fetch information about a specific object you should add the primary key to URL for instance:
    http://127.0.0.1:8000/api_fhir/Claim/{PolicyCode}
    , where "{PolicyCode}" is the value of the policy primary key. Should be used the GET HTTP method.
  • CREATE - the operation currently not supported
  • UPDATE - the operation currently not supported
  • DELETE - the operation currently not supported
default_audit_user_iddefault value which will be used for 'audit_user_id' field"default_audit_user_id": 1,
stu3_fhir_identifier_type_configconfiguration of system and codes used to represent the specific types of identifiers

"stu3_fhir_identifier_type_config":{
  "system":"https://hl7.org/fhir/valueset-identifier-type.html",
  "fhir_code_for_imis_db_id_type":"ACSN",
  "fhir_code_for_imis_chfid_type":"SB",
  "fhir_code_for_imis_passport_type":"PPN",
  "fhir_code_for_imis_facility_id_type":"FI",
  "fhir_code_for_imis_claim_admin_code_type":"FILL",
  "fhir_code_for_imis_claim_code_type":"MR",

},

stu3_fhir_issue_type_configconfiguration of system and codes used to represent the specific types of operation outcome"stu3_fhir_issue_type_config":{
  "fhir_code_for_exception":"exception",
  "fhir_code_for_not_found":"not-found",
  "fhir_code_for_informational":"informational"
},
stu3_fhir_claim_configconfiguration of system and codes used to represent the specific types of claim codes

"stu3_fhir_coverage_config": {
    "fhir_family_refereence_code": "FamilyReference",
    "fhir_status_idle_code": "Idle",
    "fhir_status_active_code": "active",
    "fhir_status_suspended_code": "suspended",
    "fhir_status_expired_code": "Expired",
    "fhir_item_code": "item",
    "fhir_service_code": "service",
    "fhir_practitioner_role_code": "Practitioner",
    "fhir_product_code": "Product"
    "fhir_effective_date_code": "EffectiveDate",
    "fhir_enroll_date_code": "EnrollDate"
},

Example JSON representation of content:

FHIR Coverage (http://127.0.0.1:8000/api_fhir/Coverage/covCode1):

Example JOSN
{
    "resourceType": "Coverage",
    "contract": [
        {
            "resourceType": "Contract",
            "agent": [
                {
                    "actor": {
                        "reference": "Practitioner/officerCode"
                    },
                    "role": [
                        {
                            "text": "Practitioner"
                        }
                    ]
                }
            ],
            "valuedItem": [
                {
                    "net": {
                        "value": policyValue
                    }
                }
            ]
        }
    ],
    "extension": [
        {
            "url": "EffectiveDate"
        },
        {
            "url": "EnrollDate",
            "valueDate": "2019-08-06"
        }
    ],
    "grouping": {
        "group": "Product/productUuid",
        "groupDisplay": "productCode",
        "plan": "Product Name",
        "planDisplay": "{
			'item': ['itemCode1', 'itemCode2', 'itemCode3'], 
			'service': ['serviceCode1', 'serviceCode2']
		}"
    },
    "identifier": [
        {
            "type": {
                "coding": [
                    {
                        "code": "ACSN",
                        "system": "https://hl7.org/fhir/valueset-identifier-type.html"
                    }
                ]
            },
            "use": "usual",
            "value": "covCode1"
        }
    ],
    "period": {
        "end": "2020-08-05",
        "start": "2019-08-06"
    },
    "policyHolder": {
        "reference": "FamilyReference/familyCode0"
    },
    "status": "Idle"
}
  • No labels