我正在使用Altova Stylevision 2011 Enterprise生成一个XSLT文件,该文件用于根据一些XML数据生成报表。我正在寻找一种增加本地化的方法。
我希望在XML中有一个标记,比如<language>en</language>,然后让XSLT从一组特定的字符串中选择,例如,基于该值的标题。
有什么想法吗?如何在StyleVision文件中实现这一点?
我不喜欢使用本地化静态文本的SPS文件(每一种语言),因为当设计发生变化时,我们必须更新所有这些文件.
感谢您的反馈!
发布于 2014-07-22 12:48:14
我觉得很蠢..。感谢马克·韦恩斯特拉的评论,这使我想到了显而易见的答案:-)
确实有一个示例项目Multiple Languages提供了解决我的问题的几种方法。案子结束了-差不多了。
它现在在StyleVision用户界面中工作,我选择了第二种输入文件方法。但是现在我很难通过AltovaXML.exe工具在命令行上生成报告。如何将第二个输入文件(包含翻译的XML文件)指定给处理器?似乎只有一个输入文件是通过-in参数识别的。在我看到的生成的XSLT中 ” ,它与UI的“源”选项卡中的转换XML名称相匹配,以及 xsl:value-of-select="$Translation/id("TITLE")/Translation[@Language=$XML/data/language]"/ 其中匹配要翻译的文本。目标语言在
$XML/data/language中引用。 当我这么做 AltovaXML.exe -xslt2 Report.xslt -in Data.xml -out Report.fo 没有输出要翻译的字符串,也不会产生错误消息. 我现在少了什么?
再次找到解决方案: AltovaXML需要第二个输入文件作为参数:添加-param Translation='Localization.xml'就可以了。案子结了-这次是真的。
https://stackoverflow.com/questions/24885569
复制相似问题