xsl-list
[Top] [All Lists]

RE: Catch ALL | Failed template rule

2005-03-21 14:19:56

Interesting.  What does the comma seperation achieve in the select?

"," in XPath 2.0 is a sequence concatenation operator. The construct (A,
B)[1] selects the first item in the sequence formed by concatenating the
sequences A and B: that is, the first A if there is one, or the first B
otherwise.

Michael Kay
http://www.saxonica.com/



On Mon, 21 Mar 2005 16:37:52 -0000, Michael Kay 
<mike(_at_)saxonica(_dot_)com> wrote:
If you're really determined you could do

<xsl:variable name="dummy" as="element()">
 <dummy/>
</xsl:variable>

...

 <xsl:apply-templates select="(ABC/D, $dummy)[1]"/>

<xsl:template match="dummy">
 <something/>
</xsl:template>

Michael Kay
http://www.saxonica.com/

-----Original Message-----
From: Karl Stubsjoen [mailto:kstubs(_at_)gmail(_dot_)com]
Sent: 21 March 2005 16:09
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Catch ALL | Failed template rule

That's what I figured.  I was hoping to avoid such.  It's 
much cleaner
to right a single apply-templates rule.  Uggg.



On Mon, 21 Mar 2005 15:54:06 GMT, David Carlisle
<davidc(_at_)nag(_dot_)co(_dot_)uk> wrote:

How do I setup a template rule for this non-existent match?

You can't: templates are fired by matching nodes, if you
select an empty
node set, then no templates will be invoked.

If you want something to happen if there is not an 
ABC/D child do

<xsl:if test="not(ABC/D)">
something
</xsl:if>



______________________________________________________________
__________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on
a proactive
anti-virus service working around the clock, around the
globe, visit:
http://www.star.net.uk

______________________________________________________________
__________



--~------------------------------------------------------------------
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>
--~--




--~------------------------------------------------------------------
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>
--~--




--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--





--~------------------------------------------------------------------
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>
--~--