问题标签 [xml-libxml]

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 投票
1 回答
468 浏览

xml - 使用 perl + LibXML 将 XSLT 样式表声明添加到给定的 XML

前提:我来自 C++,我对 Perl 很陌生。我正在尝试向给定.xml文件添加样式表声明。该.xml文件由第三方创建并下载到一边;我们不是在质疑 XML 的正确性或格式良好。我们也不知道文件中的 XML 是缩进的还是单行的。

无法仅使用 Perl 巧妙地操作文件,我使用了 XML::LibXML,但我仍然卡住了。这是到目前为止我所做的。

有了这个,我只得到没有初始声明的 XML,<?xml version="1.0" encoding="ISO-8859-1"?>并且 utf-8 字符都搞砸了。我试过用这样的东西

但它不起作用。我可以使用一些方法来实现我的(毕竟很简单)目标?我查看了文档,但找不到任何有用的东西。

编辑

样式表声明必须<?xml version="1.0" encoding="UTF-8"?>在实际 XML 之后和之前。

0 投票
3 回答
146 浏览

perl - Perl 使用 XML Path Context 提取数据

我有以下xml

我想要节点的属性<something>作为哈希。我尝试如下

我期待有类似的东西$nodes[0]->getAttributes,有什么帮助吗?

0 投票
2 回答
819 浏览

perl - XML::LibXML 是否可以解析古怪的标签?

是否可以XML::LibXML解析以下示例中显示的节点?我意识到我可能通过将 a 指定'*'为节点名称的一部分来创建无效的 XML,如果有人能解释为什么它无效,我将不胜感激:

输出:

0 投票
2 回答
104 浏览

perl - 如何在 xsd 中定义唯一约束?如何使用 xml-libxml 进行错误验证?

参考主题、 Perl、LibXML 和 Schemas

如果我想让 isbn 标签成为一个唯一的约束,那么 XSD 中需要的更改是什么。除此之外,如果我想使用 XML::LibXml 为唯一约束添加验证,我可以使用相同的代码实现验证检查吗?有人可以用示例示例解释 xml doc 中的唯一约束错误吗?

0 投票
3 回答
1837 浏览

xml - 查找子节点的值

好的,这是一个非常初级的问题,但我是 Perl 的新手,老实说,我似乎无法在任何地方找到答案,即使我确信它会非常简单。

假设我有以下 XML 模式:

假设将有多个具有不同状态的父节点。

我正在尝试编写一个脚本,该脚本将为我提供状态不是“好”的父节点的每个值节点的内容

使用以下代码,我已经能够成功获得正确的父节点:

但是当我尝试时:

我什么都得不到。

此外,我真的只对“这是我的价值”部分感兴趣。当您读取该值时,CDATA 是否会影响它?

0 投票
1 回答
1353 浏览

xml - Perl XML::LibXML 更新内容

我正在尝试更新 xml 元素的内容。我正在使用 XML::LibXML 并且需要使用这个库。这是一些示例数据。

如果数字为 2,我想做的是将字母的内容更改为“紫色”。但是我相信我在指定 Xpath 以使其工作时遇到问题。我收到以下错误

“无法通过包“XML::LibXML::NodeList”定位对象方法“setData”

我已经为此苦苦挣扎了好几天,因此非常感谢任何帮助。

0 投票
1 回答
2516 浏览

xml - 为什么 XML::LibXML::Document 的 toString() 给我“SCALAR(...)”而不是 XML 字符串?

这是一个重现我想知道的行为的代码示例:

输出 :

我知道这是对传递的文档结构的某种句柄XML::LibXML

现在为什么不toString将其序列化为人类可读的 XML?

我可能非常天真XML::LibXML;这是我第一次使用它,而不是使用 Bash 的回声随机生成 XML。

0 投票
0 回答
77 浏览

xml - 使用 LibXML 修改 xml 文件

我正在尝试修改具有 XML 语法的文件

我的任务是查找值为“VDD”的信号名称,如果存在,则删除整个<pin .... />节点。如果在上述任务之后组节点中没有可用的元素,则删除该<group....> </group>节点。

我已经使用 XML::Simple 尝试过这个任务,但是顺序会随着元素的变化而变化。因此,我正在尝试使用 XML::LibXML 完成任务。任何人都可以对如何使用 LibXML 完成任务有所了解。任何帮助深表感谢。谢谢

0 投票
2 回答
6500 浏览

xml - perl - 从 xml 文件中删除节点

我有一个 XML 文件,我想读取它 - 删除一个节点 - 保存它。我从终端运行 perl (perl script.pl)

示例 XML(文件名.xml):

示例 perl 脚本(script.pl):

现在它在终端中输出预期的结果,但不保存文件。
预期结果(文件名.xml):

我已经搜索了很多小时,找不到任何东西,如果它是重复的,对不起!
这是我第一次使用 perl,所以欢迎任何帮助,谢谢。

0 投票
2 回答
355 浏览

perl - Perl LibXML 编码实体

如何在 XML::LibXML 的文本节点中强制使用实体编码?

我有 toString() 输出

我需要