Standardized Operational Log of Events

From IHE Wiki
Jump to: navigation, search

Standardized Operational Log of Events (SOLE)


Efficient businesses use business intelligence tools to manage their business. The application of these tools to manage medical care has been limited in part because the information often resides in several different systems, and there are not standard ways to obtain the information. The SOLE profile defines a way to exchange information about events that can then be collected and displayed using standard methods.

page under construction

2. The Problem

Healthcare providers have a strong desire to increase throughput and efficiency, both to improve the quality and timeliness of care and to control costs. Such process improvement efforts depend on being able to capture workflow events and apply business intelligence tools. Such initiatives face several problems:

  • Event information that is to be logged comes from many different systems but there is no easy way to collect and compile the events into a single collection
  • The different systems recording the particular events being logged may have different understandings of the definition of the event, time point or measurement; the result is:
  • Within a single institution, data is non-uniform across systems, degrading the value of the information
  • Across institutions, it is hard to compare to evaluate best practices

Analytics Can Save Radiology - 2015.08.20 Diagnostic Imaging Article

3. Key Use Case

The use case is general, but there is particular interest in the imaging department, which would provide a concrete test case.

  • Systems which perform events on a profiled list would send messages in a profiled format containing standardized details to an operational event log server.
  • The Event Repository would capture and record the received event messages
  • Event Consumers, such as business intelligence tools, workflow engine-management tools, and tools related to performance measurement, would retrieve blocks of event messages from the event log server.

We note here that this proposal focuses on imaging department use. However, we believe that most, if not all, can be applied outside the imaging department. Therefore, we will focus on imaging, but be cognizant of non-imaging potential use.

4. Standards and Systems

Systems (that would submit events or analyze events):

  • RIS
  • PACS
  • Speech Recognition
  • EMR
  • Imaging Devices
  • BI tools


  • ATNA log for submission
    • has been successful in capturing and providing access to information needed for managing security and has been widely adopted. We would be happy to use the same or similar mechanism for operational events, though validation that it can meet the unique performance requirements must be validated.
  • SWIM terms for coding
    • The lists and definitions of events would likely be extended over time as new operational areas of the hospital become interested in such logging and analysis. The first draft of the profile could leverage the SWIM (SIIM Workflow Initiative in Medicine) terms that define a number of events and states occurring in an imaging department.
    • The SWIM list has recently been adopted into the RSNA RadLex codeset and several vendors have participated in pilot demonstrations of capturing such operational logs. It is not clear if there is an equivalent Lexicon for events outside of medical imaging, but this might stimulate the development of such a lexicon. The lack of such a lexicon should not present an impediment to achieving the benefits described above. As standard event terms are created, they can be recognized by IHE as an acceptable code set, and put into practice.
  • RESTful ATNA Query for query/retrieve

5. Technical Approach

There are two potential approaches to consider: One option is to use a log file similar to the ATNA log. The advantage is that the technology is well understood and simple. The challenge is that the performance may not be sufficient. It is also likely that a consumer will want a subset of events (e.g. all events in the last XXX seconds, or all events in the last hour from facility YY, or all events associated with an exam having a modality code of ‘MR’ for exam type).

A RESTful interface may be the most appropriate mechanism for the request, and possibly for the storage mechanism.

New actors

The actors for the SOLE profile are illustrated in Figure 1.

Actor: Event Creator
Role: Sends event information to the Event Repository.
Actor: Event Repository
Role: Stores events sent from Event Creators, and responds to requests for event information from Event Consumers.
Actor: Event Consumer
Role: Requests events from the Event Repository. The results would typically be used for displaying status or performance in a department, or for executing new events or work

Figure 1 SOLE Actor Diagram:


Breakdown of tasks:

  • Discussion/documentation of use cases (e.g. radiology departmental flow, etc.)
  • Log Event transaction specification (or review/ modification if ATNA)
  • Retrieve Event transaction specification
  • Imaging Event Dictionary Review/Specification (e.g. SWIM)
  • Define Codes/IDs for classes of system that generate events (e.g. RIS, PACS, EHR); locations (e.g. buildings) for data sorting, etc.

6. Discussion

The need for standard ways to exchange information about the status of a radiology department has been recognized for years, and was formalized in SIIM’s Workflow Intitiative in Medicine (SWIM). Dashboards have been developed to address this need, but the data they rely on is stored in disparate systems, and in non-standard forms. SWIM worked with RSNA to establish a standard lexicon for workflow events in RadLEX. Now, there needs to be a standard way to communicate event information. There are many standards that COULD serve this purpose. IHE is a good forum to select the best one for our purposes. A more detailed description of the use case, and value proposition has been published in JDI SWIM article.

  • Fit the ATNA model well
  • Expected about 20 events (e.g. order related) will be mandatory
  • Some events will be recommended and some will be optional
  • Consider mandatory to be supported, but configurable to be on or off
  • Need to clearly define what each event mean, especially things like timestamp. There are occasions that different vendors currently interpret the timestamp of certain event differently

8. Open Issues

  • Will SOLE support multiple event code set simultaneously? Different jurisdiction may have existing code set that are of interest
  • Possibly supported
  • Besides defining the new profile, what is the expectation to retrofit the events to existing profiles like SWF, IRWF, etc.?
  • For existing profile, can introduce events as optional so to not break existing profiles.
  • Can consider named option so can be tested in Connectathon
  • For initial development, make sense to define the 20 or so mandatory events, and then see how these events affect the existing profile where applicable
  • ATNA using Syslog, which is great for workstation, but not necessary common for mobile devices / platform (e.g. iOS, Android), there is no existing standard logging mechanism for these platform
  • Probably need new transport
  • There are new emerging methods that vendors are implementing, something we can look at / reference (e.g. Nagios)

  • What security and privacy concerns need to be addressed
  • To tie events for individual patients together, we will need to work with accession numbers. I don't envision cases where we would need any more direct patient information. Of course, the information is business critical, and from that perspective, an agent from outside could 'mine' this to understand their competition, so this should not be openly exposed
  • Can be significant. Minimal information will be logged, e.g. only log patient ID, but not patient name
  • may not even log patient ID, just accession number. Need careful analysis.
  • SWIM defines the event list, does it also define what details need to be recorded in each event?
  • Yes.