[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Look ahead in xslt


Subject: Re: [xsl] Look ahead in xslt
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 21 Jan 2005 11:13:40 GMT

> I would like to check if the tag following university is 'college' or

XSLT has no access to the tags,  so it makes no sense to talk of
something following the university start tag. What you want is the first
element child which is *[1]. 



if(following tag == "college")
    print college name here
else
    do nothing


Could be written as

<xsl:if test="*[1][self::college]">
  <xsl:value-of slelect="college/name"/>
</xsl:if>

But really the test isn't needed you can just do

<xsl:value-of select="*[1][self::college]/name"/>

as that generates the string value of the name  child of the first child
of the current node if that is a college element, and the empty string
otherwise.

If you know that your input meeds a certain structure and college will
always be in that position if it is there at all you can simplify
further  and just do

<xsl:value-of select="college/name"/>

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________


Current Thread
Keywords