[Bug 28931] [xslt 3.0] apply-templates across packages

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

Michael Kay <mike@saxonica.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #3 from Michael Kay <mike@saxonica.com> ---
In addition to the rewrite of 3.5.3.1, the following changes are proposed to
resolve this bug:

In 3.5.3, in the paragraph "Every component has a declaration in some
stylesheet module and therefore within some package. In the case of attribute
sets, there may be several declarations….” change the second sentence to start
“In the case of attribute sets and keys…” [separate problem fixed en passent;
changed to align with the next para].

In the paragraph "Template rules are not components in their own right; unlike
named templates, they are never referenced by name. Component references within
a template rule (for example, references to functions, global variables, or
named templates) are treated as occurring within the component that represents
the containing mode.”, after the second sentence, add “This includes component
references within the match patterns of template rules”.

After this paragraph, add “An xsl:apply-templates instruction with no mode
attribute is treated as a component reference to the unnamed mode. Note that
there is an unnamed mode in every package, and an unnamed mode always has
private visibility.” Also add: “Where a template has a name and also a match
pattern, it is treated as if there were two separate templates, one with a name
and one with a match pattern.”

At the end of 3.5.3.4, add “Modes are not overridable, so a mode can never be
referred to by the name xsl:original."

In 3.5.3.5, before the paragraph "When a package P is used by another package
Q…”, add “Note. This includes the case where the component reference is the
reference from an xsl:apply-templates instruction to a named or unnamed mode. 

In 3.5.4, the second paragraph reads: "The unnamed mode is local to a package:
in effect, each package has its own private unnamed mode, and the unnamed mode
of one package does not interact with the unnamed mode of any other package.”.
Add: “An xsl:apply-templates instruction with no mode attribute is treated as a
reference to the unnamed mode.” Then add an example similar to the example in
the bug 28931 illustrating the implications of this.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 3 August 2015 10:29:56 UTC