[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Got xml base path in the xslt file
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: 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
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|