[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] Entityref + docbookxsl: unparsed-entity-uri()does not resolve
Diego Ballve wrote: > Mauritz Jeanson wrote: >>As far as I can tell, entityrefs don't work when you use profiling. The >>filtered result from the first profiling step is stored in a temporary >>node-set. When this result is processed in turn and unparsed-entity-uri() is >>applied, the entity declared in the source document is no longer available. > > Thanks! That was exactly the problem here. > Entityrefs work if I use ../fo/docbook.xsl Peter Mikula, from Digital Artefacts, pointed me a simple solution for getting entityrefs + profiling working. Sharing with the list: Add this to your customization layer: <!-- entityref + profile fix: entity resolver relative to original document replace unparsed-entity-uri() calls w/ template call --> <xsl:param name="da-custom.resolverDocument" select="/"/> <xsl:template name="unparsed-entity-uri"> <xsl:param name="name"/> <xsl:for-each select="$da-custom.resolverDocument"> <xsl:value-of select="unparsed-entity-uri($name)"/> </xsl:for-each> </xsl:template> and overwrite all the templates that call unparsed-entity-uri(), for example 'mediaobject.filename' in common/common.xsl, replacing: <xsl:value-of select="unparsed-entity-uri($data/@entityref)"/> with: <xsl:call-template name="unparsed-entity-uri"> <xsl:with-param name="name" select="$data/@entityref"/> </xsl:call-template> Regards, Diego -- Diego Ballve Digital Artefacts Europe http://www.digital-artefacts.fi/
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]