0

私は使用するかもしれませんxl:

<?xml version="1.0"?>
<article xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" version="5.0">
    ...
</article>

または私は使用する必要がありますかxlink

<?xml version="1.0"?>
<article xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0">
    ...
</article>

?

4

1 に答える 1

1

Xml 検証と名前空間は、通常、XML スキーマ (XSD) 仕様のコンテキストで問題を設定しますが、ドキュメント タイプ定義 (DTD) 仕様のコンテキストで質問に答えることができます。

に対する検証docbook.dtd

XML スキーマは DTD の後継者であり、 XSDは名前空間をサポートしていますが、DTD はそれらをサポートしていないため、ドキュメント タイプ宣言と名前空間docbook.dtdを使用する必要がある理由を最初に慎重に検討してxmlns:xlinkください

に対する検証docbook.xsd

検証するdocbook.xsd場合は、好きなものを使用できますが、予約済みの 3 文字のシーケンス x、m、l、いずれにせよ組み合わせ. たとえば、 DocBook V5.0 - The Transition Guidetest.xmlから直接引用した次の例は、成功して検証されます。

$ ls
docbook.xsd  test.xml  xlink.xsd  xml.xsd
$ xmllint --schema docbook.xsd test.xml 
<?xml version="1.0"?>
<article xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" version="5.0">
    <title>Test</title>
    <section>
        <title>LS command</title>
        <para xml:id="ls">
            This command is a synonym for <command linkend="dir">DIR</command> command.
        </para>
        <para xml:id="dir">
            This command is a synonym for <command linkend="ls">LS</command> command.
        </para>
        <para>
            <application xl:href="http://www.gnu.org/software/emacs/">Emacs</application>
        </para>
    </section>
</article>
test.xml validates
$ 
于 2014-03-09T13:42:58.740 に答える