<xsl:include> 元素
包含另一个 XSLT 文件。
<xsl:include
href = "uri-reference"/>
特性
- href
必选。标识要包含的 XSLT 文件的统一资源标识符 (URI) 引用。
元素信息
出现次数 |
无限制 |
父元素 |
|
子元素 |
(无子元素) |
注释
XSLT 文件可以使用 <xsl:include> 元素包含另一个 XSLT 文件。href 属性值为标识要包含的文件的 URI 引用。相对 URI 相对于 <xsl:include> 元素的基本 URI 进行解析。
<xsl:include> 元素只允许作为 <xsl:stylesheet> 元素的子元素。
在 Microsoft® XML 核心服务 (MSXML) 中处理包含时,就好像在树级别进行。注意,这与 XML 树的文档对象模型 (DOM) 视图不同。通过 href 属性值定位的资源作为 XML 文档进行分析,该文档中的 <xsl:stylesheet> 元素的子元素替换包含文档中的 <xsl:include> 元素。与 <xsl:import> 不同,包含的模板规则与包含样式表中的模板规则具有相同的优先级。因此,在包含样式表和包含的样式表均包含一个元素的模板规则时,模板将根据文档顺序调用。如果包含样式表中的模板在包含的模板之后,将调用前者。否则,将调用后者。
如果 XSLT 文件直接或间接包含自身,将出错。
如果多次包含某个 XSLT 文件,可能会因为重复的定义造成错误。这种多次包含如果是间接的,就不太明显。例如 A、B、C 和 D 全部是 XSLT 文件。文件 B、C 和 D 包含其他 XSLT 文件,如下所示:
B 包含 A。
C 包含 A。
D 包含 B 和 C。
XSLT 文件 D 将两次间接包含 XSLT 文件 A。要避免此错误,可以将 B 中的所有内容(除了包含的 A 之外)分成独立的 XSLT 文件 B1,并将 B 更改为包含 B1 和 A。然后对 C 使用同样的方法,最后将 D 更改为包含 A、B1、C1。
示例
以下主题提供 <xsl:include> 的示例。