外部dtd(xml)中的外部实体引用

abh*_*eet 3 xml dtd entity reference external

我在外部DTD中使用外部实体引用时遇到一些问题

例如

[name.xml的]

<?xml version="1.0" ?>
<!DOCTYPE simple SYSTEM "simple.dtd">
<simple>
       <name> &a;   </name>
       <age>  21   </age>
       <address> bsk street </address>  
</simple>
Run Code Online (Sandbox Code Playgroud)

[name.dtd]

<?xml version="1.0" ?>
<!ELEMENT simple (name,age,address)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT address (#PCDATA)>
<!ELEMENT a "abhijeet">
Run Code Online (Sandbox Code Playgroud)

当我在Internet Explorer上运行此程序时,我收到错误...

Dan*_*ley 8

那是因为您使用ELEMENT声明来声明实体.

这是您的ENTITY声明应如下所示:

<!ENTITY a "abhijeet">
Run Code Online (Sandbox Code Playgroud)

此外,您[name.dtd]的示例中还有您的系统标识符simple.dtd.确保您的系统标识符指向正确的DTD.

内部子集的示例:

<?xml version="1.0"?>
<!DOCTYPE simple SYSTEM "simple.dtd" [
<!ENTITY a "abhijeet">
]>
<simple>
  <name> &a;   </name>
  <age>  21   </age>
  <address> bsk street </address>
</simple>
Run Code Online (Sandbox Code Playgroud)