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 28122 - [xslt 3.0] the function xsl:original
Summary: [xslt 3.0] the function xsl:original
Status: CLOSED FIXED
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XSLT 3.0 (show other bugs)
Version: Candidate Recommendation
Hardware: PC All
: P2 normal
Target Milestone: ---
Assignee: Michael Kay
QA Contact: Mailing list for public feedback on specs from XSL and XML Query WGs
URL:
Whiteboard:
Keywords:
: 28210 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-03-02 09:03 UTC by Michael Kay
Modified: 2015-10-29 09:50 UTC (History)
1 user (show)

See Also:


Attachments

Description Michael Kay 2015-03-02 09:03:38 UTC
We say in 3.6.3.3:

<quote>
Within the declaration of an overriding component (that is, a component whose declaration is a child of xsl:override), where the overridden component has public visibility, it is possible to use the name xsl:original as a symbolic reference to the overridden component:

<snip/>
* Within an overriding stylesheet function, xsl:original() may be used to call the overridden stylesheet function.

</quote>

There's a need for more precision here.

(a) a function call on xsl:original will usually have arguments

(b) symbolic references to functions may also appear in the form of partial function application (e.g. xsl:original(?, 3)), or named function references (e.g. xsl:original#2). We need to make it clear that these are legal.

(c) we should make it clear that xsl:original cannot be used in static expressions, e.g. within use-when. (This also applies to the variable reference $xsl:original)

(d) we should make it clear that dynamic references to xsl:original, e.g in function-available(), function-lookup(), or xsl:evaluate, will not succeed. Again this also applies to the variable reference $xsl:original.
Comment 1 Abel Braaksma 2015-03-15 12:01:20 UTC
> (b) symbolic references to functions may also appear in the form of partial 
> function application (e.g. xsl:original(?, 3)), or named function references
> (e.g. xsl:original#2). We need to make it clear that these are legal.

Or that they are not, because it would break information hiding.

Related, and possibly (partially) a duplicate: Bug 28210.
Comment 2 Michael Kay 2015-03-20 12:16:18 UTC
I was asked to propose detailed changes.

The proposal can be found at

https://lists.w3.org/Archives/Member/w3c-xsl-wg/2015Mar/0037.html

(member-only link)
Comment 3 Abel Braaksma 2015-03-20 17:45:43 UTC
*** Bug 28210 has been marked as a duplicate of this bug. ***
Comment 4 Michael Kay 2015-04-09 21:34:58 UTC
The proposal was accepted and has been applied.