【问题标题】:XSLT 2 Support in IntelliJ IDEAIntelliJ IDEA 中的 XSLT 2 支持
【发布时间】:2020-08-06 00:06:29
【问题描述】:

我在 IntelliJ 中查看 XSLT 2 样式的 XML 文件时遇到问题。我已经添加了 Saxon HE 依赖项,我知道它可以工作,因为构建成功完成(它不是没有这个依赖项)

Connecting to XSLT runner on localhost/127.0.0.1:62573
Connected to XSLT runner.

Process finished with exit code 0

在 XSLT 输出中,我可以看到完全创建的 HTML,我可以将其放入 .html 文件中,它可以正常工作。问题是当我想通过我的应用程序托管的服务器查看这个 HTML 时,例如本地主机:8080/sampleFile.xml。这正是这个标签的问题

<xsl:for-each select="tokenize(@inputDomain, ',')">
...
</xsl:for-each>

当我删除这个标签时,我可以看到我想要的整个 HTML。我认为这是在这些文件上启动标签的问题,但我不知道,也找不到任何答案。

XML 文件以

开头
<?xml version="1.0"?>
<?xml-stylesheet href="./interpreter.xsl" type="text/xsl" ?>
...

XSL 文件以

开头
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

【问题讨论】:

    标签: xml xslt-2.0 tokenize saxon saxon-js


    【解决方案1】:

    问题是浏览器只支持 XSLT 1.0 版,而fn:tokenize(...) 是 XSLT-2.0 的功能。因此,很遗憾,如果您想在浏览器中运行样式表,您只能使用 1.0 版。

    唯一的选择是使用Saxon-JS

    Saxon-JS 是用纯 JavaScript 编写的 XSLT 3.0 运行时。它旨在执行由 Saxon-EE 编译的样式表导出文件 (SEF)。

    但它不是免费的,所以你必须购买许可证。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-13
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-09
      • 1970-01-01
      相关资源
      最近更新 更多