问题标签 [xmllint]
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 - 如果另一个子值匹配,则获取子值
我有一个需要从 shell 解析的 XML 文件。它看起来有点像这样:
请注意,thing
s 的子节点的顺序是任意的。在我的真实数据中,每个thing
.
现在, 的价值foo
是独一无二的。我需要获取子节点的值,例如其子bar
节点thing
的foo
值abc
。我尝试过使用 XPath 查询,xmllint
但没有成功。我找不到比赛;或者,如果我只是用更一般的查询进行测试,我会得到整个树。
我希望只是得到true
。
我究竟做错了什么?我无法访问--xpath
提到的其他问题的标志,所以如果这是答案,那么我就不走运了。
bash - xmllint xpath 不会在空集上打印错误
我在 bash 脚本中使用 xmllint 对某些数据执行 xpath。xpath 并不总是与数据匹配,这没关系。来自 xmllint 文档:
XPath set is empty
当 xmllint 找不到任何匹配项时,是否有禁用/隐藏输出?
xml - 为什么使用两种不同的方式验证我的 XML 会得到不同的结果?
我正在尝试使用 XSD 文件验证 XML 文件,但它不起作用,我不知道为什么。
我发现我们可以使用该示例在终端上执行此操作:
xmllint --noout --schema owl2-xml.xsd camera.owl
但它会产生一个错误,我特别不明白。
但是如果我选择一个验证器 xml 文件(这个 : http://mowl-power.cs.man.ac.uk:8080/validator/
)
我的 XML 文件已经过验证!
我不明白为什么,这不起作用......当我选择的 XML 模式(应该)与验证器链接相同时。
XML 模式来自那里:http://www.w3.org/2009/09/owl2-xml.xsd
(owl2) 验证器也使用 owl2 结构。所以......我错过了什么?
示例猫头鹰文件
这是我正在使用并尝试验证camera.owl的示例
linux - 如何管道 grep xmllint 结果?
尝试使用 xmllint 来验证一堆 XML。
我使用命令: xmllint --noout --schema MySchema.xsd dir/*.xml
这将向标准输出打印每个文件的列表以及它是否已验证或失败。我希望修剪此列表并仅显示那些无法验证的文件。
我习惯于在标准输出上做一个管道 grep 来过滤结果。例如,如果我执行 ls | grep "config" 它将仅列出名称中带有 config 的那些文件。
但由于某种原因,执行上述命令后跟 | grep "失败" 或 | grep -v "validates" 对减少扔到控制台标准输出的(大量)文本行数没有任何影响。无论如何都会提供完整列表
就好像 xmllint 的输出不是管道的有效输入。
bash - Remove invalid XML after xmllint validation
I receive a large XML file and often the XML file do not validate to schema file. Instead of droping the whole xml file I would like to remove the "invalid" content and save the rest of the XML file.
I'm using xmllint to validate the xml by this command:
The XSD file (in this example named testSchedule.xsd):
And the XML file (In this example named testXML.xml):
Then I get the this result of the xmllint command:
And that is all correct - There is two errors in the XML file.
Now I would like to have a tool of some kind to remove entry 3 and 4 so I end up with this result:
Does anybody in here have a tool that can do this? I'm currently using bash scripting and the xmllint. I really hope somebody can help.
xml - xml 读取许多值并在 sh 中回显它们
我有一个名为 XML 的 xml 变量,如下所示:
我用命令回应他们
我明白了
但现在我有多个值,xml现在是这样的:
还有 TEXT3 等等。
我如何让我的程序显示:
并显示在
我不能再使用以前的方法了,只能使用“while”之类的东西和 xml 命令来获取值?谢谢!
xml - 目标命名空间在 XSD 中被忽略
我有一些供应商提供的 XML 模式。他们来了:
OCISchemaBASE.xsd
OCISchemaLogin.xsd
OCISchemaDataTypes.xsd
这是我根据这些模式创建的 XML 文档:
当我尝试使用 xmllint 针对架构验证此文档时,会发生以下验证失败:
尽管在 OCISchemaBASE.xsd 中声明了目标命名空间,为什么BroadsoftDocument
元素不在命名空间中?C
同样的问题是关于sessionId
OCIMessage 类型中的元素。
unix - 无法使用 pom 文件中的 artifactId 获取版本
我对 unix shell 脚本相当陌生。尝试从 xpom.xml 捕获某些工件的版本信息但没有成功。
我无法在系统中安装任何额外的东西,检查是否安装了 xmllint。任何使用直接 unix 命令或 xmllint 的解决方案都值得赞赏。
文件=~/xpom.xml
我需要捕获 oradatabase artifactId 的版本。解决方案应返回 7.7.7。
我尝试跟随但没有成功(从这个网站获得这些提示并对其进行修改以满足我的需要:
尝试1:
xmllint --xpath '//project/dependencies/dependency[artifactId='oradatabase']/@value' xpom.xml
它抛出未知选项--xpath
尝试2:
-- 返回未找到。
感谢您对此的任何帮助。
xml - 使用 xmllint 即时处理“&”
我有大量的 xml 文件要用 xmllint 解析。我只需要提取一两个节点的内容,然后将它们放入一些新文件中。
在他们找到我之前,我无法控制他们的格式。
我试图找到一种优雅的方式来处理像“&”(和号)这样的字符。它们并不总是在源 xml 中转义。
有什么方法可以在单个 xmllint 命令中处理这个问题,还是我需要先准备 xml 文件?
xml - 通过 XML 节点列表迭代/循环
我需要加载一个 XML 文件并遍历其中的节点列表,以使用每个节点的属性作为脚本的参数为每个节点执行一个 shell 脚本。有任何想法吗?任何帮助都感激不尽。
XML 文件示例: