What I am trying to do is to transform Global Weather GetCitiesByCountry Web Service XML to CSV.
I have XML:
<string xmlns="http://www.webserviceX.NET">
<NewDataSet>
<Table>
<Country>Canada</Country>
<City>Quaqtaq Airport</City>
</Table>
<Table>
<Country>Canada</Country>
<City>Hudson Bay, Sask.</City>
</Table>
and so on, and XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" version="1.0" encoding="UTF-8" indent="no"/>
<xsl:template match="/">
<xsl:for-each select="string/NewDataSet/Table">
<xsl:value-of select="Country"/>
<xsl:text>;</xsl:text>
<xsl:value-of select="City"/>
<xsl:text> </xsl:text>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
but can't manage to make form like this:
Canada;Quaqtaq Airport
Canada;Hudson Bay, Sask.
This XSL makes only XML header, no more data.
EDIT:
So the answer is the coding of the file. The codepage was moving between UTF-8 and UTF-16. I had simply to change string "UTF-16" to "UTF-8" in XML or change the codepage of the file.
I've used the same XSL.