[Bug 5680] fix errors in schematron variable substitution support text & example

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5680





------- Comment #1 from johnarwe@us.ibm.com  2008-05-08 14:12 -------
sigh: baby, bath water

[proposal 1] One of the two major *points* of the section was to show
xsl:variable for the reasons explained in the text (which asserts that sch:let
is NOT equivalent in some interesting scenarios).

[proposal 2] ditto

Therefore I think neither proposal is appropriate, unless the basic premise
that sch:let implicitly refers to a document-structure-specific evaluation
context is being challenged.

[proposal 3] I think we should fix problems (b) and (c) throughout appendix F;
doing so retains the intent and fixes the syntax, which is a good thing.

from: <sch:value-of select="string(u:ID)"/>
to  : <sch:value-of select="string(smlfn:deref(.)/u:ID)"/>
...many occurrences in App F

In this sense, I'm taking on faith the bug's assertion that the context= on
sch:rule does not govern the sch:value-of... I'm not a Schematron whiz. 
Certainly, having just re-read the Schematron spec, I agree there is a conflict
there (deref in one place, not in the other), but I cannot tell for sure which
is correct with confidence.  On the surface, "without deref()" sure looks
right.

[Schematron excerpt] 5.4.14 value-of element
Finds or calculates values from the instance document to allow clearer
assertions and diagnostics. The required
select attribute is an expression evaluated in the current context that returns
a string.

Received on Thursday, 8 May 2008 14:13:16 UTC