Subject: RE: [xsl] Got xml base path in the xslt file From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 16 Sep 2009 08:05:16 +0100 |
This is what the rarely-used second argument of the document() function is for. If you change the call from document($filename) to document($filename, /) then the relative URI is interpreted relative to the base URI of the source document. In XSLT 2.0 you can use resolve-uri() explicitly to construct the absolute URI any way you like. Regards, Michael Kay http://www.saxonica.com/ http://twitter.com/michaelhkay > -----Original Message----- > From: Dongsheng Song [mailto:dongsheng.song@xxxxxxxxx] > Sent: 16 September 2009 03:29 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Got xml base path in the xslt file > > Hi all, > I use a xsl file to merge multiple xml files, the master xml > file like this: > > <doc> > <doc id="Intro" /> > <doc id="Configuration" /> > <doc id="Index" /> > </doc> > > > The xsl file like this: > > <xsl:for-each select="doc/doc"> > <xsl:variable name="fileName"><xsl:value-of select="@id" > /><xsl:text>.xml</xsl:text></xsl:variable> > > <xsl:for-each select="document($fileName)"> > <xsl:copy-of select="doc/div"/> > </xsl:for-each> > </xsl:for-each> > > Because the file path is relative of the xsl file for 'document' > function, I have to put xsl and xml files together. > Can I got the base path of master xml file, so I can store > xsl and xml file separately? > > Regards, > Dongsheng Song
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Got xml base path in the , G. Ken Holman | Thread | Re: [xsl] Got xml base path in the , Andrew Welch |
Re: [xsl] Got xml base path in the , G. Ken Holman | Date | Re: [xsl] Got xml base path in the , Mukul Gandhi |
Month |