
People often ask me why did we develop Task Planning in openEHR (NB: if the status is showing as ‘Retired’, this is an error in the specifications website), doesn’t BPMN do everything needed?
Continue reading
People often ask me why did we develop Task Planning in openEHR (NB: if the status is showing as ‘Retired’, this is an error in the specifications website), doesn’t BPMN do everything needed?
Continue reading
Today, pianists from every country in the world can read and play Bach. Without dropping a note or missing a beat.
Why is it so hard in the information-rich technical domains?
The history of ‘solving interoperability’ has generally been via attacking the problem at the data level. In musical terms, this is like making a special representation for every cantata, every symphony, every mass, with no underlying common notation. The work is endless.
Only short-term, non-scalable fixes are available with this approach. Any hope of a permanent solution relies on addressing the semantics of the domain of interest, far upstream from data.
Continue reading
[Image: from CatSalut website]
A slide on the future of HIT, from the openEHR conference hosted by the Catalan Health System (CatSalut), 06 June 2023, Barcelona.
Signs of success:

openEHR was officially created on 13 March 2003, 20 years ago today. Prof David Ingram thought of the name, and he and a small band of optimists – Dr Sam Heard, Dr Dipak Kalra, David Lloyd and myself – launched into building and open architecture for the electronic health record.
Continue readingOne of the basic elements of design common to all workflow languages, including YAWL and BPMN, is the inclusion of logical expressions on decision nodes. This seems harmless, and we followed it in openEHR’s Task Planning specifications. However, it is clear that this is a basic error, and that any workflow containing such expressions is unmaintainable and semantically unreliable.
Continue readingColleagues in e-health often say to me: why don’t you make openEHR easier to map to <insert popular interop standard> (used to be HL7v3, then HL7 CDA, now, HL7 FHIR… DSTU2/3/4/5?).
To which I usually reply: if you are implying there is any easy way to connect to today’s favourite message formalism, there’s not, there are only moderately difficult ways – which is why no-one has an automatic converter.
Continue reading
Following on from various posts in the past, including my 2014 post What is an open platform?, I thought it might be time to post a succinct (as possible) definition of the platform idea, for e-health.
As stated in that post, the key thing to understand about a platform is that it represents progress away from being locked-in to a monolith of fixed commitments, toward an open ecosystem. This is true both technologically and economically.
Continue reading
There are some rather obscure definitions of health IT’s favourite term interoperability floating around, for example:
Continue reading
The above shows a typical web form calculator for the CHA2DS2-VASc score, used for estimating the risk of stroke in patients with non-rheumatic atrial fibrillation (AF), primarily for the purpose of deciding the use of anti-coagulant therapy [Wikipedia].
How would such a score be programmed?
Continue reading
Another bit of software engineering knowledge from my archive relates to two well-known formal quality methods used in software development. This is from a presentation made at ETH Zurich in 2010.
Continue reading