Download presentation
Presentation is loading. Please wait.
Published byRichard Roberts Modified over 8 years ago
1
1 Model Driven Health Tools Design and Implementation of CDA Templates http://mdht.projects.openhealthtools.org/cda Dave Carlson Contractor to CHIO David.Carlson@va.gov May 17, 2010
2
2 MDHT Pilot Deliverables Deliverables for HL7 pilot project: –http://wiki.hl7.org/index.php?title=Structured_Document_Templa te_Design_Pilothttp://wiki.hl7.org/index.php?title=Structured_Document_Templa te_Design_Pilot –http://wiki.hl7.org/index.php?title=MDHT_Template_Sub_Projecthttp://wiki.hl7.org/index.php?title=MDHT_Template_Sub_Project 1.Authoring CDA templates 2.Publishing implementation guides 3.Validating CDA document instances
3
3 MDHT Project Benefits for CDA Standards organizations –Formalize representation of CDA implementation guide conformance rules Replace current practice of using MS Word for specification development UML specification is testable for consistency and use of best practices Enables automated model-driven development and code-generation –Automate publication of implementation guides in multiple formats (PDF and XHTML) and alternative content structure (ballot document vs. implementer view) –Automate generation of CDA instance validator from specification model (using Java and OCL) Business Analysts –Consistent format of published implementation guide between different standards organizations (HL7, IHE, and HITSP) –Cross-referenced, hyperlinked reference material accelerates analysis and EHR mapping –Publish a “developer view” of implementation guide that combines conformance rules from all inherited templates and base CDA type Java Implementers –Reduce Development Cost: Time and resources for analysis and implementation of CDA content and conformance rules –Reduce Maintenance Cost: High quality, domain-specific API for programmatic access to CDA content, and validating conformance with standard implementation guide rules (e.g. CCD and HITSP C32/C83) –Future support possible for non-Java implementation languages
4
4 Authoring CDA Templates We created a UML class for each template and specified all conformance rules using property redefinitions, directed associations, or using OCL expressions (for only one rule). We found that the most intuitive and efficient editor for template definitions is a spreadsheet-style table editor. This editor directly modifies the underlying UML model, but with a different interface from the typical class diagram. UML class diagrams may also be created as views of the model, or used as an alternative design interface. A separate model was created for CCD, and those template classes were referenced as base types in a new implementation guide model: the Tuberculosis follow up progress note
5
5 MDHT Authoring Interface
6
6 Add a new Template Easy reuse and reference to templates in other IG models. Dialog wizard to create a new template that conforms to another base template. For example: Add: TB Encounter Select base: CCD Encounters Activity Check off inherited attributes that will be restricted Then use Table editor to refine the new constraints.
7
7 Class Diagrams We are working on integrating an open source UML class diagram editor provided by the Eclipse UML2Tools project, but it is not yet ready for end-users. When templates are created using the table editor, one or more class diagrams may be created as views of the model.
8
8 Publishing IGs The UML model created with template definitions is automatically transformed to DITA XML (OASIS standard), which is then published to PDF and Eclipse Help HTML format using the open source DITA-OT toolkit.DITA XML (OASIS standard)DITA-OT toolkit Automatic generation of example XML instance snippets for each template, included in the published IG. Separate developer documentation: Includes the complete aggregate list of all inherited elements and conformance rules. Thus, a developer does not need to "follow the breadcrumbs" of template conformance references. Example provided in PDF output.
9
9
10
10 Generate XML Example
11
11 Developer Documentation (PDF)
12
12 Validating CDA Instances The template conformance rules represented in UML are transformed to OCL as part of the automated code generation. The resulting Java classes encapsulate all validation rules and may be used to parse and validate a CDA document instance. We have created an example web application that may be used to validate CDA documents for implementation guides that we have modeled. See http://cdatools.orghttp://cdatools.org We are integrating validation from the generated Java libraries into the Eclipse open source XML instance editor. This editor already includes good support for "content assist" and validation based on the CDA.xsd schema. But we have used the Eclipse extension points to also validate CDA instances using the conformance rules that go beyond schema structure.
13
13 Validation on a Web Application
14
14 Validation Results on Web
15
15 Validation in XML Editor
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.