XML Validation Error: cvc-elt.1.a: Cannot find the declaration of element 'feed'
XML Validation Error: cvc-elt.1.a: Cannot find the declaration of element 'feed'
我创建了一个由解析器解析的 XML 文件。这是类似于 this 的 RSS 原子文件。它是第三方 java 解析器,我不知道其他详细信息。
XML 文件是
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<?xml-stylesheet href='http://alerts.weather.gov/cap/capatom.xsl' type='text/xsl'?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:cap="urn:oasis:names:tc:emergency:cap:1.2">
<title type="text">Feeds Test</title>
<subtitle type="text">Contains feeds generated by Me</subtitle>
<id>uuid:1f48fcf1-cf2d-40bf-896f-e0f318e0fa52;id=1</id>
<updated>2015-03-23T10:26:04Z</updated>
<generator>MNS</generator>
<link rel="self" type="text/html" title="TestRave Feeds" href="http://111.111.111.111//TestRave_atom_en_US.xml" />
<entry>
<id>6e21968e-ec73-46c8-bcf3-7bfb295ff59b</id>
<title type="text">LAUNCHED : 3/23/2015 10:26:03 AM: Title for CAP notification message in English</title>
<published>2015-03-23T10:26:03+05:30</published>
<updated>2015-03-23T10:26:03+05:30</updated>
<author>
<email>myname@domain.com</email>
</author>
<link rel="alternate" href="http://111.111.111.111//feed_6e21968e-ec73-46c8-bcf3-7bfb295ff59b_en_US.cap" />
<content type="text">LAUNCHED : 3/23/2015 10:26:03 AM: Short Text for CAP message</content>
<cap:records>3ae449ba-ec23-4c8d-9ea6-51d0078fd046</cap:records>
</entry>
</feed>
解析时,解析器在处理XML时抛出以下错误。
XML Validation Error: cvc-elt.1.a: Cannot find the declaration of
element 'feed'.
对这个问题有什么想法吗?
在您的情况下,该错误消息告诉您解析器无法在 http://www.w3.org/2005/Atom
命名空间中找到定义 feed
的 XSD。将 XSD 与文档实例相关联的一种方法是通过 xsi:schemaLocation
:
<feed xmlns="http://www.w3.org/2005/Atom"
xmlns:cap="urn:oasis:names:tc:emergency:cap:1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2005/Atom
http://exyus.com/xcs/tasklist/source/?f=put_atom.xsd">
请注意,xsi:schemaLocation
采用命名空间位置 对 。我冒昧地为您找到了一个可用的 Atom XSD。您可能想要不同的一个或同一个位置的不同位置。
您会发现您的下一个错误是由于您没有将 urn:oasis:names:tc:emergency:cap:1.2
与 XSD 相关联而导致的。您可以类似地解决该问题。
关闭它,因为它是文本格式。在某些地方,格式是 BOM 而不是 UTF
我创建了一个由解析器解析的 XML 文件。这是类似于 this 的 RSS 原子文件。它是第三方 java 解析器,我不知道其他详细信息。
XML 文件是
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<?xml-stylesheet href='http://alerts.weather.gov/cap/capatom.xsl' type='text/xsl'?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:cap="urn:oasis:names:tc:emergency:cap:1.2">
<title type="text">Feeds Test</title>
<subtitle type="text">Contains feeds generated by Me</subtitle>
<id>uuid:1f48fcf1-cf2d-40bf-896f-e0f318e0fa52;id=1</id>
<updated>2015-03-23T10:26:04Z</updated>
<generator>MNS</generator>
<link rel="self" type="text/html" title="TestRave Feeds" href="http://111.111.111.111//TestRave_atom_en_US.xml" />
<entry>
<id>6e21968e-ec73-46c8-bcf3-7bfb295ff59b</id>
<title type="text">LAUNCHED : 3/23/2015 10:26:03 AM: Title for CAP notification message in English</title>
<published>2015-03-23T10:26:03+05:30</published>
<updated>2015-03-23T10:26:03+05:30</updated>
<author>
<email>myname@domain.com</email>
</author>
<link rel="alternate" href="http://111.111.111.111//feed_6e21968e-ec73-46c8-bcf3-7bfb295ff59b_en_US.cap" />
<content type="text">LAUNCHED : 3/23/2015 10:26:03 AM: Short Text for CAP message</content>
<cap:records>3ae449ba-ec23-4c8d-9ea6-51d0078fd046</cap:records>
</entry>
</feed>
解析时,解析器在处理XML时抛出以下错误。
XML Validation Error: cvc-elt.1.a: Cannot find the declaration of element 'feed'.
对这个问题有什么想法吗?
在您的情况下,该错误消息告诉您解析器无法在 http://www.w3.org/2005/Atom
命名空间中找到定义 feed
的 XSD。将 XSD 与文档实例相关联的一种方法是通过 xsi:schemaLocation
:
<feed xmlns="http://www.w3.org/2005/Atom"
xmlns:cap="urn:oasis:names:tc:emergency:cap:1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/2005/Atom
http://exyus.com/xcs/tasklist/source/?f=put_atom.xsd">
请注意,xsi:schemaLocation
采用命名空间位置 对 。我冒昧地为您找到了一个可用的 Atom XSD。您可能想要不同的一个或同一个位置的不同位置。
您会发现您的下一个错误是由于您没有将 urn:oasis:names:tc:emergency:cap:1.2
与 XSD 相关联而导致的。您可以类似地解决该问题。
关闭它,因为它是文本格式。在某些地方,格式是 BOM 而不是 UTF