0

我正在尝试将 XML 文档上传到数据库中以获取元数据。多年来,我一直使用这个 XML 作为模板。直到最近我才遇到任何问题。

当我上传时,我不断收到错误消息:

未找到预期的 DTD 标记。第 1 行,位置 3。

我没有太多的 XML 经验,但 XML 中的标头是这样的:

?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE metadata SYSTEM "http://www.fgdc.gov/metadata/fgdc-std-001-1998.dtd"><metadata>

我点击了链接,它把我带到了 USGS.gov 网站。一个介绍页面告诉我,由于联邦政府持续关闭,USGS 网站已关闭。我想知道是否有任何 XML 专家可以告诉我该网站是否需要处于活动状态才能让我的 XML 从中读取 DTD?如果我说得对,是否有可能的解决方法?

谢谢,迈克

4

1 回答 1

0

好吧,我讨厌这么快回答我自己的问题,但我想我找到了问题所在。

XML 的第一行如下所示:

?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE metadata SYSTEM "http://www.fgdc.gov/metadata/fgdc-std-001-1998.dtd"><metadata>

原来该行中的 fgdc 网站链接引用了 USGS.gov 网站。由于美国联邦政府关闭,该网站现在已关闭。我相信 XML 正在尝试从该站点引用 DTD 标记,并且由于该网站已关闭,它破坏了引用。

我在这里找到了 fgdc-std-001-1998.dtd 的副本:

我将标记复制并粘贴到 xml 编辑器中,将其保存为本地驱动器上的相同名称,并更改了 xml 中的引用。这似乎工作正常。

于 2013-10-08T21:09:24.360 回答