xsl-list
[Top] [All Lists]

RE: [xsl] Where is my document? local source path discovery (was XSLT 2 Functions for URL Manipulation (was Rewriting href))

2008-07-03 02:24:26
Thanks Eliot. I'll give that a try now. I have been passing the path into
Saxon  as a parameter:

java net.sf.saxon.Transform -s:""${input-file}""
-xsl:""C:/DITAwork/driver/xsl/FixURLv2.xsl"" opt_i=""${input-file}""
opt_o=""${output-file}""

but the source application passes a path that is corrupted by MS-DOS
'contractions', as in C:\PROGRA~1\..., so document-uri() is a much better
solution.

Thanks again,
Richard

-----Original Message-----
From: Eliot Kimber  
Sent: 29 June 2008 18:01
To: xsl-list
Subject: Re: [xsl] Where is my document? local source path discovery (was
XSLT 2 Functions for URL Manipulation (was Rewriting href))

On 6/28/08 3:21 PM, "Marroc" <marrocdanderfluff(_at_)yahoo(_dot_)co(_dot_)in> 
wrote:

Wow Eliot - that is really useful, thanks. It took me a few minutes to 
read and understand but now I have, it has certainly saved me a great 
deal of time. Thanks very much.

The missing piece of the puzzle then is to discover the local source 
path from within the source document while it is being processed. Once 
I have that, I'm home and dry! Does anyone have further ideas?

In XSLT 2 you can use document-uri() to get the URI of the current document,
so:

<xsl:template match="/">
  <xsl:variable name="inputUrl" select="document-uri(.)" as="xs:string"/
</xsl:template>

In situations where the use of xml:base may have changed the base URI to
which a given relative path should resolve, you can use base-uri() rather
than document-uri(). For example, resolving references specified in incoming
attributes.

Cheers,

Eliot



--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>
  • RE: [xsl] Where is my document? local source path discovery (was XSLT 2 Functions for URL Manipulation (was Rewriting href)), Marroc <=