Thursday, July 29, 2010

HL7 SDWG Completes Review of CDA R3 Formal Proposals

The final formal proposal for changes to the HL7 Clinical Document Architecture standard was reviewed today. The HL7 Structured Documents Work Group (SDWG) has been reviewing formal proposals for the next release of CDA for over a year. CDA R2 is the standard that is used for most of the exchange of clinical information in the Meaningful Use requirements that were published in the Federal Register this week.

I am the publishing facilitator for the SDWG, so this means that I get to work on creating the new version of the standard. I worked on CDA R2 back when I was working for HL7, converting the word document into "publishing XML." The new version of the standard will be developed using the HL7 Publishing database. I have not used the publishing db in several years, so it will be interesting to see how the tool has changed over the years.

The enhancements in CDA R3 are based on the experience of implementers. CDA will also use HL7 Version 3 Datatypes Release 2, which will give us new functionality.

Here is a link to the list of suggested enhancements for CDA R3:

http://wiki.hl7.org/index.php?title=CDA_Suggested_Enhancements

I'll post updates as we work through the process. I expect that we will ballot the new document early next year, and, hopefully, CDA R3 will become an approved standard sometime in 2011.

Tuesday, July 13, 2010

Meaningful Use Final Rule

The Final Rule for Meaningful Use was published today.

I haven't finished reading the 1000 pages, yet, so here are my preliminary impressions.

The document is available here..

http://www.ofr.gov/OFRUpload/OFRData/2010-17210_PI.pdf

http://www.ofr.gov/OFRUpload/OFRData/2010-17207_PI.pdf

They relaxed a couple of requirements, with thresholds being reduced from 80% to 50%. I don't see this as significant, because if your organization is really committed to meeting the requirements, you will be well over 80%. If you are committed to CPOE, you will be at well over 80%. If reducing the limit means that a few more organizations qualify for MU funds, that's fine with me.

They also removed the requirement for either SOAP or REST to be used as a transport protocol, which means that those organizations that use MLLP through encrypted tunnels will not have to re-do those interfaces.

I am still a little troubled by the requirement to use CCR and CCD, but since that means that my organization can produce CCD and the other CDA based documents, we should be fine. We will have to be able to consume CCR, but that is not as onerous as it might be. HL7 and ASTM are beginning a project to translate from CCR to CCD, so that should help organizations that do not want to have to support both.

It could have been better. It could have been worse.

Sunday, June 20, 2010

Northwestern Commencement 2010


On Thursday, I drove to Evanston for Northwestern's Commencement. There were ceremonies on Friday and Saturday. I took my parents with me, because I felt that they should be part of the celebration.

Before the main ceremony, the School of Continuing Studies (SCS) held a reception that we attended. As a distance learning student, I had not actually met many of my classmates. It was nice to finally meet some of them. I would recognize a voice in the crowd and walk over and introduce myself. I told the associate dean that I still thought that they might come to their senses and pull my diploma. He thought that was funny.

The main ceremony was on Friday at 6pm. At approximately 4:30pm, a thunderstorm hit the city, and we were drenched while we were on our way to the stadium. The weather cleared, and they were able to hold the ceremony outside, as scheduled. It was quite a sight. I was glad that I went. Mike Wilbon from ESPN and ABC (and a Northwestern Alum) gave the commencement address.

We went and had a wonderful dinner at Morton's following the ceremony. Another thunderstorm hit while we were having dinner, and we drove back to the hotel through downed power lines and traffic signals that were not functioning.

The ceremony for SCS was on Saturday afternoon at the Millar Chapel. It was hot. I was hooded and received my diploma. The drive back to Ann Arbor took longer than I expected, and I did not make it home until after 9pm. My brother Rob and Leslie were dog sitting for me, and we had steaks after I got home.

All in all, it was a wonderful weekend.

Friday, June 11, 2010

Restarting Interfaces

We recently changed five existing interfaces to "pass through" the Rhapsody interface engine that I am working with. These interfaces are made via a vpn tunnel between the two organizations.

That first day, one of the interfaces stopped working several times. I stopped and started the communication point on my end, and the connection was re-established and messages began to flow, again.

The next morning, one of the interfaces had not seen messages cross for seven hours. I again stopped and started the communication point, and messages began to flow.

I was told that "they do that all the time."

The next morning, three of the five new interfaces had stopped overnight. I restarted them, they connected and messages began to flow.

I have seen this sort of behavior with interfaces that cross through VPNs. When the interface is inactive, the vpn shuts down, but the receiving end still thinks that it has a connection. The sending end will try to re-establish a connection, but since the receiving side still thinks that it has a connection, the new connection is refused.

Being the cautious person that I am, I changed one of the three communications points to restart every hour. The interface would stop, reconnect, and messages would begin to flow, again. I wanted to see one of them work before I changed anything else.

Once I saw that this worked, I made similar changes to the other two interfaces that had exhibited similar issues. Two of the five original interfaces had not shown any issues. One was an ADT feed that constantly had traffic. The other received a "batch" of messages every morning. It would reconnect, deliver the messages, and then disconnect.

So far, the hourly re-start seems to be working. For years, these interfaces had failed. A trouble ticket would be opened, and an operator would manually stop and start the interface to get things working, again. Based on previous experience, I was able to diagnose the problem and implement a simple fix. This will save our business partner opening trouble tickets and our operators from manually restarting these interfaces.

One small step...

Thursday, June 3, 2010

Masters in Medical Informatics

I just completed the Capstone project for my Masters in Medical Informatics (MMI) program at Northwestern University. I have been working on this degree for two and a half years. This is a distance learning program, so I did all of the course work online. I found it difficult to say that I was "going back to school" while I sat in front of my computer.

I learned a lot in the program, and discovered that I knew a lot, too.

Here is my "portfolio" website that I created as part of the Capstone Project.

http://sites.google.com/site/peterngilbert/home

Sunday, April 25, 2010

First Evidence of Meaningful Use

We recently received an email from a laboratory system that sends us results. They currently send laboratory tests to us that are coded using "local vocabulary." They asked us if we could accept LOINC codes (http://loinc.org/) in the alternate codes.

What they are proposing is adding LOINC codes to the OBX-3 Observation Identifier field. The OBX-3 data type is Coded With Exceptions (CWE), The structure of this field is:

<Identifier (ST)> ^ <Text (ST)> ^ <Name of Coding System (ID)> ^ <Alternate Identifier (ST)> ^ <Alternate Text (ST)> ^ <Name of Alternate Coding System (ID)> ^ <Coding System Version ID (ST)> ^ <Alternate Coding System Version ID (ST)> ^ <Original Text (ST)>

So, they are proposing to send their local code in the first "triplet" of the CWE and the LOINC code in the second "triplet". This would change:

OBX|1|CWE|xxxxx^Local Test Value||result goes here.....

to

OBX|1|CWE|xxxxx^LocalTestValue^L^yyyyyy-y^Loinc Test Name^LN||result goes here.....

The first three subfields of obx-3 (aka the first triplet) are the local code (xxxxx), description (LocalTestValue), and the "L" indicates a local code. The second set of subfields (aka the second triplet) are the alternate identifiers and are the LOINC code for the test (yyyyyy-y), the description of the test from LOINC, and "LN" which specifies that the alternate code comes from LOINC.

This lab has been sending local codes for its tests for many years. The meaningful use requirements of ARRA/HITECH are nudging them to use LOINC.

Who says that we are not making progress :-)

Sunday, April 18, 2010

NHL Playoffs 2010

This is my favorite time of the year. I love the Stanley Cup Playoffs. I love that teams play every other night, unlike the endless delays in the NBA playoffs. It does not take long for teams to develop a strong dislike for each other during a playoff round. Because the coaching and film study have advanced in recent years, each team knows the other's tendencies and can develop counters for them.

I love playoff overtime. The overtime games tend to end either very quickly or go on and on.... As long as I don't have to get up for work the next morning, I will stick it out to the bitter end.

Here are a few things that I will be watching for during the first round (I refuse to call them "the conference quarter finals"):

  • Which of the goalies that are in the playoffs for the first time will shine? Jimmie Howard? Bryzgalov? Quick? Rask? Halak? Niemi? Wow. That's a lot of teams that are relying on untested goaltenders.
  • Upsets. The first round always seems to give us an upset.
  • San Jose. Can the Sharks make it out of the first round?
  • Officiating. Which games will be decided by a crucial call or non-call?
  • Who will step up and who will disappear? The playoffs usually give us an unlikely hero as well as some disappointing performances by "stars"?
Let's enjoy the next two months.