for discussions related to the EtherCIS Data Repository framework. See more at http://ethercis.org/ and https://github.com/ethercis
@freshehr
@freshehr thank you. I'll do it at once.
https://thinkehr-app.apperta-staging.inidus.tech gives me a 404. From the postman environment I understand that is the API endpoint, isn't it?
Hi @chevalleyc
Unfortunately it doesn't work for me. I corrected an ORBDA composition to pass Code4health check. The composition is without external_ref, null_flavour and DV_DATE but it contains several ADMIN_ENTRY. In the new ethercis the error is:
500
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 500 #1.0.0 Invocation exception to method:create:java.lang.IllegalArgumentException: Could not parse supplied content:java.lang.IllegalArgumentException: Unhandled data type:openEHR-EHR-ADMIN_ENTRY.patient_discharge.v1, Patient discharge</title>
</head>
<body><h2>HTTP ERROR 500</h2>
<p>Problem accessing /rest/v1/composition. Reason:
<pre> #1.0.0 Invocation exception to method:create:java.lang.IllegalArgumentException: Could not parse supplied content:java.lang.IllegalArgumentException: Unhandled data type:openEHR-EHR-ADMIN_ENTRY.patient_discharge.v1, Patient discharge</pre></p><hr><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.4.z-SNAPSHOT</a><hr/>
</body>
</html>
Note: I checked out the 1.3 version of ehrserver in order to create the updated Ethercis
template used: https://gist.github.com/sasurfer/7ea03c1e56fa3c233197c4e889a3b1e6
composition used: https://gist.github.com/sasurfer/51e789e754064be8325e61b384f06f39
Any hint?
@chevalleyc @ricardofago I finally made it through the libraries compilation.
Now I can POST a composition with ADMIN_ENTRY and null_flavour but I can't retrieve it with the method GET. I tried with success the POST and GET of the same composition on thinkehr.
Did any of you succeed in using a GET on a composition? Suggestions ?
Here's the error:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 500 #1.0.0 Invocation exception to method:retrieve:java.lang.IllegalArgumentException: DB inconsistency:java.lang.IllegalArgumentException: Unhandled path in template:/content[openEHR-EHR-ADMIN_ENTRY.hospitalization_authorization.v1 and name/value='Authorization for hospital admission']/data[at0001]/items[at0061 and name/value='Issue date'] with definition:{/name=[{value=Issue date}], /value={value=2010-09-01T00:00:00-03:00, epoch_offset=1.28331E12}, /$PATH$=/content[openEHR-EHR-ADMIN_ENTRY.hospitalization_authorization.v1 and name/value='Authorization for hospital admission']/data[at0001]/items[at0061 and name/value='Issue date'], /$CLASS$=DvDateTime, $OBJECT$=2010-09-01T00:00:00-03:00}, possible cause is out of synch template and persisted data (composition id: Hospitalização)</title>
</head>
<body><h2>HTTP ERROR 500</h2>
<p>Problem accessing /rest/v1/composition/9b462a76-d6ff-45cb-9e27-d13ff1414950::ethercis.crs4::1. Reason:
<pre> #1.0.0 Invocation exception to method:retrieve:java.lang.IllegalArgumentException: DB inconsistency:java.lang.IllegalArgumentException: Unhandled path in template:/content[openEHR-EHR-ADMIN_ENTRY.hospitalization_authorization.v1 and name/value='Authorization for hospital admission']/data[at0001]/items[at0061 and name/value='Issue date'] with definition:{/name=[{value=Issue date}], /value={value=2010-09-01T00:00:00-03:00, epoch_offset=1.28331E12}, /$PATH$=/content[openEHR-EHR-ADMIN_ENTRY.hospitalization_authorization.v1 and name/value='Authorization for hospital admission']/data[at0001]/items[at0061 and name/value='Issue date'], /$CLASS$=DvDateTime, $OBJECT$=2010-09-01T00:00:00-03:00}, possible cause is out of synch template and persisted data (composition id: Hospitalização)</pre></p><hr><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.4.z-SNAPSHOT</a><hr/>
</body>
</html>
@ricardofago I confirm that the at0000 value change does the trick.
I feel very ignorant about it.
When I post a composition the template is checked for conformity bu what happens when I call the get method for the composition loaded? I presume the template is interrogated again to show on output the right path for each composition element. Am i wrong?
So, if the only source of knowledge for the composition posted is the template why a similar problem to the one you solved doesn't occur with Patient Discharge? In the opt template patient discharge is called with the brazilian name "Alta do paciente" whereas in the composition "Patient discharge" (alike "Autorizacao de internacao hospitalar" and "Authorization for hospital admission")
@chevalleyc Is something like this supposed to happen or is it a bug?