【发布时间】:2017-06-01 03:55:44
【问题描述】:
是否可以在 DITA OT 1.8.5 中使用插件 com.elovirta.ooxml 将 DITA 转换为 DOCX
输入dita映射文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE map PUBLIC "urn:pubid:org:doctypes:dita:map" "map.dtd">
<map>
<title>This is a test DITA Map</title>
<topicref href="Bank.dita"/>
</map>
并输入dita文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE topic
PUBLIC "urn:pubid:doctypes:dita:topic" "topic.dtd">
<topic id="d63e3" xml:lang="en-US" outputclass="Student_Notebook">
<title outputclass="Title">Student Notebook</title>
<body>
<section outputclass="Handout"><title>Labs Student Notebook
1</title><p outputclass="SC_P_Large_Center">Module 1</p><p
outputclass="SC_P_Large_Center">Literacy Labs</p><p outputclass="SC_P_Large_Center">Student
Notebook</p><p outputclass="SC_P_Medium">________________ _______________ _______________
_______________ </p></section>
</body>
</topic>
docx 转换运行后,我得到如下错误日志:
docx.convert:
>[xslt] Processing E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\Test_MERGED.xml to E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\Test_CLEANED.xml
[xslt] Loading stylesheet C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\docx\word\document.flat.xsl
[xslt] Processing E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\Test_CLEANED.xml to E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\docx\docProps\core.xml
[xslt] Loading stylesheet C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\docx\docProps\core.xsl
[xslt] Processing E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\Test_CLEANED.xml to E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\docx\word\document.xml
[xslt] Loading stylesheet C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\docx\word\document.xsl
[xslt] C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\docx\word\document.topic.xsl:22:30: Warning! Stylesheet module file:/C:/DITA-OT/DITA-OT1.8.5-ELED/plugins/com.elovirta.ooxml/docx/word/document.topic.xsl is included or imported more than once. This is permitted, but may lead to errors or unexpected behavior
[xslt] C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\docx\word\document.topic.xsl:604:47: Fatal Error! No template exists named getVariable
[xslt] Failed to process E:\Vinod\2017\Jan\4-1\temp\docx\oxygen_dita_temp\Test_CLEANED.xml
构建失败 C:\DITA-OT\DITA-OT1.8.5-ELED\build.xml:44:执行此行时出现以下错误: C:\DITA-OT\DITA-OT1.8.5-ELED\plugins\com.elovirta.ooxml\build.xml:74: javax.xml.transform.TransformerConfigurationException: net.sf.saxon.s9api.SaxonApiException: 样式表编译失败:报告了 1 个错误 在 net.sf.saxon.jaxp.SaxonTransformerFactory.newTemplates(未知来源) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.readTemplates(TraXliaison.java:300) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.createTransformer(TraXliaison.java:317) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.transform(TraXliaison.java:178) 在 org.apache.tools.ant.taskdefs.XSLTProcess.process(XSLTProcess.java:876) 在 org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:414) 在 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 在 sun.reflect.GeneratedMethodAccessor4.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.Target.execute(Target.java:435) 在 org.apache.tools.ant.Target.performTasks(Target.java:456) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 在 org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1248) 在 org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:440) 在 org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) 在 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 在 sun.reflect.GeneratedMethodAccessor4.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 >org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.Target.execute(Target.java:435) 在 org.apache.tools.ant.Target.performTasks(Target.java:456) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 在 org.apache.tools.ant.Project.executeTarget(Project.java:1364) 在 >org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1248) 在 org.apache.tools.ant.Main.runBuild(Main.java:851) 在 org.apache.tools.ant.Main.startAnt(Main.java:235) 在 org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 在 org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) 引起:net.sf.saxon.s9api.SaxonApiException:样式表编译失败:报告1个错误 在 net.sf.saxon.s9api.XsltCompiler.compile(XsltCompiler.java:546) ... 35 更多 引起:net.sf.saxon.trans.XPathException:样式表编译失败:报告了1个错误 在 net.sf.saxon.style.Compilation.compileSingletonPackage(Compilation.java:97) 在 net.sf.saxon.s9api.XsltCompiler.compile(XsltCompiler.java:543)
... 35 更多
net.sf.saxon.s9api.SaxonApiException:样式表编译失败:报告 1 个错误 在 net.sf.saxon.s9api.XsltCompiler.compile(XsltCompiler.java:546) 在 net.sf.saxon.jaxp.SaxonTransformerFactory.newTemplates(未知来源) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.readTemplates(TraXliaison.java:300) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.createTransformer(TraXliaison.java:317) 在 org.apache.tools.ant.taskdefs.optional.TraXliaison.transform(TraXliaison.java:178) 在 org.apache.tools.ant.taskdefs.XSLTProcess.process(XSLTProcess.java:876) 在 org.apache.tools.ant.taskdefs.XSLTProcess.execute(XSLTProcess.java:414) 在 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 在 sun.reflect.GeneratedMethodAccessor4.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.Target.execute(Target.java:435) 在 org.apache.tools.ant.Target.performTasks(Target.java:456) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 在 org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1248) 在 org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:440) 在 org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) 在 org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 在 sun.reflect.GeneratedMethodAccessor4.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 在 org.apache.tools.ant.Task.perform(Task.java:348) 在 org.apache.tools.ant.Target.execute(Target.java:435) 在 org.apache.tools.ant.Target.performTasks(Target.java:456) 在 org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 在 org.apache.tools.ant.Project.executeTarget(Project.java:1364) 在 org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 在 org.apache.tools.ant.Project.executeTargets(Project.java:1248) 在 org.apache.tools.ant.Main.runBuild(Main.java:851) 在 org.apache.tools.ant.Main.startAnt(Main.java:235) 在 org.apache.tools.ant.launch.Launcher.run(Launcher.java:280) 在 org.apache.tools.ant.launch.Launcher.main(Launcher.java:109) 引起:net.sf.saxon.trans.XPathException:样式表编译失败:报告了1个错误 在 net.sf.saxon.style.Compilation.compileSingletonPackage(Compilation.java:97) 在 net.sf.saxon.s9api.XsltCompiler.compile(XsltCompiler.java:543) ... 35 更多
总时间:6秒
进程以退出代码结束:1
请帮助我。
【问题讨论】:
-
不,我认为您需要 DITA 2.x,因为读取 仅支持最新的稳定版本的 DITA-OT。来自github.com/jelovirt/com.elovirta.ooxml
-
但我只想使用 DITA 1.8.5 进行转换以解决该错误,请给我任何建议
标签: xml dita oxygenxml dita-ot