以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  [求助]XSL问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=40511)


--  作者:hlh0319
--  发布时间:11/26/2006 10:54:00 AM

--  [求助]XSL问题
有一个xml文件如下:
<PEOPLE>
 <PERSON>
  <name>ajie</name>
  <age>28</age>
 </PERSON>
 <PERSON>
  <name>tom</name>
  <age>24</age>
 </PERSON>
 <PERSON>
  <name>miake</name>
  <age>30</age>
 </PERSON>
</PEOPLE>

对应的xsl文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="PEOPLE">
<xsl:value-of select="PERSON/name"/>
</xsl:template>
</xsl:stylesheet>
输出结果是:ajie
如果采用下面的xsl文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="PEOPLE/PERSON">
<xsl:value-of select="name"/>
</xsl:template>
</xsl:stylesheet>
输出结果是:ajietommiake
请帮我解释一下好吗?


--  作者:Qr
--  发布时间:11/27/2006 12:15:00 PM

--  
第一段:输出第一个PERSON的name文本
第二段:输出所有PERSON的name文本
--  作者:tangyin
--  发布时间:11/28/2006 9:46:00 PM

--  
<xsl:template match="PEOPLE"> 这句话match了people,匹配出来的节点集只有一个元素,下面的 <xsl:value-of select="PERSON/name"/> 只能运行一次,所以只能打印出一个name。<xsl:template match="PEOPLE/PERSON"> 这句话match了PEOPLE/PERSON,匹配出来的节点集包括文档里的3个person元素, 所以打印3个name
--  作者:hlh0319
--  发布时间:12/2/2006 12:05:00 PM

--  
我知道了.谢谢各位.
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms