问题标签 [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 回答
609 浏览

xml - 在 perl 中使用 LibXML 的 setData() 方法后,数据不会写入实际的 xml 文件

我对 perl 中 libXML 的 setData 方法有疑问。这是我的代码片段:

使用 setData 后,我使用 getData 检索值。getData 输出的值是最新的,但是当我打开应该设置此数据的 xml 时。价值是旧的。

请告知我做错了什么。

0 投票
1 回答
428 浏览

perl - 尝试在 XML::LibXML 中规范化 XML 片段时出错

我正在尝试规范化 XML 片段以避免在生成的 XML 中打印自闭合节点。(由于消费系统的限制,我希望对节点<test />进行流式传输)。<test></test>

我尝试在 XML::LibXML::Node 中使用 toStringC14N() 方法来实现相同的目的,但我遇到了以下错误,我似乎也没有从谷歌那里得到任何帮助。

输出:

我只能追查错误,直到 LibXML.c 中的以下方法

xmlDocDumpMemory(self, &result, &len);

我对我做错了什么一无所知,因为“toString()”似乎工作正常。

我正在使用 perl v5.8.8 & XML::LibXML 1.88 版

0 投票
1 回答
735 浏览

xml - 如何从 perl 中的 xml::xmllib 模块中的 to_literal 函数将字符串与降序的 xml 节点分开?

我有这样的XML结构:

结构大而复杂,我只知道开始,即:'/A'

和 perl 中的代码如下:

给我结果:

如果我使用如下代码:

我得到:

我需要独特且独立的 withespaces 值,即:

这个怎么做?

0 投票
1 回答
772 浏览

perl - 如何使用 Perl 的 XML::LibXML 提取标签之间的内容?

我有一个包含如下内容的 XML 文件:

如何使用 XML::LibXML 和 Perl 获取两个节点之间的内容,即“www”?

谢谢你。

0 投票
3 回答
951 浏览

xml - 无法使用 XML 架构和 Perl (XML::LibXML) 验证 XML

xml:

XML 架构:

当我使用 XML::LibXML::Schema 验证 xml 时,我得到:

../xml/workers.xml:0:架构有效性错误:元素“impiegato”:不需要此元素。预期是({http://www.zoo.com}impiegato、{http://www.zoo.com}manager)之一。

Perl代码:

我认为这是名称空间的问题,但不知道该怎么办。

附录:

我试图从 XML 模式中删除 elementFormDefault="qualified" 属性。现在我有相反的错误:

0 投票
4 回答
7841 浏览

perl - 无法为模块 XML::LibXML 加载“C:/strawberry/perl/site/lib/auto/XML/LibXML/LibXML.dll”

我已经下载了草莓 PERL 并在 Winxp sp3 上使用 CGI Perl Apache 编写了一个应用程序)。我使用的库之一(由其他人编写)使用 XML::LibXML。当我加载页面时,它会给出内部服务器错误。从 Apache 错误日志我可以看到这个错误:
Can't load 'C:/strawberry/perl/site/lib/auto/XML/LibXML/LibXML.dll' for module XML::LibXML: load_file:The specified module could not可以在 C:/strawberry/perl/lib/DynaLoader.pm 第 190 行找到。 C:/strawberry/perl/site/lib/auto/XML/LibXML/LibXML.dll
具有所有权限。这个库也可以在 Linux 上正常工作。如果我删除所有需要 LibXML 的代码,我的应用程序也可以正常工作。
谁能告诉我这里什么时候可能出现问题。

0 投票
1 回答
272 浏览

xml - 针对 XSD 验证 XML 是否有错误

我想针对 XSD 文件验证 XML 并在有任何错误时获取错误。

当我将它与 DOM 但不是 XMLReader 一起使用时,它工作正常。据知道他们都使用 libxml 库,所以我尝试将它用于 XMLReader 但没有运气。

谢谢

DOM(工作正常)

XMLREADER(不适用于上述相同的错误函数)

0 投票
3 回答
527 浏览

perl - 使用 XML::LibXML 的 XML 文档中的随机元素顺序

我有一个 Perl 脚本,它读取一个简单的.csv文件,如下所示 -

目的是将其转换.csv.xml如下文件-

我知道XML::CSVCPAN 中有可用的工具,这将使我的生活更轻松,但我想利用已经安装XML::LibXML的来创建 XML,而不是安装XML::CSV. 我能够像上面那样读取 CSV 并创建 XML 文件,没有任何问题,但是我得到了 XML 中元素的随机顺序,即如下所示。如上所示,我需要使元素(子节点)的顺序与.csv文件同步,但我不太确定如何解决这个问题。我正在使用 ahashsort()ing 哈希也没有完全解决问题。

等等。下面是我的 perl 代码的片段

0 投票
2 回答
21125 浏览

xml - Perl XML::LibXML $node->findnodes($xpath) 找到不应该的节点

这是我遇到问题的一些代码,我处理了一些 XML,并在 OO 类中的一个方法中从文档中重复的几个节点中的每个节点中提取一个元素。每个节点的子树中应该只有一个这样的元素,但我的代码获取所有元素,就好像它对整个文档进行操作一样。

因为我只希望得到 oine 元素,所以我只使用数组的第零个元素,这会导致我的函数输出错误的值(文档中的所有项目都相同)

这是一些说明问题的简化代码

这是输出

我期待

我期待最后一行是

由于平台问题,我正在使用旧版本的 XML::LibXML。

Q:以后的版本是否存在这个问题,还是我做错了什么?

0 投票
2 回答
1446 浏览

xml - 在 Perl 中使用 XML::LibXML 更改 XML 文件:换行符是 Unix,而不是 Windows

亲爱的 Perl 和 XML 大师

我的任务是使用XPath更新XML文件中的值。 我使用Perl中的库来读取、更改和保存 XML 文件:
XML::LibXML

尽管它生成的文件与原始文件非常相似,但仍然存在一些麻烦:

  1. 换行符(行尾)是 Unix 风格的,虽然原始文件有它们在 Windows 风格。
  2. 关闭 /> 之前的空格被删除,例如<node />变为<node/>.

有机会解决这些问题吗?我希望得到与原始文件完全相同的 XML 文件,唯一的区别是我正在修改的属性值......

PS 我真的很喜欢<xmlpoke>NAnt 的简单性。但是必须使用 Perl 来完成这项工作。