How to use ora:parseEscapedXML() Function with String Content

Hello,
I am receiving a ResponseMessage that returns a string, but the content of the string is actually XML. I have tried to use the ora:parseEscapedXML() function to parses the string (see XML Fragment below) to return structured XML data that can be assigned to typed BPEL variables. The documentation is very limited for this (I've looked in the Developer Guide draft that is available at the OraBPEL site).
2 customer records from XML literal fragment copied from string result:
<?xml version="1.0" encoding="ISO-8859-1"?>
<recordset>
<customer>
<CustNum>AROUT</CustNum>
<CustLName>Hardy</CustLName>
<CustFname>Thomas</CustFname>
<CustEmail>[email protected]</CustEmail>
<CustAddress>120 Hanover Sq.</CustAddress>
<CustCity>London</CustCity>
<CustRegion></CustRegion>
<CustPostalCode>WA1 1DP</CustPostalCode>
<CustCountry>UK</CustCountry>
</customer>
<customer>
<CustNum>BSBEV</CustNum>
<CustLName>Ashworth</CustLName>
<CustFname>Victoria</CustFname>
<CustEmail>Victoria.Ashworth@B&apos;s.com</CustEmail>
<CustAddress>Fauntleroy Circus</CustAddress>
<CustCity>London</CustCity>
<CustRegion></CustRegion>
<CustPostalCode>EC2 5NT</CustPostalCode>
<CustCountry>UK</CustCountry>
</customer>
The copy rule for assigning CustNum to accountnumber that fails:
<copy>
<from expression="ora:parseEscapedXML(bpws:getVariableData('DataService_OutputVariable','invokeSpecMsgReturn','/recordset/customer/CustNum'))"/>
<to variable="outputVariable" part="payload" query="/client:QueryResult/client:customer/client:accountNumber"/>
</copy>
Any help would be greatly appreciated.
Thanks,
Sean

Hello,
I am attempting to provide more information in order to hopefully get some better guidance here.
1) The BPEL process I built receives input from a client that is one of city name or region name or postal code or country name and returns a list of customer records with their AccountNumber, LastName, FirstName, Email, Address, City, Region, PostalCode and Country. The BPEL flow invokes a packaged integration Web Service that retuns the records in a string whose content is XML (see XML fragment below).
2) The string content returned is vaiable based on the input (i.e. city name="London")
Two customer records from XML literal fragment copied from string result:
<?xml version="1.0" encoding="ISO-8859-1"?>
<recordset>
<customer>
<CustNum>AROUT</CustNum>
<CustLName>Hardy</CustLName>
<CustFname>Thomas</CustFname>
<CustEmail>[email protected]</CustEmail>
<CustAddress>120 Hanover Sq.</CustAddress>
<CustCity>London</CustCity>
<CustRegion></CustRegion>
<CustPostalCode>WA1 1DP</CustPostalCode>
<CustCountry>UK</CustCountry>
</customer>
<customer>
<CustNum>BSBEV</CustNum>
<CustLName>Ashworth</CustLName>
<CustFname>Victoria</CustFname>
<CustEmail>Victoria.Ashworth@B&apos;s.com</CustEmail>
<CustAddress>Fauntleroy Circus</CustAddress>
<CustCity>London</CustCity>
<CustRegion></CustRegion>
<CustPostalCode>EC2 5NT</CustPostalCode>
<CustCountry>UK</CustCountry>
</customer>
I want to <assign> each record from the packaged integration service result (the string whose content is XML) to a complexType variable defined within the BPEL Process WSDL (see example below).
XML fragment from BPEL WSDL:
<element name="QueryResult" type="client:recordType"/>>
<complexType name="recordType">
<sequence>
<element name="customer" type="client:customerType" maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="customerType">
<sequence>
<element name="accountNumber" type="string"/>
<element name="lastName" type="string"/>      
<element name="firstName" type="string"/>
<element name="email" type="string"/>
<element name="address" type="string"/>
<element name="city" type="string"/>
<element name="region" type="string"/>
<element name="postalcode" type="string"/>
<element name="country" type="string"/>
</sequence>                         
</complexType>
I have read through the tutorial and reviwed the XPath Funtion example in the reference (C:\OraBPELPM_1\integration\bpelpm\orabpel\samples\references\XPathFunction), but I am stsill very unclear as to how to handle this. I would appreciate any and all help.
Thanks,
Sean

Similar Messages

  • How to use xsl document() function with LiveCycle XSLT processor

    Hello,
    I would like to use LiveCycle XSLT processor to merge xml documents by using the xsl document() function.
    However, I have not, yet, found  clear reference information on the specifics of how to accomplish in LC. For instance if you have
    a transformation that does merging using a standalone xml editor (such as Oxygen), than what is required to accomplish the same
    using the LiveCycle XSLT service.  How do you specify the URI of the XML document that is specified as an input in the xsl document() function. Your insight is appreciated.   Regards

    Hello Steve,
    I checked the reference that you cited (XSLT Transformation).   The reference omits discussing how to use xlst document() function within a stylesheet.  I think that probably means that feature of xslt technology is not directly available through LiveCycle.  When I find a workaround, I'll post an update...for the user community that might encounter the same issue.  Thank you for your response and insight.  Regards, jb1809

  • How to use video capture function with Ti4200-VTD8X card?

    I have installed nVIDIA Capture Driver provided by MSI (come with VGA card), but don't know how to use this function, do I need to run a third party program or simething else?  I couldn't find any document or information in MSI site talking about this function: "Capture the image through the video input port on the card".   Please help,  Thanks in advance.

    Try Ulead Video Studio or check your card's bundled software.Intervideo WinProducer anywhere?
    Check your card's manual for proper connections   :D

  • How to use the sharing function with other pc on the Finder sidebar?

    I discver my housemates' pc's names under "sharing" on the Finder sidebar. We all use the same wifi network at home.  Neither they nor I have enabled anything so I'm just wondering what is that for and where am I able to control sharing options?
    Also I can even access their iTunes libraries. How do these all work? Am I able to set any security options at all?

    On the doc page (this is also in the download package),
    http://download.oracle.com/docs/cd/E17277_02/html/index.html
    see:
    Getting Started Guide
    Java Collections Tutorial
    Direct Persistence Layer (DPL)
    All of these describe how to use data types other than byte arrays.
    --mark                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • How to use elapsed time function with state machine in Lab VIEW

    Hello
    I've been trying to use state machine with elapsed time function in order to sequentially start and stop my code. The arrangement is to start the code for 1 minute then stop for 5 minutes. I've attached the code, the problem is when I place the elapsed time function out of the while loop it doesn't work, on the other hand when I place it inside the loop it does work but it doesn't give the true  signal to move to the next state. 
    Could you please have a look to my code and help me to solve this issue.
    Regards 
    Rajab
    Solved!
    Go to Solution.
    Attachments:
    daq assistance thermocouple(sate machine raj).vi ‏436 KB

    Rajab84 wrote:
    Thanks apok for your help
    even with pressing start it keeps running on wait case 
    could you please explain the code for me, the use of Boolean crossing, increment , and equal functions 
    Best Regards 
    Rajab 
    OK..I modded the example to stop after 2 cycles. Also recommend taking the free online LabVIEW tutorials.
    run vi. case statement goes to "initialize", shift registers are initialized to their constants. goto "wait"
    "start"= false, stay in current state. If true, transition to "1 min" case
    reset elapsed timer with True from shift register(counter starts at zero)."time has elapsed"=false, stay in current state(1 min). If true, goto "5min" case
    reset elapsed timer with True from shift register of previous case(counter starts at zero)."time has elapsed"=false, stay in current state(5 min). If true, goto "1min" case. Also, bool crossing is looking for "true-false" from "5 min" compare function to add cycle count.
    Once cycle count reaches 2, stop while loop.... 
    Attachments:
    Untitled%202[1].vi ‏42 KB

  • How to use a WebService Model with String Arrays as its input  parameter

    Hi All,
    I am facing the following scenario -
    From WebDynpro Java i need to pass 2 String Arrays to a Webservice.
    The Webservice takes in 2 input String Arrays , say, Str_Arr1[] and Str_Arr2[] and returns a string output , say Str_Return.
    I am consuming this WebService in WebDynpro Java using WEB SERVICE MODEL. (NWDS 04).
    Can you please help out in how to consume a WSModel in WD where the WS requires String Arrays?

    Hi Hajra..
    chec this link...
    http://mail-archives.apache.org/mod_mbox/beehive-commits/200507.mbox/<[email protected]>
    http://www.theserverside.com/tt/articles/article.tss?l=MonsonHaefel-Column2
    Urs GS

  • How to use a @PRIOR function with a SubVar in a cross dim formula?

    Hi all,
    I have a pretty basic logic to calculate a member:
    Rate = Account1->Entity->Prior Forecast Year / (Account2->Entity->Prior Forecast Year + Account3->Entity->Prior Forecast Year);
    We have a SubVar for the Current Forecast Year, so in my formula I wanted to use @PRIOR(&CurFstYr)
    I got an error message: expected type [MEMBER] found [NUMBER] ([@PRIOR]) in function []
    The calc validates and runs with no errors if I use &CurFstYr only, which gives me the option to create a Prior Forecast Year subvar: &PriorFstYr. Is this my only option?
    I've also tried using SUMRANGE function. The formula validated for @PRIOR(&CurFstYr). Eventhough the calc script validated, the calc stopped after 3 seconds with the below error message:
    Error executing formula for [Rate] (line 0): invalid object type
    Any idea why the SUMRANGE calc failed to run? Also, once again, is my only option to create a new SubVar for the Prior Forecast Year?
    Thanks,
    Mehmet
    Edited by: Mehmet Sevinc on Mar 2, 2012 12:14 PM
    Edited by: Mehmet Sevinc on Mar 2, 2012 12:29 PM

    You have this:
    Rate = Account1->Entity->Prior Forecast Year / (Account2->Entity->Prior Forecast Year + Account3->Entity->Prior Forecast Year);I don't have Essbase fired up, but I wonder if this would work:
    Rate = @PRIOR(Account1->Entity->&CurFstYr, 1, "Years") / (@PRIOR(Account2->Entity->&CurFstYr, 1, "Years") + @PRIOR(Account3->Entity->&CurFstYr, 1, "Years")) ;You can put a cross dim into a @PRIOR statement, but you will need to specify the dimension unless it's whatever is tagged as Time. My guess is Years is not the Time dimension.
    I'll bet the @PRIOR doesn't make things fast.
    Regards,
    Cameron Lackpour
    Edited by: CL on Mar 2, 2012 6:26 PM
    Forgot the first @PRIOR

  • How to use a 'Percentofsum' function with a group selection

    Hi All!
    I have created a report using CR XI in which I select on certain records in a database and then further select on those records using a group selection. The displayed records in the subgroup are correct. I sum these totals of the grouping using a formula (Basically 3 formulas, one for Reset, another for the calculation, and the third for the display) since if I just use the 'built in' summary function it will still total all records that were selected before the group selection. My dilemma is that I need to get a percentage of the subtotal based on the total of that grouping. Below is an example of the layout of the report:
                                                                                __Dept %_            Program Bugt             Prgm % of Dept Bud              Cost of %_
    GH#1    ADMIN                                                        100%
    GF#2    LEGAL                                                                                448694                          4.22%                                 12382
    GF#2    CITY MGR                                                                               445414                          4.19%                                 12294
    GF#2    CITY CLERK                                                                           113075                          1.06%                                  3110
    GF#2    COM PROMO                                                                          391657                         3.69%                                  10827
    GF#2   CENTRAL                                                                               1430570                         13.46%                                 39492
    GF#1                                                                      293406                 2829410                                                                      78105
    The "2829410"  is the Display formula I used to accurately calculate the listed program budget numbers. The 3 formulas I used to get that number is a Reset formula (whileprintingrecords;Numbervar W := 0;) located in GH#1, a Calculation formula (whileprintingrecords;Numbervar W := w + Sum ({@Next Year Budget Amount}, {gl_master.a_org}); ) located in GF#2, and a Display formula (whileprintingrecords;Numbervar W;W) located in GF#1. The percentages that currently display in the "Prgm % of Dept Bud" are wrong as they use the 'built in' PercentofSum function when you right click on the filed in the details section and select summary as a percentage of. I need a formula that would do the following calculation: 448694/2829410 = 15.85% and thus the "Cost of %" formula that would do the following calculation: 293406*.1585 = 12382.
    I tried using a similar "Reset", "Calculation", and "Display" formulas but I cannot get to work correctly. Any help would be greatly appreciated.
    Thanks!
    P.S. The reason I am using a group selection is because it is easier than listing out all the accounts (departments) that I do not want in the report and that selection could change from time to time where as what is in the group selection would never change.
    Sorry for long winded explanation.

    Read all about it.
    You'd probably have to write a little wrapper (using JNI) that passes
    parameters and return values around between your C function and
    the JVM.
    kind regards,
    Jos

  • How to use Left & Right Functionality for Strings..

    Please help i am unable to find Left & Right Functions in Oracle 11g.. Instead i just found Substr who can be a replacement for Left but not for Right..

    Alex Nuijten wrote:
    Atari Basic ruled!
    http://en.wikipedia.org/wiki/Atari_600XL#Newer_XL_machines
    First computer I ever saw was in a research laboratory at a Polytechnic (before they all became Universities). I was left with some research students by my mum while she went to a lecture (I was only about 8 at the time) and they asked me my name, fiddled with some wires and switches and lo and behold, my name appeared on a TV screen. Wow! I was hooked from that moment on. There was no such thing as home computers back then. LOL!

  • Help Needed: Issue in ora:parseEscapedXML function in BPEL

    Hello All-
    We are facing issue while using the XSLT Function ora:parseEscapedXML in SOA 11g. Following is our scenario:
    1.     We are using DB Adapter to poll for records in the database. One of the fields in the polled records is a CLOB type which contains a XML message.
    2.     Our requirement is to get the XML Message as a String in the BPEL Process, parse it to XML and then assign to Complex Type XML Element.
    3.     We are using ora:parseEscapedXML function to achieve the same. However we are getting error "Empty Variable/Expression result. The XPATH variable or expression is empty"
    If anybody has faced similar issues, kindly provide us the resolution/pointers on how to resolve it.
    Thanks in advance. Please let me know if you need any additional information from my side.
    Regards,
    Dibya

    Reading Xml file from clob column in the staging table
    CLOB has to be treated as string in xsd/xml in BPEL. Hope you have read the following document http://download-east.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#CHDIEBJD. Still valid for 11g.

  • How to use the set functions effectively in webi ,please let me know with detail

    how to use the set functions effectively in webi ,please let me know with detail

    Hi,
    we use use set functions on heirarchies with aggregate functions mostly .
    If you include member_set, Min returns the minimum value of the aggregated data for all members in the member set.
    Member_set can include multiple sets separated by semicolons (;).
    The list of member sets must be enclosed in {}.
    If the member set expression does not specify a precise member or node, the hierarchy referenced must be present in the table, then the member set expression references the current member in the hierarchy in the table. If the hierarchy is not in the table, the function returns the message #MULTIVALUE.
    Eg .
    1)     Ancestor
    =Sum([YTD] ; {Ancestor([Test Hierarchy];2)})
    2)     IsLeaf
    =[Test Hierarchy].IsLeaf
    You can use this function when you want to show your Measure only at lower level .
    3)     .Depth
    =[Test Hierarchy].Depth
    This is also function used with hierarchy to find Level of Members .
    Follow this link for PDF reference .
    Page 147
    https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&ved=0CDIQFjAB&url=https%3A%2F%2Fhelp.sap.com%2Fbusinessobject%2Fproduct_guides%2Fboexir4%2Fen%2Fxi4sp5_ffc_en.pdf&ei=nBAUU-iUM4WWrAeMuoCoDg&usg=AFQjCNHakXsEjd_yUk2y3lVdibf3PXpEOA&bvm=bv.61965928,d.bmk
    search on SCN this question was discussed before also one those links .
    http://scn.sap.com/thread/3183380
    Hope this will help you .

  • I have transefer function like (1/(s^2+s+​5)) and i have a square wave input , i want to use this transfer function with this input to see the output , how can i do that , with example please.

    i need to know also how to represent this transfer function in labview, try to send me example. answer me at my mail

    "st" wrote:
    > answer me at my mail
    give a valid e-mail first, and your name, we don't like to help anonymous
    people
    > try to send me example.
    how much do you pay ?
    > i have transefer function like (1/(s^2+s+5)) and i have a square wave
    > input , i want to use this transfer function with this input to see
    > the output , how can i do that
    First you have to know what you are doing, like an engineer : you have a
    Laplace, continuous time transfer function but LabView handles discrete
    signals only. Use matlab/simulink if you want to simulate continuous time
    systems easily...
    If you definitely want to use LabView, the first step is to discretize your
    continuous-time transfer function, i.e. decide a sampling rate and convert
    it to a "z transfor
    m". Then you can directly use the "IIR Filter.vi" as I
    said earlier.
    Philippe Guglielmetti - www.dynabits.com me at my mail

  • How do i lock all fields without using the signature function with adobe lifecycle designer 9

    How do i lock all fields without using the signature function with adobe lifecycle designer 9 ...
    I want it to have the same affect as when a signature is used but not use that function. I want a button that says lock all fields. And then you can click it again to unlock all fields...
    Thanks

    Here you go!
    LOCK the form once its SAVEd?

  • Does anyone know how to use the bcc functionality for apple mail while accessing it on the cloud from my PC?

    I am currently away from my MAC and want to send an email through apple mail with the bcc functionality.  I am using the cloud to get to my mail, however, I can't figure out how to use the BCC functionality, please help.  Thanks!

    Open your mail,
    lower left corner click on settings,
    go to composing and check BCC, save and your done

  • How to Use the language function for assignment and validation

    Hi All,
    If anyone can explain me in details with example ,how to use the language function for assignments and validations?
    Thanks
    Arnab

    Hi Arnab,
    The expression is checked only for the current MDM session.
    If u login with the ABC language it will always show the ABC language no matter how many times u execute it.
    Try connecting to the DM with the XYZ language.
    It should go to the if part rather than else.
    Hope it helps.
    Thanks,
    Minaz

Maybe you are looking for

  • Is it possible to not hide my iTunes purchases and not have them show up on my iPhone?

    I am asking this because I love having my iTunes purchases showing up on my Apple TV, but I like to manually add my music to my iPhone from my MBP. Plus it annoys me the way that Apple labels their Songs and Artists in iTunes, so I like to change the

  • Audition has encountered an error.

    I got this error message. how can i solve this? Audition has encountered an error. [\premiere2.0\Backend\Src\Core\Preferences.cpp-253] and this message box also popup. Shutting Down... To continue working where you left off, please restart Audition.

  • Sql injection attack - need help changing ASP code

    Our web server was attacked yesterday by SQL injection. So I quickly learned about the holes in the code that was generated by Dreamweaver MX 2004. I found the help article on the Adobe website to fix the ASP code; however I need more information for

  • Change default master client of Portal (ABAP+Java system)

    Hi, I change property <b>ume.r3.connection.master.client</b> in Visual Administrator - <Server> - Services – UME Provider from 000 to my own client, then update & save the value & reboot the server. But when I log to Portal the system still use clien

  • Menu UID for Minimize/Maximize/Close buttons

    I'm trying to disable or restrict the buttons in the toolbar at the top of marketing documents.  Specifically, I'm trying to disable the 'X' button in the top right of marketing documents to prevent users from closing the document in this way.  I was