You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2013/04/01 20:57:15 UTC

[jira] [Commented] (AXIOM-367) Improving AXIOMXPath to support XPath 2.0

    [ https://issues.apache.org/jira/browse/AXIOM-367?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13619052#comment-13619052 ] 

Andreas Veithen commented on AXIOM-367:
---------------------------------------

Some thoughts on this:

(1) XPath 2.0 is schema aware. For this to work the XPath processor needs access to the type information produced by the validating parser. That is what PhysoPath’s TypeModel is about. However, Axiom doesn’t support type information and it likely never will because (as far as I know) StAX doesn’t have any API to retrieve that information. That means that XPath 2.0 support in Axiom would always be limited to schema unaware processing.

(2) The fact that PsychoPath is coupled to DOM would reduce its usefulness for Axiom even more because many projects won’t benefit from it. E.g. it could not be used by Apache Synapse because that project only supports LLOM.

(3) Because of (1) the work required to integrate PsychoPath with Axiom would be to ensure that DOOM has a level of compliance to DOM that is high enough to support PsychoPath. That would make building a GSoC project on that idea somewhat risky because it is difficult to estimate the required effort. It could be that only some minor improvements are required, but it could also be that one encounters some unexpected issues (e.g. PsychoPath depending on some Xerces specific behavior) that would make this hard to achieve. One really has no a priori idea whether the required effort is appropriate for a GSoC project or not.

(4) Saxon-HE may still be a good candidate. Saxon-EE adds schema aware processing, but because of (1) that is likely out of scope anyway. The primary question is whether Saxon-HE supports integration with object models other than DOM or if that feature is only available in Saxon-PE/EE.

(5) As described in (2), Synapse doesn’t support DOOM. There used to be some fundamental limitations that justified this. One was that the OMFactory implementations for DOOM had a different lifecycle, but this was fixed by AXIOM-412. The other is that DOOM doesn’t support OMSourcedElement, but adding that support should not be too hard, and this is actually envisaged by AXIOM-447. Maybe working on DOOM support for Synapse could be an interesting project for GSoC.
                
> Improving AXIOMXPath to support XPath 2.0 
> ------------------------------------------
>
>                 Key: AXIOM-367
>                 URL: https://issues.apache.org/jira/browse/AXIOM-367
>             Project: Axiom
>          Issue Type: Improvement
>            Reporter: Heshan Suriyaarachchi
>              Labels: gsoc2013
>             Fix For: 1.2.16
>
>
> AXIOMXPath is developed by extending org.jaxen.BaseXPath. Since Jaxen is only supporting Xpath 1.0, Axiom XPath will also be only supporting XPath 1.0. It would be really useful if AXIOMXPath is improved to support XPath 2.0. It will be beneficial for the projects which are using AXIOMXPath. eg. Apache Synapse is also extending AXIOMXPath in it's org.apache.synapse.util.xpath.SynapseXPath implementation. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ws.apache.org
For additional commands, e-mail: dev-help@ws.apache.org