簡體   English   中英

外部dtd驗證錯誤:XML解析錯誤

[英]External dtd validation error: XML Parsing Error

我已經嘗試了所有可以想到的所有內容,已經一遍又一遍地數過並重新計算了lt和gt,但是此外部dtd文件始終無效,並顯示以下消息:“ XML解析錯誤@第30行(最后一行包含“]>”):起始標簽應為“ <”。 誰能幫我嗎? 多謝!

<?xml version="1.0"?>
<!DOCTYPE items 
[
<!ELEMENT items (item+)>
<!ELEMENT item     (description, country, sellingPrice, cost, quantityOnHand, 
                    backorderedAmount, dateLastReceived, quantitySoldYearToDate, 
                    warehouseSection, warehouseShelve, remarks, supplier, supplier+)>
<!ATTLIST item itemNumber ID #REQUIRED>     
<!ELEMENT description  (#PCDATA)>
<!ELEMENT country    (#PCDATA)>
<!ELEMENT sellingPrice      (#PCDATA)>
<!ATTLIST sellingPrice saleItem (Y|N) #REQUIRED>    
<!ELEMENT cost  (#PCDATA)>
<!ELEMENT quantityOnHand (#PCDATA)>
<!ELEMENT backorderedAmount (#PCDATA)>
<!ATTLIST backorderedAmount dateOrdered NMTOKEN #IMPLIED>   
<!ELEMENT dateLastReceived   (month, day, year)>
<!ELEMENT month  (#PCDATA)>
<!ELEMENT day  (#PCDATA)>
<!ELEMENT year  (#PCDATA)>
<!ELEMENT quantitySoldYearToDate    (#PCDATA)>
<!ELEMENT warehouseSection (#PCDATA)>
<!ELEMENT warehouseShelve     (#PCDATA)>
<!ELEMENT remarks     (#PCDATA)>
<!ELEMENT supplier       (number, shipmentLeadTime, supCost)>
<!ELEMENT number  (#PCDATA)>
<!ELEMENT shipmentLeadTime  (#PCDATA)>
<!ATTLIST shipmentLeadTime unit (days|weeks) #REQUIRED>
<!ELEMENT supCost  (#PCDATA)>
]>

由於這是一個外部DTD,因此您的XML文件中是否還存在一個引用此DTD的DOCTYPE聲明? 如果是這樣,則需要從DTD中刪除文檔類型。

下面是一個嘗試將其注釋掉的示例:

<!--<!DOCTYPE items [-->
<!ELEMENT items (item+)>
<!ELEMENT item     (description, country, sellingPrice, cost, quantityOnHand, 
                    backorderedAmount, dateLastReceived, quantitySoldYearToDate, 
                    warehouseSection, warehouseShelve, remarks, supplier, supplier+)>
<!ATTLIST item itemNumber ID #REQUIRED>     
<!ELEMENT description  (#PCDATA)>
<!ELEMENT country    (#PCDATA)>
<!ELEMENT sellingPrice      (#PCDATA)>
<!ATTLIST sellingPrice saleItem (Y|N) #REQUIRED>    
<!ELEMENT cost  (#PCDATA)>
<!ELEMENT quantityOnHand (#PCDATA)>
<!ELEMENT backorderedAmount (#PCDATA)>
<!ATTLIST backorderedAmount dateOrdered NMTOKEN #IMPLIED>   
<!ELEMENT dateLastReceived   (month, day, year)>
<!ELEMENT month  (#PCDATA)>
<!ELEMENT day  (#PCDATA)>
<!ELEMENT year  (#PCDATA)>
<!ELEMENT quantitySoldYearToDate    (#PCDATA)>
<!ELEMENT warehouseSection (#PCDATA)>
<!ELEMENT warehouseShelve     (#PCDATA)>
<!ELEMENT remarks     (#PCDATA)>
<!ELEMENT supplier       (number, shipmentLeadTime, supCost)>
<!ELEMENT number  (#PCDATA)>
<!ELEMENT shipmentLeadTime  (#PCDATA)>
<!ATTLIST shipmentLeadTime unit (days|weeks) #REQUIRED>
<!ELEMENT supCost  (#PCDATA)>
<!--]>-->

也可以在這里查看此答案: XML中外部引用的DTD

如果這不能解決您的問題,請使用一個最小,完整且可驗證的示例進行更新

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM