我很奇怪,为什么这个Docbook的5.0文档是无效的:验证的Docbook 5.0,链接/ LINKEND
<?xml version='1.0' encoding='utf-8'?>
<article xmlns='http://docbook.org/ns/docbook' xmlns:xlink='http://www.w3.org/1999/xlink' version='5.0'>
<section xml:id='H_0'>
<title>This is a title</title>
<para>
Blah <link linkend='H_0'>This is a link</link>blah blah blah.</para>
</section>
</article>
以下是我从xmlstarlet
得到:
$ xmlstarlet val --err --xsd /usr/share/xml/docbook/schema/xsd/5.0/docbook.xsd test.xml
test.xml:3.22: Element '{http://docbook.org/ns/docbook}section', attribute '{http://www.w3.org/XML/1998/namespace}id': '' is not a valid value of the atomic type 'xs:ID'.
test.xml:6.25: Element '{http://docbook.org/ns/docbook}link', attribute 'linkend': '' is not a valid value of the atomic type 'xs:IDREF'.
test.xml - invalid
我只是想在内部链接该文件,以部分。
此外:也许这是一个xmlstarlet问题,因为其他工具快乐地处理文件。无论如何,如果有人能够解释这个问题,我会很高兴。
非常感谢。 'xmlstarlet --version'实际上打印出一个空行,但它是libxml 2.9.2和libxslt 1.1.28使用Ubuntu。 –
奇怪。可以改为libxml2版本中的错误,我猜 – sideshowbarker
另外,Docbook权威指南中没有提到“info”。 –