You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-dev@xerces.apache.org by "Priscilla Walmsley (Jira)" <xe...@xml.apache.org> on 2021/07/30 11:32:00 UTC
[jira] [Created] (XERCESJ-1730) XSD 1.1 assertions on list types
should be on typed value
Priscilla Walmsley created XERCESJ-1730:
-------------------------------------------
Summary: XSD 1.1 assertions on list types should be on typed value
Key: XERCESJ-1730
URL: https://issues.apache.org/jira/browse/XERCESJ-1730
Project: Xerces2-J
Issue Type: Bug
Components: XML Schema 1.1 Structures
Affects Versions: 2.12.1
Environment: Windows
Reporter: Priscilla Walmsley
Attachments: att-patterns-merge.xsl, schema-for-xslt30.xsd
I am trying to use the XSD in the XSLT 3.0 specification and it contains the following assertion:
{{ <xs:assert test="every $prefix in (@exclude-result-prefixes[not(. = '#all')],
@extension-element-prefixes)
satisfies ((if ($prefix = '#default') then '' else $prefix) = in-scope-prefixes(.))">}}
I believe Xerces is treating the value of @exclude-result-prefixes like a single value rather than a list of strings. Every XSLT I have that has more than one value in @exclude-result-prefixes is supposedly violating this assertion.
I initially thought this was an issue with the schema itself but Michael Kay pointed out this:
"XSD 1.1 part 2 clause 4.3.13.3 says that in the XDM representation of the tree used for evaluation of an assertion, the atomization of the list-valued attribute @exclude-result-prefixes is the typed value, which is a sequence of tokens. So the tokenization has already been done, implicitly."
So, I believe Xerces has a bug.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org