Subject: Re: [xsl] Can't get expath-file functions to work in Saxon 9.5 PE From: Michael Kay <mike@xxxxxxxxxxxx> Date: Mon, 24 Feb 2014 09:12:19 +0000 |
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@xxxxxxx> 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
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: Can't get expath-file fun, Martin Holmes | Thread | [xsl] Re: Can't get expath-file fun, Martin Holmes |
[xsl] Re: Can't get expath-file fun, Martin Holmes | Date | Re: [xsl] Re: Can't get expath-file, John Lumley |
Month |