【问题标题】:XML File Error ValidationXML 文件错误验证
【发布时间】:2017-03-23 19:21:07
【问题描述】:

当我在https://validator.w3.org/feed/check.cgi 放置要检查和验证的产品 Xml Dtd 文件时,我得到了这个答案:

“对不起

此 Feed 未通过验证。 第 3 行,第 0 列:未定义的根元素:目录"

我在这里放置了产品目录 XML DTD 代码的一部分,所以有人可以帮助我找出错误在哪里以及如何修复它。另一个验证器站点说它在“1”行和“1”列有一个空白,因此无法验证。请问,我必须做什么?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE product_catalog SYSTEM "http://www.sitename.com/content/dtd/product_catalog_1_1.dtd">
<catalog>
<product>
<programname>SiteName.com</programname>
<programurl>http://www.sitename.com?aff=lmcom</programurl>
<catalogname>Productfeed Master EN / USD</catalogname>
<lastupdated>2017-03-20 09:01:30.22</lastupdated>
<name>Dolce &amp; Gabbana blouse</name>
<keywords>Dolce &amp; Gabbana, Cotton, Elastane, dark blue</keywords>
<description>Timeless Dolce &amp; Gabbana shirt.</description>
<sku>F-01-Bl-40751</sku>
<manufacturer>Dolce &amp; Gabbana</manufacturer>
<upc>4251259825500</upc>
<currency>USD</currency>
<price>69</price>
<retailprice>249</retailprice>
<buyurl>http://www.sitename.com/click-9XXXXX6-YYYYYYYY?url=http%3A%2F%2Fwww.sitename.com%2Fus%2Ftimeless-dolce-and-gabbana-shirt-5.html</buyurl>
<impressionurl>http://www.ftjcfx.com/image-9XXXXX6-YYYYYYYY</impressionurl>
<imageurl>http://images.sitename.uk/productimages/export_big/40700_1.jpg</imageurl>
<advertisercategory>Women &gt; blouse</advertisercategory>
<instock>yes</instock>
<standardshippingcost>16.57</standardshippingcost>
</product>
<product>
<programname>SiteName.com</programname>
<programurl>http://www.sitename.com?aff=lmcom</programurl>
<catalogname>Productfeed Master EN / USD</catalogname>
<lastupdated>2017-03-20 09:01:30.438</lastupdated>
<name>Carrera sunglasses</name>
<keywords>Carrera, Metal, purple</keywords>
<description>Carrera. 100% Metal.</description>
<sku>U-83-So-43547</sku>
<manufacturer>Carrera</manufacturer>
<upc>4251259925500</upc>
<currency>USD</currency>
<price>59</price>
<retailprice>129</retailprice>
<buyurl>http://www.sitename.net/click-9XXXXX6-YYYYYYYY?url=http%3A%2F%2Fwww.sitename.com%2Fus%2Fcarrera-11.html</buyurl>
<impressionurl>http://www.ftjcfx.com/image-9XXXXX6-YYYYYYYY</impressionurl>
<imageurl>http://images.sitename.uk/productimages/export_big/43701_1.jpg</imageurl>
<advertisercategory>Unisex &gt; sunglasses</advertisercategory>
<instock>yes</instock>
<standardshippingcost>16.57</standardshippingcost>
</product>
</catalog>

【问题讨论】:

    标签: xml validation dtd


    【解决方案1】:
    <!DOCTYPE product_catalog SYSTEM "http://www.sitename.com/content/dtd/product_catalog_1_1.dtd">
    <catalog>
    

    出现在 DOCTYPE 之后的名称必须与最外层的元素名称匹配,例如

    <!DOCTYPE catalog SYSTEM "http://www.sitename.com/content/dtd/product_catalog_1_1.dtd">
        <catalog>
    

    【讨论】:

    • 您好 Michael Kay,在听从您的建议后,该网站附带了以下说明:This feed does not validate. line 3, column 0: Undefined root element: catalog &lt;catalog&gt; 有人说在上传文件并尝试验证太多次后无法进行验证,即它的情况。它之前由站点验证器验证:validome.org/xml;无法达到的; DNS address could not be found. Try running Windows Network Diagnostics. DNS_PROBE_FINISHED_NXDOMAIN谢谢!温暖的问候!干杯!法伯
    • 也许你需要把它改成product_catalog。我不知道哪个是正确的,我只是说它在实例和 DTD 中必须相同。
    • 还是catalog_product?这里英语语法符合代码语法!谢谢!法伯。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多