O'Reilly logo

XSLT, 2nd Edition by Doug Tidwell

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

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-prefix

Defines 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-prefix

Defines 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> ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required