Hi,

Executing the piece of code below (e.g. using HAPI 0.6 or better) returns

11.06.2010 16:39:40 ca.uhn.log.HapiLogImpl info
INFO: Instantiating msg of class ca.uhn.hl7v2.model.v25.message.RSP_K21
5ab16eec-4eb0-4f78-ae45-f8759a83ee70
5ab16eec-4eb0-4f78-ae45-f8759a83ff10

in my console; so it returns the IDs correctly. Note the Terser expressions
/QUERY_RESPONSE(0)/PID-3-1 and /QUERY_RESPONSE(1)/PID-3-1, respectively.

cheers Christian


import ca.uhn.hl7v2.model.v25.message.RSP_K21;
import ca.uhn.hl7v2.parser.PipeParser;
import ca.uhn.hl7v2.util.Terser;

public class test {

        private static final String MSG =
"MSH|^~\\&||3f0203ca-7da1-4c92-8dcf-743a5579673f|GENERIC|3f0203ca-7da1-4c92-8dcf-743a5579673f|20100610165524||RSP^K22^RSP_K21|20100610165524718543|P|2.5\r"
                        + "MSA|AA|11312110\r"
                        + "QAK|QRY11312110|OK|IHE PDQ Query\r"
                        + "QPD|IHE PDQ Query|QRY11312110|@PID.5.2\\S\\Jack 
[email protected]\\s\\m\r"
                        +
"PID||3|5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI~5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^EMR_3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI|5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^3f0203ca-7da1-4c92-8dcf-743a5579673f|Jack^Straw|Mommmmy|20001111|M||2028-9|Brigade
Street Las vegas^^New
York^10005^USA||(900)485-5344^PRN^PH^~(900)545-1200^prn^cp^~^net^x.400^[email protected]|(900)485-3333^WPN^PH^~(900)545-1234^wpn^cp^~^net^x.400^[email protected]|||CHR||123895678|1234^NY\r"
                        + "QRI|5\r"
                        +
"PID||2|5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI~5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^EMR_3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI|5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^3f0203ca-7da1-4c92-8dcf-743a5579673f|Jack^Straw^T|Mommmmy|20001111|M||2028-9|Brigade
Street Las vegas^^New
York^10005^USA||(900)485-5344^PRN^PH^~(900)545-1200^prn^cp^~^net^x.400^[email protected]|(900)485-3333^WPN^PH^~(900)545-1234^wpn^cp^~^net^x.400^[email protected]|||CHR||123891234|1234^NY\r"
                        + "QRI|4.35708725";

        /**
         * @param args
         */
        public static void main(String[] arg) {
                RSP_K21 hapiMsg = null;
                PipeParser parser = new PipeParser();
                try {
                        hapiMsg = (RSP_K21) parser.parse(MSG);
                        Terser t = new Terser(hapiMsg);
                        System.out.println(t.get("/QUERY_RESPONSE(0)/PID-3-1"));
                        System.out.println(t.get("/QUERY_RESPONSE(1)/PID-3-1"));
                } catch (Exception e) {
                        e.printStackTrace();
                }

        }

}


depeche007 wrote:
> 
> Hi,
>    
>    How to handle multiple PID returned in RSP^K22^RSP_K21 messages of
> version 2.5 messages?
> 
> The structure of the message is as follows:
>       
> MSH|^~\&||3f0203ca-7da1-4c92-8dcf-743a5579673f|GENERIC|3f0203ca-7da1-4c92-8dcf-743a5579673f|20100610165524||RSP^K22^RSP_K21|20100610165524718543|P|2.5
> MSA|AA|11312110
> QAK|QRY11312110|OK|IHE PDQ Query
> QPD|IHE PDQ Query|QRY11312110|@PID.5.2\S\Jack [email protected]\s\m
> PID||3|5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI~5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^EMR_3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI|5ab16eec-4eb0-4f78-ae45-f8759a83ee70^^^3f0203ca-7da1-4c92-8dcf-743a5579673f|Jack^Straw|Mommmmy|20001111|M||2028-9|Brigade
> Street Las vegas^^New
> York^10005^USA||(900)485-5344^PRN^PH^~(900)545-1200^prn^cp^~^net^x.400^[email protected]|(900)485-3333^WPN^PH^~(900)545-1234^wpn^cp^~^net^x.400^[email protected]|||CHR||123895678|1234^NY
> QRI|5
> PID||2|5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI~5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^EMR_3f0203ca-7da1-4c92-8dcf-743a5579673f&&^PI|5ab16eec-4eb0-4f78-ae45-f8759a83ff10^^^3f0203ca-7da1-4c92-8dcf-743a5579673f|Jack^Straw^T|Mommmmy|20001111|M||2028-9|Brigade
> Street Las vegas^^New
> York^10005^USA||(900)485-5344^PRN^PH^~(900)545-1200^prn^cp^~^net^x.400^[email protected]|(900)485-3333^WPN^PH^~(900)545-1234^wpn^cp^~^net^x.400^[email protected]|||CHR||123891234|1234^NY
> QRI|4.35708725
> 
> 
>            I am using following piece of code: 
> 
> terser.get("/patientidentificationsegment(0)/.PID-3-1");
> terser.get("/patientidentificationsegment(1)/.PID-3-1");
> 
> I came to know from this forum [forum topic no
> http://old.nabble.com/terser---syntax-to13883873.html#a13904316] that we
> can achieve the same. But i am getting exception like:
> 
> "Exception: java.lang.IllegalArgumentException: The pattern
> patientidentificationsegment is not valid.  Only [\w\*\?]* allowed. "
> 
> For financial and observation
> 
> terser.get("/FINANCIAL(0)/FT1-1");
> terser.get("/FINANCIAL(1)/FT1-1");
> 
> terser.get("/OBSERVATION(0)/OBX-1");
> terser.get("/OBSERVATION(1)/OBX-1");
> 
> What will be used for PID segment?
> 
> Thanks & regards,
>     depeche
> 

-- 
View this message in context: 
http://old.nabble.com/How-to-handle-multiple-PID-returned-in-RSP%5EK22%5ERSP_K21-messages-of-version-2.5-messages--tp28854205p28856197.html
Sent from the hl7api-devel mailing list archive at Nabble.com.


------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Hl7api-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to