debugging 用于调试xslt的工具

elcex8rz  于 2023-03-08  发布在  其他
关注(0)|答案(9)|浏览(210)

我有一个Java servlet,它生成xml,用xslt样式表翻译它,然后显示生成的HTML。这是我第一次使用xslt。调试xslt的好方法是什么?我也有(或者可以得到)一些示例XML文件来应用转换。但是我甚至不确定语法,所以能给予我语法警告的东西会很好。

s8vozzvw

s8vozzvw1#

如果你想进行“printf-style”调试,并且不想在输出中添加调试数据,那么可以使用<xsl:message>标签在处理样式表时生成调试输出,使用terminate="yes"属性你甚至可以停止样式表的处理。

egmofgnx

egmofgnx2#

当你试图使用一个无效的XSLT时,Xalan应该会给予你一些有用的错误提示。如果你想要更强大的东西,一个调试XSLT的选项是Oxygen XML Editor。它集成了Xalan和Saxon转换引擎。它的调试模式允许你设置断点,监视变量,并提供其他类似的基本调试功能。它可能对你来说有点过头了,但它非常好。

hwazgwia

hwazgwia3#

我曾经不得不编写和调试一些复杂的XSLT文档。当时我通过输出大量中间值使用调试过的“printf-style”。后来我发现有一种更简单的方法来完成这一任务-Altova XMLSpy。它允许您单步执行样式应用过程,观察中间输出等。
VS 8还支持XSLT调试。http://msdn.microsoft.com/en-us/library/ms255605(VS.80).aspx
我还应该提到XMLSpy和VS 8都有语法高亮显示,如果你在XML中指定了XSD,VS 8甚至会给你智能感!

dxpyg8gm

dxpyg8gm4#

PHPStorm和其他IntelliJ IDE(商业)支持debugging XSLT。您可以逐步浏览文档并查看逐步生成的输出。

c6ubokkw

c6ubokkw5#

我几乎每天都在使用XSLT,已经有六七年了。
我发现XSLT的“printf风格”调试非常有效,以至于我从未从使用任何其他调试机制中获得过好处(我尝试过XMLSpy和Visual Studio)。有时候确实会发生这样的情况,我希望能够检查变量的值,但构建输出它的逻辑是一件麻烦的事情。但这种情况非常罕见。
有一个调试器可能会使 * 学习 * XSLT变得更容易(任何东西都会这样)。

flvlnr44

flvlnr446#

在学习时,语法高亮编辑器通常对我来说就足够了(当然是在另一个窗口打开参考文档的情况下。
Kate是XML和XSLT的优秀编辑。

avwztpqn

avwztpqn7#

Xselerator是一个很棒的XSL调试工具,它可以:

  • 使您能够逐步浏览XSLT域
  • 创建监视语句
  • 根据XML DOM评估XPath语句
  • 具有智能感知功能的IDE

我已经用了很多年了,这是一个很好的工具。

tcbh2hod

tcbh2hod8#

针对使用<xsl:message>调试XSLT 3.0的解答:
XSLT 3.0有一个新的serialize()函数,在xsl:message指令中使用该函数会有所帮助。
但是,对于新的arraymap类型,您需要使用adaptive序列化方法,而不是默认的XML序列化:

<xsl:message select="serialize($n, map{'method':'adaptive'})"/>

serialize当前的缺点是它不格式化输出。
一个小的xpath-result-serializer XSLT project提供ext:print()ext:println()函数作为serialize()的替代,它们格式化(并可选地着色)XSLT输出。
输出文本使用为人类读者优化的Map/数组的缩写表示法,而不是解析器。对于具有上下文的XML节点,XPath位置与任何文本或属性值一起输出。

e0uiprwp

e0uiprwp9#

Microsoft Visual Studio也是一个很好的xslt调试工具。但是您必须安装

相关问题