Subject: RE: [xsl] optional children From: "Andrew Welch" <awelch@xxxxxxxxxxxxxxx> Date: Mon, 21 Oct 2002 13:22:30 +0100 |
Oleg: <xsl:template match="a[count(b|c|d) = count(*)]"> <foo/> </xsl:template> ahhh very nice, I had been trying to come up with a count() based solution and failing - this looks like the one though. Jeni: <xsl:if test="b and not(*[not(self::c or self::d)])"> <foo /> </xsl:if> Ok so here you are using not() within a not() to exclude nodes from the list of excluded nodes... this doesnt work for me but I get the logic behind it. Does it fail because not(*[...]) will evaluate to false before it even gets to the predicates (because <b> must exist already)?? Or will the first predicate always be evaluated if there is one? cheers andrew > -----Original Message----- > From: Oleg Tkachenko [mailto:olegt@xxxxxxxxxxxxx] > Sent: 21 October 2002 12:47 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re: [xsl] optional children > > > Andrew Welch wrote: > > > I want to output if and only if element has child *, with > > optional children and . > > * > > What about > <xsl:template match="a[count(b|c|d) = count(*)]"> > <foo/> > </xsl:template> > > -- > Oleg Tkachenko > eXperanto team > Multiconn Technologies, Israel > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > > > --- > Incoming mail is certified Virus Free. > Checked by AVG anti-virus system (http://www.grisoft.com). > Version: 6.0.404 / Virus Database: 228 - Release Date: 15/10/2002 > > --- Outgoing mail is certified Virus Free. Checked by AVG anti-virus system (http://www.grisoft.com). Version: 6.0.404 / Virus Database: 228 - Release Date: 15/10/2002 XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] optional children, Jeni Tennison | Thread | Re: [xsl] optional children, Jeni Tennison |
Re: [xsl] Process same template 2X?, Geoff Hankerson | Date | Re: [xsl] optional children, Jeni Tennison |
Month |