Dear All
Ocean’s proposal for an Archetype Query Language has been around for a year now:
For a general time line and introduction see:
http://www.openehr.org/wiki/display/spec/openEHR+Query+Specifications
The AQL Specifications:
http://www.openehr.org/wiki/display/spec/Archetype+Query+Language+(AQL)
Queries will be required to based elements of their select clauses and where statements on reference model attributes (e.g. the time of commital, the time of an observation) but the majority of information sought will be based on archetypes used as the specification for the data. Thus a weight will be returned from seeking out data stored against the ‘body weight’ archetype, symptoms from ‘Story’ observations and specific structured statements about symptoms using the ‘symptom archetype’.
There are a number of questions that come up from archetype based queries and how we should handle them. The first is about repeating elements in an observation. The event class of observation is repeating and as such will lead, at times, to duplicate data at different times. For this reason an observation class may return multiple instances of the same data. There are a number of different ‘rules’ that are starting to become clear.
-
A generic approach to returning data with recurring data; should values should be repeated as in a relational query that has the same logical joins?
-
The data may have different state values such as standing or sitting blood pressure. When this approach was designed it was felt that information should always display state information by default. Should this be enforced (or add a special statement not to return state information). It is this mechanism that would always return Fasting with a blood sugar for instance.
-
We are also looking for ways to test the query language and help it grow rapidly. Recently Chunlan Ma has been working on returning linked data from within the health record for instance.
I am trying to start a conversation here for those seeking to use AQL and openEHR. We could provide a some tooling to get this moving and would even be very pleased to have feedback on how the Query Interface might go best.
Hope to hear some ideas about how to progress this the best. We have recently enabled interactive editing of the language which does make it easier to test the capability of the engine. We would be happy to support people working in the open source space with developing the language further.
Cheers, Sam
(attachments)
