ISO 21090 data types too complex?

Hello Hugh,

As someone who believes in a level playing field I think an international standard, even if a little flawed is better than waiting forever for perfection which will never come. I would extend this ISO 13606-2 to enable sharable archetypes as well.

At least then we have a situation where everyone has a common point of reference. I guess everyone is also a little unhappy, but that is better than the current situation. I think the standards are virtual in any system, with adapters to the actual implementations, and to expect anything else is dreaming of a mono culture, usually your own variety of mono culture of course.

There are great ideas to be reused from all players, but to expect the world to accept openEHR as the only standard is unreasonable. We have actually done a lot of work to enable the use of archetypes in HL7 V2, not because we thing V2 is the best and most efficient mechanism, but because its a standard and it has widespread usage and we gain a backward compatible encoding, which means we can actually use it. (And the data model is actually transformable into another encoding if desired)

Similarly we adapt HL7V2 data for use in the Virtual Medical Record (VMR) and use ISO data types there, not because they are a seamless match for HL7V2, but because the ISO data types are a standard and we would otherwise have to ballot a whole new standard. Its planned to constrain out many, or most of the esoteric base class methods in the ISO data types for the VMR, but they are still a compliant subset.

If the openEHR CKM produced ISO archetypes then it would be a lot more acceptable to many people, as it is standards based. Currently you have to buy into the whole game of openEHR, which is I think a problem for many. Its not a criticism of openEHR, but a desire for a neutral agnostic model. You may defend the Evaluation class to the hilt, but there is no reason that every other model has to and this is the problem. We need to accept some level of imperfect abstraction to enable inter-operability, where everyone has to provide glue to make it concrete. Its then less than optimal for everyone, which is I guess what “compromise” and “consensus” is all about. I still think it provides several orders of magnitude of functionality, over the current reality. Otherwise we are doomed to the “My Model is better than yours” war until the last man is standing.

I also lament the lack of real technical input into the standards, but that’s the reality, I am sure in retrospect many “standards” eg http, smtp, html could have been designed much better, but inter-operability and pragmatism has trumped perfection and we all live with an imperfect world. That’s why I think we should give the ISO Data types a go.

Andrew McIntyre
Medical-Objects

Monday, November 8, 2010, 10:59:45 AM, you wrote:

Andrew,

I agree that there can be value in producing lower common denominator artefacts for short term implementation gains. I don't, however, see why we can't aim to gain agreement on more specifically defined artefacts as the basis for clinical models, and then, as you suggest, provide adapters for actual implementations, particularly if the cost in doing so is minimal - it is simply a matter of automatically processing from the richer openEHR specification to the simpler ISO 13606. The difference essentially boils down to collapsing archetypes defined according to openEHR's richer ENTRY subclasses of OBSERVATION, EVALUATION, INSTRUCTION and ACTION into archetypes based on the simpler 13606 ENTRY class.

As for HL7 V2, I cannot understand why the manifestation of ENTRY types is a relevant issue here. Are you suggesting that if ISO 13606 were balloted today, based on today's openEHR richer ENTRY subclasses that it would substantially change the way archetyped data could be carried in V2, to the point where you could not entertain supporting it? Or conversely that you would be happy to adopt it because it were a "standard". Or are you merely suggesting that if Australia, for example, were to develop/adopt/"compromise" on a set of archetypes based on the openEHR model rather than ISO13606 that one company - Medical Objects - might have to undertake modifications to their product suite?

I have to confess that neither my technical skills, nor my clinical knowledge may be sufficient to allow me to form a strong view on the detailed merits of the attributes of openEHR's ENTRY subclasses, other than it seems patently obvious that one needs (somehow) to distinguish between INSTRUCTIONS, ACTIONS and OBSERVATIONS/EVALUATIONS in the openEHR sense of their meanings.

To dismiss these differences in favour of some ISO standard, and walk away from the whole process, at least for clinical modelling purposes, seems akin to throwing the baby out with the bath water.

And wouldn't that run counter to the Hippocratic oath?

- eric

I appreciate all of the remarks that have been make thus far. I am
responding because I think we might have some shot at being better. I
think many of you tak pot-shots at HL7, and that's OK. An elephant is
easier to hit than an ant. In the early years, HL7 had only a few members
who were very focused on what we wanted to do. Most were vendors and
providers. We create standards that were simple and did precisely what we
wanted. As HL7 grew, so did the complexity. David makes the comment about
defence of one's lifes work. That is multiplied in spades in HL7. Not
only from companies but now increasingly from countries. Hoe can a
standard be global unless it addresses global issues. As a result
complexity and compromise. The world is political; life is political. We
exist in a competitive environmment. We just finished a frustrating
political election in the U.S., Most the the political adds told be how
basd the oposition was, rather than telling me what they can do for me.

Governmnets make decision. Governments fund efforts. To ignore
governments would be foolish. Every country has an official government
body that is responsible for standards - ANSI, BSI, DEN, AFNOR, others.
Complexity causes collapse. Organizations and societies grow in complexity
until they finally collapse.
IN my opinion, many of the criticisms of HL7 are simple disagreements, not
right or wrongs. What group doesn't have acronyms - it's part of today's
society - military, government, healthcare - you name it.

I would like to see a process in which we fully and completely define the
requirements for the standards we need. We debate, discuss and compromise.
A small group of technical expeerts create the standard and then everyone
evaluates if the requirements are met. HL7 has established a huge presence
in the world. It would seem to me to be foolish to ignore HL7 when
creating a datatype standard. As long as you have your standard and I have
my standard, we have no standard.
I think it is important to examine our motivations - what drives us in our
work with standards. Is it a life-time work, or is it simple a detail that
must be accomplished before we can do what we really want to do. Is our
work with standards our claim to fame. There are times when I think HL7
has so many groups because we want a tribe of chiefs. Even that is driven
by real requirements - my boss won't pay for my participation unless I have
a titled job.

You claim that ISO is flawed. Ballot is by standard, a only a few
countries dominate. That obviously is not restricted to standards. Again,
that's life.But what is a better solution? Shall we live with a decision
making prosess in which a relative few people decide what is correct?
While I like that approach, if I am a decsion making, I don't like that
approach if I'm not.

How to we change? What is the solution? HL& has honestly tried to find
solutions. We recognize flaws and problems and try to solve them. I have
issues with archetypes as storage components, I have issues with content
and structure. I have the same issues with DCM. I don't like components
and folders. Wjy? Debates seem not to solve the problem for many reasons.

Can we create an open society that leaves some of the history and biases
behind and find the best possible solution? Can we bring together the SDO
organizations. I also have a problem that openEHR refuses to be an SDO.
Perhaps because they have no rules to follow - while HL7 is bound by ANSI
and ISO rules.

By the way CEN also votes on the data types.

I would like to see some real proposals to try to provide simpler, workable
global solutions. It's like World Peace - a great idea but probably not
achievable.

W. Ed Hammond, Ph.D.
Director, Duke Center for Health Informatics

             David
             <dneilsen@bigpond
             .net.au> To
             Sent by: For openEHR technical discussions
             openehr-technical <openehr-technical@openehr.org>
             -bounces@openehr. cc
             org
                                                                   Subject
                                       Re: ISO 21090 data types too
             11/07/2010 10:48 complex?
             PM
                                                                           
             Please respond to
                For openEHR
                 technical
                discussions
             <openehr-technica
              l@openehr.org>
                                                                           
HL7, ISO and CEN standards all bear the hallmarks of design by committee -
- compromise which in my opinion is the result of allowing for legacy
systems and attempting to be everything for everyone
- compromise leads to complexity
- complexity results in misunderstandings (trying to work through the HL7
acronym alphabet soup) and sanctioned non-conformance (if you can just
"profile it out" how can it be a standard)
- the biggest players have the vast majority of resources that can be
applied to development and committee work which results in an unbalanced
outcome (market forces).

The vehemence with which some have replied to Thomas' initial comments
might be indicative of attachments to and defence of ones life work. This
is understandable but also tends to get in the way of learning, innovation
and progress.

There is no way around implementing standards without spending copious
amounts of money. Certainly more than what could be achieved without
implementing standards. Compromise because of legacy systems saves money
(read competitive advantage) but won't achieve universal implementation of
standards. Not everybody has a vested interest in the same legacy system.
Complexity is never helpful and leads to true non-conformance.

Some have said that market forces should determine the outcomes of
standards development. I think that standards, per se, are anti-competitive
in that their use reduces differences that can be marketed as "new and
improved". Perhaps irrelevantly (or is that irreverently) market forces led
to ENRON and the GFC.

I think it's unfortunate that an idea as simple and robust as openEHR can't
make any headway because of market forces. Politics plays too big a role in
global standards development. Also unfortunately I can't see that changing.

I'll shut up now and leave you all in peace

regards
David Neilsen

I want to pick up on a few points here…

Hello Hugh,

As someone who believes in a level playing field I think an international standard, even if a little flawed is better than waiting forever for perfection which will never come. I would extend this ISO 13606-2 to enable sharable archetypes as well.

At least then we have a situation where everyone has a common point of reference. I guess everyone is also a little unhappy, but that is better than the current situation. I think the standards are virtual in any system, with adapters to the actual implementations, and to expect anything else is dreaming of a mono culture, usually your own variety of mono culture of course.

There are great ideas to be reused from all players, but to expect the world to accept openEHR as the only standard is unreasonable.

I don’t know of anyone who is saying that. The people who are saying that kind of thing are the ones trying to (and succeeding) getting their favourite model turned into an HL7, ISO, ASTM, CEN or other de jure standard; indeed, doing this is precisely about ‘expecting the world to accept XXX as the only standard [in its scope]’. openEHR is just an ‘offer’ to the world.

We have actually done a lot of work to enable the use of archetypes in HL7 V2, not because we thing V2 is the best and most efficient mechanism, but because its a standard and it has widespread usage and we gain a backward compatible encoding, which means we can actually use it. (And the data model is actually transformable into another encoding if desired)

Similarly we adapt HL7V2 data for use in the Virtual Medical Record (VMR) and use ISO data types there, not because they are a seamless match for HL7V2, but because the ISO data types are a standard and we would otherwise have to ballot a whole new standard. Its planned to constrain out many, or most of the esoteric base class methods in the ISO data types for the VMR, but they are still a compliant subset.

are you sure? How do you know?

If the openEHR CKM produced ISO archetypes then it would be a lot more acceptable to many people,

well, all the archetypes in CKM are ISO-compliant, i.e. they comply to ISO13606-2. Even the next generation of archetypes, compliant to ADL/AOM 1.5 will be backward compatible to this specification. But I suppose what you really mean is that the archetypes should be based on a neutral reference model 13606 ENTRY class. Firstly, nothing is stopping that: the type GENERIC_ENTRY has been in the openEHR RM for years - and it is wrapped in a more comprehensive context and versioning model than 13606. Secondly, like HL7, 13606 was conceived and designed as a highest common denominator for information transport between heterogeneous systems, not representation of clinical information.

But the real question I have in my mind whenever I hear this objection is: just why are classes like OBSERVATION and EVALUATION etc unacceptable? I have been asking HL7 since 2003 or so to show a clean model of any of the following in RIM or CDA structures:

  • 2 or 3 sample Apgar
  • standard 3 sample GTT (glucose tolerance test) with patient state
  • ICU vital sign time series

The same challenge extends to 13606 or any other model with no structure in its Entry or clinical statement class. This challenge has never been answered by these standards. And that is because representing data values and patient state within a time series is very hard, without any support from the underlying model. To do it in an Entry structure, you really have to go through contortions. But more to the point, 1000 vendors downloading and implementing the standard will all do that in 1000 different ways. The model of History of Events in openEHR was revised a number of times in order to properly address the needs of even very typical medical data.

So I really want to know: which people are demanding to have a more difficult way to model time-based information like Apgar, GTT and vital signs? Or if they have an easier way of doing it, let’s see it.

as it is standards based. Currently you have to buy into the whole game of openEHR, which is I think a problem for many. Its not a criticism of openEHR, but a desire for a neutral agnostic model.

well as I mention above, it is already there, and has been for years. I don’t think this is really the problem.

You may defend the Evaluation class to the hilt, but there is no reason that every other model has to and this is the problem.

well I would only defend its use for what it is used for. But CDA has 9 Entry level classes of its own (a very strange collection of semantics, it has to be said, with even stranger compositional rules) that CDA, by its standards status, claims to be the one true way of representing health information. People in love with CDA presumably defend those classes to the hilt and hope one day that the whole world will use them. But the evidence from trying to model typical clinical information structures as archetypes clearly shows that the openEHR OBSERVATION class (to stick with this example) is better adapted to observational data than its RIM equivalents. This is for one reason only: we adapted them directly to the challenge of real clinical data. Are there even better adaptions possible? Undoubtedly, I can even see a few improvements myself.

I think any models of structured clinical statements need to address the challenge of real clinical data in a direct and formal way. Until then, most of their claims are unverifiable.

We need to accept some level of imperfect abstraction to enable inter-operability, where everyone has to provide glue to make it concrete. Its then less than optimal for everyone, which is I guess what “compromise” and “consensus” is all about. I still think it provides several orders of magnitude of functionality, over the current reality. Otherwise we are doomed to the “My Model is better than yours” war until the last man is standing.

well I cling to the hope that we are emotionally mature enough to be uninterested in mine/yours comparisons, and instead be interested in solving the problem in an evidence-based way. This means accepting that models be compared by verifiable, formalisable challenges. If it can be shown that the openEHR OBSERVATION class makes it objectively easier (e.g. in a ‘blind tool test’ by 50 clinicians) to model BP time series, Apgar, GTT, etc etc, than to do it with a neutral ENTRY type like in 13606, then this should count for something. If it showed it was in fact harder, it would be just as valid - we would really learn something then. But at least we would be doing science and progressing. Currently in the standards arena, there is very little science going on, just hand-waving.

I also lament the lack of real technical input into the standards, but that’s the reality, I am sure in retrospect many “standards” eg http, smtp, html could have been designed much better, but inter-operability and pragmatism has trumped perfection and we all live with an imperfect world. That’s why I think we should give the ISO Data types a go.

well we are forced to anyway, since they are now apparently the one true standard for clinical data types. Oops… until profiled according to your own needs into your own version of the standard…

  • thomas

I think that pretty much sums up the situation. :slight_smile:

Cheers,
Tim

I appreciate all of the remarks that have been make thus far.  I am
responding because I think we might have some shot at being better.  I
think many of you tak pot-shots at HL7, and that's OK.

I want to clarify one thing: HL7v2 is an excellent standard in the overall judgement of perfection versus pragmatism. It was developed with large amounts of empirical evidence, and has slowly grown over the years. I heard talk of 2.9 recently. It is relatively compact, solves problems it addresses with a reasonable hit rate, and has a pretty good cost/benefit ratio. Yes, it drives developers up the wall, and has all kinds of warts. But the penetration and utility shows the real value. It is no accident that the US and Australia and others make such heavy use of it.

The problems we have today with HL7 I think are to do with having entered into massive complexity while losing touch with evidence.

Governmnets make decision.  Governments fund efforts.  To ignore
governments would be foolish.  Every country has an official government
body that is responsible for standards - ANSI, BSI, DEN, AFNOR, others.
Complexity causes collapse.

One of the main points I made on my blog about this was that in every other industry I know of, the standards are created from fully engineered products, usually created by companies, the military or academia. In the case of toughened glass or mobile phone signalling, the standards orgs are doing the right (more or less) job. In health informatics, other than IHTSDO, they are on some other planet.

You claim that ISO is flawed.  Ballot is by standard, a only a few
countries dominate.  That obviously is not restricted to standards. Again,
that's life.But what is a better solution?  Shall we live with a decision
making prosess in which a relative few people decide what is correct?

I think that today’s world has shown us better solutions. Here are 2:

  • IETF - largely built by dedicated academic, military and industry people, produced an engineering framework on which most of our modern communications work. The design work did not occur in committees.
  • the large open source projects, e.g. Linux and Apache to mention a couple, and let’s add Python, Plone etc, as Tim would no doubt do.

In both examples, a relatively small number of people do decide (in a technical development environment) what is a correct solution to the problem at hand. In the case of Linux, Linus Torvalds is famous for being autocratic - but it works. This is life, not everyone is an architect. The number of designers at BMW is but a tiny fraction of the overall payroll. If it were any other way, we would have chaos. These efforts then offer their output to the world at large, and the world at large decides. Both IETF and the LAMP platform are massive successes. That is because they did not decide on what was correct for us - we did that - we decided what worked for us.

The success and quality of the above efforts shows us just how flawed building technical artefacts by the paper-based committee approach is. We really need to have total reform, and as soon as possible, because the wastage of having the best and brightest of the medical and IT fields working in such a hopeless structure surely cannot be borne for much longer.

Can we create an open society that leaves some of the history and biases
behind and find the best possible solution?  Can we bring together the SDO
organizations.  I also have a problem that openEHR refuses to be an SDO.

I didn’t know that openEHR had refused… I didn’t even know that it had been asked.

  • thomas

hi All

A roll up of comments:

1. ISO 21090 is often (always?) profiled

It seems remarkable to me that people think it's a problem that ISO 21090
needs to be profiled. Who would've guessed that a full standard that meets
many requirements is simpler to implement if you profile out the features
that reflect requirements you don't have? I'm pretty sure that this is true
of every other standard as well. It's certainly true of all my implementations
of W3C, IETF, and OMG standards.

2. Some people have responded vehemently to Tom's initial comments

I suppose I'm a little guilty. I don't mind people criticising ISO 21090.
Other's people's list of criticisms will never be as a long as mine. But
it's frustrating to respond to the same wrong comments repeatedly,
especially when the come from people who are widely and rightfully
regarded as genuine experts

3. In health informatics, standards are done differently.

We had this discussion last week. I made the point that this is
true of IT vertical industry integration standards. I don't believe
Tom offered a counter example to this.

4. The ISO process is flawed

Yes. As is every other process, each in it's own way.

5. Cryptic type names.

Yes. Sorry. But we do actually define both short and long names,
so that people can use either. But people always choose the short
name. So there's a bit of market influence at work there.

6. Eric's comments about typing

Eric, we do allow OID as a reference to value set. We expect
that you need the OID registry and CTS to make this work (since
you asked how it would). We discussed the notion of putting the
entire value set in the data type, but this is not properly in the
scope of the data types. I think that models can and should
use the data types to communicate the possible set of values,
but I'm comfortable that we didn't do this in data types

Grahame

Well said Ed!

Met vriendelijke groet,

Results 4 Care b.v.

dr. William TF Goossen
directeur

De Stinse 15
3823 VM Amersfoort
email: wgoossen@results4care.nl
telefoon +31 (0)654614458

fax +31 (0)33 2570169
Kamer van Koophandel nummer: 32133713

In a message dated 8-11-2010 15:38:26 W. Europe Standard Time, thomas.beale@oceaninformatics.com writes:

I have been asking HL7 since 2003 or so to show a clean model of any of the following in RIM or CDA structures:

2 or 3 sample Apgar
standard 3 sample GTT (glucose tolerance test) with patient state
ICU vital sign time series

Tom,

these are available since about that time in HL7 space. However, they where not balloted yet.

William

Met vriendelijke groet,

Results 4 Care b.v.

dr. William TF Goossen
directeur

De Stinse 15
3823 VM Amersfoort
email: wgoossen@results4care.nl
telefoon +31 (0)654614458

fax +31 (0)33 2570169
Kamer van Koophandel nummer: 32133713

Great, do you have a link where they can be found/seen.

Cheers,

Stef

Thanks.

W. Ed Hammond, Ph.D.
Director, Duke Center for Health Informatics

             Williamtfgoossen@
             cs.com
             Sent by: To
             openehr-technical openehr-technical@openehr.org
             -bounces@openehr. cc
             org CTeam@lists.hl7.org
                                                                   Subject
                                       Re: ISO 21090 data types too
             11/08/2010 03:03 complex?
             PM
                                                                           
             Please respond to
                For openEHR
                 technical
                discussions
             <openehr-technica
              l@openehr.org>
                                                                           
Well said Ed!

Met vriendelijke groet,

Results 4 Care b.v.

dr. William TF Goossen
directeur

De Stinse 15
3823 VM Amersfoort
email: wgoossen@results4care.nl
telefoon +31 (0)654614458

fax +31 (0)33 2570169
Kamer van Koophandel nummer: 32133713

hi All

A roll up of comments:

1. ISO 21090 is often (always?) profiled

It seems remarkable to me that people think it's a problem that ISO 21090
needs to be profiled. Who would've guessed that a full standard that meets
many requirements is simpler to implement if you profile out the features
that reflect requirements you don't have? I'm pretty sure that this is true
of every other standard as well. It's certainly true of all my implementations
of W3C, IETF, and OMG standards.

I know that in HL7 this profiling is normal. The only kind of ‘profile’ I know of elsewhere in other standards is of the kind ‘we only implement x, y but not z’. In other words, choosing a subset of classes or features to implement. As soon as one has to actually chop up the classes in a model however, we are on different ground. The answers Grahame gave me last time I discussed how to profile 21090 for 13606 use are here, about half-way down. As you can see, it was not 100% clear on a cursory inspection what exactly the profile version would look like. As Grahame has said, this is still to be done properly with Dipak. This means that official users of 13606, e.g. Sweden, can’t actually use the standard out of the box, and do not have any official version to use until that work is done.

I happen to know that Sweden, Singapore and the UK have created at least 3 different ‘profiles’ of 21090 over time, all to suit their own needs. There is no guarantee that data or software built on these home-grown profiles will talk to each other, nor that any of them would talk with software or data built on the pure 21090 specification. So in fact, we have N pseudo-standards, and no real standard.

This can’t be anybody’s idea of an easy way to get started with a data types standard.

2. Some people have responded vehemently to Tom's initial comments

I suppose I'm a little guilty. I don't mind people criticising ISO 21090.
Other's people's list of criticisms will never be as a long as mine. But
it's frustrating to respond to the same wrong comments repeatedly,
especially when the come from people who are widely and rightfully
regarded as genuine experts

Note that I am not particularly making criticisms as if it were me personally trying to address the problems; I am mainly reflecting common responses from others, e.g. in government departments, universities and so on. There is no escaping from the fact that having a type called ‘Any’ representing a concept that should be called something like ‘AnyDataValue’ (in openEHR it is DV_ANY) is annoying and has to be dealt with in some way.

3. In health informatics, standards are done differently.

We had this discussion last week. I made the point that this is
true of IT vertical industry integration standards. I don't believe
Tom offered a counter example to this.

I have not been tracking other vertical industry ICT standards. But I did offer a examples of ‘stacks’ of standards which do not follow the strange world of HL7 modelling. Everyone else uses normal OO modelling, or else something accepted like XML schema (admittedly terrible for object models, but that’s another story); but HL7 can’t (it instead tries to get OMG to change UML). I fail to see why standards in e-health have to be done in such a bizarre way. There is nothing special about e-health requiring that.

4. The ISO process is flawed

Yes. As is every other process, each in it's own way.

well yes and no… there are different categories of flawedness… in e-health, the paper standards bodies a) ‘design’ technical artefacts by (randomly self-selected) committees, b) take many years to ratify them, c) don’t validate them properly and d) don’t maintain them in any meaningful time period. Engineering processes (i.e. requirements capture, analysis, design, implement, test, deploy, maintain - all with feedback loops - by technically competent people) are also flawed, but usually only in minor ways. We still feel safe getting into an aircraft designed by an engineering process. Hardly any modern aircraft fall out of the sky due to engineering faults (the current problem with the Rolls Royce Trent 900 engines shows just how far you have to push the boundaries before any kind of serious problem occurs).

I still contend that we can do much, much better.

  • thomas

yes I have seen the HL7 models for these things. They are really poor (nothing to do with the people doing them; the formalism just doesn’t support modelling them easily).

  • thomas

On verticals and whether “everybody does” UML:

The ISO 10303 STEP engineering-domain standard family includes a modelling framework (called EXPRESS) which could, in some not-too-unlikely alternate world, have been adopted by HL7 for development of v3 (the timing was about right). STEP is pretty mature and widely used in its sector, and is, in my opinion and others’, technically superior to UML for modelling structural and dymanic aspects of information shared between complex enterprises that deal with conceptually complex information. I guess it wasn’t a candidate for HL7v3 simply because HL7 folks (long before I was involved) didn’t happen to know about STEP and what it can do… and that was simply because they were working in the health sector & not involved in sectors such as petrochemicals where STEP was in use.

…and BTW I’m not recommending JIC harmonization with STEP :wink:

Ann W.

Ann M Wrightson
Pensaer TG | Technical Architect
Gwasanaeth Gwybodeg GIG Cymru | NHS Wales Informatics Service
Symudol/Mobile: 07535 481797
Llanelwy | St Asaph: WHTN: 1815 8232 Ffôn/Tel : 01745 448232
Pencoed: WHTN: 1808 8930 Ffôn/Tel: 01656 778940

Hi all,
For those that remember me, I was quite active in HL7 up until about 5 years
ago. About that time I attended an ISO meeting in Berlin as an Australian
delegate to try to facilitate the harmonization of HL7/CEN/ISO data types
for healthcare. At the meeting there were a lot of frustrated people trying
their best to move this project ahead for some time and it was looking like
a hopeless cause. There was one last ditch effort by the leader of the
project at the time (whom I can't remember his name, but he was from the
UK). To do this, we agreed that we would build on top of the existing ISO
11404 IT - General Purpose Datatypes standard rather than reinventing the
wheel and we would only include the data types that we could agree on.
Unfortunately the project leaders could not continue his task (his boss must
have been more frustrated than he was) and this directive must have gotten
lost as the project transitioned to the new leader.

I have a lot of respect for Grahame for taking on the task that no one else
wanted (including myself), but it would appear to me that Grahame has tried
to do a too good a job by trying to incorporate everyone's requirements.

As an ISO standard, I believe that it should be an intersection of all the
input specifications, rather than a union and if ISO 21090 followed the
committee's directive from the Berlin meeting, we would have a usable
standard that would not require profiling. Extensions could be made by
parties knowing that they are just that, but at least the core data types
would support knowledge development and system interoperability.

This is not a criticism of Grahame, in fact it is probably my fault for
dropping away from this project and the standards world in general , but
this was something I had to do for my own sanity (it hurts when you
constantly hit your head against a brick wall, I needed to do something that
I thought was more practical).

This might be all too late, I am not sure what the status of ISO 21090 is,
but I thought it may be useful to have this hindsight considering people are
looking for better ways.

Heath Frankel
Ocean Informatics

hi Tom

The only kind of 'profile' I know of elsewhere in other standards is of
the kind 'we only implement x, y but not z'.

which is the kind I'm talking about

The answers Grahame gave me last time I discussed how to profile
21090 for 13606 use are here, about half-way down.

rather incomplete. We really do have to get this done

I happen to know that Sweden, Singapore and the UK have created at least 3
different 'profiles' of 21090 over time, all to suit their own needs. There
is no guarantee that data or software built on these home-grown profiles
will talk to each other, nor that any of them would talk with software or
data built on the pure 21090 specification.

but if they've profiled according to the method above, then they will talk to
each to the degree that their requirements match. Solving mismatched
requirements is outside the scope of a data types standard.

If they've profiled *and mapped*, then it's not so straight forward - depends
very much on the quality of the mapping.

This can't be anybody's idea of an easy way to get started with a data types
standard.

no, of course, the easy way, is "do it my way", which is a variation of the
Not-Invented-Here-Syndrome

There is no escaping from the fact that having a type called 'Any'
representing a concept that should be called something like 'AnyDataValue'
(in openEHR it is DV_ANY) is annoying and has to be dealt with in some way.

really? You've not heard of namespacing? It would make that much difference
to you to prefix all or some of the types with "DV_" or something? Surely not.
Did you read the discussion in ISO 21090 about this point? (It was written
specifically for you) (and btw, in my implementation, I did end up prefixing
the names, for purely programming reasons)

We had this discussion last week. I made the point that this is
true of IT vertical industry integration standards. I don't believe
Tom offered a counter example to this.

I have not been tracking other vertical industry ICT standards. But I did
offer a examples of 'stacks' of standards which do not follow the strange
world of HL7 modelling. Everyone else uses normal OO modelling, or else
something accepted like XML schema (admittedly terrible for object models,
but that's another story); but HL7 can't (it instead tries to get OMG to
change UML). I fail to see why standards in e-health have to be done in
such a bizarre way. There is nothing special about e-health requiring that.

you changed the sense. Your original claim was that standards should just
pick something that works well enough. My point is that ICT vertical
interoperability standards don't work like that, including in health.

As Ann pointed out, not everyone uses normal OO modelling, and for
a variety of reasons. In fact, big companies are starting to move on - have
you seen M (microsoft oslo)?

I happen to think that design by constraint - which is the fundamental
pattern of both v3 and openEHR - is irretrievably busted, and it's time
for us both to move on and find something better. (But perhaps we should
spend some time implementing in the real world before we do that...)

I'm watching M closely to see if a realistic alternative emerges there.
It hasn't yet. And the alternative is to talk to OMG to talk about getting
UML changed. But it's odd to have the pot call the kettle black, since
ADL is hardly standard UML.

Heath:

As an ISO standard, I believe that it should be an intersection of all the
input specifications, rather than a union

extension has it's own difficulties, as does union. We were aware of the
berlin decision, but ISO 21090 resulted from a deliberate decision
to do something different. Was that a right decision? Unfortunately,
time won't tell, since the alternatives are purely hypothetical.

Grahame

Hi Andrew

I’m happy to continue to have this discussion with you. I still am not sure whether your objection to openEHR is about the fact that the foundation is not an SDO, or that you think that there is some semantic model in there that you don’t like. If openEHR were part of an SDO would it make your objections go away?

As we have discussed before, the changes to openEHR from when it was pretty congruent with the current 13606 standard have not been about adding in someone’s personal idea of how a health record should be modeled, but about making it as easy as possible to have one way of modeling things that we shouldn’t have to think about.

A simple example that I have raised with you before - in openEHR there are defined ways of representing things like lists, tables and trees. In 13606, there is only the cluster ie a tree structure. While this is simple, it means that if I want to represent a table in a 13606 archetype, I need to make a decision about whether it is represented as a ROW, COLUMN cluster or a COLUMN, ROW cluster and every archetype may have a different decision made. How does a computer know which way the decision was made? Yes, I know that last time I suggested this, you said well it could be just written down somewhere but obviously that might mean that most of the time it will be one way and then some of the time it will be another way and is probably worse! I can’t really believe that you think documenting this is better for computability than making it explicit.

This same approach extends to the entry types that you don’t like. The only reason these are there are because of explicit, researched reasons to make it easy to develop computable expressions. Tom has given the examples of the observation class allowing you to easily represent data values and patient state within a time series like apgar or 24 hour blood pressure or postural drop which is also a blood pressure series. Indeed, using a generic entry model it is possible to define a model to represent these, however the issue is that there are thousands of ways of representing the same thing. The openEHR reference model makes the way of representing these things EXPLICIT so that modelers don’t have to keep reinventing things over and over and so that computers can rely on data being represented in the same way.

There is nothing in the openEHR reference model that is there to represent some kind of Health semantic model. In fact the model is incredibly generic and is being used exactly as it is in other domains like finance. The difference between CEN 13606 and openEHR is not some ‘openEHR game’, its a pragmatic, engineered attempt to make clinical data more computable.

And no one is trying to make everyone accept openEHR as the only standard in town… we think its good and it works in real world situations and we are happy to defend its value. :slight_smile:

regards Hugh

Reading your post I have remembered something I have read sometimes
but I haven't still gotten a satisfactory answer:
If UML and ADL are that similar, why don't we use both? What does UML
can express that ADL can not express that makes some people to dislike
it (and also what can ADL express that UML can not express that makes
some people to dislike it)
I get that UML could be complicated, but again I don't think nobody
expects someone to model a concept in UML without the right tools

Regarding Cluster, there is a code to tell if a cluster is a table or
a list, so the computer always knows which one was chosen

Hello Hugh,

I don’t have an objection to openEHR as such, but I think there is significant semantics hardwired into the model and that hardwiring makes openEHR archetypes difficult to use in other models, so I prefer a simpler, more generic reference model.

In reality the “Observation” status of an entry should have a terminological definition rather than an explicit attribute of the model and by declaring the eg “TABLE” cluster you are actually removing the knowledge from the terminology and moving it to the model. This means the archetype does not have the information. To function as a DCM the archetype should have that knowledge embedded in it so that it can be represented in a specific way in another model. You could declare a cluster that is marked, by terminology binding as a table structure and that would allow any model to represent it using its own table convention.

Its partially a question of drawing the line between the terminology and the model, and openEHR extends a lot further into the terminology realm than eg EN-13606.

Our own archetypes in HL7 V2 can use openEHR archetypes, but as some of the semantics are embedded in the class names and attribute names and not the archetypes the information semantics are dependant on knowledge of the openEHR reference model, rather than the structure and terminology in the archetype. I think things like “data” and “state” should have terminology binding behind them if they are important and in openEHR they do not. I guess its what I would call “semantic attributes”. Semantic attributes only work when you use a shared reference model.

In fact a true DCM format would have even less semantics than 13606, but EN 13606-2 happens to be the most generic model available, which is why we prefer it. I guess there is a spectrum with OWL at one end and openEHR/RMIMs at the other. I am not sure that everyone is ready to use owl just yet, but a reference model between owl and en 13606 is where I see DCMs as being best placed. The ISO DCM is using UML which I think allows 2 much freedom, probably even more than OWL. Its constrained by using UML templates which is in reality a non obvious way of defining a reference model, but there is no compulsion to use those templates which creates 2 many degrees of freedom in my view.

So I guess I am wanting a DCM format, and want that format to look more like owl than anything, but I don’t think that owl is practical for 95% of modellers (including me atm) so I have picked the most generic model I can find, which in EN 13606.

In response to Eric’s comments, I think its much easier to go from a generic model to a (or many) specific ones, especially if the generic model uses terminology to define things like “Table”. Its not straight forward to go from openEHR to EN 13606 as you have to do something with the semantic attributes. Last time I checked I was not walking away from any process, but attempting to engage. I appreciate that Nehta in Australia have had tooling problems and I guess if you only have A$160,000 a day to spend over a decade its hard to develop your own tools??? The published Nehta models are in fact generic, although often are lacking in details. I am not sure where the “Hippocratic oath” Eric mentions comes into it?

In the end openEHR is an application architecture and an implementation, but in becoming concrete, as every one must at some point, its not that suitable as a DCM format for the reasons above. That is not a criticism of openEHR, but I think a reality. If the concept of DCM has any future it needs to not support any model specifically. I think the ISO data types are in the same boat. They are NOT the HL7 V2 or V3 data types at this stage, they came into existence before that and hopefully HL7 will move towards them, but they are a potential shared standard, and as a result no existing implementation will claim to like them, I think that includes existing EN 13606 and HL7V3 implementers. Its a question of convergence or war, that’s an age old battle that has been fought many times before, and it usually ends in either the dark ages or convergence by force.

Andrew McIntyre

Tuesday, November 9, 2010, 10:48:26 AM, you wrote:


| Hi Andrew

I’m happy to continue to have this discussion with you. I still am not sure whether your objection to openEHR is about the fact that the foundation is not an SDO, or that you think that there is some semantic model in there that you don’t like. If openEHR were part of an SDO would it make your objections go away?

As we have discussed before, the changes to openEHR from when it was pretty congruent with the current 13606 standard have not been about adding in someone’s personal idea of how a health record should be modeled, but about making it as easy as possible to have one way of modeling things that we shouldn’t have to think about.

A simple example that I have raised with you before - in openEHR there are defined ways of representing things like lists, tables and trees. In 13606, there is only the cluster ie a tree structure. While this is simple, it means that if I want to represent a table in a 13606 archetype, I need to make a decision about whether it is represented as a ROW, COLUMN cluster or a COLUMN, ROW cluster and every archetype may have a different decision made. How does a computer know which way the decision was made? Yes, I know that last time I suggested this, you said well it could be just written down somewhere but obviously that might mean that most of the time it will be one way and then some of the time it will be another way and is probably worse! I can’t really believe that you think documenting this is better for computability than making it explicit.

This same approach extends to the entry types that you don’t like. The only reason these are there are because of explicit, researched reasons to make it easy to develop computable expressions. Tom has given the examples of the observation class allowing you to easily represent data values and patient state within a time series like apgar or 24 hour blood pressure or postural drop which is also a blood pressure series. Indeed, using a generic entry model it is possible to define a model to represent these, however the issue is that there are thousands of ways of representing the same thing. The openEHR reference model makes the way of representing these things EXPLICIT so that modelers don’t have to keep reinventing things over and over and so that computers can rely on data being represented in the same way.

There is nothing in the openEHR reference model that is there to represent some kind of Health semantic model. In fact the model is incredibly generic and is being used exactly as it is in other domains like finance. The difference between CEN 13606 and openEHR is not some ‘openEHR game’, its a pragmatic, engineered attempt to make clinical data more computable.

And no one is trying to make everyone accept openEHR as the only standard in town… we think its good and it works in real world situations and we are happy to defend its value. :slight_smile:

regards Hugh




On 8/11/2010 10:05 PM, Andrew McIntyre wrote: |

  • | - |

Hello Hugh,

As someone who believes in a level playing field I think an international standard, even if a little flawed is better than waiting forever for perfection which will never come. I would extend this ISO 13606-2 to enable sharable archetypes as well.

At least then we have a situation where everyone has a common point of reference. I guess everyone is also a little unhappy, but that is better than the current situation. I think the standards are virtual in any system, with adapters to the actual implementations, and to expect anything else is dreaming of a mono culture, usually your own variety of mono culture of course.

There are great ideas to be reused from all players, but to expect the world to accept openEHR as the only standard is unreasonable. We have actually done a lot of work to enable the use of archetypes in HL7 V2, not because we thing V2 is the best and most efficient mechanism, but because its a standard and it has widespread usage and we gain a backward compatible encoding, which means we can actually use it. (And the data model is actually transformable into another encoding if desired)

Similarly we adapt HL7V2 data for use in the Virtual Medical Record (VMR) and use ISO data types there, not because they are a seamless match for HL7V2, but because the ISO data types are a standard and we would otherwise have to ballot a whole new standard. Its planned to constrain out many, or most of the esoteric base class methods in the ISO data types for the VMR, but they are still a compliant subset.

If the openEHR CKM produced ISO archetypes then it would be a lot more acceptable to many people, as it is standards based. Currently you have to buy into the whole game of openEHR, which is I think a problem for many. Its not a criticism of openEHR, but a desire for a neutral agnostic model. You may defend the Evaluation class to the hilt, but there is no reason that every other model has to and this is the problem. We need to accept some level of imperfect abstraction to enable inter-operability, where everyone has to provide glue to make it concrete. Its then less than optimal for everyone, which is I guess what “compromise” and “consensus” is all about. I still think it provides several orders of magnitude of functionality, over the current reality. Otherwise we are doomed to the “My Model is better than yours” war until the last man is standing.

I also lament the lack of real technical input into the standards, but that’s the reality, I am sure in retrospect many “standards” eg http, smtp, html could have been designed much better, but inter-operability and pragmatism has trumped perfection and we all live with an imperfect world. That’s why I think we should give the ISO Data types a go.

Andrew McIntyre
Medical-Objects

Monday, November 8, 2010, 10:59:45 AM, you wrote: