xsl:inculde的功能类似C语言中的include,只是一种简单地引用,转换工作仍然按原来的顺序进行。
而xsl:import则试图模仿类继承,转换将从被import的XSLT开始进行,如果多重import,则从最高处的XSLT开始。
比如可以设一个基本的XSLT文件为不同的XML/XSLT对提供基本的框架,然后在不同的XSLT里提供内容细节,有点类似模版页面,或者ASP.NET里的masterpage功能。
比如,基本框架可以是一个被各个页面import的XSLT
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<!--主框架-->
<xsl:template match="/">
<html>
<head><title></title>
</head><body>
.....
<xsl:apply-templates />
.....
</body></html></xsl:template>
注意这里的<xsl:apply-templates />,它指示处理器去寻找合适的template,比如与不同页面相对应的XSLT template,这样就可以输出相应的内容。

没有评论:
发表评论