4

我再次不得不拼凑一些 XSLT 以将生成的 XML 转换为(而不是简单地生成 HTML)。

这一次我又有了巨大的似曾相识。我再次不得不再次解决基本问题,例如:

  • 如何将字符转换为有效的 html 实体引用
  • 转换为html时如何保留空格/回车符
  • 如何转换为 HTML 而不是 xhtml
  • 如何将日期从xml 格式转换为可呈现的格式
  • 如何用子字符串撕开字符串

这是我以前解决过很多次的所有问题。但是每次我回到 XSLT 时,我都必须从头开始,每次都重新发明轮子。

如果它是一种编程语言,我将拥有一个可以调用的罐装函数和程序库。我会有子程序来执行通常重复的任务。我将从已经实现丑陋样板文件的基类继承。

XSLT 中是否有任何方法可以通过固定代码来发展、扩展和改进生态系统?

4

1 回答 1

3

这是我以前解决过很多次的所有问题。但是每次我回到 XSLT 时,我都必须从头开始,每次都重新发明轮子。

当然,这不是必需的

如果它是一种编程语言

是的,XSLT一种编程语言

我会有一个可以调用的罐装函数和程序库。我会有子程序来执行通常重复的任务。

是的,您可以在 XSLT 中执行此操作。

我将从已经实现丑陋样板文件的基类继承。

是的,在 XSLT 中有一些非常相似的东西

XSLT 中是否有任何方法可以通过固定代码来发展、扩展和改进生态系统?

即使在 XSLT 1.0 中,也有强大的标准特性支持可重用性

  1. <xsl:import>
  2. <xsl:include>
  3. <xsl:apply-templates>
  4. <xsl:call-template>
  5. <xsl:apply-imports>

XSLT 2.0 添加了一些更强大的特性

  1. <xsl:function>
  2. 参数<xsl:apply-imports>
  3. <xsl:next-match>

有几个 XSLT 库已经有很长一段时间了

  1. FXSL 1.x2.x)在 XSLT 1.0/2.0 中实现高阶函数
  2. FunctX —— 一个有用的 XSLT 2.0 和 XQuery 函数库。

XPath 2.1XSLT 2.1 添加了高阶函数作为标准。函数成为一流的数据类型。

于 2010-05-01T04:01:25.753 回答