XML中DOCTYPE字段的解析

    技术2022-05-19  21

    DTD声明始终以!DOCTYPE开头,空一格后跟着文档根元素的名称,如果是内部DTD,则再空一格出现[],在中括号中是文档类型定义的内容. 而对于外部DTD,则又分为私有DTD与公共DTD,私有DTD使用SYSTEM表示,接着是外部DTD的URL. 而公共DTD则使用PUBLIC,接着是DTD公共名称,接着是DTD的URL.

     

    私有DTD

    <!DOCTYPE root SYSTEM  "http://www.test.org/test.dtd" >

     

    公共DTD

    <!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"

                 "http://www.w3.org/TR/xhtml/DTD/xhtml1-transitional.dtd" >

     

    公共DTD,DTD名称格式为"注册//组织//类型 标签//语言",

         "注册"指示组织是否由国际标准化组织(ISO)注册,+表示是,-表示不是.

         "组织"即组织名称,如:W3C;

         "类型"一般是DTD,

         "标签"是指定公开文本描述,即对所引用的公开文本的唯一描述性名称,后面可附带版本号。

         最后"语言"是DTD语言的ISO 639语言标识符,如:EN表示英文,ZH表示中文,

         在下面的地址有完整的ISO 639语言标识符列表:http://ftp.ics.uci.edu/pub/ietf/http/related/iso639.txt

     

    例如:

    <!DOCTYPE html PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"

                 "http://www.w3.org/TR/xhtml/DTD/xhtml1-transitional.dtd" >

     

    以!DOCTYPE开始,

         html是文档根元素名称,

         PUBLIC表示是公共DTD,

         后面是DTD名称,以-开头表示是非ISO组织 组织名称是W3C,EN表示DTD语言是英语,

         最后是DTD的URL

     

    注意:虽然DTD的文件URL可以使用相对URL也可以使用绝对URL,但推荐标准是使用绝对URL.另一方面,对于公共DTD,如果解释器能够识别其名称,则不去查看URL上的DTD文件

     

    参考文章地址:http://lz12366.javaeye.com/blog/725383


    最新回复(0)