[ https://issues.apache.org/jira/browse/XERCESJ-1365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mukul Gandhi updated XERCESJ-1365: ---------------------------------- Attachment: org.eclipse.wst.xml.xpath2.processor_1.0.0.jar assert_xpath2_patch_28.04.09.txt assert xpath2 impl src_28.04.09.zip Please refer to these links, https://bugs.eclipse.org/bugs/show_bug.cgi?id=273719 [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=273795 [2] https://bugs.eclipse.org/bugs/show_bug.cgi?id=273848 [3] I have helped solve few bugs in psychopath ([1] and [2]). Now couple of built in XPath 2.0 functions work better in psychopath (particularly few string functions). These changes will be available in Eclipse WTP in very near future. Psychopath team has also refactored it's source code (please see, [3]). This caused some of Xerces assertions code to be broken (only the file, XMLAssertPsychopathImpl.java was affected). I have prepared a latest Psychopath JAR (attached here) from it's sources, with all these improvements. Only the file, XMLAssertPsychopathImpl.java is modified in this patch. Rest of the files in the patch remain same. I request the Xerces team to please test this patch with the latest Psychopath JAR file (attached here). I'll keep the team informed, with any further developments if any. Regards, Mukul > assertions XPath 2.0 patch > -------------------------- > > Key: XERCESJ-1365 > URL: https://issues.apache.org/jira/browse/XERCESJ-1365 > Project: Xerces2-J > Issue Type: Improvement > Components: XML Schema 1.1 Structures > Affects Versions: 2.9.1 > Environment: JRE 1.5.x > Reporter: Mukul Gandhi > Assignee: Khaled Noaman > Attachments: assert xpath2 impl src_28.04.09.zip, > assert_xpath2_patch_28.04.09.txt, assertions test cases.zip, > org.eclipse.wst.xml.xpath2.processor_1.0.0.jar, XMLSchema11Test.java > > > I am pleased to provide a patch with almost complete implementation of XML > Schema 1.1 assertions. Some things might have been overlooked (though not > anything major it seems to me), and I am continuing finding and correcting > any known issues. > This JIRA issue provides a complete implementation of XML Schema 1.1 > assertions, in combination with the current code in SVN. > This JIRA issue supersedes the issue, > https://issues.apache.org/jira/browse/XERCESJ-1363. Kindly abort/cancel the > issue XERCESJ-1363 and review this one instead. > I am providing all the necessary files for review that affect assertions (the > files for the issue, XERCESJ-1363 are also available in this JIRA issue). > This code submission provides XPath 2.0 interface with the Psychopath > processor. Psychopath processor is presently not 100% compliant to the XPath > 2.0 spec. It's capabilities and limitations are mentioned in the document, > http://psychopath.sourceforge.net/report.pdf. Kindly be aware, that failure > to evaluate some legal XPath 2.0 expressions, would most likely be because of > limitations of Psychopath. > There is another issue I am aware of with the current assertions code I am > submitting. > For e.g., if there is assertions declaration like following: > <xs:element name="A"> > <xs:complexType> > <xs:sequence> > <!-- something --> > </xs:sequence> > <xs:assert test="exists(@x)" /> > </xs:complexType> > </xs:element> > The <xs:assert above would test if there is an attribute 'x' on the element > 'A'. If attribute 'x' is actually present on element 'A', the above assertion > should evaluate to true (this is I think, what the XML Schema 1.1 spec says). > But with the Psychopath processor, I am facing a problem, that I have to > write the above assertion as following, to work correctly: > <xs:assert test="exists(root/@x)" /> or perhaps, <xs:assert > test="exists(*/@x)" /> > For the above Schema example, a DOM is being built whose root element is 'A'. > The Psychopath processor assumes a context node as / (i.e., the XPath 2.0 > document node) while evaluating XPath expressions (when it is supplied with a > DOM). So at present with Psychopath processor, one must descend one step > extra while writing XPath expressions. > I am working on this issue, and would post a fix, when I find a solution. > I would provide some test cases as well after some time. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: j-dev-unsubscr...@xerces.apache.org For additional commands, e-mail: j-dev-h...@xerces.apache.org