XML文件中的Doctype

时间:2015-06-05 07:53:05

标签: xml doctype

我无法完成将DOCTYPE添加到我的xml站点地图中。 W3C一直显示未找到doctype的错误(这是唯一的错误)。进一步没有错误,但每当我在文档的顶部放置一些doctype时,它会在重新验证后产生很多错误。可能是因为我能找到的任何doctype都是XHTML或HTML doctype,找不到XML doctype。谁可以帮助我在这里?

来自w3c的错误:

  

找不到DOCTYPE!仅检查XML语法。

构建xml文件的标头:

 $header = '<'.'?'.'xml version="1.0" encoding="UTF-8"?'.'>'."\n";
 $header .= "\t".'<urlset ';
 $header .= 'xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'."\n";
 return $header;

xml sitemap:

<?xml version="1.0" encoding="UTF-8"?>
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
    <loc>http://www.url.com/path</loc>
    <priority>1.0</priority>
    <changefreq>weekly</changefreq>
    <lastmod>2015-06-05</lastmod>
</url>
</urlset>

编辑:

截图: enter image description here

1 个答案:

答案 0 :(得分:0)

完成了。我添加了一个内联DTD作为DOCTYPE来修复问题:

<!DOCTYPE urlset [
<!ELEMENT urlset (url)+>
<!ELEMENT url (loc, priority, changefreq, lastmod)>
<!ELEMENT loc (#PCDATA)>
<!ELEMENT priority (#PCDATA)>
<!ELEMENT changefreq (#PCDATA)>
<!ELEMENT lastmod (#PCDATA)>
<!ATTLIST urlset xmlns CDATA #REQUIRED>