plug-in for hl7 with fhir tibco activematrix businessworks ...€¦ · hl7 with fhir plugs into...

121
TIBCO ActiveMatrix BusinessWorks Plug-in for HL7 with FHIR User's Guide Software Release 8.1 August 2019

Upload: others

Post on 05-Jul-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

  • TIBCO ActiveMatrix BusinessWorks™Plug-in for HL7 with FHIR

    User's GuideSoftware Release 8.1August 2019

  • Important Information

    SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCHEMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (ORPROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THEEMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANYOTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.

    USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS ANDCONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTEDSOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THECLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOADOR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE)OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USERLICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THESOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, ANDYOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BEBOUND BY THE SAME.

    ANY SOFTWARE ITEM IDENTIFIED AS THIRD PARTY LIBRARY IS AVAILABLE UNDERSEPARATE SOFTWARE LICENSE TERMS AND IS NOT PART OF A TIBCO PRODUCT. AS SUCH,THESE SOFTWARE ITEMS ARE NOT COVERED BY THE TERMS OF YOUR AGREEMENT WITHTIBCO, INCLUDING ANY TERMS CONCERNING SUPPORT, MAINTENANCE, WARRANTIES,AND INDEMNITIES. DOWNLOAD AND USE OF THESE ITEMS IS SOLELY AT YOUR OWNDISCRETION AND SUBJECT TO THE LICENSE TERMS APPLICABLE TO THEM. BY PROCEEDINGTO DOWNLOAD, INSTALL OR USE ANY OF THESE ITEMS, YOU ACKNOWLEDGE THEFOREGOING DISTINCTIONS BETWEEN THESE ITEMS AND TIBCO PRODUCTS.

    This document is subject to U.S. and international copyright laws and treaties. No part of thisdocument may be reproduced in any form without the written authorization of TIBCO Software Inc.

    TIBCO, the TIBCO logo, the TIBCO O logo, TIBCO ActiveMatrix BusinessWorks, TIBCOBusinessConnect EDI Protocol HIPAA Edition powered by Instream, TIBCO Enterprise Administrator,TIBCO Foresight EDISIM, TIBCO Foresight Instream, and TIBCO Foresight Translator are eitherregistered trademarks or trademarks of TIBCO Software Inc. in the United States and/or othercountries.

    Java and all Java based trademarks and logos are trademarks or registered trademarks of Oracle and/orits affiliates.

    All other product and company names and marks mentioned in this document are the property of theirrespective owners and are mentioned for identification purposes only.

    This software may be available on multiple operating systems. However, not all operating systemplatforms for a specific software version are released at the same time. Please see the readme.txt file forthe availability of this software version on a specific operating system platform.

    THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

    THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICALERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESECHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCOSOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S)AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.

    THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY ORINDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE,INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.

    2

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • This and other products of TIBCO Software Inc. may be covered by registered patents. Please refer toTIBCO's Virtual Patent Marking document (https://www.tibco.com/patents) for details.

    Copyright © 1999-2019. TIBCO Software Inc. All Rights Reserved.

    3

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

    https://www.tibco.com/patents

  • Contents

    TIBCO Documentation and Support Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

    Plug-in Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    HL7 Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    FHIR Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    CDS Services Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

    Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    Creating a Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    Designing a Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    Testing an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    Deploying an Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    Generating an EAR File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    Activity Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    HL7 Palette Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

    HL7 Palette Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    GenerateACK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    ParseHL7 Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

    ValidateHL7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

    ValidateHL7 CallBack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

    TranslateHL7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    TranslateHL7 CallBack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    LLPReceiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33

    LLPRequestResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    LLPResponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    HL7 Custom Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    HL7 Palette Example Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    Setting Up and Running the HL7 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40

    LLP Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

    Illustrate AL Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45

    Illustrate NE Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46

    Receive Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

    Parser and Renderer Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    Parser and Renderer Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    Validate and Translate Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    Validate and Translate Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

    FHIR Palette Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    Before you Begin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    4

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Configure a FHIR Shared Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    FHIR Palette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

    FHIR Client Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    Resource Operations Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    Search For Resource Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

    FHIR Data Model Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66

    Encode Resource Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

    Parse Resource Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

    Validate Resource Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

    Select FHIR Resource Template . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74

    FHIR Palette Example Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

    Setting Up and Running the FHIR Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76

    ResourceOperation Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77

    SearchForResource Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

    SearchForResource (Advanced Query) Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

    SearchWithPagination Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

    ValidateResource Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83

    CDSServices Palette Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

    CDSServices Palette Activities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .85

    PatientView Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

    ServicesDiscovery Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

    CDSServices Palette Example Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87

    Setting Up and Running the CDSServices Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

    PatientView Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89

    ServicesDiscovery Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90

    Managing Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    Managing Plug-in Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    Exporting Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .92

    Setting Up Log Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

    Enabling Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93

    Log Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

    Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

    HL7 Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

    FHIR Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

    Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105

    HL7 Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

    Healthcare Messaging Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

    HIPAA and HL7 Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

    HL7 Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

    5

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • TIBCO HL7 and HIPAA Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

    Introduction to TIBCO Foresight® EDISIM® . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111

    Creating XSD and MAP files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111

    Validating a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115

    Creating Mapping Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115

    FHIR Reference Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

    Supported FHIR Resource Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117

    The JPA Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

    CDS Client Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118

    6

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • TIBCO Documentation and Support Services

    How to Access TIBCO Documentation

    Documentation for TIBCO products is available on the TIBCO Product Documentation website, mainlyin HTML and PDF formats.

    The TIBCO Product Documentation website is updated frequently and is more current than any otherdocumentation included with the product. To access the latest documentation, visit https://docs.tibco.com.

    Product-Specific Documentation

    Documentation for TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR is available on the TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR Documentation page.

    The following documents for this product can be found on the TIBCO Documentation site:

    ● TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR Installation - Read this manual forinstructions on site preparation and installation.

    ● TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR Release Notes - Read the release notesfor a list of new and changed features. This document also contains lists of known issues and closedissues for this release.

    ● TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide - Read this manual forinstructions on using the HL7 and FHIR functionality provided with this product.

    Other TIBCO Product Documentation

    When working with the HL7 functionality provided with ActiveMatrix BusinessWorks™ Plug-in forHL7 with FHIR, you may find it useful to read the documentation for the following TIBCO products:

    ● TIBCO ActiveMatrix BusinessWorks™

    ● TIBCO ActiveMatrix BusinessWorks™ Container Edition

    ● TIBCO Foresight® EDISIM®

    ● TIBCO Foresight® Translator

    ● TIBCO Foresight® Instream®

    How to Contact TIBCO Support

    You can contact TIBCO Support in the following ways:

    ● For an overview of TIBCO Support, visit http://www.tibco.com/services/support.

    ● For accessing the Support Knowledge Base and getting personalized content about products you areinterested in, visit the TIBCO Support portal at https://support.tibco.com.

    ● For creating a Support case, you must have a valid maintenance or support contract with TIBCO.You also need a user name and password to log in to https://support.tibco.com. If you do not have auser name, you can request one by clicking Register on the website.

    How to Join TIBCO Community

    TIBCO Community is the official channel for TIBCO customers, partners, and employee subject matterexperts to share and access their collective experience. TIBCO Community offers access to Q&A forums,product wikis, and best practices. It also offers access to extensions, adapters, solution accelerators, andtools that extend and enable customers to gain full value from TIBCO products. In addition, users can

    7

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

    https://docs.tibco.comhttps://docs.tibco.comhttps://docs.tibco.com/products/tibco-activematrix-businessworks-plug-in-for-hl7-with-fhirhttp://www.tibco.com/services/supporthttps://support.tibco.comhttps://support.tibco.com

  • submit and vote on feature requests from within the TIBCO Ideas Portal. For a free registration, go to https://community.tibco.com.

    8

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

    https://ideas.tibco.com/https://community.tibco.com

  • Plug-in Overview

    TIBCO ActiveMatrix BusinessWorks™ is an easy to use integration product suite for enterprise, web,and mobile applications. It uses the Eclipse graphical user interface (GUI) for defining businessprocesses and the process engine to execute them. TIBCO ActiveMatrix BusinessWorks™ Plug-in forHL7 with FHIR plugs into ActiveMatrix BusinessWorks™, and provides HL7, FHIR, and CDSServicesactivities for use in business process design and management.

    ActiveMatrix BusinessWorks supports plug-ins that extend the palette functionality. After you installthe plug-in, the following palettes are available in TIBCO Business Studio™:

    ● HL7 Palette

    ● FHIR Palette

    ● CDSServices Palette

    You can add the plug-in activities to the business processes you are designing, and integrate them intothe process flow. At run time, the plug-in activities are executed as part of the ActiveMatrixBusinessWorks process execution.

    HL7 Functionality

    With the HL7 palette you can perform the following actions:

    ● Generate acknowledgments

    ● Parse HL7 header information

    ● Translate HL7 data

    ● Validate HL7 data

    ● Send and receive HL7 messages by using Lower Level Protocol (LLP)

    See HL7 Palette Overview.

    FHIR Functionality

    With the FHIR palette you can perform the following actions:

    ● Create, read, update, and delete a FHIR resource

    ● Search for a FHIR resource

    ● Encode a FHIR resource

    ● Parse a FHIR resource

    ● Validate a FHIR resource

    See FHIR Palette Overview.

    9

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • CDS Services Functionality

    With the CDS Services palette you can perform the following actions:

    ● Generate a response to a patient-view request

    ● Generate a CDS Hooks services discovery response

    See CDS Services Palette Overview.

    10

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Getting Started

    A typical workflow using the ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR includescreating a project, designing a process, and deploying the application.

    ActiveMatrix BusinessWorks™ enables users to create services and integrate applications, and deploythem at run time. It uses the Eclipse graphical user interface (GUI) for defining business processes andthe process engine to execute them.

    To design a process and deploy it at run time, refer to the following topics:

    1. Creating a Project

    2. Designing a Process

    3. Testing an Application

    4. Deploying an Application

    Creating a ProjectThe first task of using the plug-in is creating a project. After creating a project, you can add resourcesand processes.

    An Eclipse project is an application module configured for ActiveMatrix BusinessWorks. Anapplication module is the smallest unit of resources that is named, versioned, and packaged as part ofan application.

    Procedure

    1. Start TIBCO Business Studio:

    ● Click Start > All Programs > TIBCO > TIBCO_HOME > TIBCO Business Studioversion_number > Studio for Designers.

    2. To open the BusinessWorks Resource Wizard from the menu, click File > New > BusinessWorksResources.

    3. In the Select a wizard dialog box, click BusinessWorks Application Module and then click Next toopen the New BusinessWorks Application Module wizard.

    4. In the Project dialog box, configure the project that you want to create:a) In the Project name field, enter a project name.b) By default, the created project is located in the workspace currently in use. If you do not want to

    use the default location for the project, clear the Use default location check box and click Browseto select a new location.

    c) Use the default version of the application module, or enter a new version in the Version field.d) To automatically create an empty process and an application, when creating the project keep the

    Create empty process and Create Application check boxes selected.e) Select the Use Java configuration check box if you want to create a Java module.

    A Java module provides the Java tool capabilities.f) To create the project, click Finish.

    Result

    The project with the specified settings is displayed in the Project Explorer view.

    11

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Designing a ProcessProcesses capture and manage the flow of business information in an enterprise between different datasources and destinations. You can design a process by using activities and adding conditions.

    By default, an empty process is created when creating a project with the Create empty process checkbox selected.

    Procedure

    1. In the Process editor, select and drop an activity from the Palette view.For example, select and drop the FilePoller activity from the File palette and the TranslateHL7activity from the HL7 palette.

    You can also select activities from the Context menu.

    2. To create links between the activities, click the Drag to create a transition between Activities icon.

    3. Configure the added activities.

    4. To save the process, click File > Save.

    12

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Testing an ApplicationAn application contains an application module that is defined in TIBCO Business Studio. After youdesign your business process, you can run and debug the configurations.

    You can debug the design-time configurations by using the built-in debugger in TIBCO BusinessStudio.

    Prerequisites

    Ensure that you have created an application and designed a process before testing.

    By default, a process and an application are created when creating a project with the Create emptyprocess and Create Application check boxes selected.

    Procedure

    1. To run the application, click Run > Run.

    2. Optional: To debug the application, click Run > Debug.The perspective changes to Debug from Modeling. You can view the job details in the Console viewfrom the Debug perspective.

    Deploying an ApplicationYou can manage TIBCO ActiveMatrix BusinessWorks applications by using TIBCO® EnterpriseAdministrator after deploying the applications.

    Prerequisites

    You must generate an enterprise archive (EAR) file before deploying an application. For moreinformation about generating an EAR file, see Generating an EAR File.

    A complete workflow of deployment includes:

    1. Building an EAR file

    2. Uploading the EAR file

    3. Deploying the EAR file

    4. Starting the application

    You can deploy an application EAR file from TIBCO Business Studio, or by using the command-linemode with the bwdesign utility. For more information about how to deploy an application, see TIBCOActiveMatrix BusinessWorks™ Administration.

    Generating an EAR FileApplication archives are the enterprise archive (EAR) files that are created in TIBCO Business Studio.An EAR file is required when deploying an application.

    Prerequisites

    An application project must have already been created, as explained in Creating a Project.

    Procedure

    1. Go to File Explorer and click the Open Directory to Browse icon.

    13

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 2. Select the folder where you want to generate the EAR file and click OK.The new folder is displayed in the File Explorer view.

    3. Drag the application from the Project Explorer to the new folder in the File Explorer.

    The EAR file is generated with the name _.ear.

    14

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Activity Configuration

    After you have added an activity to the workspace, you can configure it by clicking the activity icon.

    The properties view area below the workspace is populated with fields associated with the activity.Each activity has configuration tabs on the left, and a corresponding configuration input area on theright.

    The configuration properties are grouped under tabs such as General, Description, Input, Output, andso on. For example, upon adding an LLPReceiver activity, you can configure it by specifying the valuesfor the properties under the tabs General, Description, Advanced, Conversations, and Output.

    For more information about Working with Standard Activity Features, see the TIBCO ActiveMatrixBusinessWorks™ Application Development guide.

    Configuration by Using XPath

    Input, Output, Advanced, and Fault information is configured and displayed by using the XPathBuilder. XPath uses path expressions to navigate through XML documents. XPath also has basicmanipulation functions for strings, numbers, and Booleans.

    ActiveMatrix BusinessWorks uses XPath as the language for defining conditions and transformations.

    15

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • For more information about XPath, see the TIBCO ActiveMatrix BusinessWorks™ Application Developmentguide.

    16

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • HL7 Palette Overview

    The HL7 Palette contains HL7 activities for ActiveMatrix BusinessWorks Plug-in for HL7 with FHIR.

    One of the key activities in integrating health care systems is to implement the Interface Enginefunctionality using the TIBCO ActiveMatrix BusinessWorks Process Engine in the course of definingprocess models. This process modeling is done in TIBCO Business Studio using the HL7 features andthe many features that are part of ActiveMatrix BusinessWorks. These include FTP and the file poller.

    HL7 Palette ActivitiesThe HL7 palette, found on the Palettes panel, includes the following activities:

    To achieve different functionalities, HL7 activities can be divided into the following groups:

    Basic activities

    The following activities are most likely to be used in your HL7 integration project:

    ● GenerateACK● ParseHL7Header● TranslateHL7● ValidateHL7

    LLP activities

    Most HL7 messages are sent by using TCP over Lower Level Protocol (LLP). The following activitiesare related to TCP over LLP and are used to send or receive HL7 messages to or from other systems inthe provider space:

    ● LLP Receiver● LLPRequestResponse● LLPResponse

    GenerateACKUse the GenerateACK activity to generate acknowledgments for input HL7 messages.

    General

    The following table lists the field on the General tab:

    17

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    Description

    The Description tab is used to provide a short description for the activity.

    Input

    The following table lists the fields on the Input tab:

    Field Datatype Description

    hl7Message string The incoming HL7 message for generating an ACK or NAKmessage.

    defaultMSHwhenHeaderInvalid

    string If the MSH segment of the input HL7 message is invalid, usethis field to specify a valid MSH segment for the input HL7message.

    If you do not provide a valid MSH segment, the followingvalue is used as a default value:MSH|^~\\&|||||||ACK||P|2.3|| ||

    This field takes effect only if the MSH segment ofthe input HL7 message is invalid.

    msaTextMsg string The text in the MSA segment of the input HL7 message.

    The default value for this field is null (""). Override thedefault by specifying text here.

    msaAckCode string The acknowledgment (ACK) code in the MSA segment ofthe input HL7 message.

    The default value for this field is AE. Override the default byspecifying an ACK code here.

    The following acknowledgment codes can be used: AA, AE,AR, A, E, R, accept, error, reject, CA, CE, and C.

    When msaAckCode is set to AA, A, or "accept,"output item ackIsNak is output as false.

    Output

    The following table lists the fields on the Output tab:

    18

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Output Item Datatype Description

    ackContent string The generated acknowledgment message.

    ackIsNak Boolean Indicates whether the generated acknowledgment is a NAK or anACK message.

    If the value is true the generated acknowledgment is a NAKmessage.

    If the value is false the generated acknowledgment is an ACKmessage.

    The following ACK codes in the output MSA segment can be used:AA, A, CA, and accept.

    Fault

    The Fault tab lists errors that might occur when you use this activity.

    Error SchemaElement Datatype Description

    msg string Error message description

    msgCode string The error code.

    It represents ActiveMatrix BusinessWorks Plug-in for HL7 withFHIR and TIBCO Foresight® Translator and TIBCO Foresight®Instream® errors.

    For more information about error codes, see HL7 Error Codes.

    ParseHL7 HeaderUse the ParseHL7 Header activity to parse the header of a set of HL7 string messages and generateacknowledgments.

    The acknowledgment is generated as a part of the output message; it returns the following information:

    ● If the header of the input HL7 string message is valid, the first field of the MSA segment in theacknowledgment message specifies the acknowledge status: AA.

    ● If the header of the input HL7 string message is invalid, this activity does not generate anacknowledgment message and generates an exception. To generate an acknowledgment message,you must design a proper workflow.

    Example

    Refer to the associated example:

    ● Receive Process

    General

    The General tab contains the following field:

    19

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    Description

    The Description tab is used to provide a short description for the activity.

    Input

    The input for the activity are HL7 messages. It can contain one or more HL7 messages.

    Output

    The following table lists the fields on the Output tab:

    Output Item Datatype Description

    Messages string message

    The HL7 message.

    ackMsg

    The auto-generated acknowledgement for the incoming message.

    responseID

    The value of the second field in the MSA segment of the incomingmessage.

    This MSA segment is present only if the incoming message is aresponse message. This field is optional; the request message doesnot have an MSA segment.

    Header string All the header field values

    Fault

    The Fault tab lists errors that might occur when you use this activity.

    Error SchemaElement Datatype Description

    msg string Error message description.

    msgCode string The error code.

    It represents ActiveMatrix BusinessWorks Plug-in for HL7 withFHIR and Foresight® Translator and Foresight® Instream errors.

    For more information about error codes, see HL7 Error Codes.

    20

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • ValidateHL7The ValidateHL7 activity utilizes Foresight Instream to validate an Electronic Data Interchange (EDI)file against a specified guideline and provides summary and a detail output containing the results.

    Use the ValidateHL7 activity to validate HL7 input data and generate a result and a summary report.

    Example

    Refer to the associated example:

    ● Validate and Translate Example

    General

    The following table lists the fields on the General tab:

    Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    CallBack No Optional. Select this check box to use a Java Class for callback .

    For more information about Enabling Callbacks, see ValidateHL7Callback.

    Class Name No Specify a Java Class. This field is enabled when CallBack is selected.

    To create a new Java class, click Create a new class icon.

    To browse to an existing Java class and use the Type selection dialog

    box, click Browse a class icon.

    For more information about Enabling Callbacks, see ValidateHL7Callback.

    Description

    The Description tab is used to provide a short description for the activity.

    Input

    The following table lists the fields on the Input tab:

    21

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field Datatype Description

    validator_profile

    string Optional. Contains configuration information for this activity.

    Each time you validate, this file is read to determine what is to bechecked and what is to be displayed on the screen or written tooutput files.

    The value is the full path of the validator_profile file.

    The $fsdeflt.apf file, which is installed in the Foresight Instreambin directory, is the default profile file for the validate operation. Ifthe $fsdeflt.apf file is modified, the changes do not take effectuntil you stop and restart TIBCO Business Studio.

    guideline_name

    string The name of the guideline used for the validation.

    It must be in the TIBCO_FORESIGHT_HOME/Instream/Databasedirectory. If you want to share guidelines with theTIBCO_FORESIGHT_HOME/Translator/Database directory, refer tothe Share Guidelines and Maps section in this topic.

    msg_content string The input data for validation.

    Share Guidelines and Maps

    If you install Foresight Translator and Foresight Instream in different directories, you can share theirDatabase directories by modifying the TIBCO_FORESIGHT_HOME/Instream/bin/$dir.ini orTIBCO_FORESIGHT_HOME/Translator/bin/$dir.ini file.

    For example, if you want to use the TIBCO_FORESIGHT_HOME/Instream/Database directory as shared,perform the following steps:

    1. Open the TIBCO_FORESIGHT_HOME/Translator/bin/$dir.ini file.

    2. Modify the database path and point it to the TIBCO_FORESIGHT_HOME/Instream/Databasedirectory.

    The following code is an example::* FORESIGHT Supplied .STD Standard FilesFSFACTORY ="C:\Foresight\Instream\Static"

    :*User-defined .STD Standard FilesALLUSERSSHARED ="C:\Foresight\Instream\Database"

    The value must be enclosed in double quotation marks.

    3. After making the modification, you can put the involved XSD, STD, and MAP files either in theTIBCO_FORESIGHT_HOME/Translator/Database directory or in the TIBCO_FORESIGHT_HOME/Instream/Database directory.

    Output

    The result and the summary report are listed on the Output tab. For more information about outputitems, see TIBCO Foresight® Instream® Validation Technical Manual.

    The following table lists the fields on the Output tab:

    22

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Output Item Datatype Description

    Validation string Validation_result_in_flatfile - Specifies the message of thevalidation detail results in Flat File format.

    Validation_summary_in_flatfile - Specifies the message of thevalidation summary results in Flat File format.

    Validation_summary

    numeric Severity - Error severity summary record.

    Type - Error type summary record, containing the following counts:

    ● ignoreCount

    ● infoCount

    ● warningCount

    ● errorCount

    ● fatalCount

    ● user1Count

    ● user2Count

    total_of_errors numeric Total number of errors.

    return_code numeric Specifies the Foresight Instream return code.

    For example, 100 means the validation ran successfully and 133means the database directory cannot be opened.

    Return codes are listed in the Foresight Instream documentation.

    Fault

    The Fault tab lists errors that might occur when you use this activity.

    Error SchemaElement Datatype Description

    msg string Error message description.

    msgCode string The error code. It represents ActiveMatrix BusinessWorks Plug-infor HL7 with FHIR and Foresight Translator and Foresight Instreamerrors.

    For more information about error codes, see HL7 Error Codes.

    ValidateHL7 CallBack

    Overview

    By using the ValidateHL7 CallBack, you can select the validation guidelines and profiles based on thecontents of the input data by modifying the Java code.

    Enable Callback

    To enable the ValidateHL7 CallBack:

    23

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 1. Select the TIBCO ActiveMatrix BusinessWorks Application Module when creating a new project.

    2. Enter a Project name, select the Use Java configuration check box, and click Next.

    24

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 3. Select the CallBack check box on the General tab of the ValidateHL7 activity and click Create a new

    class .

    4. Fill in Class Name and click Finish.

    A Java class is created with default functions and variables.

    25

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Result

    The following MSH information is set to HashMap infoMap. key = Info.ReceivingApplicationUniversalID key = Info.SendingFacilityNamespaceID key = Info.MessageTypeMessageStructure key = Info.MessageHeader, value = MSH key = Info.SendingFacilityUniversalID key = Info.ReceivingFacilityUniversalID key = Info.id, value = HL7 key = Info.SendingFacilityUniversalIDType key = Info.ReceivingFacilityUniversalIDType key = Info.SendingApplicationNamespaceID key = Info.DateTimeofMessage key = Info.ReceivingApplicationNamespaceID key = Info.ReceivingApplicationUniversalIDType key = Info.SendingApplicationUniversalID key = Info.Version key = Info.ReceivingFacilityNamespaceID key = Info.MessageTypeTriggerEvent key = Info.SendingApplicationUniversalIDType key = Info.MessageTypeMessageCode

    Use the “get” function to access the values in the map.

    infoMap.get("Info.MessageTypeMessageCode")

    Setting Guidelines and Profiles

    You can set guidelines and profiles by modifying public void selectGuideline() in the Java code.

    Refer to the associated examples:

    ● Validate and Translate ExampleIf Guideline Resides on Disk (Instream Database Directory)

    Sign the map image to variable mapFileBuffer.guidelineName = “VXR_V03.std”;

    If Guideline Resides in Memory (Database)

    1. Sign the guideline image to variable guidelineByteBuffer.

    guidelineByteBuffer=(guideline in byte[]);

    26

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 2. Sign the guideline name to variable guidelineName.

    guidelineName = “VXR_V03.std”;

    Setting a Profile

    Directly assign the profile name to the variable apfFileName.

    apfFilename=”user_profile.apf”;

    TranslateHL7The TranslateHL7 activity utilizes Foresight Translator to translate a file from one format to anotherformat.

    Use the Translate HL7 activity to specify a translation type and translation map to be used to translateinput data from one format to another with no interim staging required.

    Example

    Refer to the associated example:

    ● Validate and Translate Example

    Translated Data Formats

    Translation for the following data formats is supported by this activity:

    From (Source) To (Target)

    HL7 XML

    HL7 HL7

    HL7 Flat File

    XML HL7

    Flat File HL7

    General

    The following table lists the fields on the General tab:

    Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    27

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    OperationType

    No List of operation types.

    Refer to the Translated Data Formats section.

    CallBack No Optional. Select this check box to use a Java Class for callback.

    This function is not available for XML input.

    For more information about Enabling Callback, see TranslateHL7Callback.

    Class Name No Specify a Java Class. This field is enabled when CallBack is selected.

    To create a new Java class, click Create a new class icon.

    To browse to an existing Java class and use the Type selection dialog

    box, click Browse a class icon.

    For more information about Enabling Callbacks, see TranslateHL7Callback.

    Description

    The Description tab is used to provide a short description for the activity.

    Input

    The following table lists the fields on the Input tab:

    Field Datatype Description

    map_filename string This field specifies the name and extension of a map file.ActiveMatrix BusinessWorks Plug-in for HL7 with FHIR supportsmap files with the .map and .xml file name extensions.

    A map file specifies the source and target guidelines for eachtranslation map. The source guideline describes the data beforetranslation. The target guideline describes the data after translation.

    All involved XSD, STD, and MAP files must be in theTIBCO_FORESIGHT_HOME/Translator/Database

    directory. If you want to share guidelines with theTIBCO_FORESIGHT_HOME /Instream/Database directory,refer to the Share Guidelines and Maps section in thistopic.

    msg_content string The message content to be translated.

    28

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field Datatype Description

    inputencoding

    string Optional. The input encoding used for translation.

    This is used when translating to ISO-8859-1 only. Valid values areblank (no encoding) or ISO-8859-1.

    outputencoding

    string Optional. The output encoding used for translation.

    Valid values are blank (no encoding), UTF-8, UTF-16, or ISO-8859-1.

    Share Guidelines and Maps

    If you install Foresight Translator and Foresight Instream in different directories, you can share theirDatabase directories by modifying the TIBCO_FORESIGHT_HOME/Instream/bin/$dir.ini orTIBCO_FORESIGHT_HOME/Translator/bin/$dir.ini file.

    For example, if you want to use the TIBCO_FORESIGHT_HOME/Instream/Database directory as shared,perform the following steps:

    1. Open the TIBCO_FORESIGHT_HOME/Translator/bin/$dir.ini file.

    2. Modify the database path and point it to the TIBCO_FORESIGHT_HOME/Instream/Databasedirectory.

    The following code is an example::* FORESIGHT Supplied .STD Standard FilesFSFACTORY ="C:\Foresight\Instream\Static"

    :*User-defined .STD Standard FilesALLUSERSSHARED ="C:\Foresight\Instream\Database"

    The value must be enclosed with double quotation marks.

    3. After making the modification, you can put the involved XSD, STD, and MAP files either in theTIBCO_FORESIGHT_HOME/Translator/Database directory or in the TIBCO_FORESIGHT_HOME/Instream/Database directory.

    Output

    The Output tab contains the following fields:

    Output Item Datatype Description

    msg_content string The output of this activity is the translated message in the specifiedformat, which can be the HL7, XML, or Flat File format.

    The generated message format is specified in the Operation Typefield on the Configuration tab.

    return_code numeric Specifies the Foresight Translator return code.

    For example, 100 means the transaction ran successfully, 158 meansthe map file cannot be opened, and so on.

    Foresight Translator return codes are listed in the ForesightTranslator documentation.

    encoding string The encoding used for translation.

    29

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Fault

    The Fault tab lists errors that might occur when you use this activity.

    ErrorSchemaElement Datatype Description

    msg string Error message description.

    msgCode string The error code. It represents ActiveMatrix BusinessWorks Plug-in forHL7 with FHIR and Foresight Translator errors.

    For more information about error codes, see HL7 Error Codes.

    TranslateHL7 CallBack

    Overview

    By using the TranslateHL7 CallBack, you can select a translation map based on the contents of the inputdata by modifying the Java code.

    This function is not available for XML input.

    Enable Callback

    To enable TranslateHL7 CallBack:

    1. Select the TIBCO ActiveMatrix BusinessWorks Application Module when creating a new project.

    30

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 2. Enter a project name, select the Use Java Configuration configuration check box, and click Next.

    3. Select the CallBack check box on the General tab of the TranslateHL7 activity and click Create a

    new class .

    4. Enter a class name and click Finish.

    A Java class is created with default functions and variables.

    31

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Result

    The following (HL7 input) MSH information is set to HashMap infoMap key = Info.ReceivingApplicationUniversalID key = Info.SendingFacilityNamespaceID key = Info.MessageTypeMessageStructure key = Info.MessageHeader, value = MSH key = Info.SendingFacilityUniversalID key = Info.ReceivingFacilityUniversalID key = Info.id, value = HL7 key = Info.SendingFacilityUniversalIDType key = Info.ReceivingFacilityUniversalIDType key = Info.SendingApplicationNamespaceID key = Info.DateTimeofMessage key = Info.ReceivingApplicationNamespaceID key = Info.ReceivingApplicationUniversalIDType key = Info.SendingApplicationUniversalID key = Info.Version key = Info.ReceivingFacilityNamespaceID key = Info.MessageTypeTriggerEvent key = Info.SendingApplicationUniversalIDType key = Info.MessageTypeMessageCode

    Use the “get” function to access the values in the map.

    infoMap.get("Info.MessageTypeMessageCode")

    Setting the Map, Source Guideline, and Target Guideline

    Refer to the associated examples:

    ● Validate and Translate Example

    If Map Resides on Disk (Translator Database Directory)

    Set up the Map file name.

    1. Directly assign the map name to variable mapFileName.

    mapFileName = “VXR_V03_VXR_V03_EX.map”;

    2. Update the configName variable with the format configName=mapname||.

    configName=“VXR_V03_VXR_V03_EX.map||”

    If Map Resides in Memory (Database)

    32

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 1. Update the configName variable with the format configName = MapName|SourceGuidelineName|TargetGuidelineName;

    2. Assign the map image to variable mapFileBuffer =(map image in byte[]).

    3. Specify the source guideline variable with the format sourceGuidelineBuffer = (sourceguideline image in byte[]);

    4. Specify the target guideline variable with the format targetGuidelineBuffer = (targetguideline image in byte[]);

    LLPReceiverUse the LLPReceiver activity to receive HL7 messages on one port.

    Example

    Refer to the associated example:

    ● Receive Process

    General

    The following table lists the fields on the General tab:

    Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    Port Yes The port through which your client connects to a server system.Only one port can be given.

    Separator Yes List of allowed separators:

    ● Minimal LLP - Default

    ● Linefeed Linefeed-Linefeed

    ● Carriage return-linefeed

    ● Empty line by using linefeed

    ● Empty line by using Carriage return-linefeed

    ● No separator

    The separator only separates messages. It does notseparate a message into lines.

    Encoding Yes The encoding used to convert between binary and text formats.

    33

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Read Timeout(sec)

    Yes Number of seconds before server terminates the connection.

    MaximumConnections

    Yes Maximum number of simultaneous sessions that can connect withthe server. The default is 20.

    Description

    The Description tab is used to provide a short description for the activity.

    Advanced

    The Advanced tab contains the following fields:

    Field Description

    Sequence Key This field can contain an XPath expression that specifies which processes shouldrun in a specified order.

    Process instances with sequencing keys evaluating to the same value areexecuted sequentially in the order of the process instance creation.

    For more information about controlling the execution order of process instancesand about XPath expressions, see TIBCO ActiveMatrix BusinessWorks™Application Development.

    Custom Job Id This field can contain an XPath expression that specifies a custom ID for theprocess instance.

    Conversations

    On the Conversations tab, you can initiate or join a conversation.

    Conversations receive a message after creating a process instance, which is initiated or joined by anactivity. This activity can be used to initiate a conversation. Click the Add New Conversation icon toinitiate a conversation. For details about conversations, see TIBCO ActiveMatrix BusinessWorks™Application Development.

    Input

    There are no dynamic inputs for this activity.

    Output

    The Output for the activity can be the incoming HL7 message string.

    34

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • LLPRequestResponseUse the LLPRequestResponse activity to send a request and receive a synchronous response. Therequest and response can be in the form of an HL7 string or XML data.

    Synchronous response means that the response is sent on the same TCP connection. If a connection isclosed, and a response is sent on a different TCP connection, then it is called an asynchronous response.

    This activity sends its request to the LLP Receiver activity, which passes the request to the LLPResponse activity. If the Is One Way check box is not selected and the LLP Receiver activity issuspended before the LLP Response activity returns the response to the LLP Receiver, the LLP RequestResponse activity might get an empty string.

    Examples

    Refer to the associated examples:

    ● Illustrate AL Process

    ● Illustrate NE Process

    General

    The following table lists the fields on the General tab:

    Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    Host Yes The machine name or IP of the server machine.

    Port Yes The port through which your client connects to a server system.Only one port can be given.

    Separator Yes List of allowed separators:

    ● Minimal LLP - Default

    ● Linefeed Linefeed-Linefeed

    ● Carriage return-linefeed

    ● Empty line using linefeed

    ● Empty line using Carriage return-linefeed

    ● No separator

    The separator only separates messages. It does notseparate a message into lines.

    35

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Encoding Yes The encoding used to convert between binary and text formats.

    RequestTimeout(msec)

    Yes Number of milliseconds to wait before the request or read times out.

    Default is 0.

    ConnectionRetries

    Yes Number of retries if connection fails.

    Default is 1.

    Retry wait(sec)

    Yes Number of seconds to wait before next retry, if any.

    Default is 5.

    Is One Way Yes If selected, after sending a request, a response is not expected.

    If not selected, after sending a request, a response is expected.

    Description

    The Description tab is used to provide a short description for the activity.

    Input

    The following table lists the fields on the Input tab:

    Input Item Datatype Description

    data string The request HL7 message string to be sent out.

    encoding string Optional. Encoding information about the message to be sent out.

    separator string Optional. You can specify a special message separator here.

    Output

    The output for the activity can be the incoming HL7 message string.

    Fault

    The Fault tab lists errors that might occur when you use this activity.

    ErrorSchemaElement Datatype Description

    msg string Error message description.

    36

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • ErrorSchemaElement Datatype Description

    msgCode string The error code.

    It represents ActiveMatrix BusinessWorks Plug-in for HL7 with FHIRand Foresight Translator and Foresight Instream errors.

    For more information about error codes, see HL7 Error Codes.

    LLPResponseUse the LLPResponse activity to send a synchronous response back to the initiating system on TCPover LLP.

    This activity can work in combination with the LLPReceiver activity.

    Example

    Refer to the associated example:

    ● Receive Process

    General

    The General tab contains the following fields:

    Field

    LiteralValue/ModuleProperty/ProcessProperty? Description

    Name No The name to be displayed as the label for the activity in the process.

    Reply for No Provides a choice of LLP Receivers in the process to be used.

    Separator Yes List of allowed separators:

    ● Minimal LLP - Default

    ● Linefeed Linefeed-Linefeed

    ● Carriage return-linefeed

    ● Empty line using linefeed

    ● Empty line using Carriage return-linefeed

    ● No separator

    The separator only separates messages. It does notseparate a message into lines.

    37

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Description

    The Description tab is used to provide a short description for the activity.

    Input

    The Input tab contains the following fields:

    Field Datatype Description

    data string The request HL7 message string to be sent out.

    encoding string Optional. Encoding information about the message to be sent out.

    separator string Optional. You can specify a special message separator here.

    Fault

    The Fault tab lists errors that might occur when you use this activity.

    ErrorSchemaElement Datatype Description

    msg string Error message description.

    msgCode string The error code.

    It represents ActiveMatrix BusinessWorks Plug-in for HL7 with FHIRand Foresight Translator and Foresight Instream errors.

    For more information about error codes, see HL7 Error Codes.

    HL7 Custom FunctionsAn important part of any HL7 integration project is the data mapping from one message format toanother. ActiveMatrix BusinessWorks offers advanced functionality in data mapping, including drag-and-drop and a comprehensive suite of built-in functions.

    However, no matter how complete the built-in functions are, there is always a need to customize,especially in the healthcare industry. ActiveMatrix BusinessWorks Plug-in for HL7 with FHIR includesa useful set of custom functions.

    For more information about writing, loading, and using your own custom functions, see theActiveMatrix BusinessWorks documentation .

    Using HL7 Custom Functions

    ActiveMatrix BusinessWorks Plug-in for HL7 with FHIR includes a set of HL7-related customfunctions, which are specified in the bwpluginhl7_HOME/resources/HL7CustomFunctions.class file.

    To use these functions:

    1. Create or open a project in TIBCO Business Studio.

    2. Load the pre-defined class file into the project by using the Java Custom Function resource.

    38

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Custom Functions Usage

    To see the HL7 specific custom functions:

    1. Click an Activity in the Process editor.

    2. In the properties pane, select the appropriate tab (usually the Input tab) and click the Functions tabin the XPath Formula Builder dialog box.

    3. Expand the HL7 Functions folder. The custom HL7 functions appear.

    Available HL7 Custom Functions

    Function Description and Sample Usage

    HL7ToDisplayable Replaces \r with system line separator. Sample usage:

    HL7ToDisplayable($hl7Msg)

    currentTimeMillis Returns current time in milliseconds.

    currentTimeStamp Returns current timestamp in HL7 format: yyyyMMddhhmmss.

    deleteSegments Returns HL7 message after the specified segments are removed. Sampleusage:

    deleteSegment($hl7Msg,"ZSH:EVN")

    Sample output:

    The EVN and ZSH segments are removed from the message.

    displayableToHL7 HL7 requires that all segments end with \r. This function converts DOS/UNIX format file into HL7 ER7 format. Sample usage:

    displayableToHL7($hl7MsgInDisplayFormat)

    extractField Extracts the indexed field from HL7 Message from the first segment witha given segment name. Sample usage:

    extractField($Hl7MsgString,$segmentName,$index)

    generateNewGUID Generates a unique ID.

    39

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Function Description and Sample Usage

    separateMsgsFromBatch Returns individual messages in the batch by removingFHS/BHS/BTS/FTS segments.

    trimEmptyFields Trims empty fields from an HL7 message.

    HL7 Palette Example ProcessesActiveMatrix BusinessWorks Plug-in for HL7 with FHIR examples are packaged with the installation ofthe plug-in.

    This information describes how to run the HL7 palette examples on a Microsoft Windows platform.

    By default, the following examples are located in the \palettes\hl7\\samples directory:

    ● LLP Example - How to transport HL7 messages by using Lower Level Protocol (LLP).

    ● Parser and Renderer Example - How to translate input data from one data format to another dataformat.

    ● Validate and Translate Example - How to validate input data and translate it from one data formatto another data format by using different methods of specifying validation guidelines andtranslation maps.

    Setting Up and Running the HL7 ExamplesUse the following information to set up and run ActiveMatrix BusinessWorks Plug-in for HL7 withFHIR examples.

    You should be familiar with the plug-in before running the examples.

    Copy Guidelines and Maps

    The HL7 examples make use of guidelines and maps. Before using any of the examples, you must copythe associated files to the appropriate directory.

    For each example, guidelines and map files are found in the \Guidelines directory for the example.For example, \bw\palettes\hl7\\samples\ParserAndRenderer\DataAndGuidelines\Guidelines.

    Copy the guideline and map files as follows:

    1. Copy the .std, .xsd, and .map files to \Database directory of Foresight Translator.

    2. Copy the .std files to \Database directory of Foresight Instream.

    Note that the .std files are copied to the \Database directory for Foresight Translator and ForesightInstream.

    Importing an Example

    Use the following steps to import an example:

    1. Select File > Import.

    The Import screen appears.

    2. Select Existing Studio Projects into Workspace.

    40

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • The Browse For Folder screen appears.

    3. Browse to the location of the desired HL7 samples. By default this is the \palettes\hl7\\samples directory, as shown here:

    The path is different if you have saved the samples to another location.

    Optional: Set Environment Variables for the Process

    Instream and Translator environment variables should have been set as part of the ActiveMatrixBusinessWorks Plug-in for HL7 with FHIR Post-installation tasks (refer to TIBCO ActiveMatrixBusinessWorks™ Plug-in for HL7 with FHIR Installation). Doing so tells ActiveMatrix BusinessWorkswhere to access the Instream and Foresight Translator executables when the products are used in anActiveMatrix BusinessWorks Plug-in for HL7 with FHIR process.

    It is also possible to specify environment variables on a per-process basis. The following procedureinstructs the process to utilize the variables specified for the process instead of those specified forActiveMatrix BusinessWorks at the higher level.

    Refer to the appropriate section for your operating system:

    For Windows Platforms

    1. Open the desired process and click within the process.

    2. Select Run > Run Configurations....

    41

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • The Run Configuration screen appears.

    3. Select the environment tab and double click PATH.

    The Edit Environment Variable screen appears.

    4. Add the path to the desired location of the Instream\bin and Translator\bin directories at thebeginning of the string, before the first $ character, and with a ; at the end of each segment of addedtext.

    Do not delete the existing string, simply add information at the beginning.

    Example:

    C:\tibco64\instream\8.5\bin;C:\tibco64\translator\3.5\bin;${env_var:FTL_HOME}...

    5. Select Apply.

    6. Select Close.

    For Unix Platforms

    1. Open the desired process and click within the process.

    2. Select Run > Run Configurations....

    The Run Configuration screen appears.

    3. Select the environment tab and double click LD_LIBRARY_PATH.

    The Edit Environment Variable screen appears.

    4. Add the path to the desired location of the Instream/bin and Translator/bin directories at thebeginning of the string, before the first $ character, and with a : at the end of each segment of addedtext.

    42

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Do not delete the existing string, simply add information to the beginning.

    Example

    /home/bw/bw630/instream/8.5/bin:/home/bw/bw630/translator/3.5/bin:${env_var:FTL_HOME}...

    5. Select Apply.

    6. Select New.

    7. Add a new variable FSINSTREAMINI and specify the desired location of the Instream\bindirectory.

    8. Select Apply.

    9. Select New.

    10. Add a new variable FSTRANSLATORINI, and specify the desired location of the Translator\bindirectory.

    11. Select Apply.

    12. Select Close.

    This example shows a sample Run Configuration screen after the variables have been set for Unix.

    Verify File Paths in the Examples

    Before running an example, verify the file path used in the example is correct for your environment.

    1. Open the desired example.

    In this image, the IllustrateAL.bwp process is opened.

    43

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 2. Check the file path. In this example the FilePoller activity is set to pick up the input file at thefollowing path \samples\palette\hl7\\samples\LLP\DataAndGuidelines\Data\ADT_A05AL.hl7. You might have to alter the file path if you havesaved the samples to a different location.

    Running an Example

    1. Open the desired example.

    2. To run the example, click Run > Run.

    After the process executes successfully, a Success message is written to the Console. SelectWindow > Show Console in TIBCO Business Studio to view the log messages.

    3. Optional: To debug the application, click Run > Debug.

    44

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • The perspective changes to Debug from Modeling. You can view the job details in the Console viewfrom the Debug perspective.

    LLP ExampleThe \bw\palettes\hl7\\samples\LLP folder contains sample projects that helpyou understand how to transport HL7 messages by using Lower Level Protocol (LLP).

    For more information about the LLP activities, see LLPReceiver, LLPRequestResponse, and LLPResponse.

    Example Data Files

    These examples make use of the data files found in the \bw\palettes\hl7\\samples\LLP\DataAndGuidelines\Data folder:

    ● ADT_A05NE.hl7 - The HL7 message file that triggers the Illustrate NE process.

    ● ADT_A05AL.hl7 - The HL7 message file that triggers the Illustrate AL process.

    Process Description

    This example contains the following predefined processes:

    ● Illustrate AL Process

    ● Illustrate NE Process

    ● Receive Process

    Illustrate AL Process

    The Illustrate AL process sends the HL7 message string to the server and receives an acknowledgmentmessage in response.

    Example Process

    The Illustrate AL Process is illustrated here:

    45

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Process Definition

    The process performs the following operations:

    1. The FilePoller activity polls the file named ADT_A05AL.hl7 in the directory specified in the FileName field of the Configuration tab. If the file exists then the process starts.

    2. The LLP Request Response activity sends the HL7 messages in the ADT_A05AL.hl7 file to the server,and then receives an acknowledgment message as response from the server.

    3. After the process executes successfully, a Success message is written to the Console. Select Window> Show Console in TIBCO Business Studio to view the log messages.

    Illustrate NE Example

    The Illustrate NE process sends the HL7 message string to the server and expects no response.

    Example Process

    The Illustrate NE Process is illustrated here:

    46

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Process Definition

    This process is similar to the Illustrate AL process with one exception: it expects no response. Thisoption is configured through the General tab of the LLPRequestResponse activity by using the Is OneWay check box, as shown here.

    See Illustrate AL Process for more details on the Process Definition.

    Receive Example

    The Receive process parses the header of the received HL7 messages and sends the generatedacknowledgment response back depending on the acknowledgment type.

    Example Process

    The Receive Process is illustrated here:

    47

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Process Definition

    The process performs the following operations:

    1. The HL7 LLP Receiver activity receives the HL7 messages sent from the client. The process starts.

    2. The Parse HL7 Header activity parses the header of the received HL7 messages and generates itsacknowledgment.

    3. After the process executes successfully, a Success message is written to the Console. Select Window> Show Console in TIBCO Business Studio to view the log messages.

    Parser and Renderer ExampleThe \bw\palettes\hl7\\samples\ParserAndRenderer folder contains sampleprojects that help you understand how to translate input data from one data format to another dataformat.

    For more information about translating data, see TranslateHL7.

    Example Data Files

    These examples make use of the following data file found at the following location - \bw\palettes\hl7\\samples\ParserAndRenderer\DataAndGuidelines\Data:

    ● ADT_A05.hl7 - The HL7 ADT_A05 message that triggers the ParseAndRender process.

    Example Guideline and Map Files

    These examples make use of the following guideline and map files found in the \bw\palettes\hl7\\samples\ParserAndRenderer\SchemaFiles\Guidelines area:

    ● HL7_26_ADT_A05.std - The schema definition for an ADT_A05 message in HL7 format. This is thesource guideline that describes the message before translation.

    48

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • ● HL7_26_ADT_A05.xsd - The guideline for an ADT_A05 message in XML format. This is the targetguideline that describes the message after translation.

    ● HL7_26_ADT_A05_EX.map - The predefined map file that is used to translate the ADT_A05 messagefrom HL7 format into XML format.

    ● HL7_26_ADT_A05_XE.map - The predefined map file that is used to translate the ADT_A05 messagefrom XML format into HL7 format.

    ● HL7_26_ADT_A28.std - The schema definition for an ADT_A28 message in HL7 format. This is thetarget guideline that describes the message after translation.

    ● HL7_26_ADT_A28.xsd - The guideline for an ADT_A28 message in XML format. This is the sourceguideline that describes the message before translation.

    ● HL7_26_ADT_A28_EX.map - The predefined map file that is used to translate the ADT_A28 HL7format into XML format.

    ● HL7_26_ADT_A28_XE.map - The predefined map file that is used to translate the ADT_A28 messagefrom XML format into HL7 format.

    Process Description

    This example contains the following predefined process:

    ● Parse and Render Process

    Parser and Renderer Process

    The ParserAndRenderer example shows how to translate input data from one data format to anotherdata format by using parsing. In this case, the ADT_AO5.hl7 data is transformed into ADT_A28.hl7 databy using the TranslateHL7 activity to map and translate data.

    Example Process

    The Parser and Renderer process is illustrated here:

    Process Definition

    The process performs the following operations:

    1. The FilePoller activity polls the file named ADT_A05.hl7 in the directory specified in the File Namefield of the Configuration tab. If the file exists then the process starts.

    The ADT_A05.hl7 file is passed to the Translate_ADTA05_toXML activity.

    2. The Parse ADT_A05 activity translates the ADT_A05.hl7 file into an XML string based on theHL7_26_ADT_A05_EX.map file.

    49

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • The XML string is passed to the Parse XML ADT_A05 activity.

    3. The Parse XML ADT_A05 activity parses the input XML string into an XML schema tree based onthe HL7_26_ADT_A05.xsd file that is specified on the Output Editor tab.

    The parsed XML schema is passed to the Map To ADT_A28 activity.

    4. The Map To ADT_A28 activity takes the parsed XML schema and renders it as an XML string basedon the HL7_26_ADT_A28.xsd file that is specified on the Input Editor tab.

    The XML string is passed to the XML To HL7 activity.

    5. The XML To HL7 activity translates the input XML string into the HL7 message.

    Validate and Translate ExampleThe \bw\palettes\hl7\\samples\ValidateAndTranslate folder contains asample project that helps you understand how to validate input data and translate it from one dataformat to another data format by using different methods of specifying validation guidelines andtranslation maps.

    For more information about validating and translating data, see ValidateHL7 and TranslateHL7.

    Example Data Files

    These examples make use of the following data file found at \bw\palettes\hl7\\samples\ValidateAndTranslate\DataAndGuidelines\Data:

    ● VXR_V03_ascii.txt - The EDI text file that triggers the ValidateandTranslate process.

    Example Guideline and Map Files

    These examples make use of the following guideline and map files found at \bw\palettes\hl7\\samples\ValidateAndTranslate\DataAndGuidelines\Guidelines:

    ● VXR_V03.std - The schema definition for a VXR_V03 message in ASCII text format. This is thesource guideline that describes the message before translation.

    ● VXR_V03_VXR_V03.xsd - The guideline for a VXR_V03 message in XML format. This is the targetguideline that describes the message after translation.

    ● VXR_V03_VXR_V03_EX.map - The predefined map file that is used to translate the VXR_V03 messagefrom HL7 format into XML format.

    ● VXR_V03_VXR_V03_XE.map - The predefined map file that is used to translate the VXR_V03 messagefrom XML format into HL7 format.

    Process Description

    This example contains the following predefined process:

    ● Validate and Translate Process

    Validate and Translate Process

    The ValidateAndTranslate example shows how to validate input data and translate it from one dataformat to another data format by using three different methods of specifying validation guidelines andtranslation maps.

    For more information about validating and translating data, see ValidateHL7 and TranslateHL7.

    Example Process

    The Validate and Translate process is illustrated here:

    50

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Process Definition

    The process illustrates validation of an HL7 file and translation of the file to XML format by using threedifferent methods.

    ● Validation and Translation directly assigning a guideline and map

    ● Validation and Translation by using a Callback to select a guideline and map by name

    ● Validation and Translation by using a Callback to select a guideline and map from memory

    Validation and Translation directly assigning a guideline and map

    This process performs the following operations:

    1. The FilePoller activity polls the file named VXR_V03_ascii.txt in the directory specified in the FileName field on the Configuration tab. If the file exists then the process starts.

    The VXR_V03_ascii.txt file is passed to the Validate_case1 activity.

    2. The Validate_case1 activity validates VXR_V03_ascii.txt file by using the VXR_V03.std file. TheVXR_V03.std file is specified directly during configuration of the Validate_case1 activity, as shownhere:

    The validated file is passed to the Translate_case1 activity.

    51

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • 3. The Translate_case1 activity translates the validated file by using the VXR_V03_VXR_V03_EX.map file.

    The VXR_V03_VXR_V03_EX.map file is specified directly during configuration of the Translate_case1activity, as shown here:

    Translate_case1 activity translates the input HL7 string into an XML format.

    For more information about validating and translating data, see ValidateHL7 and TranslateHL7.

    Validation and Translation by using a CallBack to select a guideline and map by name

    This process performs the following operations:

    1. The FilePoller activity polls the file named VXR_V03_ascii.txt in the directory specified in the FileName field on the Configuration tab. If the file exists then the process starts.

    The VXR_V03_ascii.txt file is passed to the Validate_case2 activity.

    2. The Validate_case2 activity validates VXR_V03_ascii.txt file by using a guideline selected with aValidateHL7 CallBack. To select validation guidelines and validation profiles based on the contentsof the input data use ValidateHL7 CallBack and modify the Java code.

    In this case, the available guidelines exist on disk and the correct guideline is selected by using aCallBack based on information contained in the input file header information. For example, if theinput file header contains the value "X", the CallBack knows to select guideline "Y".

    For more information about validating data by using CallBacks, see ValidateHL7 CallBack.

    The validated file is passed to the Translate_case2 activity.

    3. The Translate_case2 activity translates the validated file by using a translation map specified with aTranslateHL7 CallBack. To select a translation map based on the contents of the input data useTranslateHL7 CallBack and modify the Java code.

    In this case, the available translation maps exist on disk and the correct map is selected by using aCallBack based on information contained in the input file header information. For example, if theinput file header contains the value "X", the CallBack knows to select translation map "Y".

    For more information about translating data by using CallBacks, see TranslateHL7 CallBack.

    52

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Translate_case2 activity translates the input HL7 string into an XML format.

    Validation and Translation by using a Callback to select a guideline and map from memory

    This process performs the following operations:

    1. The FilePoller activity polls the file named VXR_V03_ascii.txt in the directory specified in the FileName field on the Configuration tab. If the file exists then the process starts.

    The VXR_V03_ascii.txt file is passed to the Validate_case3 activity.

    2. The Validate_case3 activity validates VXR_V03_ascii.txt file by using the a guideline specifiedwith a ValidateHL7 CallBack. To select validation guidelines and validation profiles based on thecontents of the input data use ValidateHL7 CallBack and modify the Java code.

    In this case, the available guidelines exist in the memory buffer and the correct guideline is selectedby using a CallBack based on information contained in the input file header information. Forexample, if the input file header contains the value "X", the CallBack knows to select guideline "Y".

    For more information about validating data by using CallBacks, see ValidateHL7 CallBack.

    The validated file is passed to the Translate_case3 activity.

    3. The Translate_case3 activity translates the validated file by using a translation map specified with aTranslateHL7 CallBack. To select a translation map based on the contents of the input data useTranslateHL7 CallBack and modify the Java code.

    In this case, the available translation maps exist in the memory buffer and the correct map isselected by using a CallBack based on information contained in the input file header information.For example, if the input file header contains the value "X", the CallBack knows to select translationmap "Y".

    For more information about translating data by using CallBacks, see TranslateHL7 CallBack.

    53

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • Translate_case3 activity translates the input HL7 string into an XML format.

    54

    TIBCO ActiveMatrix BusinessWorks™ Plug-in for HL7 with FHIR User's Guide

  • FHIR Palette Overview

    The FHIR Palette contains activities for use with FHIR (Fast Healthcare Interoperability Resources), ahealthcare standards framework from the HL7 (Hea