[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Replacing values
Hi,
I am a relative beginner, so forgive what is probably a very easy question but.... I am trying to write a stylesheet that will replace language descriptions with their iso 639 code. I have a doc containing the language codes of the form: <languages> <language> <name>English</name> <iso-code>en</iso-code> </language> ... ... </languages> the source document contains <language> tags with text that matches the name tag in the language document. Here is my attempt: <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:param name="languagesDocFilename"/> <xsl:variable name="languagesDoc" select="document($languagesDocFilename)" /> <xsl:template match="language"> <language> <xsl:value-of select="$languagesDoc/languages/language[current()=name]"/> </language> </xsl:template> <xsl:template match="@*|node()"> <xsl:copy> <xsl:apply-templates select="@*|node()"/> </xsl:copy> </xsl:template> </xsl:stylesheet> This almost works, but the output contains language tags like this: ... <language> de German </language> when what I want is : <language> de </language> I guess this is because the template that matches on everything is copying the German text, but havent been able to find a way to get it to output only the iso code. David Sinclair.
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|