Subject: Re: [xsl] How to count the distinct values where elements with missing child are counted as one of the distinct values? From: "Mukul Gandhi mukulg@xxxxxxxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Fri, 27 May 2022 05:27:33 -0000 |
Hi Roger, How about below mentioned solution, for your requirements. XML document : provided XML document XSLT stylesheet, <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"> <xsl:output method="text"/> <xsl:template match="/"> <xsl:value-of select="count(distinct-values(test/row/transition)) + (if (some $row in test/row satisfies not($row/transition)) then 1 else 0)"/> </xsl:template> </xsl:stylesheet> On Thu, May 26, 2022 at 7:38 PM Roger L Costello costello@xxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > Hi Folks, > > The following XML document has two row elements with no transition element > and two row elements with a transition element : > > <test> > <row> > </row> > <row> > </row> > <row> > <transition>ABC</transition> > </row> > <row> > <transition>DEF</transition> > </row> > </test> > > I want a count of the number of distinct transition values, where row > elements with no transition element are counted as 1. > > So for the above XML document the count should return 3. > > This XPath seems to work: > > count(distinct-values(/test/row/transition)) + > count(/test/row[not(transition)][1]) > > But I am wondering if there is a better (simpler, less kludgy) XPath > expression? > -- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] How to count the distinct, Dimitre Novatchev dn | Thread | [xsl] Not able to render XML in Chr, Joga Singh Rawat jra |
Re: [xsl] Not able to render XML in, Joga Singh Rawat jra | Date | Re: [xsl] Not able to render XML in, Norm Tovey-Walsh ndw |
Month |