Hi!
Response to 2, the Ocean EhrGate Web Service provides a ResultSet as defined
in the following WSDAL fragment:
<xs:complexType name="ResultSet">
...
Thanks, I know the service interface and WSDL for Ocean EhrGate [1a,b]
since we got Ocean's permission to use it in an experimental research
application [2] I created. (For those not familiar with EhrGate an
example AQL query and response is provided further down after my
"signature" in this mail.)
Sorry, I didn't realise when I responded to this that it was such an old
post
No problem, I'm glad the topic comes to life again since we still
should resolve it. I think it would be wonderful to have standardised
AQL response formats for e.g. XML and JSON. The usecase I am thinking
of is not the "EHR extract exchange" but rather the ability for e.g a
GUI implementation to be used with any future AQL-capable persistence
implementation (PatientOS, OSHIP, Zilics, Ocean, LiU and others
maybe?).
By the way, does AQL cater for querying CONTRIBUTIONS and FOLDERS too?
We (LiU) are working on a REST-based [3] service implementation that
we'll contribute as an inspiration for an official specification when
we have tested it. I guess the Ocean EhrGate implementation could be
an inspiration for an official SOAP based service specification. No
matter if an implementer wants to go for SOAP or REST the XML response
format could be the same (except that it in the SOAP response will be
wrapped in some extra SOAPy-envelope XML that a REST based response
won't need). It is the response format (without SOAP envelope) that
I'd be interested in further discussions about.
I am very interested in the idea of basing a query result class on the
ITEM_TABLE class
...
In addition, it may also be necessary to have a query result class that is
based on the ITEM_TREE class to support more complex hierarchical query
results
...
W3C has specified a response format [4] for SPARQL queries that I
think could be used as an inspiration for an AQL-response
specification. Interested readers, please have a look at it and give
some feedback.
I have not managed to figure out how to get the result of using the
"AS" operator in AQL-queries visible in the result from EhrGate, the
"variable binding" approach in [4] might be useful in AQL responses.
In the case where AS has not been used then the path expression used
(e.g. c/context/start_time) could be returned as variable name.
So let's discuss a bit an then make a draft specification for XML
based AQL-responses
(JSON- and YAML-based response specifications
can follow later...)
References:
[1a] http://demo.oceanehr.com/EhrBank14/EhrService.asmx
[1b] http://demo.oceanehr.com/EhrBank14/EhrService.asmx?WSDL
[2] http://www.imt.liu.se/~erisu/2008/ehrbank/EHRBankTool.html
[3] http://en.wikipedia.org/wiki/REST
[4] http://www.w3.org/TR/rdf-sparql-XMLres/
Best regards,
Erik Sundvall
erisu@imt.liu.se http://www.imt.liu.se/~erisu/ Tel: +46-13-227579
This query used in [2] connected to [1]...
SELECT c/context/start_time , c/name AS my_variable, c/composer/name,
v/uid/value FROM EHR[uid='fe619372-25ed-4549-a108-6ddbd92a96a7']
CONTAINS VERSION v CONTAINS COMPOSITION c WHERE
c/category/defining_code/code_string='433'
..will get a response like this (don't worry, this is a fake patient)...
<RetreiveResultsResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.oceaninformatics.biz/OceanEhr/EhrBank/EhrService"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RetreiveResultsResult>
<TotalResults>35</TotalResults>
<Rows>
<ResultRow>
<Items>
<anyType xsi:type="q1:DV_DATE_TIME"
xmlns:q1="http://schemas.openehr.org/v1">
<q1:value>2006-12-05T13:51:55</q1:value>
</anyType>
<anyType xsi:type="q2:DV_TEXT"
xmlns:q2="http://schemas.openehr.org/v1">
<q2:value>Blood Glucose</q2:value>
</anyType>
<anyType xsi:type="xsd:string">EhrGateUnit</anyType>
<anyType
xsi:type="xsd:string">05c0762d-2044-4ce6-a6f3-f7bb959cda63::10aec661-5458-4ff6-8e63-c2265537196d::1</anyType>
</Items>
</ResultRow>
[...other results removed from example...]
</Rows>
</RetreiveResultsResult>
</RetreiveResultsResponse>
From: openehr-technical-bounces@openehr.org
[mailto:openehr-technical-bounces@openehr.org] On Behalf Of Erik Sundvall
Sent: Tuesday, September 30, 2008 6:35 PM
To: For openEHR technical discussions
Subject: AQL-parser in Java? + AQL response format (using the AS operator)
...