XSLT是否始终适用?

时间:2012-12-06 16:48:15

标签: xslt

这只是出于好奇而产生的问题。

有人能举例说明与使用XSLT模板无法解决的XML处理相关的问题吗?

2 个答案:

答案 0 :(得分:1)

声称“用某种语言无法进行特定的计算或某种特定的操作”是不公平的......因为世界上某个地方会有一个人提供扩展并证明它是有可能:)

好。 XSLT旨在将XML转换为所需的格式,如XML / HTML / Text(包括生成CSV文件)和XSLT是完美的!!

分享我的个人经验,我在XSLT 1.0中遇到的操作难度很小。例如:datetime操作(添加减去两个日期时间值)。但幸运的是msxsl支持内联脚本,这解决了我的问题!

你为什么不试着想象一下你的想象力?如果你被困在某个地方,那么让其他成员有时间解决这些难题:)

答案 1 :(得分:1)

处理XML文档通常是处理两件事的情况 - 文档本身的结构和各个节点内的内容。

例如,如果您想使用XSLT 1.0在所有foo节点上进行正则表达式替换,那么编写与这些节点匹配的模板很容易,但实际上对内容进行正则表达式替换非常困难,你需要编写自己的正则表达式解析器。在这种情况下,让宿主语言获得带有XPath的节点列表更有意义,并处理替换本身。

其次,某些解决方案在XSLT中效率不高。以这个问题为例:efficient xslt conditional increment,尽管OP所说的当然是完全可能的,但XSLT并不是最有效的语言。我可以轻松地在一次通过中更有效地完成程序性语言。

另一个论点当然是关于可维护性 - 您编写的是您的团队能够维护的代码。如果你的团队中没有其他人知道XSLT,那么在短期内你可能会更好地使用他们所知道的东西(尽管让他们学习XSLT总是一个好计划,如果你有时间/预算)。