xsl-list
[Top] [All Lists]

Re: [xsl] Analyze-string Regex to Match Content within Curly Braces

2020-11-17 08:10:31
On Tue, 17 Nov 2020 at 13:57, Michael Kay mike(_at_)saxonica(_dot_)com <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:

A suggestion that I've thought about from time to time:

If an attribute in XSLT expects an expression or an AVT, then a leading
undoubled "}" in the attribute value indicates that is to be treated as a
plain string.

So for an expression

<xsl:param name="x" select="}O'Reilly"/>

indicates that the default value is the string "O'Reilly"

and in an AVT

regex="}[a-z]{4}"

indicates that the regex is [a-z]{4}

This relies on the fact that neither an AVT nor an expression can legally
begin with an undoubled "}", nor is it ever likely to. And you can think of
"}" as meaning "exit expression mode, here is plain text".

Nice idea, or just too quirky?


The latter?

I think it's a bit hard to read and likely to confuse syntax highlighters
and editor bracket matching (fixable in theory but..)

however your earlier comment

(making sure you have expand-text="no")

made me think, couldn't the analyze-string  (and other elements) have an
interpret-attributes-as-avt="no" attribute (perhaps not that name) which
removed the AVT processing?

David



Michael Kay
Saxonica
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/2739265> (by
email <>)

--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
<Prev in Thread] Current Thread [Next in Thread>