Dynamic XPath in XQuery or XQSE

Is there a way to execute dynamic xpath expression in XQuery or XQSE, to do something like:
declare xqse function tns:checkName($addrBook as element(),$name as xs:String ) as xs:boolean {
declare $var as xs:String := "Address/Person[@name='" + $name +"']";
( : test if expression in $var returns not empty result when applied to $addrBook : )
return value( $resultOfEvaluation) ;
Thank You
Edited by [email protected] at 03/13/2008 7:19 PM
Edited by [email protected] at 03/13/2008 7:19 PM
Edited by [email protected] at 03/13/2008 7:20 PM

You haven't described why you want to do this - I suspect it is might be unnecessary/over-kill. Anyway
1) in the interest of efficiency, DSP compiles and optimizes xquery, and therefore the xquery cannot be modified at run-time.
2) the Filter api will let you apply filters, which effectively generate a new query, compile it and execute it. But you can only apply selections to elements that are exposed in the result
The thing is that final client should not use mediator api, and i do not want to have an intermediate client that would use mediator. I don't understand what you mean here - how is the client supposed to to submit a response to DSP and get a result if it does not call DSP directly or indirectly?
If the client already has the result, and you want to find something within that result, by far the most efficient way (aside from only returning that result in the xquery submitted to DSP), is to navigate through the DataObject with the get() methods. Firing up an xquery engine is a very expensive way to go through a DataObject - to do this you will need to serialize the DataObject into xml, create an XmlObject from that string, and then evaluate the xquery.

Similar Messages

  • How to evaluate dynamic XPath expression in BPEL?

    I have an xml file where I keep many settings for my BPEL process. At runtime, I read the file and I want to select values from it based on values in the process payload.
    For example, imagine that the process payload is an order:
    <order>
    <header>
    <id/>
    <customer_id/>
    <team_id/>
    </header>
    <items>
    <item>
    <id/>
    <sku/>
    <price/>
    <quantity/>
    </item>
    </items>
    </order>
    Now, in my xml settings file, I have a section where I keep a mapping of "team_id" and "assignment_group", so that for each team id, I can select the appropriate group to whom a task should be assigned. The relevant section of the settings file will look something like this:
    <assignment_groups>
    <group team_id='0923230'>invoice_approvers</group>
    <group team_id='3094303'>order_approvers</group>
    <group team_id='3434355'>shipping_approvers</group>
    </assignment_groups>
    So, imagine I get an order input to my process where the team_id is '3094303'. Now I have to lookup the correct assignment group in my settings file.
    So, I construct the dynamic XPath expression
    /settings/assignment_groups/group[@team_id=3094303]
    I know that this would evaluate to "order_approvers". However, even though I have the XPath expression in a BPEL variable, and I have my settings file as a BPEL variable also, I don't know how to execute the XPath expression against the settings BPEL variable to retrieve the correct value.
    Any ideas appreciated.
    Thanks,
    Jack

    James:
    Thank you for the response. Incidentally, this is the very same document and section that I have been looking at for guidance. Specifically, the section titled "Dynamically indexing by Constructing an XPath at Run Time" on page 12-13.
    I tried to do something similar to the example at the top of page 13:
    <variable name="iterator" type="xsd:integer"/>
    <assign>
    <copy>
    <from expression="concat('/invoice/line-item[',bpws:getVariableData('iterator'), ']/line-total')"/>
    <to variable="xpath"/>
    </copy>
    <copy>
    <from expression="bpws:getVariableData('input', 'payload',bpws:getVariableData('xpath')) + ..."/>
    </copy>
    </assign>
    I am able to achieve the first copy operation to get my dynamic XPath into a BPEL variable and that's fairly straightforward. But I am unable to get the second copy to work. Specifically, I am not sure what to put in the second argument of the bpws:getVariableData function. I have tried many different combinations, but when I try to compile my program, I get the following compilation error:
    Error:
    [Error ORABPEL-10902]: compilation failed
    [Description]: in "C:\code\TrainingWS\SampleGetSettings\bpel\SampleGetSettings.bpel", XML parsing failed because "org.collaxa.thirdparty.jaxen.expr.DefaultFunctionCallExpr".
    [Potential fix]: n/a.
    Thanks,
    Jack

  • XPath and XQuery

    Hi all,
    What's the difference between the XPath and XQuery, can XPath has better performance than XQuery?
    Regards,
    Jane

    shree wrote:
    1.Can you differentiate these XSLT, XPath and XQuery.XSL stands for EXtensible Stylesheet Language, and is a style sheet language for XML documents. XSLT stands for XSL Transformations.
    XQuery is to XML what SQL is to database tables. XQuery was designed to query XML data.
    XPath is used to navigate through elements and attributes in an XML document. XPath is a major element in W3C's XSLT standard - and XQuery and XPointer are both built on XPath expressions.
    http://www.w3schools.com/xsl/default.asp
    http://www.w3schools.com/xquery/default.asp
    http://www.w3schools.com/xpath/default.asp
    Cheers,
    Vlad

  • XSLT, XPath and XQuery

    Hi,
    1.Can you differentiate these XSLT, XPath and XQuery.
    2.How Do I Force a Rollback in a BPEL Flow.
    Thanks in advance

    shree wrote:
    1.Can you differentiate these XSLT, XPath and XQuery.XSL stands for EXtensible Stylesheet Language, and is a style sheet language for XML documents. XSLT stands for XSL Transformations.
    XQuery is to XML what SQL is to database tables. XQuery was designed to query XML data.
    XPath is used to navigate through elements and attributes in an XML document. XPath is a major element in W3C's XSLT standard - and XQuery and XPointer are both built on XPath expressions.
    http://www.w3schools.com/xsl/default.asp
    http://www.w3schools.com/xquery/default.asp
    http://www.w3schools.com/xpath/default.asp
    Cheers,
    Vlad

  • Binding dynamic variable in XQuery doesn't work: ORA-00932

    I have a table with several columns. One of those columns is a XMLType.
    My goal is to have a query which selects rows from the table of which the XML column matches certain criteria.
    I'm trying following example (JDBC) : http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28369/xdb_xquery.htm#insertedID11
    First, I created my own query, which looks like:
    select * from MyTable t, XMLTABLE( xmlnamespaces (DEFAULT 'http://test), 'for $i in /RootElement where $i/SubElement[contains(Element, "someValue")] return "true"' passing t.xmlColumn)This works as expected. Next, as done in the example, I'm trying to replace the "someValue" with a dynamic variable.
    Query then looks like:
    select * from MyTable t, XMLTABLE( xmlnamespaces (DEFAULT 'http://test), 'for $i in /RootElement where $i/SubElement[contains(Element, $val)] return "true"' passing t.xmlColumn, :1 as "val")This does not seem to work, neither in SQLDeveloper nor in java.
    I always get the :
    java.sql.SQLException: ORA-00932: inconsistent datatypes: expected - got CHAR(SQLDeveloper just gives ORA-00932)
    When I put $val between quotes (so "$val") then I get no error, but then I get no results either.
    I think it will not replace $val in that case but just use it as a literal, so thats not what I want
    I also tried to remove "contains" xpath and use the exact same example as on the oracle page
    select * from MyTable t, XMLTABLE( xmlnamespaces (DEFAULT 'http://test), 'for $i in /RootElement where $i/SubElement/Key = $val return "true"' passing t.xmlColumn, :1 as "val")But this doens't help either.
    I'm clueless about this, so any help would be appreciated
    Edited by: user5893566 on Nov 29, 2008 6:24 AM

    Ok, I tested it using the latest enterprise edition (11g) and there it works as expected.
    However, on 10.2.0.1.0 and 10.2.0.3.0 it gives this error.
    Is this a bug which has been fixed or should I do something special on 10g ?
    I installed all of these as normal without any special settings, created the tables and ran the query...

  • Dynamic attribute in XQuery

    Using XQuery I'm trying to dynamically create attributes as the result of a complex for statement.
    This works fine:
    <tag
    attributeName="{ for ...}"
    />
    and I could just repeat this for every attribute. However the "for/where" statements are complex and I would like to avoid the overhead of having to repeat them for every attribute. What I would like is something like
    <tag
    "{ for ...
    where ...
    return attribute foo result1
    return attribute bar result2
    return attribute fubar result3
    Any ideas how I could do this?
    =Paul=
    Also, as an aside, where is this putting the attribute setting code inside quotes documented?
    -pdg-

    can we have a hashmap which stores all the unknown
    attributes into the hashmap upon loading and then
    handle it in the setpropertiesJSF's UIComponent has a function of generic attributes.
    Use <f:attribute>.
    <cx:inputText value="" foo="footest"/> Anyway, if you want to use the syntax like this, you should provide a custom
    tag handler which has a setFoo() method and whose setProperties() method
    copys the value to the corresponding (generic) attribute of the component.

  • Call Java from XPath in XQuery?

    Hi all,
    in XQuery, I need to iterate over elements and, for each element, add an attribute that is the result of a complex calculation. Therefore I would like to to call a Java class which retuns a string inside a XPATH Expression in XQuery.
    I know, this is - unfortunately - not part of the XPAth standard, but some XQuery processors such as the one from Altova has extensions for that. There the XQuery looks like:
    declare namespace createID="java:xx.xx.IDCreator";
    <Customer id="{createID:create('xx')}">
    Is there any way to build something similar with Berkeleys XQuery engine?
    Thanks in adavance and cheers,
    Hajo

    Hi George,
    thanks a lot for the info, this is great news. Any chance I get my hands on 2.5 before 28th June? I have a presentation then.
    We have fantastic results on performance and memory footprint with Berkeley XML. Being able to call out Java has the potential to revolutionize XML based business logic I guess.
    Cheers,
    Hajo

  • Assign with Dynamic XPATH

    Hi,
    I'd like to assign dynamically some nodes of a BPEL variable.
    As input of my process, I receive some XPATH pointing out fields I need to update.
    I already worked with dynamic sources in assign activities, it works well.
    Concerning the target of the assign activity, I can't use expressions ...
    Does someone have a / the solution ?
    Thanks in advance,
    romain.

    Hi PavanKumar,
    Thank you for your answer.
    Actually, I do not know at design time which node I'll have to update.
    I receive as input an XML document and a list of XPATH pointing out nodes into the XML document I need to update ...
    For example :
    <input>
    <person>
    <name>test</name>
    <surname>test</surname>
    <age>54</age>
    <civility>M</civility>
    </person>
    <XpathList>
    <xpath>/input/person/name</xpath>
    <xpath>/input/person/age</xpath>
    </XpathList>
    </input>
    I'll need to update 2 nodes of my input document : name and age.
    I would like to use variable in my XPATH like I can do with the expressions.
    Any idea ?
    Thanks!

  • XSLT - looking for evaluate() to build dynamic XPATHs

    Hi,
    I am using the oracle api to process an XSLT and was trying to get the xalan:evaluate() function working.
    Having problems as the first param is an ExpressionContext which I am not sure what to set it to.
    Anyone have any experience with this or any of the XPath.evaluate calls from the oracle libraries?
    Cheers

    Set the XPath expression as a String.
    http://xml.apache.org/xalan-j/extensionslib.html#evaluate

  • How to start learning XPATH and XQUERY

    Hello
    Please I am needing some guide to know if there is a guide that I could follow so that I can handle from the very beginning till the end an XML Document.
    Besides I need to know if with JDeveloper I can edit and update an XML document (data type XMLTYPE column) inside of a table.
    I'll appreciate your help.
    Paola.
    @}--->----->>----------

    You could have a start here http://www.w3schools.com/. also the old XMLDB manuals 9.2, 10.1 had primers on handling xml (appendix section), another source for you could be the w3c organization: http://www.w3.org/.
    AFAIK, JDeveloper doesn't have that functionality yet. AFAIK the latest toad version is able to do this...
    Message was edited by:
    Marco Gralike

  • Set value with XPath dynamically

    Dear All,
    I am wonder if the following is possiable with Set Value service using XPath, any *simple* workaround is also welcome too.
    If I have a variable myXML =
    <root>
    <item region="One">1</item>
    <item region="Two">2</item>
    </root>
    I can reference to /root/item[1] by:
    set /process/@myNum = 1
    set /process/@dummy  = /process_data/myXml/root/item[number(\process\@myNum)]
    But how can I access /root/item[@region="One"] ?
    I tried the following but all failed:
    1)
    set /process/@myString = @region="One"
    set /process/@dummy  = /process_data/myXml/root/item[string(\process\@myString)]
    2)
    set /process/@myString = One
    set /process/@dummy  = /process_data/myXml/root/item[@region='string(\process\@myString)']
    And are there any way to set a variable using template string? (i.e. You name is {$/process/@yourName$} )
    Regards
    Bill

    Bill,
    As the nature of dynamic xPath statements is very use-case dependant, there is not much in the way of documentation. However, I will forward this thread to the documentation team to see if there is anything that can be added in the future to make these types of questions covered in the docs.
    As for setting a variable by using a template, there is no way to do this in setValue service unfortunately. However, you can use the executeScript service in LC ES. This service allows you to write java code and have access to the LC ES APIs while in context of your process. If you go to http://help.adobe.com/en_US/livecycle/9.0/workbenchHelp/help.htm and look under Creating Processes Using LiveCycle Workbench ES2 / Service Reference / Execute Script you will find documentation about how ot use this service.
    http://help.adobe.com/en_US/livecycle/9.0/workbenchHelp/000580.html
    There is a method called replacePathExpressions(String aString) that is exposed by the patExecContext object. this method takes in a template like you are looking to use. Basically a string that contains some xPath expressions wrapped in {$ $}. I created a sample process (attached to this post) that has a process variable called templateString. I used a setValue service to set it's value to:
    "Your name is {$/process_data/@name$} and your address is {$/process_data/@address$}."
    Of course, I also have variables called "name" and "address" that I have tagged as input variables. Then I have the executeScript service with the following code (basically 3 lines of code with alot of comments):
    //Get the templateString process variable value.
    String template = patExecContext.getProcessDataStringValue("/process_data/@templateString");
    // Call the replacePathExpressions() method.
    // It is a built-in method that will look for all {$ $} variable text and process each xPath expression and replace them in the text.
    String result = patExecContext.replacePathExpressions(template);
    // Now, the result string contains all of the resolved xPath statements.
    // Let's set the process variable that will hold the result.
    patExecContext.setProcessDataStringValue("/process_data/@resultString",result);
    Now you can dynamically construct responses using template variables.
    Also, thanks to Florentin Wandeler for the tip on the replacePathExpressions() method.

  • Call an Xquery Resource in ALSB dynamically

    Hi,
    I am using Aqualogic ServiceBus v2.6.
    I have created few xquery resources and want to access them dynamically.
    Is it possible to dynamically access an xquery resource, the way we can dynamically route to a proxy / business service by giving the complete path.
    I'll get the name and path of my xquery from request at run time and will have to select corresponding xquery from many created in a project.

    Thanks for the reply.
    But I think I wasn't clear with my question.
    I want to call an xquery dynamically, not route to a proxy service.
    I have one project with 1 proxy service and many xquery resources. I do not know which xquery is to be used. The selection of xquery is based on request recieved by proxy service. The path of all xqueries is same. I'll get the name of xquery to be used at run time. How can I access this xquery dynamically?
    We have option of selecting an xquery resource by selecting radio button. Can we do this by just giving the path and name at run time?
    E.g. In my project I have 1 proxy service XYZProxyService and many xquery resources say 1.xq, 2.xq ..... N.xq
    I now the path of all these is XYZProxyService/XQueries/
    I'll get the name of xq to be used at run time from request.
    So I can construct the whole path alongwith name XYZProxyService/XQueries/<N>.xq
    But is there a support to select an xq dynamically by giving whole path?

  • SSMS 2012:FOR XML PATH Using XPath Node Tests-Columnn name 'test()' contains an invalid XML identifier as required by FOR XML?

    Hi all,
    I am learning XPATH and XQUERY from the Book "Pro T-SQL 2008 Programmer's Guide" written by Michael Coles, (published by apress). I copied the Code Listing 12-8 FOR XML PATH Using XPath Node Tests (listed below) and executed it in my
    SQL Server 2012 Management Studio:
    --Coles12_8.sql // saved in C:/Documemnts/SQL Server Management Studio
    -- Coles Listing 12-8 FOR XML PATH Using XPATH Node Tests
    -- Retrieving Name and E-mail Addresses with FOR XML PATH in AdvantureWorks
    -- 16 March 2015 0935 AM
    USE AdventureWorks;
    GO
    SELECT
    p.NameStyle AS "processing-instruction(nameStyle)",
    p.BusinessEntityID AS "Person/@ID",
    p.ModifiedDate AS "comment()",
    pp.PhoneNumber AS "test()",
    FirstName AS "Person/Name/First",
    MiddleName AS "Person/Name/Middle",
    LastName AS "Person/Name/Last",
    EmailAddress AS "Person/Email"
    FROM Person.Person p
    INNER JOIN Person.EmailAddress e
    ON p.BusinessEntityID = e.BusinessEntityID
    INNER JOIN Person.PersonPhone pp
    ON p.BusinessEntityID = pp.BusinessEntityID
    FOR XML PATH;
    I got the following error message:
    Msg 6850, Level 16, State 1, Line 2
    Column name 'test()' contains an invalid XML identifier as required by FOR XML; '('(0x0028) is the first character at fault.
    I have no ideas why I got this error message.  Please kindly help and advise me how to resolve this error.
    Thanks in advance,  Scott Chang

    Hi Michelle, Thanks for your nice response.
    I corrected the mistake and executed the revised code. It worked nicely.
    I just have one question to ask you about the appearance of the xml output of my Co;les12_8.sql:
    <row>
    <?nameStyle 0?>
    <Person ID="1" />
    <!--2003-02-08T00:00:00-->697-555-0142<Person><Name><First>Ken</First><Middle>J</Middle><Last>Sánchez</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="2" />
    <!--2002-02-24T00:00:00-->819-555-0175<Person><Name><First>Terri</First><Middle>Lee</Middle><Last>Duffy</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="3" />
    <!--2001-12-05T00:00:00-->212-555-0187<Person><Name><First>Roberto</First><Last>Tamburello</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="4" />
    <!--2001-12-29T00:00:00-->612-555-0100<Person><Name><First>Rob</First><Last>Walters</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="5" />
    <!--2002-01-30T00:00:00-->849-555-0139<Person><Name><First>Gail</First><Middle>A</Middle><Last>Erickson</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="6" />
    <!--2002-02-17T00:00:00-->122-555-0189<Person><Name><First>Jossef</First><Middle>H</Middle><Last>Goldberg</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="7" />
    <!--2003-03-05T00:00:00-->181-555-0156<Person><Name><First>Dylan</First><Middle>A</Middle><Last>Miller</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="8" />
    <!--2003-01-23T00:00:00-->815-555-0138<Person><Name><First>Diane</First><Middle>L</Middle><Last>Margheim</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="9" />
    <!--2003-02-10T00:00:00-->185-555-0186<Person><Name><First>Gigi</First><Middle>N</Middle><Last>Matthew</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="10" />
    <!--2003-05-28T00:00:00-->330-555-2568<Person><Name><First>Michael</First><Last>Raheem</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    <?nameStyle 0?>
    <Person ID="11" />
    <!--2004-12-29T00:00:00-->719-555-0181<Person><Name><First>Ovidiu</First><Middle>V</Middle><Last>Cracium</Last></Name><Email>[email protected]</Email></Person></row>
    <row>
    I feel this xml output is not like the regular xml output.  Do you know why it is diffrent from the regular xml xml output?  Please comment on this matter.
    Thanks,
    Scott Chang
    What do you mean by regular xml document? Are you referring to fact that its missing a root element? if yes it can be added as below
    USE AdventureWorks;
    GO
    SELECT
    p.NameStyle AS "processing-instruction(nameStyle)",
    p.BusinessEntityID AS "Person/@ID",
    p.ModifiedDate AS "comment()",
    pp.PhoneNumber AS "text()",
    FirstName AS "Person/Name/First",
    MiddleName AS "Person/Name/Middle",
    LastName AS "Person/Name/Last",
    EmailAddress AS "Person/Email"
    FROM Person.Person p
    INNER JOIN Person.EmailAddress e
    ON p.BusinessEntityID = e.BusinessEntityID
    INNER JOIN Person.PersonPhone pp
    ON p.BusinessEntityID = pp.BusinessEntityID
    FOR XML PATH('ElementName'),ROOT('RootName');
    replace ElementName and RootName with whatever name you need to set for element as well as the root element
    Please Mark This As Answer if it solved your issue
    Please Vote This As Helpful if it helps to solve your issue
    Visakh
    My Wiki User Page
    My MSDN Page
    My Personal Blog
    My Facebook Page

  • What is the cause of the XPath error in concat expression

    Hi,
    In a BPEL process I am working on I am building a list as follows -
    <copy>
    <from expression="concat(bpws:getVariableData('FMSNumbersList'),' | ',bpws:getVariableData('Invoke_1_GetFmsHeadersSelect_OutputVariable','FmsWaveAssignCollection','/ns5:FmsWaveAssignCollection/ns5:FmsWaveAssign/ns5:fmsHeadersCollection/ns5:FmsHeaders[bpws:getVariableData('FmsHeadersProcessed')]/ns5:fmsNumber'))"/>
    <to variable="FMSNumbersList"/>
    </copy>
    When I compile the project I get the following error -
    Error(195): invalid xpath expression
    xpath expression "concat(bpws:getVariableData(&apos;FMSNumbersList&apos;),&apos; | &apos;,bpws:getVariableData(&apos;Invoke_1_GetFmsHeadersSelect_OutputVariable&apos;,&apos;FmsWaveAssignCollection&apos;,&apos;/ns5:FmsWaveAssignCollection/ns5:FmsWaveAssign/ns5:fmsHeadersCollection/ns5:FmsHeaders[bpws:getVariableData(&apos;FmsHeadersProcessed&apos;)]/ns5:fmsNumber&apos;))" specified in <from> is not valid, because XPath query syntax error.
    The syntax error occurs while parsing XPath expression concat(bpws:getVariableData('FMSNumbersList'),' | ',bpws:getVariableData('Invoke_1_GetFmsHeadersSelect_OutputVariable','FmsWaveAssignCollection','/ns5:FmsWaveAssignCollection/ns5:FmsWaveAssign/ns5:fmsHeadersCollection/ns5:FmsHeaders[bpws:getVariableData('FmsHeadersProcessed')]/ns5:fmsNumber')), at position 255.
    The XPath query syntax was wrong; the exception was: Expected: ).
    Check the detailed root cause described in the exception message text and verify that the XPath expression named in the error message is correct. The XPath expression is defined in the BPEL process.
    Make sure the expression is valid
    I am unable to figure out what is wrong with the above expression. Can someone please help.
    Thanks in advance
    Harish

    You have to use two copy statement to fetch values like an Array.
    1. Construct a dynamic xpath expression
    2. Use dynmaic xpath to get the array value
    Eg:
    The below code shows how to use assign to build the dynamic XPath.
    <assign name="Assign_XPath_For_Array">
    <copy>
    <from expression="concat('/ns1:ArrayList/ns2:ArrayElem[',bpws:getVariableData('Variable_Index_Counter'),']') "/>
    <to variable="Variable_Xpath"/>
    </copy>
    </assing>
    Note have used [index] to represent index element here in the array.
    Here Variable_Xpath acts as a temporary string variable that holds the intermediate Xpath as string.
    Now use this XPath string Variable while reading array index elements.
    This would look like
    <assign name="Assign_Read_Array">
    <copy>
    <from expression="bpws:getVariableData('Variable_Array','payload',bpws:getVariableData('Variable_Xpath'))"/>
    <to variable="Variable_Read_Array_Element"
    query="/ns1: ABC"/>
    </copy>
    </assign>
    --Prasanna                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • XQuery and Oracle XE ...

    Hi all,
    One of the major differences between "DB2 Express-C" and "Oracle XE" seems to be, support for XML and XQuery in particular. If I read this right "Oracle XE" is a purely "relational database" whereas "DB2 Express-C" is a "hybrid". (relational and XML).
    With the aggressive adoption of various XML technologies (XML, XSD, XPath/XSLT, Xquery ...) we could be seeing a whole new category of "XML rich" or "XML enabled" apps. In this environment, I would like to see Oracle take a leadership position and release a small-footprint, free edition with support for XQuery. It would be helpfull for the "innovators" and would certainly help Oracle sell their bigger DB's down, the line.
    Oracle's current position w.r.t "Oracle XE" is certainly baffling. Hopefully someone at Oracle can reply.
    Regards
    /rk

    >
    Your suggestion of trying XQuery commands in sql*plus or isql*plus would make sense if there was fundamental support for XQuery in the targetted instance of "Oracle XE". The "datasheet" on "Oracle XE" has absolutely no mention of XQuery.
    >
    My question was: Are we talking about a documentation bug or is the XQuery feature really missing in the XE edition?
    >
    On the other hand IBM's "DB2 Express-C" is an aggressive, uptodate "hybrid" DB with builtin support for XML (XMLType, XQuery ...) in addition to the proven "relational" model.
    >
    That's nice - now if IBM would finally include basic stuff like MVCC or a SP/Trigger/Application-Language like PL/SQL, DB2 Express-C would really become attractive for developers like me. Until then, I think I'll stick with the limits of XE or consider a switch to SE1 if I get the required funding.
    C.

Maybe you are looking for

  • I want run the "Cleanup XHTML" from my command

    Hi. I try make the Dreamweaver's extension. I want to "Cleanup XHTML" from my command. I read the document, and I programming this code. var dom = dw.getDocumentDOM(); dom.cleanupXHTML(); but, This code can't run. Why this reason? Please teach me. p.

  • How to import a photo from desktop to iphoto

    How do I transfer a photo from my desktop to the iphone to edit?

  • Synchronizing pdf in iBooks

    Hey! When I want to sync my iPad and add pdf files to it (pdfs saved to music - iTunes - iTunes Media - Books) I either have to sync all and I get everything double (old AND new versions) or I have to choose from the list below. The problem is old an

  • 1) Second thread call to stateful session bean.

    Hi Friend, I read your threads on otn and i compared your problem with us and i analysed that your application and my application is same, So Plese can you help me in some issues. Friend, Please help me in these issues, Thanks for this We have very b

  • Insert installation points (subitems) in existing bom

    Hi, I am trying to insert installation points in an existing bom. Searching the forum i learned that this should be possible with function CSAP_MAT_BOM_MAINTAIN using table t_stpu. I did this and get an sy-subrc = 0 but when i take a look at the bom