我觉得自己很愚蠢……感谢 Mark Veenstra 的评论,这让我找到了明显的答案:-)
确实有一个示例项目Multiple Languages
提供了几种解决我的问题的方法。案件结案 - 几乎。
它现在在 StyleVision 用户界面中工作,我选择了第二种输入文件方法。但是现在我无法通过 AltovaXML.exe 工具在命令行上生成报告。如何将第二个输入文件(我的 XML 文件包含翻译)指定给处理器?通过 -in 参数似乎只能识别一个输入文件。在生成的 XSLT 中我看到
<xsl:variable name="Translation" select="document($Translation)"/>
它与 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'
成功了。案件结案——这次是真的。