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 23544 - [XSLT 3.0] Component binding and xsl:original
Summary: [XSLT 3.0] Component binding and xsl:original
Status: CLOSED WORKSFORME
Alias: None
Product: XPath / XQuery / XSLT
Classification: Unclassified
Component: XSLT 3.0 (show other bugs)
Version: Working drafts
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:
Depends on:
Blocks:
 
Reported: 2013-10-17 09:17 UTC by Michael Kay
Modified: 2014-05-15 14:00 UTC (History)
0 users

See Also:


Attachments

Description Michael Kay 2013-10-17 09:17:22 UTC
Suppose that package W uses package V, and a component P' in W overrides a component P in V. Now suppose that P' invokes P by use of the xsl:original mechanism. Suppose also that P contains a reference to component A. How is the reference to A bound?

In particular, suppose that A is public or abstract in V, and is overridden by a component A' in W. Do we call A, or A'? (Either would be possible if A is public; only the latter is possible if A is abstract.)

I think there will probably be fewer surprises if we treat xsl:original as invoking "the component you would have invoked in the absence of the override". This means that xsl:original invokes a component P" in which the reference to A is (re-)bound to A'.
Comment 1 Michael Kay 2013-11-28 23:32:42 UTC
Reading the text regarding xsl:original again, I think it is clear that the binding is to the "hidden component" in the using package, not the original component in the used package; indeed this is the only solution that makes sense.