I've searched the net high and low, but Google has thus far failed
me. I have an element that looks like this:
<dt><b>Asana</b></dt>
<dd><p>—A position or stance in yoga.</p></dd>
I want to remove '—' from the dd/p, but I can't seem to figure
out how to go about doing this. Now, — shows up elsewhere (ie.
in non dd p tags) and I want those to remain intact and be translated
into dashes, but not in this case.
If I understand your question correctly, this is a variation of the
identity transformation:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="dd/p/text()">
<xsl:value-of select="translate(., '—', '-')"/>
</xsl:template>
</xsl:stylesheet>
This stylesheet just copies the source tree, but replaces the Em Dash
character in text nodes that have a parent element "p" and a grandparent
element "dd" with a hyphen.
Hope that helps...
Dave
--~------------------------------------------------------------------
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>
--~--