[Bug 29981] required="no" on additional tunnel parameters of overriding template

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

--- Comment #4 from Michael Kay <mike@saxonica.com> ---
I have modified the paragraph cited by Abel in comment #1 to make it clear that
the error applies only where a parameter is explicitly or implicitly mandatory.

The original observation from Max pointing out that the "compatibility" rules
for template overriding should be relaxed remains for WG attention. My
recommendation is that in 3.5.3.3, in the section dealing with named templates,
we should change the rule:

Two named templates with the same name are compatible if and only if they
satisfy all the following rules:...

(2) For every parameter on the overridden template, there is a parameter on the
overriding template that has the same name, an identical required type, and the
same effective values for the tunnel and required attributes.

to read:

(2) For every non-tunnel parameter on the overridden template, there is a
non-tunnel parameter on the overriding template that has the same name, an
identical required type, and the same effective values for the required
attribute.

plus a Note:

Note: tunnel parameters can vary between the overriding template and the
overridden template; in particular (a) the overriding template can omit the
declaration of a tunnel parameter whose value is not needed, and (b) the
overriding template can add tunnel parameters that were not present in the
original if these are needed to parameterize the behavior of the overriding
template.

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

Received on Friday, 11 November 2016 10:01:38 UTC