Hip hei!
> I'm trying to detect if either:
> the first child of the current node is not a <para>
> or
> text appears before a first child <para> node
>
> I'm using a <xsl:if
> test="not(child::*[1][self::para])"><LineBreak/></xsl:if>
> test. How do I
> modify this expression to evaluate false if text preceeds a
> <para> child?
The test above actually doesn't test whether the first child of the current
node is not a <para>, but rather if the first child element of the current
node is not a <para>. Use
<xsl:if test="not(child::node()[1][self::para])"><LineBreak/></xsl:if>
And for the second test, assuming the text and <para> element are children
of the current node
<xsl:if test="not(text()[following-sibling::para])"><LineBreak/></xsl:if>
Jarno
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|