在DocBook 5(使用XSD而不是DTD)中编写大型手册时,我需要在很多地方提到版本名称。例如,分发zip的名称包括版本名称。该版本名称不断变化,因此我想使用变量。
如何在DocBook 5(使用XSD,而不是DTD)中进行变量替换?
答案 0 :(得分:2)
XML entity是一种宏或可替代的变量,因此我建议您使用其中的一个或多个。即使DTD未用于验证,也可以在任何XML文档中声明和引用实体。
version
实体(内部实体)的声明:
<?xml version="1.0"?>
<!DOCTYPE book [
<!ENTITY version "Version X">
]>
<book xmlns="http://docbook.org/ns/docbook" version="5.0">
...
</book>
对version
实体的引用:
<book xmlns="http://docbook.org/ns/docbook" version="5.0">
...
<para>The current version is &version;</para>
</book>
解析文档时,解析器会将所有&version;
替换为Version X
。
此处有更多详情和建议:http://www.sagehill.net/docbookxsl/Db5Entities.html。