欢迎光临
我们一直在努力

XSLT介绍-.NET教程,XML应用

建站超值云服务器,限时71元/月

xslt是由xsl(extensible stylesheet language)发展而来的,xslt是一种基于xml的语言,用于将一类(class)xml文档转换成另一种xml文档。

为什么要转换?

转换的目的有多种: (1)显示:比如把dataset的xml转换成html(html可以认为是xml的特例,因为tag集完全确定)或wml

(2)b2b中的edi,比如<vendor>全部变成<supplier>,甚至数据也可以以特定的方式改变

(3)编程方面可能存在的特殊要求

xslt与xml的关系类似html与css的关系

在css文件中,定义有一些专门的格式,大意是每逢某个tag,就将其括起来的内容以某种字体或颜色来显示。xslt有类似的功效,比如每逢一个特定的tag就将其内容显示在表格单元中。但是xslt还有另外一个更强的功能:转换数据(为特定的用户或者设备),其结果是:源文档中的数据,可能与结果文档中的不同,比如一些数据不要了,却出现另一些数据(如汇总数据或者wml中的特殊设置,或者字符数据发生变化)。

html引用css往往是在文件中静态联接css,如下例: ======test.html

<html>

<head>

<link type="text/css" href="stylesheet1.css" rel="stylesheet" />

</head>

<body>

<h1>header 1</h1>

this is a test

</body>

</html>

==========stylesheet1.css

h1

{

color: red; font-style: italic; font-family: arial; font-variant: normal

}

与此类似,xml文件中也可以指定适用的xslt文件。但是真正有用的是动态apply不同的xslt文件,比如:<%@ language = jscript %>

<%

// set the source and style sheet locations here

var sourcefile = server.mappath("simple.xml");

var stylefile = server.mappath("simple.xsl");

// load the xml

var source = server.createobject("msxml2.domdocument");

source.async = false;

source.load(sourcefile);

// load the xslt

var style = server.createobject("msxml2.domdocument");

style.async = false;

style.load(stylefile);

response.write(source.transformnode(style));

%>

两种转换模式:模板驱动与数据驱动

template-driven model:类似邮件合并,根据xslt的要求寻找源文档中的数据,找到后插入到预定的位置,最后形成一个符合模板要求的文档。

data-driven model:根据源文档的结构,在xslt中寻找匹配的模板片断,最终的格式类似源文档,而不是xslt中的整体模板样式。同一个xslt中可以包括两种模式。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » XSLT介绍-.NET教程,XML应用
分享到: 更多 (0)

相关推荐

  • 暂无文章