以文本方式查看主题

-  W3CHINA.ORG讨论区 - 语义网·描述逻辑·本体·RDF·OWL  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  XPath解析问题  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=41400)


--  作者:toenroll
--  发布时间:12/19/2006 1:15:00 PM

--  XPath解析问题
在XML Spy软件里,如下的XML文本
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
               "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
<?altova_sps http://www.altova.com/sps/Template/Publishing/docbook.sps?>
<article>
 <title>Article Title</title>
 <sect1>
         Section1
  <title>Section1 Title</title>
  <para>Text1</para>
 </sect1>
        <sect1>
         Section2
  <title>Section2 Title</title>
  <para>Text2</para>
 </sect1>
</article>

为什么不能用//sect1[.='Section1']//title的表达式来获取sect1下面的内容,而不是所有sect1下的内容

还请各位多多帮忙,我这个表达式应该没有语法问题吧,谢谢了


--  作者:toenroll
--  发布时间:12/20/2006 9:17:00 AM

--  
描述错了:为什么不能用//sect1[.='Section1']//title的表达式来获取text()内容为Section1的sect1下面title的内容,而不是所有sect1下的title内容

还请各位指点迷津,谢谢先


--  作者:Qr
--  发布时间:12/20/2006 9:59:00 AM

--  
//sect1[text()='Section1']//title
--  作者:toenroll
--  发布时间:12/20/2006 1:01:00 PM

--  
先谢谢Qr,

用你的表达式,在XML Spy软件里,仍然无法提取出结果,可能是这个软件的问题

另外,我认为:用text()和.应该是一个意思


--  作者:Qr
--  发布时间:12/21/2006 12:42:00 PM

--  
呵呵,的确没通过,看来是偶小看了text()了,查查看再说。
--  作者:SATOKO2006
--  发布时间:12/21/2006 3:35:00 PM

--  
是比较高难,不过你将“Section1”设为属性就方便多了。
--  作者:Qr
--  发布时间:12/21/2006 7:01:00 PM

--  
平时很少用LZ这个格式的XML,觉得特难处理。
text()取得的是sect1节点,包括下级节点的文本,但偶用字符串处理功能竟然不能比较,郁闷ing...
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms