Name
<xsl:namespace-alias>
Allows you to define an alias for a namespace when using the namespace directly would complicate processing. This seldom-used element is the simplest way to write a stylesheet that generates another stylesheet.
Category
Top-level element.
Required Attributes
result-prefixDefines the prefix for the namespace referred to by the alias. This prefix must be declared in the stylesheet, regardless of whether any elements in the stylesheet use it.
stylesheet-prefixDefines the prefix used in the stylesheet to refer to the namespace.
[2.0] In XSLT 2.0, you can use the value
#default for either the result-prefix or stylesheet-prefix attributes. As you would
expect, it is an error if there is no default namespace. (A default
namespace is defined with xmlns=.)
Optional Attributes
None.
Content
None. <xsl:namespace-alias> is an empty
element.
Appears in
<xsl:namespace-alias>
is a top-level element and can appear only as a child of <xsl:stylesheet>.
Defined in
[1.0] XSLT section 7.1.1, “Literal Result Elements.”
[2.0] XSLT section 11.1.4, “Namespace Aliasing.”
Example
As we mentioned before, this element is normally used to create
an XSLT stylesheet that generates another stylesheet. Use <xsl:namespace-alias> when you want
the output to contain an element or attribute that would normally be
handled by the XSLT processor.
Our sample here creates a stylesheet that generates another
stylesheet that copies any input document to the output. Here’s our
original stylesheet that uses <xsl:namespace-alias> ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access