IntelliJ IDEA中的XSLT 2支持

问题描述 投票:0回答:1

我在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,例如localhost:8080sampleFile.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
1个回答
0
投票

问题是,浏览器只支持XSLT 1.0版本和 fn:tokenize(...) 是一个XSLT-2.0函数。所以,不幸的是,如果你想在浏览器中运行你的样式表,你只能使用1.0版本。

唯一的选择是使用 撒克逊-JS:

Saxon-JS是一个用纯JavaScript编写的XSLT 3.0运行时。它被设计用来执行由Saxon-EE编译的样式表导出文件(SEF)。

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

© www.soinside.com 2019 - 2024. All rights reserved.