2011-08-15 26 views
2

我是XML和DTD的新手。我已经用DTD编写了一个XML文件。就这个。DTD XML文件在无效更改后在Web浏览器中显示正常

<?xml version="1.0"?> 
<!DOCTYPE note[ 
    <!ELEMENT note (page , author ,company)> 
    <!ELEMENT page (#PCDATA)> 
    <!ELEMENT author (#PCDATA)> 
    <!ELEMENT company (#PCDATA)> 
    <!ATTLIST note type CDATA #IMPLIED> 
]> 

<note typ="single"> 
    <page>1000</page> 
    <author>devan</author> 
    <author>devan</author> 
    <company>IDM</company> 
</note> 

它工作正常。但我的问题是,如果您将note属性设置为typ,它会在Web浏览器中显示结果。但是在DTD中,它定义了<!ATTLIST note type CDATA #IMPLIED>

而且每当我在xml中更改标签<pag>fhdh </pag>它就会在网络浏览器中显示得很好。 我的问题是为什么我们要定义DTD?

回答

4

DTD本身只定义了一个有效的XML是什么样子。

如果您通过XML验证程序在问题中运行示例XML,那么将而不是视为您在问题中指定的DTD有效。

+0

更重要的是对于这个问题,似乎Web浏览器没有针对DTD进行验证。 – JasonMArcher

相关问题