xsl-list
[Top] [All Lists]

Re: [xsl] Can't get expath-file functions to work in Saxon 9.5 PE

2014-02-24 03:12:39

The ZIP module is not supported in 9.5.1.4.

We shipped a version in earlier releases of the 9.5 series, but we found it was 
very buggy, and when we started writing tests we found the spec wasn't really 
stable enough to write tests against. So we decided to pull it. We're working 
with others on getting a stable specification that can be properly implemented.

(I don't understand the problems with namespace prefix reported earlier on this 
thread; if someone wants to report an issue to Saxonica then I'm happy to 
investigate it, but we don't regard a message on this list as something to put 
on our TODO list unless we happen to know the answer.)

Michael Kay
Saxonica

On 24 Feb 2014, at 00:58, Martin Holmes <mholmes(_at_)uvic(_dot_)ca> wrote:

That does work for expath file functions, but I can't get the zip functions 
to work. I wonder if anyone can suggest what I'm doing wrong here. You have 
to pass a <zip:file> element to the expath-zip:zip:file() function, and the 
simplest way I can see to do that is to create the zip:file element inside a 
variable and then pass the variable to the function:

<xsl:variable name="zipFile">
     <zip:file href="{$outputFilePath}">
       <zip:dir name="META-INF">
         <zip:entry name="manifest.xml" src="{concat($tempDir, 
'/META-INF/manifest.xml')}" method="xml"/>
       </zip:dir>
     </zip:file>
     </xsl:variable>

     <xsl:sequence select="zip:zip-file($zipFile/zip:file)"/>

I've also tried with

     <xsl:sequence select="zip:zip-file($zipFile)"/>

I've tried using both "zip" and "expath-zip" as the namespace prefix; in all 
cases I get this error:

Cannot find a matching 1-argument function named 
{http://expath.org/ns/zip}zip-file().

I know this isn't yet intended to be stable, but I would have thought the 
function would be accessible even if it fails somehow.

cheers,
Martin

On 14-02-23 01:48 PM, Graydon wrote:
On Sun, Feb 23, 2014 at 01:37:00PM -0800, Martin Holmes scripsit:
Hi there,

I'm using Saxon 9.5.1.3 PE in Oxygen 15.2 with XSLT 2.0. I'm trying
to use the expath-file functions, which the documentation says are
available. This is a simple version of what I'm trying:


 ...xmlns:expath-file="http://expath.org/ns/file";...
[snip]

xmlns:file="http://expath.org/ns/file";

is currently not giving me that error.

Disturbingly, file:exists() is returning true about a file that isn't
showing up in a directory that isn't there on the file system, so I've
clearly got a ways to go with this, but I think that's the correct
namespace so far as Oxygen is concerned.  (Though I am using XSLT 3.0).

-- Graydon

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--