【问题标题】:Can I use javascript in my XSLT transformations?我可以在我的 XSLT 转换中使用 javascript 吗?
【发布时间】:2018-01-11 08:09:45
【问题描述】:

我目前正在使用 XSL 将新闻站点转换为特殊的 XML 格式。

然而,一些涉及大量逻辑和解析的事情变得越来越乏味。

是否可以将 javascript 函数直接写入 XSL 文件,然后在我的转换中使用所述函数?因为那会让我的生活更轻松。

非常感谢您的帮助

【问题讨论】:

  • 这是一个使用微软 xslt 处理器的答案here。
  • 您运行的是服务器端还是客户端?答案基本上是:(a) 一些 XSLT 处理器支持这一点,而另一些则不支持,(b) 如果您使用 XSLT 2.0 处理器,对它的大部分需求就消失了,因为用 XSLT 本机编写大多数东西同样容易功能。

标签: javascript xml xslt transformation


【解决方案1】:

虽然一些处理器支持使用 JScript 或 Javascript 等其他语言编写扩展函数,但您通常只能访问核心语言(即 ECMAScript 3),而没有像在浏览器中使用 Javascript 时可能习惯的那样支持主机或 DOM .因此,是否完全支持这一点取决于您选择的 XSLT 处理器,这是否让生活变得如此轻松的可能性更小。这些天来,您可能想检查是否无法在支持user-defined functions 和丰富的type system/data model 和function library 的情况下迁移到XSLT 3.0。 Saxon 9.8(在 Maven 和 Sourceforge 上的开源 HE 中可用)和 Altova XML Spy 和 Raptor 已经支持 XSLT 3.0。甚至自 2007 年以来存在的 XSLT 2.0 也允许使用 XSLT 编写用户定义的函数,并具有正则表达式支持(ECMAScript 可能在 XSLT 1.0 中为您带来的唯一好处),其中包含函数 matches、tokenize 和元素 @987654329 @。

【讨论】:

    猜你喜欢
    • 2011-12-12
    • 1970-01-01
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多