ACC 2001 Demonstration of DICOM Structured Reporting

Slides:



Advertisements
Similar presentations
DOCUMENT TYPES. Digital Documents Converting documents to an electronic format will preserve those documents, but how would such a process be organized?
Advertisements

1 Chapter 12 Working With Access 2000 on the Internet.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
ACC 2001 Demonstration of DICOM Structured Reporting Jonathan L. Elion MD, FACC Associate Professor of Medicine Brown University and the Miriam Hospital.
Microsoft Office Word 2013 Expert Microsoft Office Word 2013 Expert Courseware # 3251 Lesson 4: Working with Forms.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Create with SharePoint 2010 Jen Dodd Sr. Solutions Consultant
Overview of Mini-Edit and other Tools Access DB Oracle DB You Need to Send Entries From Your Std To the Registry You Need to Get Back Updated Entries From.
MAHI Research Database Data Validation System Software Prototype Demonstration September 18, 2001
DICOM INTERNATIONAL DICOM INTERNATIONAL CONFERENCE & SEMINAR April 8-10, 2008 Chengdu, China Applications of DICOM SR Andrei Leontiev Dynamic Imaging Solutions,
Planning and Writing Your Documents Chapter 6. Start of the Project Start the project by knowing the software you will write about, but you should try.
DSpace UI Alexey Maslov. DSpace in general A digital library tool useful for storage, maintenance, and retrieval of digital documents Two types of interaction:
Organizing Data and Information AD660 – Databases, Security, and Web Technologies Marcus Goncalves Spring 2013.
Session 1 SESSION 1 Working with Dreamweaver 8.0.
Using SAS® Information Map Studio
CHAPTER TEN AUTHORING.
10/18/2015 NORTEL NETWORKS CONFIDENTIAL – FOR TRAINING PURPOSES ONLY Global Documentation Evolution System Overview and End-to-End Process Training.
Copyright © 2006 Pilothouse Consulting Inc. All rights reserved. Customization Using SharePoint Designer 2007 Overview Editing look and feel –Master pages.
TUTORIAL Dolphy A. Fernandes Computer Science & Engg. IIT Bombay.
Sept 13-15, 2004 IHE Interoperability Workshop 1 Integrating the Healthcare Enterprise ACC 2005 Demonstration Jon Elion MD, FACC, Heartlab Inc. IHE Cardiology.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
+ Information Systems and Databases 2.2 Organisation.
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Content Management System Copyright © 2005 Liferay, LLC All Rights Reserved. No material may be reproduced electronically or in print without written permission.
DICOM SR / CDA Rel.2 Mapping San Antonio WGM, May 2006 Helmut König Co-Chair II SIG / DICOM WG20 Siemens Medical Solutions.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
McGraw-Hill/Irwin The Interactive Computing Series © 2002 The McGraw-Hill Companies, Inc. All rights reserved. Microsoft Excel 2002 Working with Data Lists.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
CCD and CCR Executive Summary Jacob Reider, MD Medical Director, Allscripts.
Architecture Review 10/11/2004
Working with Cascading Style Sheets
DHTML.
Microsoft Word 2016 Lesson 6 Part 1.
Information Systems and Network Engineering Laboratory II
Project 1 Introduction to HTML.
Overview Blogs and wikis are two Web 2.0 tools that allow users to publish content online Blogs function as online journals Wikis are collections of searchable,
Working in the Forms Developer Environment
Developer 2000 CSE 4504/6504 Lab.
GUI Design and Coding PPT By :Dr. R. Mall.
Forms and Reports 09.
Data Virtualization Community Edition
Data Virtualization Tutorial: XSLT and Streaming Transformations
XML QUESTIONS AND ANSWERS
Fundamentals of Information Systems, Sixth Edition
CHAPTER 8 Multimedia Authoring Tools
Cor Loef Philips Healthcare
Using Access and the Web
Microsoft Office Illustrated
Unit# 8: Introduction to Computer Programming
Chapter 2 Database Environment.
Lesson 9 Windows Management
Part of the Multilingual Web-LT Program
Chapter 7 Stack.
Oracle Sales Cloud Sales campaign
Tutorial 6 Creating Dynamic Pages
Analysis models and design models
INFO/CSE 100, Spring 2006 Fluency in Information Technology
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Chapter 10 ADO.
Database Applications
Word Processing and Desktop Publishing Software
Tutorial 7 – Integrating Access With the Web and With Other Programs
Data Dictionary Overview
Use and Transformation of DICOM SR and CDA Release 2 Diagnostic Imaging Reports Helmut Koenig, MD Siemens Healthcare Co-Chairman DICOM WG20 and HL7 Imaging.
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Exploring Microsoft® Office 2016 Series Editor Mary Anne Poatsy
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management
HTML5 and CSS3 Illustrated Unit B: Getting Started with HTML
Presentation transcript:

ACC 2001 Demonstration of DICOM Structured Reporting Jonathan L. Elion MD, FACC Associate Professor of Medicine Brown University and the Miriam Hospital Providence, RI USA Chief Medical Director and Co-Founder Heartlab, Inc., Westerly, RI USA

DICOM Structured Reporting Image data represents only a fraction of the clinically useful information describing the diagnostic studies done on any individual patient.  The American College of Cardiology’s “Structured Reporting 2001” demonstration represents the first comprehensive application of DICOM SR to information interchange in Cardiology.  In large measure, Structured Reporting is the final, critical element in the development of a DICOM-based integration of cardiovascular information.

Diagnostic Procedures Network-Connected Review DICOM: The Foundation Diagnostic Procedures Network-Connected Review Stand-Alone Review Remote Facility DICOM SR expands DICOM capabilities beyond image management, and adds the ability to interchange additional clinical data

DICOM Structured Reporting Hemodynamics Physical Findings ECG Reports Consults and Notes Other Database Information Ultrasound Measurements History Codes Standard DICOM SR expands DICOM capabilities beyond image management, and adds the ability to interchange additional clinical data DICOM SR

Customization in DICOM SR “Presentation” – the way the data appears on the screen or printed report is not specified by DICOM SR. DICOM SR also does not specify the user interface that is used to gather or interact with the information. Think of DICOM SR as “Structured Data Interchange” Finally, DICOM SR does not specify anything about the implementation of the database that underlies the data.

Demo System XML Standalone Viewer Web Browser XML Style Sheets Database DICOM Files Web Browser SRGen SRVue Templates A high-level overview of the data generation and display strategy for the demonstration XML

DICOMDIR Source Listing Development System DICOM Source Listings DCMGen Database Editor build DICOM Files DICOMDIR Source Listing DDGen SRGen DICOM SR Source Listing DICOM Source Listings are used (a human-reading representation of the DICOM content) Templates Editor

Making DICOM SR for SR2001 A database of patient information was created. Templates were created for each of the information types shown in this demonstration; ECG, Cardiac Cath, Hemodynamics, and QCA/QVA (381 lines of specs, 2599 context group items!). A computer program (written in Java) reads a template, and combines it with its corresponding patient data. A DICOM SR file is created. Another computer program (also written in Java) transforms a DICOM file into its XML equivalent. Remember, we are going to generate XML via a Java routine, but… An XML “Stylesheet” (XSL) is used to specify how the data from the XML file is to appear on the final report. Many web browsers can show the XML+XSL directly, but for this demonstration, HTML was created.

Database Schema Patients Table Patient ID <more Patient data> SR QCA Table SOP Instance UID Series Instance UID <more QCA data> SR QCA Data Table SOP Instance UID <more QCA data> Studies Table Study Instance UID Patient ID <more Study data> Image Table SOP Instance UID Series Instance UID <more Image data> DICOM XA Images Series Table Series Instance UID Study Instance UID <more Series data> SR Cath Data Table SOP Instance UID <more Cath data> SR Cath Table Series Instance UID Some of the reports need secondary tables to hold their data

Templates Drive Database Schema A row that has a VM of 1 can all live in the main data table A template whose VM’s are all 1 corresponds to a database schema with a single (wide) row Any row of the template that has a VM of anything other than 1 requires a secondary table A CONTAINER with a VM that is not 1 requires a secondary table A CONTAINER with any row that has a VM that is not 1 requires a secondary table

Templates: Diagram Remember, we are going to generate XML via a Java routine, but…

Templates NL Relationship with Parent Value Type Concept Name VM 1 CONTAINER Resting 12-Lead ECG Report 18 > CONTAINS ECG Waveform Information 23 >> HAS ACQ CONTEXT PNAME Technician Name/ID 25 DATETIME Acquisition DateTime 27 NUM Lo Pass Filter 29 Quantitative Analysis 30 INCLUDE Global Measurements 31 Lead Measurements 32 Qualitative Analysis 33 TEXT Clinical Interpretation 34 Interpretive Statement 1-n Remember, we are going to generate XML via a Java routine, but…

Extending Template Descriptions Each row of the template that specifies actual data had two additional columns added: Name of the ODBC connection for the data source (table) Name of the field within the table that holds the data value This connection between template and data turned out to be the single most important factor to manage for the project As database schemas to support the templates were developed, these two columns established the connection between templates and data

DICOM SR from ECG ; Template ECG01 Row 25 >> VM=1 [HAS ACQ CONTEXT] DATETIME "Acquisition DateTime" (FFFE,E000) 0xffffffff ; Item #I17 (0040,A010) "HAS ACQ CONTEXT" ; Relationship Type (0040,A040) DATETIME ; Value Type (0040,A043) 0xffffffff ; Concept Name Code Sequence (FFFE,E000) 0xffffffff ; Item #I18 (0008,0100) TI-0166 ; Code Value (0008,0102) ACC2001 ; Coding Scheme Designator (0008,0104) "Acquisition DateTime“ ; Code Meaning (FFFE,E00D) ; End of Item #I18 (FFFE,E0DD) ; End of Concept Name Code Seq (0040,A120) 200010151120 ; DateTime (FFFE,E00D) ; End of Item #I17 Remember, we are going to generate XML via a Java routine, but…

Template-Traversing Algorithm Templates were parsed and data “pulled” to fill the required items (rather than “pushing” data out through a template). Template specifications were expanded to include the name of the ODBC data source (table) and field name that contained the corresponding information The algorithm was implemented using stacks to keep track of events, take non-linear processing paths  Approach chosen for “simplicity” and ease of reading; in retrospect, a fully recursive set of procedures may be more logical and robust Templates written in conformance with Supplement 53 are difficult to parse using a one-pass approach: BEGIN/END blocks are not specified explicitly, but rather are inferred from nesting levels (requires look-ahead) The occurrence of an item with VM of 1-n within a container requires “looping” for the entire container

Template-Traversing Algorithm When INCLUDE found, current parsing status is pushed onto the LIFO stack; when the end of that template is reached, the status is restored from the top of the stack and scanning continues. For rows or CONTAINERs with a VM that is not 1 the corresponding rows of the Template must be traversed multiple times (in a loop): The same Stack is used, only this time, at the end of a pass, it's value is not popped off the stack. Instead, its value is peeked at to find the row that represents the top of the loop. Scanning continues at that row. This continues until eventually, the data is exhausted. When this happens (sensed at the bottom of the loop), it is time to pop the values off the top of stack (discarding them) and move on.

XML from ECG <Item> <RelationshipType>HAS ACQ CONTEXT</RelationshipType> <ValueType>DATETIME</ValueType> <ConceptNameCodeSeq> <CodeValue>TI-0166</CodeValue> <CodingSchemeDesignatorACC2001</CodingSchemeDesignator> <CodeMeaning>Acquisition DateTime</CodeMeaning> </Item> </ConceptNameCodeSeq> <DateTime>200010151120</DateTime> Remember, we are going to generate XML via a Java routine, but…

XSL Stylesheet for ECG <!-- Acquisition DateTime --> <xsl:for-each select="key('content-item', 'TI-0166')"> <b><xsl:value-of select="ConceptNameCodeSeq/Item/CodeMeaning"/>: </b> <xsl:value-of select="substring(DateTime, 5, 2)"/>/<xsl:value-of select="substring(DateTime, 7, 2)"/>/<xsl:value-of select="substring(DateTime, 1, 4)"/>, <xsl:value-of select="substring(DateTime, 9, 2)"/>:<xsl:value-of select="substring(DateTime, 11, 2)"/><br/> </xsl:for-each><br/> A “pull” approach was used for the XSL, creating a report that was “fill-in-the-blank”. Not every XML item was used (only those called for in by the report). This is like a word processor “mail-merge” Remember, we are going to generate XML via a Java routine, but…

HTML for ECG <p><center><h1>Resting 12-Lead ECG Report: Robert Johnson</h1></center></p> <b>Clinical Context: </b>Routine<br> <b>Acquisition DateTime: </b>10/15/2000, 11:20<br> Remember, we are going to generate XML via a Java routine, but…

Integrating Information Cath Lab Images Online Review History Physical Findings Hemo- dynamics ECG Waveforms & Reports Consults and Notes Echo Images & Measurements Digital Integrated Cardiovascular Record! DICOM SR expands DICOM capabilities beyond image management, and adds the ability to interchange additional clinical data

What’s Next? Additional templates will be developed for Cardiology, the SR2001 templates will be refined. These templates will be reviewed first by the interested professional organizations. The templates will then be presented for public comment and review, and revised as needed. The templates and Cardiology terms will be finalized and formally incorporated into the DICOM standard as “Information Object Definitions” (IOD’s)

Lessons Learned Template-driven PULL processing is more complex than data-driven PUSH models (but PULL approach is probably needed for template-based SR) Vocabulary maintenance is a very big task! XSL for display can be more automated Extremely helpful to have the printed documentation of the template produced directly from the database (and this tool was handy for formatting the documentation versions) Central library for templates should be considered with web-based (Java?) editing (password protected) WG1 has also been using diagrams to show the templates; these are hard to keep in synch with the template when changes are made; an automated approach to produce the diagrams from the templates should be considered