问题标签 [libxslt]
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.
php - 将 PHP XSLT 处理器升级到 XSLT 2.0
升级 PHP 库以使用 XSLT 2.0 是否可能/容易?
当前设置:
python - XSL short `value-of` 和 `disable-output-escaping`?
我正在处理以下(示例)XML:
通过以下(示例)XSL:
使用 Python 和lxml
( libxslt-1.1.17
),我得到以下输出:
我知道我可以使用以下模板解决此问题:
但这是很多打字。在 PHP 中使用过 XSL 后,我不记得曾经使用过这种变通方法来使用 short-form 取消引用 XML 实体value-of
。是否有一个简短的解决方法,所以我们不必继续输入以上所有内容?
python - Python - 转换至?
我正在使用 libxml2 和 libxslt 来处理 XML 文件。返回值是实例类型,但我需要一个 UTF-8 静态字符串。
如何将返回值转换为静态字符串?
谢谢你的帮助。
php - 升级 PHP 版本后 xsl:include 失败;是 libxml/libxslt 版本不匹配的问题吗?
我正在使用windows.php.net提供的预编译 PHP 二进制文件运行 Windows XP 。我从 PHP 5.2.5 升级到 PHP 5.2.16,现在xsl:include
我的一些样式表中的 s 停止工作。连续测试每个版本,我发现它在 5.2.8 中可以正常工作,而在 5.2.9+ 中无法正常工作。我现在得到以下三个错误xsl:include
。
我认为这是因为它找不到指定的文件。许多包含与正在转换的样式表位于同一目录中,并且在路径中没有目录,即<xsl:include href="fileInSameDir.xsl">
. 有趣的是,在第一个和第三个错误中,它显示的 file:// 协议只有一个斜杠,而不是正确的两个。我猜这就是问题所在。(当我使用“file:/”对完整路径进行硬编码时,它会失败,但是当我使用“file://”对完整路径进行硬编码时,它会起作用。)但是是什么原因导致的呢?libxslt/libxml 中的错误?我还发现 libxml 与编译 libxslt 的 libxml 版本之间存在明显的版本不匹配。
5.2.5
libxml 版本 => 2.6.26
libxslt 针对 libxml 版本编译 => 2.6.265.2.8
libxml 版本 => 2.6.32
针对 libxml 版本编译的 libxslt => 2.6.32=== 它从 5.2.9 开始的版本中断 ===
5.2.9
libxml 版本 => 2.7.3
libxslt 针对 libxml 版本编译 => 2.6.325.2.16
libxml 版本 => 2.7.7
libxslt 针对 libxml 版本编译 => 2.6.32
在 PHP 5.2.9 之前,libxslt 是针对 PHP 中包含的同一版本的 libxml 进行编译的。但是从 PHP 5.2.9 开始,libxslt 是针对旧版本的 libxml 编译的,而不是 PHP 中包含的。这是分布式二进制文件的问题还是只是巧合?
为了测试这一点,我想 PHP 可以使用不同版本的 libxml/libxslt 构建,以查看哪些组合有效或无效。不幸的是,我已经脱离了 Windows 世界的元素,在 Windows 上构建 PHP 似乎超出了我的想象。
遗憾的是,到目前为止,我一直无法通过我的应用程序之外的示例重现此问题,因此我正在努力缩小范围并且无法提交特定的错误。
那么,你认为这是由
- 分布式二进制文件中的版本不匹配问题?
- PHP 5.2.9 中引入的错误?
- libxml 2.7 中引入的错误?
- 别的东西?
我难住了。非常感谢任何可以为我指明正确方向的想法。谢谢。
xslt - XSL 中的测试参数值类型
我从 LibXSLT 得到这个:
我正在传递一个param
可以具有字符串值或节点集的值。我正在尝试测试它是否包含某个子字符串,并在这种情况下将该值分配给另一个参数。
调用模板:
被调用的模板:
虽然我不确定是什么导致了 LibXSLT,但我认为当我运行这些测试并且值是一个字符串时,它会抛出上面的类型错误。
但最重要的是,有没有一种测试参数值类型的好方法?
更新:GitHub 上的完整 XSL 脚本
python - libxslt 的 applyStylesheet() 产生损坏的 XHTML
我有一个 XML 数据文件,我在 Python 中使用 libxslt 应用 XSL 样式表。事情几乎是完美的,但是<hr/>
XSL 文件中的每个实例都被转换<hr>
为unicode(applyStylesheet())
. 这几乎就是我正在做的所有事情:
难道我做错了什么?我是否缺少使输出有效的 XHTML 的选项?
(我目前的计划是附加.replace('<hr>','<hr/>')
到该data =
行以使其正常工作,但似乎应该有更好的方法。)
regex - 如何从 EXSLT 获取 Regexp 在 libxslt 中工作?
有人Regexp
在 libxslt 工作过吗?什么时候是,怎么做?
http://www.exslt.org/regexp/index.html
将命令xsltproc --dumpextensions
与最新的 libxslt 一起使用时,我没有得到任何正则表达式支持:-(
unix - 安装 libxslt 时无法链接到正确的 libxml2
尝试安装libxslt-1.1.24
但在此期间出现错误./configure
说:
但libxml2-2.7.3
刚刚安装并且可以在/usr/local/include/libxml2
我如何在什么时候libxslt
链接到新的?libxml2
./configure
perl - 在 ActiveState Perl 5.8 上安装 XML::LibXSLT
对于 XSLT 处理,我尝试使用 XML::LibXSLT。我在 win32 上有 ActiveState Perl。据我了解,在调用“perl Makefile.PL”之前,我需要先安装 libxslt。
对于 win32 上的 libxslt,似乎二进制文件已经可用,我们可以使用它(因此无需编译和构建 libxslt)。可在 ftp://ftp.zlatkovic.com/libxml/获得
因此,我下载了 libxslt...zip 以及其他依赖项 - libxml、iconv 和 zlib。
但是当我尝试使用命令'perl Makefile.PL'编译它时,我收到错误消息:
因此,随后的“dmake”命令也因抱怨缺少头文件而失败。这是输出:
你能帮我看看我缺少什么配置/设置吗?
xslt - xslt 变量奇异性
谁能给我解释一下?(使用最新的 libxslt):
结果(@attrib = 1 在当前节点):
<a>
并<b>
表现出预期的行为。
<x>
恕我直言不正确。
但是为什么要放入@attrib
一个变量“修复”它<y>
呢?
@attrib is
顺便说一句:不存在时一切都是正确的。这里使用的副本用于调试;原来的用法是将 XPath 结果转换为数字,缺少的属性不会导致 NaN,而是某个默认值。