I was wondering if there is a way of getting around the exception that is
thrown by most parsers if the document function is called for a file that
does not exist. I would just like to continue on in the processing. For
example, I would like to do something like the following:
<xsl:variable name="FILE_A" select="document('A.xml')"/>
<xsl:variable name="FILE_B" select="document('B.xml')"/>
<xsl:for-each select="$FILE_A">
<!-- If it exists, do some processing -->
...
</xsl:for-each>
<xsl:for-each select="$FILE_B">
<!-- Same.... -->
</xsl:for-each>
Is the above not working for you? When the document() function cannot find
the document the recovery is to return an empty node-set. Since you are
using the result in the <xsl:for-each>, if the result is empty then nothing
happens. It seems to me what you have above should work just fine.