我希望能够以编程方式生成Docbook xml文件,方法是调用Java API来构建DOM,然后将其发送到格式正确的文件中。不幸的是,我无法找到以这种方式使用Java绑定的任何示例,所以我被卡住了。
有人帮助从5.x Docbook XSD生成了Java绑定并停放了it here。
维基百科有nice short HelloWorld-type example我希望生成的内容,但我似乎无法确定在何时调用哪些方法:
<?xml version="1.0" encoding="UTF-8"?>
<book xml:id="simple_book" xmlns="http://docbook.org/ns/docbook" version="5.0">
<title>Very simple book</title>
<chapter xml:id="chapter_1">
<title>Chapter 1</title>
<para>Hello world!</para>
<para>I hope that your day is proceeding <emphasis>splendidly</emphasis>!</para>
</chapter>
<chapter xml:id="chapter_2">
<title>Chapter 2</title>
<para>Hello again, world!</para>
</chapter>
</book>
或者,如果不这样做,我怎么能将上面的例子解析为Java绑定?
答案 0 :(得分:0)
从我的角度来看,无法正确绑定像DocBook这样的复杂模式。几乎可以无限制地组合元素,而且,DocBook使用混合内容,这会带来另一层复杂性,请参阅https://blogs.oracle.com/mgrebac/entry/handling_extended_mixed_content_in
如果您的源具有固定的结构,则可以通过各种方式生成最终的XML。我将从StAX https://docs.oracle.com/javase/tutorial/jaxp/stax/why.html
开始