请教一个简单问题(xsl如何写)

hsping5 2006-12-14 04:13:47
有一个xml文件
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="studentGrade.xsl"?>
<studentList>
<student studentId="001">
<name>林青霞</name>
<course>
<java>85</java>
<oracle>88</oracle>
<j2ee>90</j2ee>
</course>
</student>
<student studentId="002">
<name>巩俐</name>
<course>
<java>65</java>
<oracle>54</oracle>
<j2ee>95</j2ee>
</course>
</student>
<student studentId="003">
<name>张恣意</name>
<course>
<java>95</java>
<oracle>82</oracle>
<j2ee>67</j2ee>
</course>
</student>
<student studentId="004">
<name>周辛辛</name>
<course>
<java>76</java>
<oracle>87</oracle>
<j2ee>75</j2ee>
</course>
</student>
<student studentId="005">
<name>王百万</name>
<course>
<java>88</java>
<oracle>65</oracle>
<j2ee>99</j2ee>
</course>
</student>
</studentList>

1找出java成绩高于oracle成绩的同学,写出一个xsl
2找出三门功课都几个的同学

我写了一个xsl,就是<xsl:if >这里不知道如何写


<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<body>
<xsl:for-each select="studentList/student">
<p/>
<xsl:if test="course/java[value()>90]">
<table border="1" cellspacing="0">
<caption style="font-size: 150%;font-weight:bold">学生成绩</caption>
<tr>
<th>姓名</th><td><xsl:value-of select="name"/></td>
<th>java</th><td><xsl:value-of select="course/java"/></td>
</tr>
</table>
</xsl:if>
</xsl:for-each>
</body>
</xsl:template>
</xsl:stylesheet>

找出java成绩大于90没有问题,关键是如何在这里与oracle成绩比较
请各位帮帮忙
...全文
272 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cds27 2006-12-16
  • 打赏
  • 举报
回复
>用转义字符,>
cloudgamer 2006-12-16
  • 打赏
  • 举报
回复
帮顶
johnsonljl 2006-12-14
  • 打赏
  • 举报
回复
http://www.w3.org/1999/XSL/Transform,把命名空间改成这个
hsping5 2006-12-14
  • 打赏
  • 举报
回复
不行的,改成
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<body>
<xsl:for-each select="studentList/student">
<p/>
<xsl:if test="course/java>course/oracle">
<table border="1" cellspacing="0">
<caption style="font-size: 150%;font-weight:bold">学生成绩</caption>
<tr>
<th>姓名</th><td><xsl:value-of select="name"/></td>
<th>java</th><td><xsl:value-of select="course/java"/></td>
</tr>
</table>
</xsl:if>
</xsl:for-each>
</body>
</xsl:template>
</xsl:stylesheet>

报错:为
预期的句柄 'eof' 找到 '>'。 course/java-->><--course/oracle
johnsonljl 2006-12-14
  • 打赏
  • 举报
回复
1.
<xsl:if test="course/java>course/oracle">
<p>
<xsl:value-of select="name"/>
</p>
</xsl:if>
2.
<xsl:if test="course/java>=60 and course/oracle>=60 and course/j2ee>=60">
<p>
<xsl:value-of select="name"/>
</p>
</xsl:if>

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧