Hi,
Glossing David again,
If you have
<xsl:variable name="alpha" select="A | B | C | D"/>
Keep in mind this will bind $alpha only to the A,B,C and D children of
the context (the root if the variable declaration is global).
You can bind to all the A|B|C|D in the document with
<xsl:variable name="alpha" select="//A | //B | //C | //D"/>
On 2/10/2012 6:42 AM, David Carlisle wrote:
<xsl:template match="* except $alpha"/>
no that would be a legal xpath but not a pattern
or
<xsl:template match="*[not $alpha]"/>
no, that's a syntax error so wouldn't run at all
<xsl:template match="*[exists(. except $alpha)]">
will work with the declaration of $alpha given above.
Of course this will tend to be much less efficient than what David suggests:
easiest is
<xsl:template match="*"> the complement
<xsl:template match="A|B|C|D" priority="2"> this one
I've had times when I wanted to parameterize match patterns though.
Cheers,
Wendell
--
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--