Da Vinci Alerts Implementation Guide (Release 0.1.0 STU1 Ballot)

This page is part of the Da Vinci Unsolicited Notifications (v1.0.0: STU1) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Da Vinci Alerts Patient Admit/Discharge Use Case

Introduction

This use case demonstrates how the Da Vinci Alerts IG framework is implemented to transact an alert between an Alert Sender/Intermediary and an Alert Recipient/Intermediary.

Use Case Background

Having the ability to send a notifications to update physicians and care management teams when a patient is admitted to a hospital or discharged from the hospital is key to improving patient care. The intent of these alerts is not to replace existing data exchange mechanisms, for example the discharge summary; but rather to notify of the discharge event and provide enough data to gather more information, if desired. These notifications improve post-discharge transitions, promote communication between providers and encourage follow up care.

The Provider is notified when:

  • A Patient is admitted to the hospital for inpatient or emergency care
  • A Patient is discharged from the hospital

Graph of FHIR Resources

The following resource graph in figure 7 defines the resources that support the admission and discharge alerts use case. Communication, Patient, Encounter, and Condition are the primary resources (indicated by the black borders) which are transacted in the Alert Bundle to notify the provider of when the event has occurred. The other associated resources such as Location, Practitioner and Organization can be accessed after receiving the notification through a subsequent FHIR read or search interaction. Note that the boxes with several resources inside them represents a choice.

Figure 7
Alert for Admission and Discharge Resource Graph.svg

Push Alert Notification

In the following interaction shown in figures 8 and 9, the HealthCare facility is acting in the role of the Alert Sender and the Alert Recipient can be any of the actors listed in figure 1 on the home page. To notify the Alert Recipients/Intermediary of an admit or discharge event, the Alert Sender uses $notify operation to submit the Alert Bundle to appropriate FHIR endpoints. As shown in figure 3, when an Intermediary successfully receives the notifications, it subsequently redistributes the data the end users.

Figure 8
admit_flow.svg


Figure 9
admit_intermediary_flow.svg


Example Transaction

Examples

Scenario:

Patient Y has been admitted to Provider X ‘s facility. Acting in the role of Alert Sender Provider X alerts Payer Z who is acting in the role Alert Recipient of the admission. The Alert is transacted as the $notify operation. The body of the operation is a Parameter resource containing two parts:

  1. The Alert Endpoint which provides the recipient with the technical details of an endpoint for getting additional information from the medical record for this event.
  2. The Alert Bundle containing the required Alert Communication profile and required resources for this Alert event use case.

An HTTP Status success code is returned on successful submission and a Bundle with type transaction-response that contains one entry for each entry in the request, in the same order, with the outcome of processing the entry.

Push Alert Notification using the $notify operation

POST [base]Communication/$notify

Request body

{
  "resourceType" : "Parameters",
  "id" : "admit-1",
  "parameter" : [
    {
      "name" : "alert",
      "part" : [
        {
          "name" : "alert-endpoint",
          "resource" : {
            "resourceType" : "Endpoint",
            "status" : "active",
            "connectionType" : {
              "system" : "http://terminology.hl7.org/CodeSystem/endpoint-connection-type",
              "code" : "hl7-fhir-rest"
            },
            "name" : "Acme Hospital EHR FHIR R4 Server",
            "payloadType" : [
              {
                "text" : "n/a"
              }
            ],
            "address" : "https://fhir-ehr.acme/r4/1234/",
            "header" : [
              "Authorization: Bearer eyJraWQiOiIyMDE5LTA3LTE3VDIzOjA1OjQ4LjY3NC5lYyIsInR5cCI6IkpXVCIsImFsZyI6IkVTMjU2In0.eyJzdWIiOiJwb3J0YWwiLCJ1cm46Y29tOmNlcm5lcjphdXRob3JpemF0aW9uOmNsYWltcyI6eyJ2ZXIiOiIxLjAiLCJ0bnQiOiIwYjhhMDExMS1lOGU2LTRjMjYtYTkxYy01MDY5Y2JjNmIxY2EiLCJhenMiOiJ1c2VyXC9DYXBhYmlsaXR5U3RhdGVtZW50LnJlYWQgdXNlclwvQWxsZXJneUludG9sZXJhbmNlLnJlYWQgdXNlclwvQXBwb2ludG1lbnQucmVhZCB1c2VyXC9FbmNvdW50ZXIucmVhZCB1c2VyXC9QYXRpZW50LnJlYWQgdXNlclwvUHJhY3RpdGlvbmVyLnJlYWQgdXNlclwvUmVsYXRlZFBlcnNvbi5yZWFkIn0sImF6cCI6IjgwMjg5YjQ4LTYzMjYtNDcxNi04NDQ1LThmYjIxNTkxNTkwZiIsImlzcyI6Imh0dHBzOlwvXC9hdXRob3JpemF0aW9uLnNhbmRib3hjZXJuZXIuY29tXC8iLCJleHAiOjE1NjM1MDQ2MTksImlhdCI6MTU2MzUwNDAxOSwianRpIjoiNDI1Y2E3NGQtNDFhMy00N2U5LTk2OTEtMGVmYThhYTUzYTdlIiwidXJuOmNlcm5lcjphdXRob3JpemF0aW9uOmNsYWltczp2ZXJzaW9uOjEiOnsidmVyIjoiMS4wIiwicHJvZmlsZXMiOnsic21hcnQtdjEiOnsiYXpzIjoidXNlclwvQ2FwYWJpbGl0eVN0YXRlbWVudC5yZWFkIHVzZXJcL0FsbGVyZ3lJbnRvbGVyYW5jZS5yZWFkIHVzZXJcL0FwcG9pbnRtZW50LnJlYWQgdXNlclwvRW5jb3VudGVyLnJlYWQgdXNlclwvUGF0aWVudC5yZWFkIHVzZXJcL1ByYWN0aXRpb25lci5yZWFkIHVzZXJcL1JlbGF0ZWRQZXJzb24ucmVhZCJ9fSwiY2xpZW50Ijp7Im5hbWUiOiJ0ZXN0LXI0IiwiaWQiOiI4MDI4OWI0OC02MzI2LTQ3MTYtODQ0NS04ZmIyMTU5MTU5MGYifSwidXNlciI6eyJwcmluY2lwYWwiOiJwb3J0YWwiLCJwZXJzb25hIjoicHJvdmlkZXIiLCJpZHNwIjoiMGI4YTAxMTEtZThlNi00YzI2LWE5MWMtNTA2OWNiYzZiMWNhIiwic2Vzc2lvbl9pZCI6Ijk0ZjYyZjhlLTJhMDAtNDAwMi05OWYwLWZkOWYzMjIwM2UwNCIsInByaW5jaXBhbFR5cGUiOiJVTkRFRklORUQiLCJwcmluY2lwYWxVcmkiOiJodHRwczpcL1wvbWlsbGVubmlhLnNhbmRib3hjZXJuZXIuY29tXC9pbnN0YW5jZVwvMGI4YTAxMTEtZThlNi00YzI2LWE5MWMtNTA2OWNiYzZiMWNhXC9wcmluY2lwYWxcLzAwMDAuMDAwMC4wMDQ0LjFEODciLCJpZHNwVXJpIjoiaHR0cHM6XC9cL21pbGxlbm5pYS5zYW5kYm94Y2VybmVyLmNvbVwvYWNjb3VudHNcL2ZoaXJwbGF5LnRlbXBfcmhvLmNlcm5lcmFzcC5jb21cLzBiOGEwMTExLWU4ZTYtNGMyNi1hOTFjLTUwNjljYmM2YjFjYVwvbG9naW4ifSwidGVuYW50IjoiMGI4YTAxMTEtZThlNi00YzI2LWE5MWMtNTA2OWNiYzZiMWNhIn19.weCcKK-zziKrsXlUKHunHTkbUJOZTV0AEzteZeaYdGjhF9581LlBCCp4EnaaUIQbkaWkQ-btukZ_GLw7-cy2Ag"
            ]
          }
        },
        {
          "name" : "alert-bundle",
          "resource" : {
            "resourceType" : "Bundle",
            "id" : "admit-01",
            "type" : "transaction",
            "entry" : [
              {
                "fullUrl" : "urn:uuid:3852d906-a361-11e9-86cd-a4d18ccf5172",
                "resource" : {
                  "resourceType" : "Patient",
                  "meta" : {
                    "profile" : [
                      "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
                    ]
                  },
                  "extension" : [
                    {
                      "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race",
                      "extension" : [
                        {
                          "url" : "ombCategory",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2106-3",
                            "display" : "White"
                          }
                        },
                        {
                          "url" : "ombCategory",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "1002-5",
                            "display" : "American Indian or Alaska Native"
                          }
                        },
                        {
                          "url" : "ombCategory",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2028-9",
                            "display" : "Asian"
                          }
                        },
                        {
                          "url" : "detailed",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "1586-7",
                            "display" : "Shoshone"
                          }
                        },
                        {
                          "url" : "detailed",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2036-2",
                            "display" : "Filipino"
                          }
                        },
                        {
                          "url" : "text",
                          "valueString" : "Mixed"
                        }
                      ]
                    },
                    {
                      "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity",
                      "extension" : [
                        {
                          "url" : "ombCategory",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2135-2",
                            "display" : "Hispanic or Latino"
                          }
                        },
                        {
                          "url" : "detailed",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2184-0",
                            "display" : "Dominican"
                          }
                        },
                        {
                          "url" : "detailed",
                          "valueCoding" : {
                            "system" : "urn:oid:2.16.840.1.113883.6.238",
                            "code" : "2148-5",
                            "display" : "Mexican"
                          }
                        },
                        {
                          "url" : "text",
                          "valueString" : "Hispanic or Latino"
                        }
                      ]
                    },
                    {
                      "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex",
                      "valueCode" : "F"
                    }
                  ],
                  "identifier" : [
                    {
                      "use" : "usual",
                      "type" : {
                        "coding" : [
                          {
                            "system" : "http://terminology.hl7.org/CodeSystem/v2-0203",
                            "code" : "MR",
                            "display" : "Medical Record Number"
                          }
                        ],
                        "text" : "Medical Record Number"
                      },
                      "system" : "http://hospital.smarthealthit.org",
                      "value" : "1032702"
                    }
                  ],
                  "active" : true,
                  "name" : [
                    {
                      "family" : "Shaw",
                      "given" : [
                        "Amy",
                        "V."
                      ]
                    }
                  ],
                  "telecom" : [
                    {
                      "system" : "phone",
                      "value" : "555-555-5555",
                      "use" : "home"
                    },
                    {
                      "system" : "email",
                      "value" : "amy.shaw@example.com"
                    }
                  ],
                  "gender" : "female",
                  "birthDate" : "2007-02-20",
                  "address" : [
                    {
                      "line" : [
                        "49 Meadow St"
                      ],
                      "city" : "Mounds",
                      "state" : "OK",
                      "postalCode" : "74047",
                      "country" : "US"
                    }
                  ]
                },
                "request" : {
                  "method" : "POST",
                  "url" : "Patient"
                }
              },
              {
                "fullUrl" : "urn:uuid:3857dfb4-a361-11e9-86cd-a4d18ccf5172",
                "resource" : {
                  "resourceType" : "Encounter",
                  "meta" : {
                    "lastUpdated" : "2017-05-26T11:56:57.250-04:00",
                    "profile" : [
                      "http://hl7.org/fhir/us/core/StructureDefinition/us-core-encounter"
                    ]
                  },
                  "status" : "finished",
                  "class" : {
                    "system" : "http://terminology.hl7.org/CodeSystem/v3-ActCode",
                    "code" : "IMP",
                    "display" : "inpatient encounter"
                  },
                  "type" : [
                    {
                      "coding" : [
                        {
                          "system" : "http://www.ama-assn.org/go/cpt",
                          "code" : "99234"
                        }
                      ],
                      "text" : "inpatient hospital care"
                    }
                  ],
                  "subject" : {
                    "reference" : "urn:uuid:3852d906-a361-11e9-86cd-a4d18ccf5172"
                  },
                  "period" : {
                    "start" : "2015-11-01T17:00:14-05:00",
                    "end" : "2015-11-01T18:00:14-05:00"
                  },
                  "location" : [
                    {
                      "location" : {
                        "reference" : "Location/hl7east"
                      }
                    }
                  ]
                },
                "request" : {
                  "method" : "POST",
                  "url" : "Encounter"
                }
              },
              {
                "fullUrl" : "urn:uuid:385a65e0-a361-11e9-86cd-a4d18ccf5172",
                "resource" : {
                  "resourceType" : "Condition",
                  "meta" : {
                    "profile" : [
                      "http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition"
                    ]
                  },
                  "clinicalStatus" : {
                    "coding" : [
                      {
                        "system" : "http://terminology.hl7.org/CodeSystem/condition-clinical",
                        "code" : "active",
                        "display" : "Active"
                      }
                    ],
                    "text" : "Active"
                  },
                  "verificationStatus" : {
                    "coding" : [
                      {
                        "system" : "http://terminology.hl7.org/CodeSystem/condition-ver-status",
                        "code" : "confirmed",
                        "display" : "Confirmed"
                      }
                    ],
                    "text" : "Confirmed"
                  },
                  "category" : [
                    {
                      "coding" : [
                        {
                          "system" : "http://terminology.hl7.org/CodeSystem/condition-category",
                          "code" : "problem-list-item",
                          "display" : "Problem List Item"
                        }
                      ],
                      "text" : "Problem"
                    }
                  ],
                  "code" : {
                    "coding" : [
                      {
                        "system" : "http://snomed.info/sct",
                        "code" : "442311008",
                        "display" : "Liveborn born in hospital"
                      }
                    ],
                    "text" : "Single liveborn, born in hospital"
                  },
                  "subject" : {
                    "reference" : "urn:uuid:3852d906-a361-11e9-86cd-a4d18ccf5172",
                    "display" : "Amy V. Shaw"
                  },
                  "onsetDateTime" : "2016-08-10"
                },
                "request" : {
                  "method" : "POST",
                  "url" : "Condition"
                }
              },
              {
                "fullUrl" : "urn:uuid:385bceb2-a361-11e9-86cd-a4d18ccf5172",
                "resource" : {
                  "resourceType" : "Communication",
                  "meta" : {
                    "profile" : [
                      "http://hl7.org/fhir/us/davinci-alerts/StructureDefinition/alerts-communication"
                    ]
                  },
                  "identifier" : [
                    {
                      "system" : "urn:oid:1.3.4.5.6.7",
                      "value" : "2345678901"
                    }
                  ],
                  "status" : "completed",
                  "category" : [
                    {
                      "coding" : [
                        {
                          "system" : "http://terminology.hl7.org/CodeSystem/communication-category",
                          "code" : "alert"
                        }
                      ],
                      "text" : "Alert"
                    }
                  ],
                  "priority" : "routine",
                  "subject" : {
                    "reference" : "urn:uuid:3852d906-a361-11e9-86cd-a4d18ccf5172"
                  },
                  "topic" : {
                    "coding" : [
                      {
                        "system" : "http://hl7.org/fhir/us/davinci-alerts/CodeSystem/communication-topic",
                        "code" : "alert-admit-inpatient"
                      }
                    ],
                    "text" : "Alert Admit Inpatient"
                  },
                  "about" : [
                    {
                      "reference" : "Coverage/example-1",
                      "type" : "Coverage"
                    }
                  ],
                  "encounter" : {
                    "reference" : "urn:uuid:3857dfb4-a361-11e9-86cd-a4d18ccf5172"
                  },
                  "sent" : "2019-07-04T18:01:10-08:00",
                  "recipient" : [
                    {
                      "reference" : "PractitionerRole/example"
                    }
                  ],
                  "sender" : {
                    "reference" : "Organization/example-2"
                  },
                  "payload" : [
                    {
                      "contentString" : "Admit to xyz"
                    },
                    {
                      "contentReference" : {
                        "reference" : "urn:uuid:3857dfb4-a361-11e9-86cd-a4d18ccf5172"
                      }
                    },
                    {
                      "contentReference" : {
                        "reference" : "urn:uuid:385a65e0-a361-11e9-86cd-a4d18ccf5172"
                      }
                    }
                  ]
                },
                "request" : {
                  "method" : "POST",
                  "url" : "Communication"
                }
              }
            ]
          }
        }
      ]
    }
  ]
}

Response

HTTP/1.1 200 OK
[other headers]

Response body

{
    "resourceType": "Bundle",
    "id": "42941562-0747-498d-8c02-e37f312f3e99",
    "type": "transaction-response",
    "link": [
        {
            "relation": "self",
            "url": "http://hapi.fhir.org/baseR4"
        }
    ],
    "entry": [
        {
            "response": {
                "status": "201 Created",
                "location": "Patient/87904/_history/1",
                "etag": "1",
                "lastModified": "2019-07-10T22:56:19.306+00:00"
            }
        },
        {
            "response": {
                "status": "201 Created",
                "location": "Encounter/87905/_history/1",
                "etag": "1",
                "lastModified": "2019-07-10T22:56:19.306+00:00"
            }
        },
        {
            "response": {
                "status": "201 Created",
                "location": "Condition/87906/_history/1",
                "etag": "1",
                "lastModified": "2019-07-10T22:56:19.306+00:00"
            }
        },
        {
            "response": {
                "status": "201 Created",
                "location": "Communication/87907/_history/1",
                "etag": "1",
                "lastModified": "2019-07-10T22:56:19.306+00:00"
            }
        }
    ]
}