问题标签 [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.

0 投票
2 回答
2377 浏览

linux - linux xmllint 模式验证失败但错误代码 0

命令行 xmllint --schema 验证失败但 $? 返回 0

我的输入.xml:

我的架构.xsd

命令:

结果:

命令:

结果:

有人能告诉我为什么 xmllint 模式验证失败不会作为错误返回吗?或者建议我如何在我的 shell 脚本中将此捕获为错误?在我的 shell 脚本中,当前我正在“if”块中验证上述 xmllint 命令,它仅因 xml 格式正确而失败,但因模式验证失败而成功。

如果上述内容没有作为错误返回,我是否应该在 xmllint 输出上执行“grep 失败”的丑陋方式来确定模式验证是成功还是失败?有什么想法吗?

0 投票
1 回答
110 浏览

libxml2 - xmlint 如何使用外部 DTD 验证无效的 xml 文件

我尝试找到使用带有外部 dtd 文件的 xmllint libxml2 来解析 xml 文件的方法。

它适用于此:

但是这个命令并没有做我想要的。

--ouput 是解析的结果,我明白这一点。

无论 xml 的有效性如何,输出都将完全相同。

如何通过使用无效 xml 文件的 dtd 文件获得有效的 xml 输出?

非常感谢你。

0 投票
2 回答
10609 浏览

xml - 使用 xmllint 命令行的模式

我的 xml 文件看起来像这样:

例如,我想获得StringB2给定条件name==ARCH2和的值state==StringC2。是否可以使用xmllint命令行选项,如果可以,如何?一些例子将是有益的。

sed我可以使用or提取这些,awk但这可能不是一个好的解决方案。

0 投票
1 回答
264 浏览

xml - xmllint 是否正确处理 nillable compexType?

我们有在 .NET 下创建的 XSD 和示例 XML(并且可能通过了验证),但它们无法在 xmllint 下验证。我们正在尝试确定一侧或另一侧是否“不正确”,或者这是否在规范中模棱两可。我试过在这里和谷歌上搜索,但找不到任何描述同样问题的东西。我没有发布原始的 XSD 和 XML,而是创建了一个较小的测试来重现该问题。

XSD 是:

XML 是:

xmllint 命令运行是:

xmllint 的输出是:

我几乎是一个初学者 XSD/XML '开发者',所以请随意扯掉。:)

0 投票
0 回答
385 浏览

xml - 使用 xmllint 重新缩进 xml 文件(内容混合)

我的问题可能很愚蠢,或者缺乏信息,对此我深表歉意。我会尽量做到我认为需要的描述性。

我们有很多 xml,可能有数百个模式(不同的根/元素名称,不同的属性)。在编写代码时,许多开发人员错误地在这些 xml 中添加了混合内容(我们的唯一模式是 --->“无混合内容”)。

我们想重新缩进 xml 文件,但是上面提到的混合内容给我们带来了问题。我们拥有的唯一 xml 解析器/实用程序是 xmllint(由于某些限制,我们无法获得其他实用程序)。

例如:

运行后(我添加到 xmllint 的选项只是随机尝试)

xmllint --recover --encode "ISO-8859-1" --format data.xml

我得到以下信息:

我以 AD 为例提到了标签,因为我们的 xml aer 中的元素具有数百个可能的值。我需要以下两个方面的帮助:

1)找出哪些文件有混合内容。由于我们有很多文件,我更喜欢使用 bash 脚本(或任何此类脚本) 2)正确格式化 xml 文件的方式。

任何帮助将不胜感激。一段时间以来,我一直在努力解决这个问题,而像这样看起来很简单的事情对我来说却是相当困难的。我们系统的其他信息是我们正在使用 Unix,如果需要,我们可以借助 perl。(但我们没有 Twig 或 LibXML::PrettyPrint)

0 投票
5 回答
9297 浏览

xml - 如何使用 xmlint --xpath 在每次匹配后附加换行符

我有以下 HTML 代码:

我想解析它以接收这样的输出:

目前我正在使用:

但它不会在每次匹配后添加换行符。

0 投票
3 回答
11034 浏览

unix - 使用 xmllint 从 XML 中获取节点值

我有一个名为 Det.xml 的 xml,如下所示:

我正在尝试使用Unix shell 脚本从中获取ResponseType节点值,因此我尝试了以下操作:successxmllint

但它不起作用。我的 unix 环境中也没有xpath。谁能告诉我我在这里做错了什么?

0 投票
2 回答
8099 浏览

xmllint - xmllint 在 Windows 命令提示符下不起作用

我尝试使用命令“xmllint”检查 cmd.exe 的 xml 文件的有效性,如示例中所示:xmllint -schema Bookstore.xsd --noout Bookstore-XSD.xml 但结果,我看到了错误:

'xmllint' 不是内部或外部命令、可运行程序或批处理文件。

我应该安装一些特定的库吗?如果我应该,它必须在哪里(文件夹是什么)?

0 投票
1 回答
1537 浏览

parsing - xmllint - 使用命名空间解析 xml 文件

我在 stackoverflow 上找到了很多关于 xmllint 及其“命名空间支持”的主题,但没有一个对我有帮助。

这是我的 xml(准确地说是 xsd)文件:

我想从此文件中检索“我的文本”链,所以我试试这个:

但它不起作用。我得到“分段错误”。

更新

我还有一个问题:我应该使用什么来在此文件中获取标签的属性“toto”值:

换句话说,我想得到“testAtributeValue”

0 投票
7 回答
79479 浏览

xml - 安装 xmllint

我需要帮助从这个网站安装 xmllint:http: //xmlsoft.org/sources/win32/

特别是,我不确定我应该下载哪个文件 - 当我单击预编译 Windows 二进制文件的链接时,我会看到几个文件的列表,但不知道如何继续。