This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
Re: Windows pathnames in <xsl:import> statements?
- From: Bob Stayton <bobs at caldera dot com>
- To: Dan York <dyork at e-smith dot com>, docbook-apps at lists dot oasis-open dot org
- Date: Fri, 04 Jan 2002 09:55:13 -0800
- Subject: Re: DOCBOOK-APPS: Windows pathnames in <xsl:import> statements?
- References: <20020104115551.A13836@e-smith.com>
On Fri, Jan 04, 2002 at 11:55:52AM -0500, Dan York wrote:
> Folks,
>
> I am actually moving out of documentation for our product, and have
> been transitioning all of our DocBook XML files over to someone inside
> of Mitel's Customer Documentation group. The problem I have run into
> is that all my customization layers are written for my Linux environment.
> She (and the rest of Customer Docs) runs Windows.
>
> My customization layer in Linux looks like (details snipped):
>
> <?xml version="1.0"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
>
> <xsl:import href="/usr/share/sgml/docbook/docbook-xsl-1.45/html/docbook.xsl"/>
>
> <xsl:import href="e-smith-html-common.xsl"/>
>
> </xsl:stylesheet>
>
> (What happens is that I have two different stylesheets for when I am
> generating a single HTML page (this one) or chunking the file. Both of these
> layers first import Norm's stylesheet, and then my own 'e-smith-html-common'
> which has the changes that I make regardless of whether it is chunked or not.)
>
> In changing it for Windows, I made it:
>
> <?xml version="1.0"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="1.0">
>
> <xsl:import href="c:\docbook\docbook-xsl-1.45\html\docbook.xsl"/>
>
> <xsl:import href="e-smith-html-common.xsl"/>
>
> </xsl:stylesheet>
>
> But when I run this through the Windows version of DV's 'xsltproc',
> I get two errors of the same format:
>
> compilation error: file c:\docbook\nssg-xslt\e-smith-html.xsl line 10
> element import
> xsl:import : invalid URI reference c:\docbook\docbook-xsl-1.45\html\docbook.xsl
>
> It goes on to complain about not being able to load the external entity
> 'e-smith-html-common.xsl'.
>
> So my basic question is... how the heck do I craft a valid URI file reference
> on a Windows file system?
Windows pathnames don't make valid URIs, as you found.
URIs don't permit backslashes, and "c" is not a valid
URI protocol.
Windows xsltproc understands forward slashes in URIs. It
even understands them on the DOS command line. Just
pretend it is still running on Linux. 8^)
Bob Stayton 400 Encinal Street
Publications Architect Santa Cruz, CA 95060
Technical Publications voice: (831) 427-7796
Caldera International, Inc. fax: (831) 429-1887
email: bobs@caldera.com