Hi,
Why not matching the ref element to make the link :
<xsl:template match="item">
<li><xsl:apply-templates/></li>
</xsl:template>
<xsl:template match="ref">
<a href="country.aspx?id={@id}"><xsl:apply-templates/></a>
</xsl:template>
<xsl:template match="ref/b">
<xsl:apply-templates/>
</xsl:template>
Note that I never use <xsl:value-of> here, just <xsl:apply-templates/>
which by default display the text just like <xsl:value-of> when current
node is text.
One of the default XSLT template is :
<xsl:template match="text()">
<xsl:value-of select="."/>
</xsl:template>
So you don't need to write it.
Hope this helps,
Regards,
Matt.
Le 25/05/2011 17:54, Frank Brooks a écrit :
Hi,
I'm new to XSL. Currently I'm using XSLT 1.0 parsing tools.
I'm integrating content from a 3rd party, where part of the XML looks
like this (i've modified the content from the original):
<item>
<ref id="ireland">
<b>Republic of Ireland</b>
</ref>: is a country with a population of 5 million ...
</item>
The resultant HTML that I WANT will look something like this:
<li><a href="country.aspx?id=ireland">Republic of Ireland</a>: is a
country with a population of 5 million ...</li>
However, no matter what I try, the closest I can come up with is this:
<li><a href="country.aspx?id=ireland">Republic of Ireland</a>:
Republic of Ireland is a country with a population of 5 million
...</li>
(notice the double "Republic of Ireland" in there). The question is
how do I prevent the text inside the<ref> tags been repeated, but yet
get the value of the rest of the text outside the<ref> tags ...
These are the templates that I am using and / or have tried:
<xsl:template match="item"><li><xsl:apply-templates select="ref"
mode="include" /><xsl:value-of select="."/></li></xsl:template>
<xsl:template match="*/ref" mode="include">
<a href="country.aspx?id={@id}"><xsl:value-of select="."/></a>
</xsl:template>
<xsl:template match="*/ref" mode="exclude"></xsl:template>
<xsl:template match="*/ref"></xsl:template>
Hope this makes sense and thank you in advance,
Frank
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--
Matthieu Ricaud
IGS-CP
Service Livre numérique
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--