level 1
a605055291
楼主
根据以下2.xml和2.xsl文件,写出其转换出的结果。
2.xml文件内容:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet href="2.xsl"type="text/xsl" ?>
<运动员>
<乒乓球运动员>
<姓名 奖牌="金牌"> 邓亚萍</姓名>
<姓名 奖牌="金牌"> 刘国梁</姓名>
<姓名 奖牌="金牌"> 王涛</姓名>
</乒乓球运动员>
<体操球运动员>
<姓名 奖牌="金牌"> 李宵鹏</姓名>
<姓名 奖牌="银牌"> 张红</姓名>
<姓名 奖牌="铜牌"> 李三三</姓名>
</体操球运动员>
<射击球运动员>
<姓名 奖牌="金牌"> 许海峰</姓名>
<姓名 奖牌="铜牌"> 张民红</姓名>
<姓名 奖牌="铜牌"> 李小三</姓名>
</射击球运动员>
</运动员>
2.xsl文件内容
<?xml version="1.0"encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
获得金牌和银牌的选手:
<xsl:apply-templates select="运动员/*"/>
</HTML>
</xsl:template>
<xsl:template match="运动员/乒乓球运动员">
<br/> <xsl:copy />:
<xsl:for-each select="./姓名">
<xsl:choose>
<xsl:when test=".[@奖牌$eq$'金牌']">
<xsl:value-of />(金牌)
</xsl:when>
<xsl:when test=".[@奖牌$eq$'银牌']">
<xsl:value-of />(银牌)
</xsl:when>
<xsl:otherwise ><xsl:value-of />(铜牌)</xsl:otherwise >
</xsl:choose>
</xsl:for-each>
</xsl:template>
<xsl:template match="运动员/体操球运动员">
<br/> <xsl:copy />:
<xsl:for-each select="./姓名">
<xsl:choose>
<xsl:when test=".[@奖牌$eq$'金牌']">
<xsl:value-of />(金牌)
</xsl:when>
<xsl:when test=".[@奖牌$eq$'银牌']">
<xsl:value-of />(银牌)
</xsl:when>
<xsl:otherwise ><xsl:value-of />(铜牌)</xsl:otherwise >
</xsl:choose>
</xsl:for-each>
</xsl:template>
下面有一些DTD的语句,将它转化为Schema语言,然后再写出一份有效的XML文件。
<?xml version=1.0 encoding=”UTF-8”?>
<!ELEMENT 图书(书名,作者,价格)>
<!ATTLIST 商品 出版社 CDATA #REQUIRED>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者(#PCDATA)>
<!ELEMENT 价格(标价,折后价)>
<!ELEMENT 标价(#PCDATA)>
<!ELEMENT 折后价(#PCDATA)>
2014年11月30日 04点11分
1
2.xml文件内容:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet href="2.xsl"type="text/xsl" ?>
<运动员>
<乒乓球运动员>
<姓名 奖牌="金牌"> 邓亚萍</姓名>
<姓名 奖牌="金牌"> 刘国梁</姓名>
<姓名 奖牌="金牌"> 王涛</姓名>
</乒乓球运动员>
<体操球运动员>
<姓名 奖牌="金牌"> 李宵鹏</姓名>
<姓名 奖牌="银牌"> 张红</姓名>
<姓名 奖牌="铜牌"> 李三三</姓名>
</体操球运动员>
<射击球运动员>
<姓名 奖牌="金牌"> 许海峰</姓名>
<姓名 奖牌="铜牌"> 张民红</姓名>
<姓名 奖牌="铜牌"> 李小三</姓名>
</射击球运动员>
</运动员>
2.xsl文件内容
<?xml version="1.0"encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
获得金牌和银牌的选手:
<xsl:apply-templates select="运动员/*"/>
</HTML>
</xsl:template>
<xsl:template match="运动员/乒乓球运动员">
<br/> <xsl:copy />:
<xsl:for-each select="./姓名">
<xsl:choose>
<xsl:when test=".[@奖牌$eq$'金牌']">
<xsl:value-of />(金牌)
</xsl:when>
<xsl:when test=".[@奖牌$eq$'银牌']">
<xsl:value-of />(银牌)
</xsl:when>
<xsl:otherwise ><xsl:value-of />(铜牌)</xsl:otherwise >
</xsl:choose>
</xsl:for-each>
</xsl:template>
<xsl:template match="运动员/体操球运动员">
<br/> <xsl:copy />:
<xsl:for-each select="./姓名">
<xsl:choose>
<xsl:when test=".[@奖牌$eq$'金牌']">
<xsl:value-of />(金牌)
</xsl:when>
<xsl:when test=".[@奖牌$eq$'银牌']">
<xsl:value-of />(银牌)
</xsl:when>
<xsl:otherwise ><xsl:value-of />(铜牌)</xsl:otherwise >
</xsl:choose>
</xsl:for-each>
</xsl:template>
下面有一些DTD的语句,将它转化为Schema语言,然后再写出一份有效的XML文件。
<?xml version=1.0 encoding=”UTF-8”?>
<!ELEMENT 图书(书名,作者,价格)>
<!ATTLIST 商品 出版社 CDATA #REQUIRED>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者(#PCDATA)>
<!ELEMENT 价格(标价,折后价)>
<!ELEMENT 标价(#PCDATA)>
<!ELEMENT 折后价(#PCDATA)>