RE: [xsl] Catch ALL | Failed template rule

Subject: RE: [xsl] Catch ALL | Failed template rule
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Mon, 21 Mar 2005 21:19:56 -0000
> 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@xxxxxxxxxxxx> 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@xxxxxxxxx]
> > > Sent: 21 March 2005 16:09
> > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > > 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@xxxxxxxxx> 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
> > > >
> > > ______________________________________________________________
> > > __________

Current Thread