Hi Yitzhak,
I think, it would be ok if any bugs found for Eclipse / PsychoPath
XPath 2.0 processor in our 2.12.0 release, should be reported in Xerces
Jira. That would help us maintain the list of bugs in general. I hope we'll
find an appropriate way to fix these bugs in near future.
You could create the Xerces Jira issues, for the Eclipse / PsychoPath XPath
2.0 bugs you've found so far that we've discussed in recent threads.
On Wed, Aug 8, 2018 at 8:41 PM Yitzhak Khabinsky <
[email protected]> wrote:
> I have a requirement to validate that:
>
> *Each gYearMonth(Date) value shall not fall outside of a particular
> year-month range.*
>
> The test case XML/XSD is below.
>
>
>
> XML:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <root DataFeed="2018-07" xmlns="http://www.millicom.com" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://www.millicom.com Test3.xsd">
> <r>
> <Date>2018-07-31</Date>
> </r>
> <r>
> <Date>2018-07-25</Date>
> </r>
> </root>
>
>
>
> XSD:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault=
> "qualified" version="4.4" targetNamespace="http://www.millicom.com" xmlns=
> "http://www.millicom.com" xpathDefaultNamespace="##targetNamespace"
> xmlns:saxon="http://saxon.sf.net/">
> <xs:element name="root">
> <xs:complexType>
> <xs:sequence>
> <xs:element minOccurs="1" maxOccurs="unbounded" ref="r"/>
> </xs:sequence>
> <xs:attribute name="DataFeed" use="required" type=
> "xs:gYearMonth"/>
>
> <xs:assert test="empty(r/Date[xs:gYearMonth(xs:date(.)) ne
> ../../xs:gYearMonth(@DataFeed)])" saxon:message="Rule #0: Each
> Year-Month(Date) value shall be equal to the DataFeed attribute value"
> xpathDefaultNamespace="##targetNamespace">
> <xs:annotation>
> <xs:documentation>Rule #0</xs:documentation>
> <xs:documentation>Each Year-Month(Date) value shall
> be equal to the DataFeed attribute value</xs:documentation>
> </xs:annotation>
> </xs:assert>
> </xs:complexType>
> </xs:element>
>
> <xs:element name="r">
> <xs:complexType>
> <xs:sequence>
> <xs:element name="Date" type="xs:date"/>
> </xs:sequence>
> </xs:complexType>
> </xs:element>
> </xs:schema>
>
>
>
> Saxon correctly evaluates that the XML is valid.
>
>
>
> XercesJ emits the following error:
>
> [Error] Test3.xml:11:8: cvc-assertion: Assertion evaluation
> ('empty(r/Date[xs:gYearMonth(xs:date(.)) ne
> ../../xs:gYearMonth(@DataFeed)])') for element 'root' on schema type
> '#AnonType_root' did not succeed.
>
--
Regards,
Mukul Gandhi