docbook5.0放出已经有一段时间了,正好要用docbook写文档,决定要遵循5.0标准,索性就把5.0的一些新特性记录下来.
今天先说说5.0的文档声明与4.0有什么不同,docbook5已经不推荐使用dtd,取而代之的是RELAX NG,RELAX NG(读作“relaxing”),是一种基于语法的 XML 模式语言,可用于描述、定义和限制 XML 词汇表。通过本文了解某些人不喜欢使用文档类型定义(Document Type Definition,DTD)的原因,以及 RELAX NG 如何针对它进行改善.如果你想更深的了解RELAX NG,可以去google搜索一下,介绍性的文档很多.
下面比较一下4.0和5.0在文档声明上的不同,先看看4.0
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->
<?
xml version="1.0" encoding="utf-8"
?>
<!
DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'
>
<
article
lang
="en"
>
<
title
>
Sample article
</
title
>
<
para
>
This is a very short article.
</
para
>
</
article
>
下面是5.0的新方法
<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->
<?
xml version="1.0" encoding="utf-8"
?>
<
article
xmlns
="http://docbook.org/ns/docbook"
version
="5.0"
xml:lang
="en"
>
<
title
>
Sample article
</
title
>
<
para
>
This is a very short article.
</
para
>
</
article
>
注意!5.0里的语言声明方式采用标准方法xml:lang="en",这是简写方法,全写应该是xml:lang="en-US".
下一篇介绍如何使用新的RELAX NG来验证docbook.