You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Matthieu Riou (JIRA)" <ji...@apache.org> on 2008/07/16 16:54:31 UTC

[jira] Commented: (ODE-337) Several XPath-related issues: selection, rounding and message validation (3-in-1 report)

    [ https://issues.apache.org/jira/browse/ODE-337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12613976#action_12613976 ] 

Matthieu Riou commented on ODE-337:
-----------------------------------

First, thanks a lot for going the extra mile and isolating those in a test case.

The nodeset query filter problem sounds like a bug but I'd have to reproduce it and track it down the be sure. I'm somewhat surprised because the application of the filter is all happening within the xpath engine, which is kind of known to work. But I'll check it out later, there might be some weird interaction with our own code. By the way you may want to try using XPath 2.0 instead  of 1.0 as it's a bit better overall. Just set the queryLanguage and expressionLanguage attributes at the process level (see http://svn.apache.org/repos/asf/ode/branches/APACHE_ODE_1.X/distro/src/examples-war/HelloWorld2/HelloWorld2.bpel)

The second problem is partially a consequence of the third. Without a schema, the xpath engine doesn't know whether it's supposed to return an int or a float, so it opts for the more generic one. Then round() should work but as soon as you assign the rounded value to something, you're back to the same problem. By the way XPath 1.0 is *not* schema aware under any circumstance so there's no hope there.

The underlying issue for us is that the open source version of Saxon (for XPath 2.0) is not schema-aware and there are no open source schema-aware xpath engine that we can reuse. And in the land of non schema aware XPath engines, the results you're seeing are actually coherent :)

> Several XPath-related issues: selection, rounding and message validation (3-in-1 report)
> ----------------------------------------------------------------------------------------
>
>                 Key: ODE-337
>                 URL: https://issues.apache.org/jira/browse/ODE-337
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.2
>            Reporter: Josef Spillner
>         Attachments: ode-testcase-process.tar.gz
>
>
> After having had several issues with one of my processes, I tried to isolate the bugs and have put them into an easy-to-understand testcase process.
> The main bug contained in it is that a nodeset selection like A[0] doesn't work correctly even if A contains two nodes.
> To prove that two nodes are contained, I used the XPath count() function, which for some reason returns a floating point number, and even after round()ing it the number remains non-integer. This is the second bug.
> To be able to return the number of nodes in the BPEL reply despite the message not conforming to its schema is also interesting. I think it's useful but by default messages should be validated against their schema. This is the third bug.
> If the bugs are confirmed, I could open up dedicate bug reports for them, but I think at least the first two are related.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.