a java api for hl7 version 3 rim · 2018. 10. 24. · oracle mckesson us ... approved basic api...
TRANSCRIPT
-
Todd Fre te r
Program Manager
Web Technologies and Standards
A Java API for HL7 Vers ion 3 RIM
"Write once, run anywhere"
-
Useful abbrevia tions� HL7 = Hea lth Level Seven, Inc. www.hl7.org� SIG = Specia l Interest Group� V3 = Vers ion 3� RIM = Reference Information Model� RMIM = Refined Message Information Model� HMD = Hierarchical Message Definition� HIMSS = Health Information Management Systems
Society www.himss.org� ebXML = Electronic Bus iness XML www.ebxml.org� W3C = World Wide Web Consortium www.w3.org� OASIS = Organization for the Advancement of
Structured Information Standards www.oasis-open.org
-
Sun's HL7 work� Evange lize ebXML framework for e lectronic
business� Co-chair HL7 Java SIG� Represent Java SIG in HL7 Interoperability
events(e .g., HIMSS 2003)
� Support Java SIG code development by recruiting volunteers and funding work by experts under contract with Sun
-
Background: XML at HL7� Prior to 1996, HL7 developed EDI formats for
hea lthcare information interchange� "Kona Project," 1996: Explored us ing SGML in
hea lthcare� SGML/XML SIG chartered in 1997 with three
working groups Documents: Patient Record Architecture Messaging: Message encoding in XML Education: Teaching HL7 about XML
� Foundation for HL7 Vers ion 3, the XML-based standard (to be balloted this year)
-
HL7 Java SIG� Sponsored by HL7 Control/Query TC� Chartered to deve lop Java API to HL7 V3
RIM, which uses XML� Supported by
Sun Microsystems Oracle McKesson US Veterans Adminis tra tion Regenstrie f Institute (Univers ity of Indiana)
-
Goals of HL7 Java SIG� Encourage adoption of HL7 V3� Fos ter HL7 V3 application interoperability� Provide universa l HL7 API for full range of
hea lthcare applications� Provide sample implementations for
deve lopers� Encourage HL7 V3 API development for other
popular programming languages
-
HL7 Java SIG chronology� Approved by HL7 Technica l Steering
Committee and HL7 Board, May 2002� Approved basic API design in July 2002,
s tarted development� Accepted role in HL7 interoperability demo for
HIMSS conference, October 2002� Completed and showed API demo code a t
HIMSS, February 2003
-
The HL7 V3 Java API� Java classes for HL7 RIM objects� Java classes for HL7 data types� Tools :
Message builder Message parser
-
API des ign principles� Minimal inte rpretation
Classes re flect V3 specifications as directly as poss ible
� Universa l, not specific Classes enable any message type, not specific
message types� Inte lligent use of HL7 V3 specifica tions and
resources (e.g., HMDs)� Adaptable, "sca lable"
New message types don't require new classes
-
API components (1)Java classes for RIM objects� "Getters" and "se tte rs" for in-memory
message structures� Create, read instances of HL7 V3 RMIMs
-
API components (2)Java classes for HL7 V3 RIM data
types� 29 specific da tatypes� Many data types conta in rich methods� Specific data type handlers support API tools
-
API components (3)Message builder� Creates V3-compliant XML message from in-
memory RMIM instance� Uses HMD to build XML message with correct
e lements in correct order with appropria te attributes
� May a lso use XML message templa tes (under discuss ion)
-
API components (4)Message parser� Creates in-memory RMIM instance from V3-
compliant XML message� Uses HMD to es tablish correct data s tructure
suggested by XML e lements� Uses data type-specific handlers to evaluate
data in XML message
-
HL7 RMIM ins tance in memory
Java HL7 message builder
HL7 XML message
Creating V3 XML messages
EpicCare Patient Medical Records
JavaSIG Object Browser
v3r1b3
-
HL7 RMIM ins tance in memory
Java HL7 message parser
HL7 XML message
Pars ing V3 XML messages
EpicCare Patient Medical Records
JavaSIG Object Browser
v3r1b3
-
API current s tatus� "Pre liminary, incomplete prototype"
demonstrated at HIMSS 2003� Classes for HL7 V3 RIM classes : a ll
completed� Classes and handlers for HL7 V3 data types:
only 3 of 29 completed� Message parser: comple ted� Message builder: not yet s tarted
-
Next s teps for Java SIG� Assess current completion� Calculate requirements to complete a lpha-
leve l components� Recruit further technica l resources� Publish a tenta tive schedule for a lpha re lease
of API
-
Thanks for your a ttention!
Questions?
-
Todd Fre te r
[email protected] "Write once,run a nywhere"