[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: Making extension functions available

Subject: RE: Making extension functions available
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 14 Sep 2005 08:56:31 +0100
jay kay making machine
This is really a Saxon-specific question, not a general XSLT question.

In the namespace used to identify Saxon extension functions, anything before
the final "/" is ignored. When you use the namespace "../xsl_extensions",
Saxon looks for a class called xsl_extensions on the classpath. When the
stylesheet is run on another machine, all you have to do is to ensure that
this class is on the classpath.

Saxon does in fact provide a mechanism, <saxon:script> that allows you to
specify the location of a JAR file containing the class you want to load: in
this case it doesn't have to be on the classpath, and can in fact be
anywhere on the net. As far as I know this mechanism is rarely used.

Michael Kay
http://www.saxonica.com/ 


> -----Original Message-----
> From: Jay Bryant [mailto:jay@xxxxxxxxxxxx] 
> Sent: 13 September 2005 23:15
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  Making extension functions available
> 
> Hi, gang,
> 
> I had to write an extension function (in Java for Saxon 8b), 
> and it works
> fine. I was just calling it locally, thus:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet
>   version="1.0"
>   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>   xmlns:ext="../xsl_extensions"
> >
> 
>   <xsl:template match="/">
>     <xsl:value-of select="ext:GetDir('dirname')"/>|
>   </xsl:template>
> 
> </xsl:stylesheet>
> 
> Now a client's customer needs to call it from another location, so a
> relative path to another directory on my drive won't work.
> 
> How can I set things up such that the following will work?
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet
>   version="1.0"
>   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>   xmlns:ext="http://www.bryantcs.com/xsl/extensions"
> >
> 
>   <xsl:template match="/">
>     <xsl:value-of select="ext:GetDir('dirname')"/>|
>   </xsl:template>
> 
> </xsl:stylesheet>
> 
> Thanks in advance.
> 
> Jay Bryant
> Bryant Communication Services

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.