- From: Martin Honnen <martin.honnen@gmx.de>
- Date: Mon, 2 Nov 2020 19:56:13 +0100
- To: xproc-dev@w3.org
On 02.11.2020 18:41, David Birnbaum wrote: > For future reference, though, I'd be grateful for the opportunity to > confirm the source of my misunderstanding of how to use <p:filter> — not > only my failure to use a wrapper (I understand why that's important), > but why it requires curly braces inside single quotation marks inside > the double quotation marks around the value of the @select attribute. By > way of attempting my own explanation: The spec at > https://spec.xproc.org/master/head/steps/#c.filter says that @select on > <p:filter> is a string, and that "the select expression is computed > dynamically." Meanwhile, the other spec at > https://spec.xproc.org/master/head/xproc/#p.with-input says that @select > on <p:with-input> is an XPath expression. I think my mistake was > assuming (instead of checking the spec carefully) that the value > of @select would always and everywhere be an XPath expression, as (I > think) it is inside XSLT wherever it is part of the signature of an > element in the XSLT namespace. If it is a string, though, I need to > dereference the string value of $current-paradigm, put it in quotes, and > use that as one of the comparands inside the predicate, and the literal > single quotes become the quotes around the string value and the curly > braces inside them serve the usual AVT function of interpreting the > XPath expression in place. I will leave the explanation to the XProc guys but as for your description and the difficulties to understand the difference, I think, if you don't already have it, consider to get Erik Siegel's book on XProc 3 (XProc 3.0 Programmer Reference), he has a section explaining when XPath expressions are evaluated by the pipeline and when they are evaluated by the step itself. In general I think his book is very helpful to serve as an introduction to a user of XProc 3, better than the specs which by their nature are too formal and more geared towards implementors.
Received on Monday, 2 November 2020 18:56:29 UTC