XSLT转换结果在Windows和Unix中有所不同

时间:2013-08-05 16:56:49

标签: xslt xslt-1.0

我有一个有趣且奇怪的问题。当我使用Eclipse IDE以编程方式运行XSLT转换时,我得到了所需的输出,如下所示:

      <Schedule>
      <Date>10/13/2013</Date>
      <Amount>2000</Amount>
      </Schedule>

在Solaris框中使用相同的XSLT,转换结果为:

       <Schedule>
       <Amount>2000.0</Amount>
       </Schedule>

现在是

的谜团
      <Date>10/13/2013</Date> 

块在UNIX中不可见。此外,现在的数量是2000.0,而我的Eclipse输出中的数量是2000。 我很确定SAME XSLT正在两个操作系统中被选中。我真的很困惑为什么转换输出在Windows(期望)和Solaris(不合需要)中是不同的。期待从那里解开所有大师的神秘面纱。

1 个答案:

答案 0 :(得分:0)

确定。我终于找到了原因。在Unix中,xslt正在针对XSD进行验证,该XSD要求Date字段为DateType,即YYYY-MM-DD,而我在MM / DD / YYYY中传递日期。具有讽刺意味的是,当我在eclipse IDE中运行它时,它没有抱怨MM / DD / YYYY值。无论如何,就目前而言,我的问题已经解决,并感谢所有人对此进行调查。