Самое короткое решение :
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select="document('f1.xml')"/>
</xsl:template>
</xsl:stylesheet>
Более гибкое решение, но более простое (без режимов) и более стандартное :
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/">
<xsl:apply-templates select=
"document('f1.xml')/node()"/>
</xsl:template>
</xsl:stylesheet>
Объяснение : Соответствующее применение правила идентификации к дочерним узлам документа document('f1.xml')