This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 29675 - [XSLT30] Determining the static context item type when focus-setting container is a declaration
Summary: [XSLT30] Determining the static context item type when focus-setting containe...
Status: CLOSED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XSLT 3.0 (show other bugs)
Version: Candidate Recommendation
Hardware: PC Windows NT
: P2 minor
Target Milestone: ---
Assignee: Michael Kay
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-27 20:45 UTC by Abel Braaksma
Modified: 2016-10-06 18:42 UTC (History)
0 users

See Also:


Attachments

Description Abel Braaksma 2016-05-27 20:45:23 UTC
We currently write, in section 19.2 Determining the Context Item Type:

5. If the focus-setting container is any other declaration, for example a global variable declaration, the context item type is U{*}.

However, the present rules on streamability for global variables assume the context item type from xsl:global-context-item.

Even though we may be dropping global variables from streaming analysis (see bug 29670 comment #3), I think this rule should be in relation to xsl:global-context-item (regardless whether streamability is applicable).

I propose therefore:

5. If the focus-setting container is a global xsl:variable or xsl:param declaration, the context item type is the type from the type attribute of xsl:global-context-item, U{} if the use attribute is "absent" or U{*} if that declaration is absent.
6. If the focus-setting container is any other declaration, for example xsl:key or xsl:accumulator, the context item type is U{*}.
7. Otherwise [...]

(rule (6) is there because they apply to the match selection, not the GCI)
Comment 1 Michael Kay 2016-06-02 20:20:52 UTC
I agree.
Comment 2 Michael Kay 2016-06-09 22:07:52 UTC
These changes were agreed and have been applied.