Re: xmltable and namespaces

From: Gerard H. Pille <ghp_at_skynet.be>
Date: Thu, 03 Feb 2011 19:10:29 +0100
Message-ID: <4d4aef95$0$14259$ba620e4c_at_news.skynet.be>



declare
     soap_resp varchar(32767);
     resp      sys.xmltype;

begin

   soap_resp := '<GetStaffDetailsResponse xmlns="https://www.axby.com/staffQuery/">

   <GetStaffDetailsResult>

     <StaffDetails>

<AuEduPersonPreferredGivenName>Bruce</AuEduPersonPreferredGivenName>
<AuEduPersonPreferredSurname>Coad</AuEduPersonPreferredSurname>
<EmployeeID>000715BC</EmployeeID>
</StaffDetails>

   </GetStaffDetailsResult>
</GetStaffDetailsResponse>';

     resp := xmltype.createxml(soap_resp);

     for r in (
       select
         extractvalue(
           resp,
           '/ns:GetStaffDetailsResponse/ns:GetStaffDetailsResult/ns:StaffDetails/ns:EmployeeID',
           'xmlns:ns="https://www.axby.com/staffQuery/"') X
         from dual
     ) loop
       dbms_output.put_line('Hello:' || r.X);
     end loop;

end;
/

this will stop working of you have more than one employee, but then you should look at xmlsequence Received on Thu Feb 03 2011 - 12:10:29 CST

Original text of this message