HL7 V2 Authoring Tool Proposal Robert Snelick, NIST National Institute of Standards and Technology May 14 th 2012 Contact: rsnelick@nist.gov
NIST and Veterans Administration Joint Project NIST will provide Project Management, Requirements and Design, Existing Tool Components, Tool Integration, and Developers Peter Rontey, designer and developer of the Messaging Workbench (MWB) will be the Chief Architect and Senior Developer Key Aspects: develop Authoring and Management Tool component-based Java tool expands MWB concepts and functionality integrate with existing NIST tooling Goals of the Collaboration Provide tools to be better specify and validate HL7 V2 implementation guides Tool driven specification development Leverage VA and NIST expertise Leverage, expand, and integrate VA and NIST tooling Messaging Workbench (MWB) NIST Message Maker, Testing Infrastructure, and Meaningful Use (MU) Tools Support the Healthcare IT testing and certification efforts (End-to-End) Initial focus on MU certification but widely applicable 2
Specification to Testing: An End-to-End Approach Proposed methodology and tools to support the development of HL7 V2 implementation guides and testing of systems that implement the implementation guides End-to-End Scope Authoring and Management Test Data Authoring and Management Message Generation and Inspection Document Generation Test Case Authoring and Management Testing Infrastructure Test Engine Choreography Validation Engine Messaging Validation Functional Validation Communication Platforms Leverage and Extend Existing Concepts and Tools Messaging Workbench (MWB), NIST Message Maker and Testing Infrastructure, OHT MDHT Concepts and components 3
What will the tools address? Use Cases Standards Test Cases Test Data healthcare use case development implementation guide development implementation specification of test cases development of test messages create requirements to guide the standards development ensure use case requirements are satisfied create testable assertions criteria application implements the standard tests cases should test all requirements specified in the implementation guide messages support test cases valid and invalid Authoring and Management Tool (IGAMT) Vendors Test Case Authoring and Management Tool (TCAMT) Message Maker Tool Test Material artifacts to support testing XML message profiles vocabulary validation context files Test Scripts Test Execution Results Analysis processable test cases methods and tools to transform test cases into machines processable instructions execution of the test scripts test engine interprets test scripts validate message against test material juror document or test report create inspection document provide validation test report automated or human analysis test or certification managers determine pass/fail based on results IGAMT and TCAMT Test Case Authoring and Management Tool (TCAMT) Testing Infrastructure (Test Engine) Testing Infrastructure (Validation) and TCAMT Testing Organizations 4
Shortcoming of V2 s Each guide has their own style, format, terminology, and interpretation of concepts The only thing that is consistent with implementation guides is that they are inconsistent Interpretation of the conformance constructs is not universal Not only across organization but within originations (e.g., IHE and HL7) IHE varies from standard HL7 V2 constructs (e.g., R2 Usage) Conformance requirements written in English and often as embedded comments If written at all, are often not clear Condition Predicates not well defined (if at all) Difficult to create machine processable representation of implementation guide Current process is to create English document and then create conformance profile Use MWB to create XML conformance profile Often the conformance profile is not created HL7 XML Conformance Profile does not capture the complete set of requirements specified in the implementation guide Ambiguous statements difficult to translate to concrete conformance requirements Testing approach, plan, and requirements are absent s do not provide test plan supplements 5
The need for Uniformity: NIST Experience with HL7 V2 IGs ONC S&I Framework Lab Results Interface (LRI) MU-2014 (HL7 Balloted) CDC PHIN Immunization (EHR to Public Health) MU-2011 and MU-2014 HL7 Labs to Public Health (EHR to Public Health) MU-2011 and MU-2014 (HL7 Balloted) IHE PIX (Patient Identification Cross-referencing) Integration Profile (Multiple Message Profiles) Pre-connectathon and Connectathon Testing IHE PDQ (Patient Demographic Querying) Integration Profile (Multiple Message Profiles) Pre-connectathon and Connectathon Testing IHE PCD (Patient Care Devices) Integration Profile (Multiple Message Profiles) Pre-connectathon and Connectathon Testing 6
How can we Address the Increased Demand for Tools? Authoring Tools (Create more testable specifications!) s (Number is increasing rapidly no testing tools available) IHE HL7 v2 PIX/PDQ Technical Framework HL7 v2 MU Immunization Reporting s HL7 v2 MU Lab Results Interface (LRI) HL7 v2 MU incorporate Lab Results & Reportable Lab Results s ELINCS HL7 v2 Lab Orders and Results HL7 v2 s in General (HL7, CDC, PHIN, ISDS, ONC, etc.) IHE HL7 v2 PCD Technical Framework IHE HL7 v2 Technical Framework In General HL7 v2 MU Syndromic Surveillance 20+ IHE integration profiles using V2! Test Case Management Tool (Let domain experts help write the test cases!) Test Cases and Testing Artifacts Test System (Allow NIST/others to build tools quickly) 7
Proposed Use and Goals Integrated Tooling Develop tooling to automate process as much as possible Component integration one tool output flows into the next E.g., Conformance profile and conformance statements created during implementation guide development can directly be used by validation engine Machine processable message profile specification Used and built upon throughout and the development and testing cycle Constraints as specified in Authoring Tool are used directly by validation engine Goal is to enable domain experts to develop artifacts Tooling will better enable domain experts to produce quality implementation guide requirements and test criteria HL7 Balloted s should use the tool to create (template) Ensure consistent definition and use of HL7 V2 Conformance Concepts Ensure conformance constructs specified correctly and completely Ensure compatibility with the standard or document variances s should have companion test plans complete with example/test messages A quality level for implementation guides can be establish Test plans can be balloted by HL7 Developing test plans in coordination with the implementation guide development promotes better understanding of the requirements and force clear conformance requirements Establish Best Practices Enforce with tooling With HL7 CGIT WG participation the ONC S&I Framework Lab Results Interface (LRI) and NIST s development of the LRI Test Plans and Test Tool is an example that is heading in the right direction 8
Tool Component Overview Authoring and Management Messaging Profiling and IG Document Generation Test Data Authoring and Management Test Data Organization, Library Creation, and Management Message Generation and Inspection Document Generation Assembly of Test Data, Message Generation, and Juror Inspection Documents Test Case Authoring and Management Support complete Test Plan Life Cycle Incorporates Conformance Profiles, Test Messages, Inspection Documents Support Scenario and Application Functional Behavior Testing (Actor based) Testing Infrastructure Test Engine Choreograph a sequence of transactions Validation Engine Messaging Validation Functional Validation Communication 9
The Big Picture: HL7 V2 End-to-end Testing Support HL7 V2 Impl. Template Use Cases HL7 v2 Standard Message Definition General Transaction Constraints (e.g., IG, TF, or user input)¹ HL7 v2 Standard Value Sets Import Value Sets Domain Experts IG Template Wizard Use Case Development Message Profiling Vocabulary Profiling Disposition Traceability Utilities DITA XML Document Authoring & Management Tool Test Plan Template Conformance Profile Vocabulary Library Specification Validation Context File Test Case Requirements Impl. English Document Domain Experts and Test Case Developers Test Plan Development Test Case Development Constraint Test Script Data Sheet and Juror Document Document Data Management Message Generation Message Maker Test Case Management and Authoring Tool Conformance Profiles Vocabulary Libraries Test Case Specific Context Files Data Sheets Juror Documents Test Plan Execution Script Test Plan English Document Software Engineers Testing Environments Capabilities Test Agents Execution Engine Validation Engine Message Generation Engine Report Generation Communication Artifact Repository Testing Infrastructure Resource Bundle Test Plan Execution Script Tool Developers Web Applications Domain Specific Tools Testing Infrastructure Components Resource Bundle Management Test Plan Integration Validation Utilities Communication Documentation Testing Tools User Input Tool Generated ¹ Support existing specifications R. Snelick May 8 th, 2012 10
Authoring Tool Overview Provides support to create a consistent ( standardized ) HL7 V2 The HL7 V2 conformance principles and profile is the foundation Explicitly define conformance requirements that can be processed automatically HL7 V2 conformance profile constraints Value Set constraints Conditional constraints Explicit conformance statements Other constraints Authoring tool maintains internal representation of message definition and constraints Constraints/Conformance Requirements must be specified in such a manner that they can be processed/tested automatically Publishes English version implementation guide Work the other way around; define constraint in tool publish IG Modifications made in tool and republished Pre-defined Skeleton Think of it as a Super MWB Will include many of the concepts and functionality of the MWB Expand scope to document generator and support additional conformance constructs Build modular/reusable components Java Platform Leverage and integrate existing NIST testing Infrastructure components Deploy as Web Applications 11
Current IG Authoring and NIST Testing Process² Create English Document Manually MWB Value Sets Conformance Profile ¹ English Document Constraint Specification Validation Context File Table Library Constraint Test Case Specific Validation Context File ³ Table Library Validation Tool ¹ Often not created; NIST creates default conformance profile automatically and adds use case specific constraints in validation context. Current NIST testing for meaningful use certification is an example. ² This is the current NIST approach. This may differ in other organizations. ³ Testing for conditional requirements are implemented with data sets and a dynamic profile captured in a spreadsheet and rendered as a validation context 12
HL7 V2 Authoring Tool Graphical User Interface tool Provides template Conformance terminology and meaning section Use Case(s) Dynamic model (message interactions) Static model (message layout and constraints) Value Set Definitions Expanded Conformance Profile Attributes Text and Machine processable conformance statements Text and Machine processable conditional predicates Standard constraint model infrastructure Exports message profile and table library Utilities (profile comparison, profile compatibility checker, etc.) Management including disposition history 13
Skeleton Structure and Format HL7 V2 Title Introduction and Overview Define template sub-sections Example Messages (Incorporate/Use Message Maker Tool) Use Case Description Develop format to process automatically Dynamic Behavior Description Develop format to process automatically Static Message Definition Layout Created with XML conformance profile or internal message definition representation Column for assertion description and tagged format sufficient for automated processing Value Set Definitions Extracted List of Conformance Requirements Processable by tooling Associated Files XML Conformance Profile XML Table Library XML Conditional Constraint Definitions XML Static Constraint Definitions (formats, etc) Conformance Construct Definitions and Validation Interpretations Including an explanation of how conformance constructs are tested Adapted from HL7 Conformance Profile Could be a standardized Appendix or Supplement 14
Authoring and Management Tool Proposed Design HL7 V2 Impl. Template IG Template Wizard?? Code Java Library - Parser - Validation Use Cases HL7 v2 Standard Message Definition General Transaction Constraints (e.g., IG, TF, or user input)¹ HL7 v2 Standard Value Sets Import Value Sets Use Case Development Message Profiling Vocabulary Profiling Disposition Traceability Utilities DITA XML Document Conformance Profile Vocabulary Library Specification Validation Context File Impl. English Document Data Management Message Generation Message Maker Example Messages Provides list of conformance constraints not captured in conformance profile User Input Tool Generated Domain Experts Authoring & Management Tool ¹ Support existing specifications; ideally we would want to start writing an IG with the tool but many guides currently exist. 15
Messaging Profiling Define Message Constraints (Abstract Level) Conformance Constructs Message Structure (Support Libraries and Variances) Message Level Segment Level Data Type Level Usage Conditional (Condition Predicates) Cardinality Length Constant Values Vocabulary Truncation Conformance Statements Captures messaging, syntax, and limited semantic (content) constraints 16
Support Spectrum of Conformance Statements Single-message Value Correlation Defines a relationship between 2 or element values E.g., For observations related to the testing of a specimen OBX.14 shall contain specimen collection time and will be value the same as OBR.7 and SPM.17.1 Data Type Value Placement Define the possible location of values CE 1 st /2 nd triplet Conditional Element Present Either OBR.16 or ORC.21, ORC.22, and ORC.23 must be present Conditional Data Content If OBR.16 is populated then ORC.12 shall contain the same data content if populated 17