I'm learning how to represent non-English data in XML and ran into an article titled "Well-structured XML Goes Cosmopolitan" written by Ilari Aarnio and hosted by DevX.com. Buried in the article was an interesting technique that showed how to read XML documents from within XSLT:
<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
<xsl:param name="currLang">en</xsl:param>
<xsl:output method="xml" encoding="UTF-8" indent="yes" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"/>
<xsl:template match="/">
<xsl:variable name="cvData">
<xsl:text>cv-</xsl:text>
<xsl:value-of select="$currLang"/>
<xsl:text>.xml</xsl:text>
</xsl:variable>
<xsl:apply-templates select="document($cvData)"/>
</xsl:template>
<!-- add normal XSLT processing (ie, more template tags) here -->
</xsl:stylesheet>

