感谢您阅读我的问题。我已经搜索并阅读了类似的问题,但没有一个能完全解释发生了什么。
我有一个 XML 文件:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="../wikiStyle.css"?>
<!DOCTYPE article SYSTEM "../article.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
<header>
<title>Foreign relations of Malta</title>
<id>19146</id>
</header>
<bdy>
<link xlink:type="simple" xlink:href="../205/40205.xml">Albania</link> ·
<link xlink:type="simple" xlink:href="../588/67588.xml">Andorra</link> ·
</bdy>
</article>
如你看到的; 我引用了 .dtd 文件,它包含如下定义:
<!ENTITY nbsp " "> <!-- no-break space = non-breaking space,
U+00A0 ISOnum -->
我的目标是在浏览器中以可读的方式显示这个 .xml 文件。CSS 完美地管理了这一点,除了 .xml 文件,比如这个,它包含像nbsp 这样的元素;
在这种情况下,我会收到如下错误:
XML Parsing Error: undefined entity
10.1126/science.288.5472.1775</weblink>. PMID 10877698.</cite> </entry>
--------------------------------------------------------------^
据我了解,.dtd 中的这一行应该向浏览器声明此元素,并使我能够在我的 xml 中使用 (并通过浏览器的解析器将其扩展为 以进行显示。
- 我对应该发生的事情的理解是否正确,或者我错过了什么?
- 如何声明此元素以便浏览器显示它?
请注意:我正在处理数百万个这些 XML 文件,但我不生成它们。我需要一个不涉及更改 .xml 文件本身的解决方案。