Subject: Re: [xsl] question about apply-templates / following-sibling From: David Carlisle <davidc@xxxxxxxxx> Date: Thu, 12 Dec 2002 15:52:37 GMT |
I suspect that it's possible to do this with a single Tennison-esqe select expression, but it's simpler to just ignore your dtd expression and rephrase your English descriptin as an xsl:choose <xsl:choose> <!-- If the chapter contains a section or simplesect, the para can be inserted right before it --> <xsl:when test="section|simplesect"> <xsl:copy-of select="(section|simplesect)[1]/preceding-sibling::*"/> <para>new stuff</para> <xsl:copy-of select="(section|simplesect)[1]"/> <xsl:copy-of select="(section|simplesect)[1]/following-sibling::*"/> </xsl:when> <!-- but if not, it has to be the last element of chapter, only followed by index elements if present. --> <xsl:otherwise> <xsl:copy-of select="*[not(self::index)[last()]/preceding-sibling::*"/> <para>new stuff</para> <xsl:copy-of select="*[not(self::index)[last()]"/> <xsl:copy-of select="*[not(self::index)[last()]/following-sibling::*"/> <xsl:otherwise> </xsl:choose> untested... you could use varables or keys to save looking up the insertion points three times on each branch. David _____________________________________________________________________ This message has been checked for all known viruses by Star Internet delivered through the MessageLabs Virus Scanning Service. For further information visit http://www.star.net.uk/stats.asp or alternatively call Star Internet for details on the Virus Scanning Service. XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] question about apply-temp, Marko Petersen | Thread | Re: [xsl] question about apply-temp, Marko Petersen |
Re: [xsl] question about apply-temp, Marko Petersen | Date | [xsl] About validating post xsl, ARGEXT-GALASSI, DANI |
Month |