XSLT <xsl:namespace-alias> 元素
定義和用法
<xsl:namespace-alias> 元素用于在輸出中把樣式表中的命名空間替換為不同的命名空間,換句話說,使用其他前綴替換與給定命名空間關(guān)聯(lián)的前綴。
注釋:<xsl:namespace-alias> 是頂層元素(top-level element),且必須是 <xsl:stylesheet> 或 <xsl:transform> 的子元素。
有時,XSLT 文件會生成另一個 XSLT。這為命名空間帶來了問題,因為沒有明確的方式可以聲明同一個命名空間的兩個前綴,而處理器又不會將兩個前綴作為同一個命名空間對待并進行操作。使用 <xsl:namespace-alias> 命令可以將過渡命名空間分配給備用前綴,再應(yīng)用樣式表,然后將備用命名空間映射到 XSLT 命名空間。
雖然 XSL 到 XSL 的文件生成是此命令的主要用途,但并不是唯一用途?梢栽谌魏蚊臻g沖突的地方使用該命令(例如 xsi: 架構(gòu)數(shù)據(jù)類型命名空間)。
語法
<xsl:namespace-alias stylesheet-prefix="prefix|#default" result-prefix="prefix|"#default"/>
屬性
屬性 | 值 | 描述 |
---|---|---|
stylesheet-prefix |
|
必需。規(guī)定您希望更改的命名空間。 |
result-prefix |
|
必需。為輸出規(guī)定期望的命名空間。 |
實例
例子 1
前綴 wxsl 被在輸出中被轉(zhuǎn)換為前綴 xsl:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wxsl="http://chabaoo.cn/w3style.xsl">
<xsl:namespace-alias stylesheet-prefix="wxsl" result-prefix="xsl"/>
<xsl:template match="/">
<wxsl:stylesheet>
<xsl:apply-templates/>
</wxsl:stylesheet>
</xsl:template>
</xsl:stylesheet>