两个块中的大部分文本都是静态的
如果这是真的,那么正确的 XSLT 方式是内联数据。来自http://www.w3.org/TR/xslt#stylesheet-element
此外,xsl:stylesheet 元素可以包含任何不来自 XSLT 名称空间的元素,前提是该元素的扩展名称具有非空名称空间 URI。此类顶级元素的存在不得改变本文档中定义的 XSLT 元素和函数的行为;例如,不允许这样的顶级元素指定 xsl:apply-templates 使用不同的规则来解决冲突。因此,XSLT 处理器总是可以自由地忽略此类顶级元素,并且如果它无法识别名称空间 URI,则必须忽略顶级元素而不给出错误。这些元素可以提供,例如,
<stylesheet version="1.0" xmlns="http://www.w3.org/1999/XSL/Transform">
<variable name="vRTF">
<STATIC_TEXT xmlns="">
<LABEL>Hello</LABEL>
<REQUEST>Please pay your bill before </REQUEST>
</STATIC_TEXT>
</variable>
<template match="/">
<apply-templates
select="document('')/*/xsl:variable[@name='vRTF']/node()"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/>
</template>
<template match="@*|node()">
<copy>
<apply-templates select="@* | node()"/>
</copy>
</template>
</stylesheet>
输出:
<STATIC_TEXT>
<LABEL>Hello</LABEL>
<REQUEST>Please pay your bill before </REQUEST>
</STATIC_TEXT>
注意:在 XML 1.0 中,您只能重置默认命名空间。