我使用单独的 .dtd 文件作为自定义 xml 文件的 doctype:
名称.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>
名称.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也不起作用。
<!ENTITY
但是,当将内部 a<!DOCTYPE
放入时,这似乎确实有效names.xml
。有人可以就此提出建议吗?