包括文件中的XML实体

时间:2014-04-09 22:44:29

标签: xml docbook docbook-5

我会直言不讳:
有没有更好的方法在DocBook文档中包含一组常用的字符实体?因为必须一直输入—而不是—非常烦人。

我有什么:

<!DOCTYPE chapter [
    <!ENTITY ndash  "&#x2013;">
    <!ENTITY mdash  "&#x2014;">
    <!ENTITY lsquo  "&#x2018;">
    <!ENTITY rsquo  "&#x2019;">
    <!ENTITY hellip "&#x2026;">
    <!ENTITY sbquo  "&#x201A;">
    <!ENTITY ldquo  "&#x201C;">
    <!ENTITY rdquo  "&#x201D;">
]>
<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" 
         xml:id="fancy-chapter">
    ...
</chapter>

这对我来说似乎并不干净,所以我想我会尝试其他的东西......
我做了什么:

<!DOCTYPE chapter [
    <!ENTITY % type SYSTEM "type.xml">
    %type;
]>
<chapter xmlns="http://docbook.org/ns/docbook" version="5.0" 
         xml:id="fancy-chapter">
    ...
</chapter>

type.xml:

<!ENTITY ndash  "&#x2013;">
<!ENTITY mdash  "&#x2014;">
<!ENTITY lsquo  "&#x2018;">
<!ENTITY rsquo  "&#x2019;">
<!ENTITY hellip "&#x2026;">
<!ENTITY sbquo  "&#x201A;">
<!ENTITY ldquo  "&#x201C;">
<!ENTITY rdquo  "&#x201D;">

略有改进,但是没有单线解决方案,或者可以打电话说处理器指令&#34;嘿,请查看此文件以查找您无法找到的所有花哨参考文件&# 34;

我想这可以通过某种形式的DocBook架构的本地超集来实现,不是吗?

1 个答案:

答案 0 :(得分:1)

更简单的是根本不使用实体。相反,只需写下这些字符。毕竟,默认情况下,XML是Unicode 如果您明确要使用实体,那么您当前的方法几乎与recommended in the Docbook FAQ一样。