温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

通过XSLT转换XML的案例

发布时间:2020-09-22 11:50:18 来源:亿速云 阅读:210 作者:小新 栏目:编程语言

通过XSLT转换XML的案例?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

一 介绍

XSLT是一种用来转换XML文档结构的语言,它是EXtensible Style Language Extensions Transformations的缩写。

XSLT类似与HTML中的CSS,但是比CSS的功能更加强大。

根据W3C规范说明书的说明,最早设计XSLT是帮助将XML文档转换为其他文档。

但是随着应用的深入,XSLT已不仅仅用于将XML转换为HTML或其他文档格式,而是成为一种用来转换XML文档结构的语言。

XSLT的元素和属性提供了处理XML数据的声明,可以使用XSLT词汇来提取其他文档的内容,创建新的元素和属性,并且在更多情况下是这两种方式的有机结合。

XSLT 1.0转换要求两个操作文件(XML源文档和XSLT样式表文件)来生成一个结果文档。

在新的XSLT 2.0标准中,允许将二者合一。

通过XSLT可以将每个元素及其属性与HTML或XHTML进行匹配,从而实现文档内容的正确显示和输出。

一个XSLT样式表是一个遵守XML规则格式的正确有效的XML文档,其扩展名为.xsl。

在XML文档中使用XSLT样式表的语法如下:

<?xml-stylesheet type="text/xsl" href="XSL样式表路径"?>

二 通过XSLT转换XML应用

本实例应用XSLT可扩展样式,将XML文件转换为其他格式的文件后再输出。

本实例通过XSLT转换XML,输出的是经XSLT样式转换后的XML文件中的数据。

首先进行XML声明,指定文档为XML文档。

注意XSLT样式表本身就是一个XML文档,因此它也符合XML文档的规则。

然后声明XSLT样式表,并声明XSLT名称空间的前缀(xsl:stylesheet)。

XSLT名称空间的前缀有两种写法:xsl:stylesheet和xsl:transform。

其意义和作用完全相同,只是前一种更为常用。通过xmlns:xsl属性指定XSLT名称空间。

接着定义模板的规则,这里使用xsl:template元素进行封装。Math属性指定一个模式,用于说明该规则匹配什么样的输入。

最后实现XML文档的转换。

三 代码

1、创建cdcatalog.xsl文件的代码如下:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<body>
<h3>My CD Collection</h3>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td>
<xsl:value-of select="title"/>
</td>
<td>
<xsl:value-of select="artist"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

2、创建cdcatalog.xml代码如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
<cd>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<country>UK</country>
<company>CBS Records</company>
<price>9.90</price>
<year>1988</year>
</cd>
</catalog>

四 运行结果

通过XSLT转换XML的案例

感谢各位的阅读!看完上述内容,你们对通过XSLT转换XML的案例大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI