带Labview的LibXML - 没有名称空间前缀

时间:2017-07-31 15:38:11

标签: xml xpath libxml2 labview

我一直在使用Labview的原生XML解析器来读取XML文档。事实证明,它对于大文件来说太慢了。因此,我试图使用LibXML因为它似乎很受欢迎。但是,我遇到了名称空间问题。我有一个第三方XML文档,如下所示:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<foo xmlns="urn:foo_Schema_V3">
     <bar>
        <fooID description="XML Test 170731"></fooID>
        <barNumber>60</barNumber>      
    </bar>
</foo>

并希望使用使用XPath的Labview选择 barNumber Labview Code

内容文字应为 60 ,但它仍为空。我读了一下,并假设这是由于LibXML中的命名空间问题。作为测试,我将XML中的第二行更改为

<foo xmlns:cliff="urn:foo_Schema_V3">

突然,即使在Labview中甚至没有提到悬崖,XPath表达也能正常工作。

:如何在没有名称空间前缀的情况下选择我想要的节点?

更新:我已经开始使用了     /*[local-name()='foo']/*[local-name()='bar']/*[local-name()=‌​'barNumber'],这不是优雅的,并且不解释为什么节点在没有前缀的情况下无法选择。

0 个答案:

没有答案