问题标签 [default-namespace]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - 使用 XPath 获取具有默认命名空间(无命名空间前缀)的元素
在这个 SOAP XML 文件中,我怎样才能7
使用 XPath 查询?
此 XPath 查询不起作用//*[name () ='soap:Body']
。
r - 具有显式默认命名空间的 XML 文档的 XPath 和命名空间规范
对于在顶部元素定义了显式命名空间的 XML 文档,我正在努力获得 XPath 表达式和命名空间规范的正确组合,这是 package XML
(argument namespaces
)所要求的。xmlns
更新
感谢 har07 我能够把它放在一起:
查询命名空间后,第一个条目ns
还没有名称,这就是问题所在:
所以我们只需分配一个名称作为前缀(这可以是任何有效的 R 名称):
现在我们要做的就是在我们的 XPath 表达式中到处使用默认的命名空间前缀:
对于那些对基于name()
和namespace-uri()
(以及其他)的替代解决方案感兴趣的人可能会发现这篇文章很有帮助。
仅供参考:这是我们找到解决方案之前的试错代码:
考虑以下示例?xmlParse
:
然而,在我的文档中,命名空间已经在<doc>
标记中定义,因此我相应地修改了示例 XML 代码:
一切仍然正常。不过,更重要的是,我的 XML 代码还明确定义了默认命名空间 ( xmlns
):
过去的工作现在失败了:
这似乎让我更接近:
然而,现在我不知道如何进行才能到达子节点:
c# - 将 XPath 与 XML 命名空间一起使用
我想用 XPath 处理下面的 xml:
根元素有一个xmlns
。
我的代码是这样的:
但settingDiagConnectionString
始终为空。
为什么?
添加 1
谢谢哈07。
为每个元素添加前缀后,以下代码起作用:
但是下面的代码仍然不起作用。settingDiagConnectionString
仍然为空。为什么?
c# - SelectNodes 不返回子值
我是 XPath 的新手。我阅读了整个W3Schools 教程。我想获取<schedule>
文档的所有节点。我可以得到我的文档的所有子元素,child::*
但只要我添加<schedule>
如下,我得到零结果:
这是我的xml:
我最终想要实现的是获得与字符串匹配的所有<name>
s <job>
。
powershell - Powershell:当元素具有“xmlns”标签时,XPath 无法选择?
我有一个非常简单的 xml,如下所示:
然后我有一个 powershell 脚本来选择“文件夹”元素:
它输出:
没问题。但是,如果我更改 xml 文件以将“xmlns="http://schemas.microsoft.com/developer/msbuild/2003" 添加到“First”,如下所示:
然后,我的 powershell 脚本什么也不输出。为什么?如何更改我的 powershell 脚本以支持此 xmlns?
非常感谢。
xml - 使用带有命名空间的 System.Xml.XmlDocument.SelectNodes 访问子节点的语法是什么?
给定以下 XML:
我可以使用 SelectNodes 访问 Task 节点,如下所示:
但我无法访问子节点。例如,这将返回 null:
访问子节点的正确语法是什么?
python - 使用 lxml 解析包含默认命名空间的 xml 以获取元素值
我有一个这样的 xml 字符串
我想提取<loc>
节点内存在的所有网址,即http://www.example.org/sitemap_1.xml.gz
我试过这段代码,但它没有字
我试图检查我的根节点是否正确形成。我试过这个并取回与 str1 相同的字符串
c# - 通过有效的 xpath 在 XmlDocument.SelectSingleNode 上返回 Null
我目前有以下代码
解析以下 xml(为了便于阅读而截断)
问题是行 XmlNode xnMessage = xnBody.SelectSingleNode("//soapenv:Envelope/soapenv:Body/message", nsmgr); 当我希望它返回消息元素时返回 null 。
我高度怀疑它与我配置的空白命名空间有关,但我找不到正确的值组合来让它工作。
任何指针将不胜感激。
python - 雅虎体育 API XML 命名空间找不到元素
因此,在使用 Yahoo 的 Sports API 进行查询后,我开始尝试在 python 中使用 lxml 解析 XML:我尝试在将元素存储在根目录后获取元素,如果我简单地使用索引,我可以访问子标签;但是调用类似 root.find("season") 的东西不会返回任何内容。根据我读过的其他帖子,我相信这可能与 xml 文件中使用的命名空间有关。我应该如何处理这个问题,以便我可以获得我需要的元素?
编辑:我很抱歉不够清楚。我正在尝试看看 NFL QB Andrew Luck。代码访问 root[0][1]。root[0] 应该是 player 标签,但是 player 标签里面有很多孩子,所以 root[0][0] 是它的第一个孩子,即 player_key 标签,而 root[0][1] 是 player 标签的第二个孩子,这应该是 player_id 标签。
但是调用 root[0].find('player_id') 或 find 的任何变体,iter 方法什么也不返回。
再次感谢您的帮助!
下面是xml代码
下面是源代码:
sql - Sql Server XQuery 值()不起作用
我已经在 XQUERY 上工作了一段时间,但不知何故我陷入了这个简单而奇怪的问题。
以下是我的查询:
我真的无法破译为什么这个查询返回'NULL'。我期待第一个“类型”元素的值,即“TDAT”。
我真的在敲我的头。我已经使用了 value() n 次,但不明白为什么它今天不起作用。
问候, 维卡斯