Perl是否有强大的XSLT2.0处理器?我刚尝试了XML :: LibXSLT,它不支持analyze-string,regex等。我害怕使用XML :: Saxon :: XSLT2来完成我的工作因为它使用Java而我不想添加那是我的依赖列表。你们用什么库来进行XSL2.0转换?
干杯,
答案 0 :(得分:6)
所以你在寻找用Perl编写的XSLT 2.0处理器吗?
不,你绝对不会不想要一个纯Perl XSLT处理器。结果将是极其缓慢和内存密集的,更不用说你想要一个在现场经过全面测试的库,其数量远远超过在Perl中执行XSLT的相对较少的用户群。这就是LibXSLT如此受欢迎的原因,因为它是一个快速而坚实的C库,它周围有一个最小的Perl包装器。除非你使用像Komodo那样的断点和变量检查的GUI调试器,否则调试并不会那么复杂。
但是要回答你的问题:目前唯一完全兼容的 XSLT 2.0处理器是Saxon,它是一个功能齐全的商业Java库和一个精简的开源版本 - 两者都是由编写XSLT 2.0规范的同一个人(我想知道哪个是先写的?)。鉴于规范的复杂性,很可能长期保持这种状态。
因此,如果不希望使用Java库,也许您应该问自己是否真的需要完整的2.0功能列表,或者是否满足于使用其他一些库来实现“XSLT 1.5”,这些库正在缓慢而痛苦地进行