[Bug 9734] default initial template

https://www.w3.org/Bugs/Public/show_bug.cgi?id=9734

--- Comment #9 from Michael Kay <mike@saxonica.com> 2012-07-19 08:21:19 UTC ---
Here's a concrete proposal.

(1) reorganize bullets 3, 4, and 5 of 2.3 initiating a transformation. The
caller may choose one of two ways of initiating the transformation

(a) by evaluating apply-templates implicitly selecting the initial context
item, with a selected initial mode, which defaults to the unnamed mode. In this
case an initial context item must be supplied.

(b) by evaluating call-template to the initial template, with a selected
template name, which defaults to the name of the default initial template,
defined below. In this case the initial context item is optional. If no
template name is supplied then a default initial template must exist.

The default initial template is the template that has the attribute
initial-template="yes", if such a template exists. If more than one template
carries this attribute, the one with highest import precedence is chosen. If
this leaves more than one, a dynamic error is reported.

(2) add the attribute initial-template=yes|no to xsl:template. It is an error
to set this to yes on a template that has any xsl:param children with
required="yes". It is an error to set this to yes on a template that has no
xsl:context-item child. A template that has the attribute
initial-template="yes" may also have name and or match attributes, but neither
name or match is required. If a template has the attribute
initial-template="yes" then the only permitted value for the visibility
attribute is "public".

(I'd like to add a third mode of invocation, by calling a global function, but
that's a separate proposal).

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Thursday, 19 July 2012 08:21:24 UTC