Ah...looking over the archives I see that this is a known problem that has been fixed.

From: saxon-help-bounces@lists.sourceforge.net [mailto:saxon-help-bounces@lists.sourceforge.net] On Behalf Of Priscilla Walmsley
Sent: Wednesday, August 08, 2007 3:57 PM
To: 'Michael Kay'; 'Mailing list for SAXON XSLT queries'
Subject: Re: [saxon] Unparsed-text function issue

Hi Michael,
Hmmm, you're right that it seems to be a Xalan error message, and it does seem to have something to do with the classpath. But literally all I have to do to make this break is overwrite the saxon8.jar file in the same directory. When I copy the old saxon8.jar over again, it starts working again. (I've tried just overwriting the one jar, and also replacing all the jars with the new ones.)
I'm calling it from Ant, using:
    <target name="assemble_coll">
      <xslt processor="trax"  in="${library}.xml"
            style="${xsllib}/assemble_collection.xsl" force="true">
        <outputproperty name="indent" value="yes"/>
I see you have some new Ant integration so I will try to make it work using that...

From: Michael Kay [mailto:mike@saxonica.com]
Sent: Wednesday, August 08, 2007 1:36 PM
To: pwalmsley-lists@datypic.com; 'Mailing list for SAXON XSLT queries'
Subject: RE: [saxon] Unparsed-text function issue

This doesn't look like a Saxon error message. I think you've upset something in your classpath and this is causing an XSLT 1.0 processor to be loaded.
Michael Kay

From: saxon-help-bounces@lists.sourceforge.net [mailto:saxon-help-bounces@lists.sourceforge.net] On Behalf Of Priscilla Walmsley
Sent: 08 August 2007 17:28
To: saxon-help@lists.sourceforge.net
Subject: [saxon] Unparsed-text function issue

I recently upgraded from Saxon-B 8.8 to 8.9 and I'm having issues with the unparsed-text function.

My stylesheet looks like this:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:output method="xml"/>
<xsl:template match="dxmlf:library">
    <xsl:variable name="propFile" select="unparsed-text('../build.properties')"/>
       <xsl:for-each select="tokenize($propFile,'\r\n')[not(starts-with(.,'#'))][normalize-space(.) != '']">
         <xsl:element name="dxmlf:{substring-before(.,'=')}">
           <xsl:value-of select="substring-after(.,'=')"/>
    <xsl:copy-of select="node()"/>

And the error I'm getting is:

[xslt] : Error! Error checking type of the expression 'funcall(unparsed-text, [literal-expr(../build.properties)])'.
[xslt] : Fatal Error! Could not compile stylesheet

It works fine in 8.8.  Any ideas?  I've tried various URL formats and experimented with the "as" attribute but no luck.