Skip to main content

HealthShare Personal Community Patient Data Access Setup Guide




1. Overview

 In Personal Community, patients can view a comprehensive overview of their medical records in the  Records  tab.  Personal Community supports filtering for the patient data and medications that patients are able to view. Patients can also access education content pertaining to information in their medical records.

The Records page in the public application contains the following sections:

  • Summary — This section contains an aggregated view of the following data types: Allergies , Medications , Care Team , Conditions , Procedures , Vaccinations .

  • Results — This section contains the following types of results: Lab Results and Radiology Results .

  • Care Plans This section contains any care plans patients have within   HealthShare Care Community.
  • Documents —  This section contains a patient's aggregated documents for them to view and interact with.

2. Data Sharing

Personal Community allows you to import patient data from the Unified Care Record to be viewed by patients in the public application. You may choose to import all available data categories or a select few. 

2.1. Field Mappings

Allergies

UI Display REST API SDA Segment: Allergy
Allergy AllergyTranslated Allergy
Reaction Reaction Reaction
Status* Status Status

*only appears on browser details table

Medications

Not all medications are displayed:

  • Personal Community excludes inpatient medications by default
UI Display REST API SDA Segment: Medication
Medication medicationTranslated "for" indication

%GetMedicationName to generate medicationTranslate. Value comes from the following:

  • DrugProduct.Description
  • DrugProduct.ProductName
  • OrderItem.Description
  • DrugProduct.Generic.Description

"for"

Indication

Instructions - line 1* "Take" DoseQuantity DoseUnits Frquency (Route) " for" Duration
  • DoseQuantity
  • DoseUoM
  • Frequency
  • Route
  • Duration
Instructions - line 2 instructions TextInstructions
Details* Provider   %GetCareProviderName
Status* Status Status

*only appears on browser details table


Care Team

UI Display REST API SDA Segment: Patient or ClinicalRelationship
Provider Name

Clinician.Name (if clinical relationship)

FamilyDoctor.Name (if present in Patient)

Role Role Clinician.CareProviderType
Address SimpleAddress Clinician.Address

Conditions

UI Display REST API SDA Segment: Problem
Condition Problem Problem
Details Details ProblemDetails
Status Status Status


Procedures

UI Display REST API

SDA Segments

  • Procedure
  • Devices
Procedure ProcedureTranslated Procedure
Date Timestamp ProcedureTime
Performed Provider "at" EnteredAt   %GetCareProviderName "at" EnteredAt
Device* Devices.Device Device
Serial Number* Devices.UDIAssigningAuthority UDIAssigningAuthority
Distributor* Devices.UDIExtension UDIExtension

*Appears as a drop down in the browser details page. Only present if there was an implantable device


Vaccinations

UI Display REST API

SDA Segments

  • Vaccination
  • Administrations
Vaccination MedicationTranslated Medication
Date Administrations:Location AdministeredAtLocation
Location Timestamp
  • Administrations.FromTime
  • Administrations.EnteredOn
  • Administrations.UpdatedOn

Lab Results - Order Level

UI Display REST API

SDA Segment

  • LabOrder
  • LabResults
Description OrderedItemDisplay OrderItem
Ordering Provider OrderedBy OrderedBy
Performed At EnteringOrganization   %GetHealthCareFacility
Performed On ResultTime (date portion) ResultTime
Status ResultStatus ResultStatus
Report

DocumentID




Lab Result - Item Level

UI Display REST API

SDA Segment

  • LabOrder
  • LabResults
Title OrderedItemDisplay OrderItem
Performed On ResultTime (date portion) ResultTime
Order By OrderedBy OrderedBy
Result Description ResultItem:TestTranslated TestItemCode
Your test result ResultItem:ResultValue_" "_ResultValueUnits

ResultValue

ResultValueUnits

Reference range ResultItem:ReferenceRange ResultNormalRange

Radiology Results - Order Level

UI Display REST API

SDA Segment

RadOrder

Description OrderedItemDisplay OrderItem
Ordering Provider OrderedBy OrderedBy
Performed At EnteringOrganization  %GetHealthCareFacility
Performed On ResultTime (date portion) ResultTime
Status ResultStatus ResultStatus
Report DocumentID


Radiology Results - Order Level

UI Display REST API SDA Segment: Field
Title OrderedItemDisplay OrderItem
Performed On ResultTime (date portion) ResultTime
Order By OrderedBy OrderedBy
Imaging Report ResultText ResultText

Documents

UI Display

REST API

SDA Segment: Field

Name DocumentName DocumentName
Document Tyoe DocumentType DocumentType
Organization EnteredAt EnteredAt
Date Timestamp

Timestamp is set based on the first of the following fields to be populated:

-DocumentTime

-AuthorizationTime

-TranscriptionTime

-EnteredOn

-UpdatedOn

Report DocumentID DocumentID
> Document NoteText

2.2. Configuring Care Community

To create a Service Registry entry for the Care Community web service:
  1. Logon to the Management Portal as a user with the  %HS_Administrator  role.
  2. Select  HealthShare  from the main menu.
  3. Select the Unified Care Record Registry.
  4. Navigate to  Registry Management > Service Registry .
  5. Restrict the available services to HTTP endpoints by select HTTP from the  Service Type  drop down menu.
  6. Enter the following values for the fields:
    • Name  - Enter the name - has to be "CareCommunity"
    • Service Type  - Select HTTP.
    • Host  - Enter the host name for the Care Community web service. Should be secure (ie. "<vm-name>. iscinternal.com ")
    • Port - Enter the HTTPs port for the Care Community web service. 
    • SSL Configuration   - Enter your SSL configuration for secure communications
    • URL - Enter the full path to the Care Community web service, which should be "/api/healthshare-rest/<Care Community namespace>
    • HTTPCredentialsConfig - Enter the name of the credentials object you created for this entry. 
  7. Select  Save .



3. Configuring Records in the Workbench

To enable the Records page in the Workbench:

  1. Log into the Workbench as a user with the  Configuration Manager  role.
  2. Go to the  Configuration Application   page ( Setup  Configuration Application ) and select the  Feature Control  tab. 
  3. Select  Edit Mode  to make edits to the fields described in the following steps.
  4. In the  Records   box, select the  Enable checkbox.
  5. Select at least one of the following tabs (and at least one category within each tab you enable):
    • Enable Summary Tab
      • Enable Allergies
      • Enable Medications
      • Enable Care Team
      • Enable Conditions
      • Enable Procedures
      • Enable Vaccinations
      • Enable Information Buttons  - Select this checkbox if you wish to include in-context information for the medications, conditions, procedures, and vaccinations categories (if you have selected any of those).
    • Enable Results Tab
      • Enable Labs
      • Enable Imaging Results
    • Enable Documents Tab  - Select this checkbox to enable the Documents feature allowing patients to view and interact with their aggregated documents.
    • Enable Care Plan Tab - Select this checkbox and proceed to fill out the two following required fields:
      • Care Community Assigning Authority - the Assigning Authority name defined for Care Community in the Unified Care Record
      • Care Community Service Registry Name -   the name of the service registry entry created in the Unified Care Record.
  6. After you have finished, select  Submit  at the bottom of the page to save your changes.

4. Filtering Patient Data

By default, patients can access their entire medical record in Personal Community. You may want to filter this data before it reaches patients. This section explains the steps required to implement a patient data filter.

4.1. Creating a Custom Class for Filtering Patient Data

To create a custom class for filtering patient data:
  1. In the appropriate namespace for your portal, create a class that extends the   HSPortal.EHR.SDAProcessor   class. If an extension already exists, open it for editing.

  2. In that subclass, override the   %PreProcessSessionSDA   method with site-specific logic.

  3. Compile the subclass.

For an example of a class that performs filtering, see the   HSPortal.EHR.Samples.SDAProcessor   class. The   %ProcessMethodTemplate   method provides a basic template for the code to process the SDA that Personal Community receives.


4.2. Adding the Patient Data Filter in the Workbench

After the class for patient data filtering has been created, you must select this class for use.

To add a patient data filtering class in the Workbench:

  1. Logon to the Workbench as a user with the   Configuration Manager   role.

  2. Go to the   Site Configuration Settings   page ( Setup   >   Site Configuration ).

  3. In the   Application Settings   section, select the class that you have created in the previous step from the   SDA processor class   drop-down list. (This class may already have been selected for other configuration tasks.)

  4. Select   Apply .

5. Filtering Medications

You may want to filter the medications presented to members in their health records. This section explains the default behavior of the medication filter in Personal Community, and the steps required to implement a custom medication filter.

5.1. Default Behavior for Filtering Medications

The default medication filter is contained within the   HSPortal.EHR.BaseFilters   class. The logic contains two steps:

  1. Whether to include or exclude the medication in the API response:

    • If the Encounter Type associated with the medication is one of the following, it is excluded:

      • Inpatient

      • Emergency

      • Not Applicable

      • Pre-admit

  2. Whether to set   IsCurrent   to 1 or leave as 0 by default. A value of 1 means that the medication is active:

    • Set to 1 if:

      • the status is NOT in the following list: inactive, completed, discontinued, cancelled, entered-in-error, stopped, not-taken, declined.

      And:

      • the medication does not contain a   ToTime   value in its SDA data

      • Or:
      • it contains a   ToTime   value that is within the configured cutoff time span.

Note

To check this value, go to the Workbench and navigate to   Site Configuration   >   Application Settings . On this page, see the value listed under   Cutoff for classifying a medication as current (in days) .

For an example of a class that performs filtering, see the class. The   %ProcessMethodTemplate   method provides a basic template for the code to process the SDA that Personal Community receives.

5.2. Creating a Custom Class for Filtering Medications

To create a custom class for filtering medications, complete the following steps:

  1. In the appropriate namespace for your portal, create a class that extends the   HSPortal.EHR.Basefilters   class. If an extension already exists, open it for editing.

  2. In that subclass, override the   %FilterMedication   method with site-specific logic. This logic should return a boolean value that answers the question “Is this medication excluded?”. Additionally, you will want to include logic for the value of   IsCurrent .

  3. On your Personal Community instance, open a Terminal session and ensure you are in the Personal Community namespace.

  4. Execute the following command:

    set status = ##class(HSPortal.Config.Values).%UpdateValue("EHRFilterClass", customFilterName)
    


    Where   customFilterName   is the name of your custom class.

6. In-Context Education

On the Summary page, Personal Community allows patients to consult educational resources relevant to the specific records they are viewing. For each eligible record, an info button may appear that links to educational content.

By default, Personal Community uses the MedlinePlus medical library as it’s source for in-context education content. MedlinePlus provides information from the U.S. National Library of Medicine of the National Institutes of Health ( http://www.nlm.nih.gov/medlineplus/ ). You can configure Personal Community to access content from a different third-party source.

6.1. Implementing a Custom Class for In-Context Education


IMPORTANT

If you are receiving in-context education content from MedLinePlus, the default   HSPortal.Search.MedLine.ConnectSearch   class is provided within Personal Community.

If content is coming from another third-party provider, you must complete the steps in this section.

To create and apply a custom class for in-context education in Personal Community, complete the following steps:

  1. Extend the   HSPortal.Search.Base   class, and place the class in a site-specific package; it must be in a different package than the   HSPortal   package.

  2. Modify that subclass. Specifically, specify code in the   %OnSearch   method to call the third-party content source. For an example of an   info button   search, see the   HSPortal.Search.MedLine.ConnectSearch   class.

  3. Compile the subclass.

At this point, the subclass is available for use, and you can change the search class in the Workbench:

  1. Logon to the Workbench as a user with the   Configuration Manager   role.

  2. Select the   Setup   tab.

  3. From the   Setup   tab’s menu choices, select   Site Configuration . This displays the   Site Configuration Settings   page.

  4. On the   Site Configuration Settings   page, in the   Third-party search classes   area, select the classes of interest in the   Info button search class   drop-down list and the   Free text search class   drop-down list.

  5. Select   Apply   at the bottom of page to save these changes.

6.2. Caching Search Results

If you want to cache search results, the procedure to specify this is:

  1. Log into the Workbench as a user with the   Configuration Manager   role.

  2. Select the   Setup   tab.

  3. From the   Setup   tab’s menu choices, select   Site Configuration

  4. On the   Site Configuration Settings   page, in the   Application Settings   area, select the   Cache third-party search results   check box.

  5. Select   Apply   at the bottom of page to save this change.

6.3. Enabling Information Buttons in the Workbench

To enable information buttons in the Workbench:

  1. Log into the Workbench as a user with the  Configuration Manager  role.
  2. Go to the  Configuration Application   page ( Setup  Configuration Application ) and select the  Feature Control  tab. 
  3. Select  Edit Mode  to make edits to the fields described in the following steps.
  4. In the  Records   box, select the  Enable Records  checkbox.
  5. Select Enable Information Buttons.
  6. Select Submit  at the bottom of the page to save your changes.

7. Connecting a Third-Party PACS Viewer

You can configure Personal Community so that patients can view images of their radiology results in the Records  tab and the  Results card on the home page. This can be done by providing a link to a third-party patient-facing image viewer (such as a PACS viewer).

Personal Community determines whether or not to display a view button next to a specific result based on whether the  ViewerLink  property is populated. If the ViewerLink field for a result is populated with a URL, the view button is present and the patient can click the button to be redirected to the image viewer. If it is not populated, the view button does not appear.   

You can populate the ViewerLink field with one of the two following options:

  • A fully qualified URL to the viewer launcher. 
  • A URL to an intermediate web page. This requires custom configuration. You can implement whatever additional logic or validation you desire, such as:
    • time-based tokens
    • error handling

      IMPORTANT

      If you choose to implement an intermediate web page, make sure that it is secure and that parameters are encrypted.

You are responsible for implementing the logic that populates the ViewerLink field as well as clears it. 

You must update the HS.Local.SDA3.RadOrderExtension , in both your Personal Community and Unified Care Record instances, to have the ViewerLink property. See the   documentation   for more information on this process. You must recompile the HS.SDA3.RadOrder class in both the Unified Care Record and Personal Community.

8. Available Content Files

The following content files exist in the Records tab of the public application, which you may wish to update:

Application Page Content File
Summary content-records-summary
Allergy Details (Browser) content-records-summary-allergies
Medication Details (Browser) content-records-summary-medications
Care Team Details (Browser) content-records-summary-careteam
Conditions Details (Browser) content-records-summary-conditions
Procedures Details (Browser) content-records-summary-procedures
Vaccination Details (Browser) content-records-summary-vaccinations
Results content-records-results
Care Plans

content-records-care-plans

Documents content-records-documents

8.1. Updating Page Content Related to Records

To modify page content:

  1. In the Workbench, enable the setting that displays the source file for each page’s content in the public application:

    1. Log into the Workbench as a user with the Configuration Manager role.

    2. Go to the Site Configuration Settings page ( Setup > Site Configuration ).

    3. In the Content Settings section, select Highlight Personal Community content .

    4. Select Apply .

    This is also known as enabling content highlighting or enabling the debug flag .

  2. If there is not already a custom copy of the content file, copy the existing file from

    <hspc-home>/base/content/en/

    to

    <hspc-home>/custom/content/en/

    Note

    If such a file already exists, do not create a new copy, as this may overwrite any customizations your organization has already made in it.

  3. Edit the custom copy of the file as required for your organization.

    Note

    1. If this is a right to left language, the files should contain:

    <html dir= "rtl" ></html>

    The customer would then put their content within the tags.

  4. Refresh the content for your organization's site.

8.1.1. Refreshing Page Content

To refresh content:

  1. Log into the Workbench as a user who has the Configuration Manager role.

  2. Go to the Content tab.

  3. On the activity pane, select Content Updates . This displays the Content Updates page.

  4. On the Content Updates page, choose Refresh Content .

This updates every aspect of each application to display the custom content, including text, images, and so on.

If changes are not visible after you refresh content, you may need to clear your browser cache.