Home » Archived » OHF » Problem with PDQ Query - search patient by ID
Problem with PDQ Query - search patient by ID [message #49481] |
Tue, 09 December 2008 16:11 |
motorenshi Messages: 4 Registered: July 2009 |
Junior Member |
|
|
Hello,
I am new to OHF, HL7, and so on, so please be indulgent with me :)
I have retrieved a sample of code from here to test PDQ Queries. It
works correctly when i use the family name and given name as search
parameters
(methods 'addQueryPatientNameFamilyName("xxx")' and
'addQueryPatientNameGivenName("yyy")' of the class
'PdqConsumerDemographicQuery')
but not when i use the patient ID via the method addQueryPatientID(...) :
the request succeeds, but no patient is returned.
The Patient Demographics Supplier returns code AE in the response message
in the fields MSA and QAK as you can see:
MSH|^~\&|||||20081209160853+0100||RSP^K22^RSP_K22|16842| P|2.5
MSA|AE|9204906087768759031
QAK|9219524764640968042468002385343|AE
QPD|Q22^Find
Candidates^HL7|9219524764640968042468002385343|@PID.3.1^6537 54210~@PID.3.4.1^ADT_ESEL~@PID.3.4.2^1.3.6.1.4.1.21367.2008. 2.3.9~@PID.3.4.3^ISO
So, i wonder wether there would not have something that I would have
misunderstood regarding the method :
addQueryPatientID(idNumber, namespaceId, universalId, universalIdType)
To fill in the 4 parameters, since I did not see exactly what they
referred to, I got their values from the PDQ response to a PDQ query with
name and firstname on the patient I wanted, as following :
...
String[] id = response.getPatientIdentifier(i, j);
int cnt=j+1;
logger.debug(" " + cnt + " - Patient ID number: " + id[0]);
logger.debug(" " + cnt + " - Patient ID assigningAuthority: " + id[1]);
logger.debug(" " + cnt + " - Patient ID universalID: " + id[2]);
logger.debug(" " + cnt + " - Patient ID universalIDType: " + id[3]);
...
I assumed that the information above corresponded to what I needed, and i
called the addQueryPatient method with :
msg.addQueryPatientID("653754210", "ADT_ESEL",
"1.3.6.1.4.1.21367.2008.2.3.9", "ISO");
According to you, where does the problem come from?
What is exactly the parameter assigningAuthority? Does it well correspond
to the namespaceid?
The patient number used in the method (i.e. which is the one returned by
the PDQ Query with firstname and lastname), is the local ID of the patient
(i.e. the patient id defined on the client system). Is it the good
parameter? Or the method waits for an other number which does not have
anything to do with it?
Thanks in advance for your help.
Motorenshi
|
|
|
Re: Problem with PDQ Query - search patient by ID [message #49574 is a reply to message #49481] |
Mon, 15 December 2008 18:30 |
No real name Messages: 292 Registered: July 2009 |
Senior Member |
|
|
Hi Benjamin,
Kindly re-post this question to our IHE Profiles project at OHT.
https://iheprofiles.projects.openhealthtools.org/
The user forum can be found here:
https://iheprofiles.projects.openhealthtools.org/ds/viewForu mSummary.do?dsForumId=212
Unfortunately, due to spam, guest posting is disabled so please become a
member of the project.
regards,
- Sarah
motorenshi wrote:
> Hello,
>
> I am new to OHF, HL7, and so on, so please be indulgent with me :)
> I have retrieved a sample of code from here to test PDQ Queries. It
> works correctly when i use the family name and given name as search
> parameters
> (methods 'addQueryPatientNameFamilyName("xxx")' and
> 'addQueryPatientNameGivenName("yyy")' of the class
> 'PdqConsumerDemographicQuery')
>
> but not when i use the patient ID via the method addQueryPatientID(...)
> : the request succeeds, but no patient is returned.
>
> The Patient Demographics Supplier returns code AE in the response
> message in the fields MSA and QAK as you can see:
>
> MSH|^~\&|||||20081209160853+0100||RSP^K22^RSP_K22|16842| P|2.5
> MSA|AE|9204906087768759031
> QAK|9219524764640968042468002385343|AE
> QPD|Q22^Find
> Candidates^HL7|9219524764640968042468002385343|@PID.3.1^6537 54210~@PID.3.4.1^ADT_ESEL~@PID.3.4.2^1.3.6.1.4.1.21367.2008. 2.3.9~@PID.3.4.3^ISO
>
>
>
> So, i wonder wether there would not have something that I would have
> misunderstood regarding the method :
>
> addQueryPatientID(idNumber, namespaceId, universalId, universalIdType)
>
> To fill in the 4 parameters, since I did not see exactly what they
> referred to, I got their values from the PDQ response to a PDQ query
> with name and firstname on the patient I wanted, as following :
>
> ..
> String[] id = response.getPatientIdentifier(i, j);
> int cnt=j+1;
> logger.debug(" " + cnt + " - Patient ID number: " + id[0]);
> logger.debug(" " + cnt + " - Patient ID assigningAuthority: " + id[1]);
> logger.debug(" " + cnt + " - Patient ID universalID: " + id[2]);
> logger.debug(" " + cnt + " - Patient ID universalIDType: " + id[3]); ..
>
> I assumed that the information above corresponded to what I needed, and
> i called the addQueryPatient method with :
>
> msg.addQueryPatientID("653754210", "ADT_ESEL",
> "1.3.6.1.4.1.21367.2008.2.3.9", "ISO");
>
>
> According to you, where does the problem come from? What is exactly the
> parameter assigningAuthority? Does it well correspond to the
> namespaceid? The patient number used in the method (i.e. which is the
> one returned by the PDQ Query with firstname and lastname), is the local
> ID of the patient (i.e. the patient id defined on the client system). Is
> it the good parameter? Or the method waits for an other number which
> does not have anything to do with it?
> Thanks in advance for your help.
>
> Motorenshi
>
|
|
|
Re: Problem with PDQ Query - search patient by ID [message #49754 is a reply to message #49574] |
Tue, 16 December 2008 17:28 |
motorenshi Messages: 4 Registered: July 2009 |
Junior Member |
|
|
Hi Sarah,
Thanks for your response. Finally i was able to make the function run
even if it did not return what i expected. I had to call the
"changeDefaultWhatDomainsReturned" to set the search domain. If we precise
it just in the addQueryPatientID method parameter, it does not work, i do
not why.
The parameter assigningAuthority well corresponds to the namespaceid.
The patient number used in the method seems to be the global id.
Besides, what i do not understand, is that method returns to me several
records
whereas i just give it ONE ID , which is supposed to be the global ID, so
UNIQUE in XDS repository... I have had to use the search methode with
lastname and firstname instead, this by restricting the search domain with
the "changeDefaultWhatDomainsReturned"... In this case, I well obtain the
good record.
|
|
|
Re: Problem with PDQ Query - search patient by ID [message #588078 is a reply to message #49481] |
Mon, 15 December 2008 18:30 |
No real name Messages: 292 Registered: July 2009 |
Senior Member |
|
|
Hi Benjamin,
Kindly re-post this question to our IHE Profiles project at OHT.
https://iheprofiles.projects.openhealthtools.org/
The user forum can be found here:
https://iheprofiles.projects.openhealthtools.org/ds/viewForu mSummary.do?dsForumId=212
Unfortunately, due to spam, guest posting is disabled so please become a
member of the project.
regards,
- Sarah
motorenshi wrote:
> Hello,
>
> I am new to OHF, HL7, and so on, so please be indulgent with me :)
> I have retrieved a sample of code from here to test PDQ Queries. It
> works correctly when i use the family name and given name as search
> parameters
> (methods 'addQueryPatientNameFamilyName("xxx")' and
> 'addQueryPatientNameGivenName("yyy")' of the class
> 'PdqConsumerDemographicQuery')
>
> but not when i use the patient ID via the method addQueryPatientID(...)
> : the request succeeds, but no patient is returned.
>
> The Patient Demographics Supplier returns code AE in the response
> message in the fields MSA and QAK as you can see:
>
> MSH|^~\&|||||20081209160853+0100||RSP^K22^RSP_K22|16842| P|2.5
> MSA|AE|9204906087768759031
> QAK|9219524764640968042468002385343|AE
> QPD|Q22^Find
> Candidates^HL7|9219524764640968042468002385343|@PID.3.1^6537 54210~@PID.3.4.1^ADT_ESEL~@PID.3.4.2^1.3.6.1.4.1.21367.2008. 2.3.9~@PID.3.4.3^ISO
>
>
>
> So, i wonder wether there would not have something that I would have
> misunderstood regarding the method :
>
> addQueryPatientID(idNumber, namespaceId, universalId, universalIdType)
>
> To fill in the 4 parameters, since I did not see exactly what they
> referred to, I got their values from the PDQ response to a PDQ query
> with name and firstname on the patient I wanted, as following :
>
> ..
> String[] id = response.getPatientIdentifier(i, j);
> int cnt=j+1;
> logger.debug(" " + cnt + " - Patient ID number: " + id[0]);
> logger.debug(" " + cnt + " - Patient ID assigningAuthority: " + id[1]);
> logger.debug(" " + cnt + " - Patient ID universalID: " + id[2]);
> logger.debug(" " + cnt + " - Patient ID universalIDType: " + id[3]); ..
>
> I assumed that the information above corresponded to what I needed, and
> i called the addQueryPatient method with :
>
> msg.addQueryPatientID("653754210", "ADT_ESEL",
> "1.3.6.1.4.1.21367.2008.2.3.9", "ISO");
>
>
> According to you, where does the problem come from? What is exactly the
> parameter assigningAuthority? Does it well correspond to the
> namespaceid? The patient number used in the method (i.e. which is the
> one returned by the PDQ Query with firstname and lastname), is the local
> ID of the patient (i.e. the patient id defined on the client system). Is
> it the good parameter? Or the method waits for an other number which
> does not have anything to do with it?
> Thanks in advance for your help.
>
> Motorenshi
>
|
|
|
Re: Problem with PDQ Query - search patient by ID [message #588123 is a reply to message #49574] |
Tue, 16 December 2008 17:28 |
motorenshi Messages: 4 Registered: July 2009 |
Junior Member |
|
|
Hi Sarah,
Thanks for your response. Finally i was able to make the function run
even if it did not return what i expected. I had to call the
"changeDefaultWhatDomainsReturned" to set the search domain. If we precise
it just in the addQueryPatientID method parameter, it does not work, i do
not why.
The parameter assigningAuthority well corresponds to the namespaceid.
The patient number used in the method seems to be the global id.
Besides, what i do not understand, is that method returns to me several
records
whereas i just give it ONE ID , which is supposed to be the global ID, so
UNIQUE in XDS repository... I have had to use the search methode with
lastname and firstname instead, this by restricting the search domain with
the "changeDefaultWhatDomainsReturned"... In this case, I well obtain the
good record.
|
|
|
Goto Forum:
Current Time: Tue Jan 14 01:42:14 GMT 2025
Powered by FUDForum. Page generated in 0.02715 seconds
|