At 2008-12-26 12:28 +0530, Ganesh Babu N wrote:
Is exclude-result prefixes also applicable to attributes?
That depends. When using exclude-result-prefixes=, an *unused*
prefix is pruned from literal result elements in the stylesheet tree,
but not a prefix that is actually in use. But you aren't using a
literal result element, you are using an instruction to create the
attribute node.
But the
xlink namespace is populated in the blow example even when we have
used exclude-result-prefixes="xlink" in the <stylesheet>
Here is the example:
input:
<cross-ref refid="aff1">
XSL:
<xsl:template match="cross-ref | cross-refs">
<xsl:element name="xref">
<xsl:attribute name="xlink:href">
<xsl:value-of select="@refid"/>
</xsl:attribute>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
output from XSL:
<xref xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="aff1">
required output:
<xref xlink:href="aff1">
That isn't well-formed unless an ancestral node has already declared
the xlink prefix.
How to eliminate namespace prefix in the output?
It cannot be eliminated because the processor determined it was
needed because it was not already in the list of available prefixes.
You cannot ask XSLT to create output that is not well-formed unless
you use a back door like disable-output-escaping. Without using
that, the processor will do everything it can to ensure your output
is well-formed.
I hope this helps.
. . . . . . . . . . . Ken
--
Upcoming XSLT/XSL-FO, UBL and code list hands-on training classes:
: Sydney, AU 2009-01/02; Brussels, BE 2009-03; Prague, CZ 2009-03
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video sample lesson: http://www.youtube.com/watch?v=PrNjJCh7Ppg
Video course overview: http://www.youtube.com/watch?v=VTiodiij6gE
G. Ken Holman mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
Male Cancer Awareness Nov'07 http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers: http://www.CraneSoftwrights.com/legal
--~------------------------------------------------------------------
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>
--~--