xsl-list
[Top] [All Lists]

RE: [XSLT 2] base-uri of input's dir

2003-06-15 13:17:32
Could you start by stating the problem, not stating a solution that
appears to work?

I'm confused by your references to base URI and "base dir", I don't know
what you're actually trying to do.

I can't see why you have to fiddle about with the base URI of the
current document before using it as an argument to resolve-uri().

Michael Kay


-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
Tobias Reif
Sent: 14 June 2003 18:01
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] [XSLT 2] base-uri of input's dir


Hi :)

The following works, but I suspect there is a much simpler way.

<xsl:template match="textdata[(_at_)fileref]">
   <xsl:variable name="dir_abs"
     select="replace(base-uri(/),'[^\/]+$','')"/>
   <!--
   AFAICS, basically resolve-uri()
   concatenates if @fileref is relative, and
   leaves unchanged if it's absolute
   -->
   <xsl:variable name="file_abs"
     select="resolve-uri(@fileref,$dir_abs)"/>
   <xsl:copy-of select="unparsed-text($file_abs,'utf-8')"/>
</xsl:template>

<xsl:template match="textobject[textdata[(_at_)fileref]]">
   <xsl:apply-templates/>
</xsl:template>

How could I get the base dir of the input ($dir_abs), 
directly, without 
doing replace()?

Tobi

-- 
http://www.pinkjuice.com/



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>