Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
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