我正在使用一个单独的 .dtd 文件作为我的自定义 xml 文件的文档类型:
names.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE name SYSTEM "names.dtd">
<names>
<name>
<text>Pepé</text>
<creator>&lost;</creator>
<history>&lost;</history>
</name>
<name>
<text>Charles</text>
<creator>James</creator>
<history>&lost;</history>
</name>
</names>
names.dtd
<!ELEMENT name (text, creator+, history)>
<!ELEMENT text (#PCDATA)>
<!ELEMENT creator (#PCDATA)>
<!ELEMENT history (#PCDATA)>
<!-- Placeholder/unknown history or creator name -->
<!ENTITY lost "Lost in the depths of time.">
<!ENTITY eacute "é">
然而尝试访问names.xml时,我收到了以下错误:
XML解析错误:未定义的实体 位置: http://localhost/.../names.xml 第5行, 第18列:
<text>Pepé</text>
---------^
仅作澄清,names.xml和names.dtd在同一目录下,使用http://localhost/.../names.dtd也不起作用。
然而,在names.xml
中将<!ENTITY
放入<!DOCTYPE
中似乎是可行的。有人能提供建议吗?