Re: [xsl] Testing if first child is text or an element?

Subject: Re: [xsl] Testing if first child is text or an element?
From: "David Carlisle d.p.carlisle@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 15 Apr 2024 22:12:53 -0000
On Mon, 15 Apr 2024 at 20:29, dvint@xxxxxxxxx <
xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote:

>
>                                                 <xsl:when
> test="local-name()='info'">
>                                                         <xsl:choose>
>                                                                 <xsl:when
> test="child::*[1] instance of element()">
>

that is the same as test="*[1]"  as child:: is implied, and * only selects
elements


>                                                                 <xsl:when
> test="child::*[1] instance of text()">
>

that's always false.


You want node() not *  but also want to test normalize-space so

<xsl:when test="node()[1]/self::text[nomalize-space(.)]">
   non-space text node

<xsl:otherwise>
    something else


David

Current Thread