为XML文档指定DTD规则

本文记录在XML文档中引用DTD规则的语法及各组成元素的含义

1、内部DTD规则

<!DOCTYPE root-element [
      ......
]>

注:此时文档的XML声明需要使用standalone="yes",如下:

<?xml version="1.0" standalone="yes"?>

2、外部DTD关联

与内部声明相反,为文档实例指定来自于外部文件的DTD定义时,XML声明应该使用standalone="no",如下:

<?xml version="1.0" standalone="no"?>

下面是一个常见于HTML文档中的外部DTD引用示例:

扫描二维码关注公众号,回复: 726548 查看本文章
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 说明:

PUBLIC后面第一个引号中的部分是DTD的公开标识符(public identifier,PUBLIC_ID),须要遵循固定的格式;第二个引号中的部分是DTD的系统标识符(system identifier,SYSTEM_ID),通常使用能访问到DTD文件的网络或本地URI表示。

外部DTD文件又分为私有和公开两种类型:

2.1、私有外部DTD文件

私有外部DTD文件为私人机构或开发小组所有,声明中使用关键字SYSTEM,只需要提供SYSTEM_ID,语法如下:

<!DOCTYPE root-element SYSTEM "SYSTEM_ID">

2.2、公开外部DTD文件

公开外部DTD文件是指众所周知、公开的由权威组织制定,或经标准化组织批准的DTD定义,使用关键字PUBLIC,需要同时提供PUBLIC_IDSYSTEM_ID,SYSTEM_ID一般是DTD资源所在的网络URL。声明语法如下:

<!DOCTYPE root-element PUBLIC "PUBLIC_ID" "SYSTEM_ID">

PUBLIC_ID一般遵循如下格式:

prefix//owner_of_the_DTD//description_of_the_DTD//ISO 639_language_identifier

说明:

(1) prefix可取值ISO+-,分别表示通过批准的ISO标准、通过批准的非ISO标准和未通过批准的非ISO标准

(2) 符合上述格式的DTD_name示例:

-//W3C//DTD XHTML 1.1//EN

猜你喜欢

转载自yssas.iteye.com/blog/1194687