iphone - LibXML 没有为我的 xpath 表达式找到任何节点

标签 iphone objective-c xml xpath libxml2

我在 iPhone 应用程序中使用 xpath 和 LibXML 来查找 xml 文档中的一些节点。我是 xpath 的菜鸟,所以可能我做错了什么。
这是xml:


<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <GetUserByEmailResponse xmlns="http://tempuri.org/">
      <GetUserByEmailResult>
        <id>4006</id>
        <name>Kudor Gyozo</name>
        <email/>
        <image/>
        <facebookId>0</facebookId>
      </GetUserByEmailResult>
    </GetUserByEmailResponse>
  </soap:Body>
</soap:Envelope>

xpath 表达式为 //GetUserByEmailResult .不返回任何节点。我希望得到 <GetUserByEmailResult>背部。如果我测试相同的东西 here它工作正常。

UPDATE1:这是我从 .net 网络服务中得到的。有没有办法忽略 libxml 中的命名空间?

最佳答案

我不熟悉 iphone 库,但您可能必须在某处声明 namsepace/前缀:如果您使用“someprefix”注册“http://tempuri.org/”,则可以搜索:

//someprefix:GetUserByEmailResult

一种可能的解决方法是(但不建议):
//*[local-name()='GetUserByEmailResult']

关于iphone - LibXML 没有为我的 xpath 表达式找到任何节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3830553/

相关文章:

iphone - 游戏设计 : Checking for object intersection or getting values from accelerometer

objective-c - NSImage colorWithPatternImage : how to tile images from the top instead?

c# - 智能 HTML 编码

iphone - 从通知中心恢复

iphone - 在 NSDictionary 中抓取随机条目

iphone - AVAudioPlayer:MP3 文件无法在设备上播放,但可以在模拟器 (iOS 6) 中播放

iphone - 如何将旋转的 UIView 保留在另一个 UIView 中? (不能使用框架)

ios - iPhone CGContext : drawing line with two different colors

java - 删除 xsi :type information from xml/json JAXB?

xml - Powershell 空 XML 元素格式化为一行