[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: How to count the distinct values where elements wi
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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|