簡體   English   中英

XML文件中的內部DTD錯誤

[英]Error on internal DTD in XML File

我的XML文件無法運行。 我在DTD上遇到了一些錯誤。 我的DTD代碼有什么問題? 我試過在Internet Explorer上運行它,但是它不起作用。 當我不包含DTD代碼時,它可以正常工作。 但是一旦包含了DTD,它就會顯示一個空白頁。 一旦我驗證了http://validator.w3.org/中的xml文件,就會收到這些錯誤

第25行,第23列:文檔類型此處不允許元素“ book”

< 圖書庫存=“是” >

在不允許的上下文中找到了上面命名的元素。 這可能意味着您嵌套了錯誤的元素-例如“ body”部分中的“ style”元素而不是“ head”內部-或兩個重疊的元素(不允許)

導致此錯誤的一個常見原因是在HTML文檔中使用XHTML語法。 由於HTML隱式封閉元素的規則,此錯誤可能會產生級聯效果。 例如,在HTML文檔的“ head”部分中將XHTML的“ self-closes”標簽用於“ meta”和“ link”,可能會導致解析器推斷“ head”部分的結尾和“ body”的開頭”部分(不允許使用“鏈接”和“元”;因此報告了錯誤)

<?xml version = "1.0" encoding="UTF-8" standalone="yes" ?>
<?xml-stylesheet type ="text/css" href="Books.css"?>

<!DOCTYPE inventory [
    <!ELEMENT inventory(book)>
    <!ELEMENT book(title,author,isbn,publisher,pages,price)>
<!ATTLIST book instock CDATA #REQUIRED>
    <!ELEMENT title(#PCDATA)>
    <!ELEMENT author(#PCDATA)>
    <!ELEMENT isbn(#PCDATA)>
    <!ELEMENT publisher(#PCDATA)>
    <!ELEMENT pages(#PCDATA)>
    <!ELEMENT price(#PCDATA)>
]>

<inventory>
    <book instock = "yes">
        <title>Beginning web programming with html, xhtml, and css </title>
        <author>Duckett, jon </author>
        <isbn>0764570781</isbn>
        <publisher>Wrox pr inc</publisher>
        <pages>840</pages>
        <price>MYR 119.80</price>
    </book>
    <book instock = "yes">
        <title>Core web programming(2nd edition)</title>
        <author>Marty hall, larry brown</author>
        <isbn>0130897930 </isbn>
        <publisher>Prentice hall ptr </publisher>
        <pages>1385</pages>
        <price> MYR 125.00</price>
    </book>
    <book instock = "no">
        <title>An introduction to web design and programming</title>
        <author>Paul s. wang, sanda katila</author>
        <isbn>0534395287</isbn>
        <publisher>Course technology</publisher>
        <pages>592</pages>
        <price> MYR 251.00</price>
    </book>
</inventory>
<!ELEMENT inventory(book)>

這表示inventory元素可以只包含一book 你要

<!ELEMENT inventory(book)*>

或者可能

<!ELEMENT inventory(book)+>

暫無
暫無

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

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