以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  如何用xsl根据xml属性筛选节点  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=78096)


--  作者:Andensy
--  发布时间:11/5/2009 10:05:00 AM

--  如何用xsl根据xml属性筛选节点
以下为xml中的几个节点:
<text name="T_FangYuanBH"> 200910260030</text>
<text name="T_LouPan"> 新街大院</text>
<text name="室-厅-厨-卫"> <![CDATA[3-1-1-1]]></text>
<text name="$20"> <![CDATA[124]]></text>
<text name="T_FangWuCX"> </text>
现在想通过属性name查找到相关节点,用xsl中的if或者choose该如何查找,关键在于test=“”的条件不知道该怎么写,请高手指点。
如,想选择name=“T_LouPan”的节点?谢谢!
--  作者:Qr
--  发布时间:11/6/2009 11:47:00 AM

--  
test="text/@name='T_LouPan'"
--  作者:owenfan0715
--  发布时间:11/21/2009 6:56:00 AM

--  
如果我的数据是这样的呢?如何获取id属性值和那个email地址呢?
为什么我这两句话不起作用呢?
<xsl:value-of select="/csw:GetRecordByIdResponse/rim:Service/@*[name()='id']"/>

<xsl:value-of select="GetRecordByIdResponse/Service/Slot[@name='ContactEmail']/ValueList/Value"/>
命名空间已加到
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2">

**********示例数据**********************


<csw:GetRecordByIdResponse xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" xmlns:ogc="http://www.opengis.net/ogc">
  <rim:Service status="null" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Service" id="urn:uuid:d2e367cd-a07f-4065-9a81-a31625ecdaa1">
    <rim:Slot name="Approval">
      <rim:ValueList>
        <rim:Value>yes</rim:Value>
      </rim:ValueList>
    </rim:Slot>
    <rim:Slot name="ContactEmail">
      <rim:ValueList>
        <rim:Value>skeens@pcigeomatics.com</rim:Value>
      </rim:ValueList>
    </rim:Slot>
  </rim:Service>
</csw:GetRecordByIdResponse>


--  作者:Qr
--  发布时间:11/22/2009 12:20:00 PM

--  
第一个xsl:value-of“起作用”,如果不“起作用”,估计错在什么地方了,不过不是当前行。

第二个xsl:value-of缺少前缀


--  作者:owenfan0715
--  发布时间:11/24/2009 12:55:00 AM

--  
谢谢,Qr。就是你说的那么个原因。。。。。
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms