The function unparsed-entity-uri() is defined to return the absolute
URI of the entity, not the relative URI as written in the source
document. If you want to reconstruct a relative URI, you'll have to do
some (non-trivial) manipulation of what's returned.
Michael Kay
Saxonica
On 04/10/2010 10:40 AM, JS rawat wrote:
Hi Team,
Can we get the appropriate path as describe in input by
unparsed-entity-uri().
XSLT
<xsl:template match="graphic">
<graphic>
<xsl:copy-of select="@id"/>
<xsl:if test="@fileref">
<xsl:attribute name="src"><xsl:value-of
select="@fileref"/></xsl:attribute>
</xsl:if>
<xsl:if test="not(@fileref)">
<xsl:call-template name="entifyref">
<xsl:with-param name="figname"
select="unparsed-entity-uri(@entityref)"/>
</xsl:call-template>
</xsl:if>
</graphic>
</xsl:template>
<xsl:template name="entifyref">
<xsl:param name="figname"/>
<xsl:attribute name="src"><xsl:value-of select="$figname"/></xsl:attribute>
</xsl:template>
input
<!DOCTYPE article abd.dtd"[
<!ENTITY F0001 SYSTEM ".\Fig\F0001.gif" NDATA GIF> ]>
<article>
<para><graphic entityref="F0001"/></para>
</article>
output
<book>
<p><graphic src="file:/d:/Jobs/xsl/abc/xslt/Fig/F0001.gif"/></p>
</book>
required output
<book>
<p><graphic src="./Fig/F0001.gif"/></p>
</book>
--~------------------------------------------------------------------
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>
--~--
--~------------------------------------------------------------------
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>
--~--