This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Output conditional on preceding nodes.


Nick,

At 11:51 AM 12/7/01, you wrote:
>I have been given help by this list in choosing the third paragraph
>following a header with text 'foo'.  What I'm doing is something like
>
><xsl:template match="h1[. = 'foo']">
>         <xsl:if test="./following::p[3]">
>                 <xsl:copy-of select="./following::p[3]"/>
>         </xsl:if>
></xsl:template>

Just

<xsl:template match="h1[. = 'foo']">
   <xsl:copy-of select="following::p[3]"/>
</xsl:template>

has the same effect, since the node won't be copied if it doesn't exist. :-)

>BUT!  I need an exclude version of this.  i.e. If I want everything EXCEPT
>the third paragraph, how do I do this?

select="following::p(not(position()=3))"

>(Why do I feel like I'm using this technology in ways it wasn't meant to be
>used?)

Dunno. It was meant to be used like this! (although one could quibble about 
an XML design in which the position of nodes among their siblings is this 
important ... first and last are often special, but third? :-)

Cheers,
Wendell


======================================================================
Wendell Piez                            mailto:wapiez@mulberrytech.com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
   Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]