[
https://issues.apache.org/jira/browse/XERCESJ-1502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mukul Gandhi updated XERCESJ-1502:
----------------------------------
Description:
I thought it's good to create a JIRA issue for these changes for tracking
purposes. We made following enhancements to the XSD 1.1 assertions
implementation post 2.11.0 release.
1. Improvements to assertion failure messages. Now assertion facet failure
messages are similar to other facet failure messages. Earlier it was not
apparent in error messages, that a facet failure with <assertion> *was from a
facet*.
2. Improved processing logic for assertion evaluations for simpleType
definitions having variety union. Improvements to updation of memberType PSVI
result when assertions are involved for simpleType definitions with variety
union.
3. Providing an improved PsychoPath XPath 2.0 JAR file. This includes quite a
few improvements to couple of XPath 2.0 F&O function implementations, and few
other enhancements. This provides benefits for <assert> and CTA (when in full
XPath 2.0 mode) processing.
4. It's now a static XSD error to have the <assert> XPath expressions to begin
with the tokens / or // (since assert XDM trees are rooted at a parentless
element node). For e.g /x, //x or a[/x] etc are incorrect assert XPath
expressions and would result in a static error. We now produce a warning upon
an XPath parse exception in this case. This change requires the new PsychoPath
XPath 2.0 JAR.
5. If an <any> wild-card declaration has a specifier processContents="skip",
then the XML instance content covered by such a wild-card declaration should be
available to the in-scope <assert> components. This wasn't occurring earlier.
6. Implemented [failed assertions] PSVI property for "element information
items".
7. The XSD attribute "id" on the elements <assert> and <assertion> are tested
post Xerces 2.11.0 release, and are observed to be working fine.
8. Now an element node that's validated by a complex type definition, is the
root node of <assert> XDM trees (this also applies to CTA implementation, which
require similar behavior). The root node of <assert> XDM trees are now untyped
(they carry the type annotation xs:anyType), and rest of nodes of <assert> XDM
trees are typed as per the in-scope XSD types. These changes are as per
recommendation from XSD 1.1 spec.
9. <assert> XDM trees now recognize the XML 'comment' and 'PI' nodes. But this
is disabled by default, and can be enabled by setting the feature (on
javax.xml.validation.Validator) 'Constants.XERCES_FEATURE_PREFIX +
Constants.ASSERT_COMMENT_PI_CHECKING_FEATURE' to 'true'.
10. Assertion fixes mentioned in JIRA issues XERCESJ-1489, XERCESJ-1470.
Thanks to Michael, Sandy and Khaled as well for helping with some of the design
issues with these enhancements.
was:
I thought it's good to create a JIRA issue for these changes for tracking
purpose.
1. Improvements to assertion failure messages. Now assertion facet failure
messages are similar to other facet failure messages. Earlier it was not
apparent in error messages, that a facet failure with <assertion> *was from a
facet*.
2. Improved processing logic for assertion evaluations for simpleType
definitions having variety union. Improvements to updation of memberType PSVI
result when assertions are involved for simpleType definitions with variety
union.
3. Providing an improved PsychoPath XPath 2.0 JAR file. This includes quite a
few improvements to couple of XPath 2.0 F&O function implementations, and few
other enhancements.
4. It's now a static error (we now produce a warning upon an XPath parse
exception in this case) to have the <assert> XPath expressions to begin with
the tokens / or // (since assert XDM trees are rooted at a parentless element
node). for e.g /x, //x or a[/x] etc are incorrect assert XPath expressions and
would result in a static error. This change requires the new PsychoPath XPath
2.0 JAR.
5. If the <any> wild-card has a specifier processContents="skip", then that
part of XML content tree should be available to the in-scope assertion
components. This wasn't occurring earlier.
6. Implemented [failed assertions] PSVI property for "element information
items".
7. The XSD attribute "id" on the elements <assert> and <assertion> are tested
post Xerces 2.11.0 release, and are observed to be working fine.
8. Now the element node that's validated by the complexType, is the root node
of <assert> XDM trees. This also applies to CTA implementation now, which
require similar behavior. Root node of <assert> XDM trees are now untyped (i.e
they carry the type annotation xs:anyType), and rest of nodes of <assert> XDM
trees are typed (this is as per recommendation from XSD 1.1 spec).
9. Implemented comment and PI nodes for assert XDM trees. Thanks to Michael
Glavassevich for enhancing prior stages of XSD validation pipeline, that
enabled this support in XMLSchemaValidator component as well as other
downstream <assert> evaluation components.
10. Assertion fixes mentioned in JIRA issues XERCESJ-1489, XERCESJ-1470.
> Improvements to XML Schema 1.1 assertions processing
> ----------------------------------------------------
>
> Key: XERCESJ-1502
> URL: https://issues.apache.org/jira/browse/XERCESJ-1502
> Project: Xerces2-J
> Issue Type: Improvement
> Components: XML Schema 1.1 Datatypes, XML Schema 1.1 Structures
> Affects Versions: 2.11.0
> Reporter: Mukul Gandhi
> Assignee: Mukul Gandhi
>
> I thought it's good to create a JIRA issue for these changes for tracking
> purposes. We made following enhancements to the XSD 1.1 assertions
> implementation post 2.11.0 release.
> 1. Improvements to assertion failure messages. Now assertion facet failure
> messages are similar to other facet failure messages. Earlier it was not
> apparent in error messages, that a facet failure with <assertion> *was from a
> facet*.
> 2. Improved processing logic for assertion evaluations for simpleType
> definitions having variety union. Improvements to updation of memberType PSVI
> result when assertions are involved for simpleType definitions with variety
> union.
> 3. Providing an improved PsychoPath XPath 2.0 JAR file. This includes quite a
> few improvements to couple of XPath 2.0 F&O function implementations, and few
> other enhancements. This provides benefits for <assert> and CTA (when in full
> XPath 2.0 mode) processing.
> 4. It's now a static XSD error to have the <assert> XPath expressions to
> begin with the tokens / or // (since assert XDM trees are rooted at a
> parentless element node). For e.g /x, //x or a[/x] etc are incorrect assert
> XPath expressions and would result in a static error. We now produce a
> warning upon an XPath parse exception in this case. This change requires the
> new PsychoPath XPath 2.0 JAR.
> 5. If an <any> wild-card declaration has a specifier processContents="skip",
> then the XML instance content covered by such a wild-card declaration should
> be available to the in-scope <assert> components. This wasn't occurring
> earlier.
> 6. Implemented [failed assertions] PSVI property for "element information
> items".
> 7. The XSD attribute "id" on the elements <assert> and <assertion> are tested
> post Xerces 2.11.0 release, and are observed to be working fine.
> 8. Now an element node that's validated by a complex type definition, is the
> root node of <assert> XDM trees (this also applies to CTA implementation,
> which require similar behavior). The root node of <assert> XDM trees are now
> untyped (they carry the type annotation xs:anyType), and rest of nodes of
> <assert> XDM trees are typed as per the in-scope XSD types. These changes are
> as per recommendation from XSD 1.1 spec.
> 9. <assert> XDM trees now recognize the XML 'comment' and 'PI' nodes. But
> this is disabled by default, and can be enabled by setting the feature (on
> javax.xml.validation.Validator) 'Constants.XERCES_FEATURE_PREFIX +
> Constants.ASSERT_COMMENT_PI_CHECKING_FEATURE' to 'true'.
> 10. Assertion fixes mentioned in JIRA issues XERCESJ-1489, XERCESJ-1470.
> Thanks to Michael, Sandy and Khaled as well for helping with some of the
> design issues with these enhancements.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]