XSLT语法介绍
发布时间:2024-01-24 16:59:52 所属栏目:教程 来源:DaWei
导读: 假设我们有以下示例XML文件:students.xml,它需要转换为格式良好的HTML文档。
文件:students.xml 的内容如下 -
<?xml version = 1.0?>
<class>
<student rollno = 10010>
文件:students.xml 的内容如下 -
<?xml version = 1.0?>
<class>
<student rollno = 10010>
假设我们有以下示例XML文件:students.xml,它需要转换为格式良好的HTML文档。 文件:students.xml 的内容如下 - <?xml version = 1.0?> <class> <student rollno = 10010> <firstname>Machine</firstname> <lastname>Lee</lastname> <nickname>Machine</nickname> <marks>85</marks> </student> <student rollno = 10020> <firstname>Max</firstname> <lastname>Su</lastname> <nickname>Maxsu</nickname> <marks>95</marks> </student> <student rollno = 10030> <firstname>Yii</firstname> <lastname>Bai</lastname> <nickname>Yiibai</nickname> <marks>90</marks> </student> </class> 需要为上面的XML文档定义一个XSLT样式表文档,以满足以下条件 - 页面有一个标题。 页面有一份学生详细信息表。 列具有以下标题:Roll No,First Name,Last Name,Nick Name,Marks 表包含学生的详细信息。 第1步:创建XSLT文档 创建一个XSLT文档以满足上述要求,将其命名为students.xsl,并将其保存在students.xml所在的同一个目录位置。 文件:students.xsl - <?xml version = 1.0 encoding = UTF-8?> <xsl:stylesheet version = 1.0 xmlns:xsl = http://www.w3.org/1999/XSL/Transform> <xsl:template match = /> <html> <body> <h2>Students</h2> <table border = 1> <tr bgcolor = #3498db> <th>Roll No</th> <th>First Name</th> <th>Last Name</th> <th>Nick Name</th> <th>Marks</th> </tr> <!-- for-each处理指令 查找与XPath表达式匹配的每个元素 --> <xsl:for-each select=class/student> <tr> <td> <!-- value-of处理指令 处理与XPath表达式匹配的元素的值 --> <xsl:value-of select = @rollno/> </td> <td><xsl:value-of select = firstname/></td> <td><xsl:value-of select = lastname/></td> <td><xsl:value-of select = nickname/></td> <td><xsl:value-of select = marks/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet> 第2步:将XSLT文档链接到XML文档 使用以下xml-stylesheet标记更新student.xml文档。 将href值设置为:students.xsl - <?xml version = 1.0?> <?xml-stylesheet type = text/xsl href = students.xsl?> <class> ... </class> 第3步:在浏览器中查看XML文档 加入样式文件students.xsl,更新文件:students.xml ,内容如下所示 - <?xml version = 1.0?> <?xml-stylesheet type = text/xsl href = students.xsl?> <class> <student rollno = 10010> <firstname>Machine</firstname> <lastname>Lee</lastname> <nickname>Machine</nickname> <marks>85</marks> </student> <student rollno = 10020> <firstname>Max</firstname> <lastname>Su</lastname> <nickname>Maxsu</nickname> <marks>95</marks> </student> <student rollno = 10030> <firstname>Yii</firstname> <lastname>Bai</lastname> <nickname>Yiibai</nickname> <marks>90</marks> </student> </class> (编辑:财气旺网 - 财气网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐