1 caAdapter Jan 24, 2006. 2 caAdapter The caAdapter is an open source tool that facilitates HL7...
-
Upload
jenna-prier -
Category
Documents
-
view
213 -
download
0
Transcript of 1 caAdapter Jan 24, 2006. 2 caAdapter The caAdapter is an open source tool that facilitates HL7...
caAdapter 2
caAdapter
The caAdapter is an open source tool that facilitates HL7
version 3 message building, parsing and validation based on specific message definitions. It provides the capability to perform vocabulary validation and integrates with NCICB caCORE components. This supports NCICB’s mission of developing a translational research infrastructure and building a clinical research network by providing a common platform for sharing data.
caAdapter 3
Clinical Trials Infrastructure
Challenges for Clinical Trials Data Sharing and Data
Exchange
HL7 v3 messages
Java APIWeb ServiceMessaging
ServiceBatch
Process
•Different technologies•Different data structures•Different data semantics
•Different messages•Different ways of communications
caAdapter 4
How the caAdapter Works
Transformation (APIs)
Source Data(csv format)
Mapping Tool
HL7 v3 XML
Clinical Data
caAdapter 5
How the caAdapter Works
Source Specification-- Structure of the source data
1
Clinical Data
System
1
Mapping Tool
Source Data(csv)
caAdapter 6
How the caAdapter Works
Source Specification
HL7 Specification
1
Clinical Data
System
1
Mapping Tool
HMD2
Source Data(csv)
caAdapter 7
How the caAdapter Works
Mapping Tool
Source Specification
HL7 Specification
3
Mapping File
1
Clinical Data
System
1
HMD2
Source Data(csv)
caAdapter 8
How the caAdapter Works
Transformation
Source Specification
HL7 v3 XML
HL7 Specification
3
Convert Clinical Data to HL7 v3 Message
4
Source Data(csv)
1
Clinical Data
System
1
Mapping File
Mapping Tool
HMD2
caAdapter 11
caAdapter Architecture – 1 (Core Engine)
HL7 v3
XML file
Validation
Vocabulary
HL7 v3 API
Meta Data Loader
Message Parser
Message Builder
Data Type
Objects
RIM
Objects
Metadata
Objects
Schema XSD
EVS
HMD
HL7 CTS
caBIO
Message Service
Integration*
Message Exchange
caAdapter 12
caAdapter Features – 1 (Core Engine)
● HL7 v3 Message Parser – parses HL7 version 3 messages to RIM object graph● HL7 v3 Message Builder – builds HL7 version 3 messages from the RIM object
graph● HL7 v3 Artifacts – implements RIM objects, data types and metadata objects● Metadata Loader – represents HL7 version 3 metadata in-memory ● Validation Services – integrates with NCICB caCORE components such as
Enterprise Vocabulary Service (EVS) and W3C XML schema validation services● Mapping Tool – maps clinical data to the HL7 version 3 message specification
currently, with extensible mapping and data transformation in the near future ● caAdapter API – uses mappings to generate HL7 version 3 messages ● Message Service – integrates with message exchange services (future plans)
caAdapter 13
caAdapter Architecture – 2 (Mapping Tool )
Specification Component
External Clinical Data:
CSV
CSV
User Interface
Tree Function Drag-n-Drop Property
Transformation Service
HL7 v3 Mapping Function
CSV Specification Mapping SpecificationHL7 v3 Specification
CSV to HL7 v3 ProcessorValidation
Core
Engine
Function Specification
HMD
HL7 v3
XML file
caAdapter 14
caAdapter Features – 2 (mapping tool)
● The Mapping Tool – graphical application for mapping clinical data to an HL7 version 3 message
● Source and Target Specification – graphical interface for defining input and output data formats
● Drag and Drop Interface – simple interface for mapping source fields to target elements
● Mapping Functions – capability to do simple source data manipulation
● XML Transformer – generation of XML message instances from source data based on the mapping
caAdapter 15
How the Batch Process Works
Convert Clinical Data to HL7 v3 Message
HL7 SpecificationSource Specification
HL7 v3 XMLCSV Data Files
Source Data
Mapping File
caAdapter 16
Transformation Service API
The transformation service reads the mapping file and converts a compliant source file into a series of HL7 v3 XML instances. The mapping file contains a reference to the source specification, target specification, function library specification, and mapping information.
Example:String mapFile040001 = FileUtil.getExamplesDirPath() + "/040001/040001.map";String csvSource040001 = FileUtil.getExamplesDirPath() + "/040001/040001.csv";TransformationService transformationService = new TransformationService(mapFile040001, csvSource040001);List<MapGenerateResult> mapGenerateResults = transformationService.process();for (int i = 0; i < mapGenerateResults.size(); i++) { MapGenerateResult mapGenerateResult = mapGenerateResults.get(i); String hl7V3Message = mapGenerateResult.getHl7V3MessageText(); System.out.println("Generated HL7 Message:\n" + hl7V3Message); ValidatorResults validatorResults = mapGenerateResult.getValidatorResults(); System.out.println("Validation Results:\n" + validatorResults);}