代码之家  ›  专栏  ›  技术社区  ›  mherzl

如何确定我的DocBook文件是否有效?

  •  0
  • mherzl  · 技术社区  · 6 年前

    我有一个文件 me.xml . 当我试图将其转换为PDF时,总是会出错,我不确定转换器或我的文件是否有问题。

    有没有一种快速的,故障保护的方法,我可以测试我的文件是否是正确格式化的DocBook?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Eduard Tibet    6 年前

    首先,您需要知道它是docbook 5.x还是docbook 4.5。

    DocBook 4.5示例标题:

    <?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>
      <articleinfo>
        <title/>
    
        <author>
          <firstname/>
    
          <surname/>
    
          <affiliation>
            <orgname/>
          </affiliation>
        </author>
    
        <pubdate/>
      </articleinfo>
    
      <section>
        <title/>
    
        <para/>
      </section>
    </article>
    

    DocBook 5.1示例标题:

    <?xml version="1.0" encoding="UTF-8"?>
    <chapter version="5.1"
      xmlns="http://docbook.org/ns/docbook"
      xmlns:xlink="http://www.w3.org/1999/xlink"
      xmlns:xila="http://www.w3.org/2001/XInclude/local-attributes"
      xmlns:xi="http://www.w3.org/2001/XInclude"
      xmlns:trans="http://docbook.org/ns/transclusion"
      xmlns:svg="http://www.w3.org/2000/svg"
      xmlns:m="http://www.w3.org/1998/Math/MathML"
      xmlns:html="http://www.w3.org/1999/xhtml"
      xmlns:db="http://docbook.org/ns/docbook">
      <info>
        <title>Introduction</title>
      </info>
      <section>
        <info>
          <title>Chapter title</title>
        </info>
        <para>
        You can see an example:
        </para>
        <example>
        <title>main example</title>
          <programlisting language="c">
          </programlisting>
        </example>
      </section>
    </chapter>
    

    如何验证:

    1. 如果使用编辑器创建/编辑DocBook文件(如 XMLMind XML Editor Oxygen Author )-完全由编辑负责进行验证,并告诉您DocBook文档中是否有错误。此外,编辑器不允许您进行错误的元素插入。

    2. 万一你只是 xml 文件和/或在任何文本编辑器中创建-您需要工具根据命令行中的模式来验证它。

    注释1 :如果您正在使用docbook 5.x并尝试根据松弛模式和Schematron模式进行验证,请考虑以下信息: https://superuser.com/questions/741957/validating-docbook-5-documents-against-both-relaxng-and-schematron

    注释2 :不要忘记有两种正确的形式 XML 文件:格式良好(针对XML规范的正确性)和有效性(针对特定XML词汇表的正确性)。

    推荐文章