DOCTYPE 声明为文档提供一个空间,通过引用外部文件、通过直接声明或通过这两种方式来标识其根元素和文档类型定义 (DTD)。
DOCTYPE 声明可以包含下列内容:
文档或根元素的名称。
如果使用 DOCTYPE 声明,此内容是必选项。
可以用于验证文档结构的 DTD 系统标识符和公共标识符。
如果使用公共标识符,必须同时提供系统标识符。
DTD 声明的内部子集。
内部子集出现在方括号 ([ ]) 之间。
如果文档要在验证环境中进行处理,DOCTYPE 声明是必选项。要生效,DOCTYPE 声明必须标识与文档的文档结构对应的 DTD。非验证分析器将接受没有 DOCTYPE 声明的文档。
最简单的 DOCTYPE 声明只标识文档的根元素。
<!DOCTYPE rootElement>
更常见的情况是,使用 DOCTYPE 声明的文档引用包含组成 DTD 的声明的外部文档。以下内容可以用于标识外部 DTD。
<!DOCTYPE rootElement SYSTEM "URIreference">
URIreference 指向包含声明的文件。
<!DOCTYPE rootElement PUBLIC "PublicIdentifier" "URIreference">
PublicIdentifier 提供一个独立的标识符,有些 XML 分析器可以使用该标识符引用 DTD,代替 URIreference。如果使用分析器的系统没有网络连接,或该连接可能会明显减慢处理速度,可以使用此标识符。
DOCTYPE 声明还可以在内部子集中直接包含声明。如果 DOCTYPE 声明直接包含整个 DTD,而没有引用外部文件,将使用以下语法。
<!DOCTYPE rootElement [
declarations
]>
如果 DOCTYPE 声明包含的声明将与外部文件或外部子集组合使用,将使用以下语法。
<!DOCTYPE rootElement SYSTEM "URIreference"[
declarations
]>
或者
<!DOCTYPE rootElement PUBLIC "PublicIdentifier" "URIreference"[
declarations
]>
分享到:
相关推荐
- 不同浏览器对DOCTYPE声明的处理方式有所不同,例如XML Prolog的存在可能导致IE、Opera和旧版Safari无法识别DOCTYPE,从而进入怪异模式。 - 如果DOCTYPE声明的URL缺失或使用相对路径,大多数浏览器也会进入怪异...
### XML 1.0 标准(第二版) #### 1. 绪论 ##### 1.1 开发者和开发目标 XML (Extensible Markup Language) 1.0 标准是由W3C(万维网联盟)发布的一套规范,旨在为Web上的文档提供一种灵活且标准化的数据表示形式。...
DOCTYPE声明的语法通常是这样的: ```html <!DOCTYPE html PUBLIC "public_identifier" "URL"> ``` 这里的`public_identifier`是公开标识符,`URL`是可选的,指向Dialect Type Definition (DTD)的在线位置,DTD是一...
在标准的XML文档中,DOCTYPE声明通常位于文档的顶部,紧随XML声明之后,如: ```xml <!DOCTYPE document SYSTEM "document.dtd"> ``` 在这个例子中,“document”是文档类型名,"document.dtd"是文档类型的DTD...
- **外部DTD**:DTD作为单独的文件存在,并通过XML文档中的DOCTYPE声明来引用。适用于大型项目或多个文档共享相同的DTD规则的情况。 #### 五、DTD的声明 DTD声明总是以`<!DOCTYPE>`开头,后跟根元素的名称。内部...
这种习惯性的写法有助于让DOCTYPE声明更易于识别,并且符合W3C标准的要求。 在编写网页时,DOCTYPE声明非常重要,因为它告诉浏览器要使用哪种模式来解析页面。比如,正确声明HTML5的DOCTYPE将引导浏览器进入标准...
不正确或缺失的DOCTYPE声明可能导致浏览器以“怪癖模式”解析页面,这种模式下,浏览器可能会根据自己的旧有行为来解释HTML,而不是按照标准模式。这对CSS和JavaScript的执行有重大影响,因为它们可能无法按照预期...
在XHTML1.x中,DOCTYPE声明会变成: ```html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ``` XHTML结合了HTML和XML的特性,...
DOCTYPE>`声明来引用外部的DTD,或者在XML文档中包含XSD链接。这样,XML解析器在解析文档时会自动进行验证。对于学习和参考,可以直接打开这些文件查看其内容,理解它们是如何定义XML结构的。 总结起来,XML DTD和...
这里使用的是HTML5的文档类型声明,虽然不是标准的XML DOCTYPE声明,但它符合XML文档的要求。在XML中,正确的DOCTYPE声明应该是`<!DOCTYPE ...
DOCTYPE book SYSTEM "book.dtd">`声明了一个名为"book"的DTD。 2. **XML Schema**:与DTD类似,XML Schema提供了更强大、更复杂的结构约束,支持数据类型和复杂数据结构的定义。 3. **命名空间(Namespace)**:...
XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,它以一种清晰且易于理解的方式组织数据。`System.Xml`提供了一系列类,这些类可以用来解析、创建、修改和保存XML文档。 ### XML的基本结构 XML文档由根...
- **内部DTD与外部DTD**:内部DTD直接包含在XML文档内部,而外部DTD则通过DOCTYPE声明外部引用。外部DTD有利于多个文档共享相同的结构定义,减少冗余。 #### 三、XML编程与开发要点 - **学习路径**:理解XML的基本...
1. XML语法:XML文档结构包含声明、元素、属性、文本内容等部分,且严格遵循W3C标准。例如: ```xml <?xml version="1.0" encoding="UTF-8"?> <element attr="value">Text Content ``` 2. 名空间:XML名空间通过`...
**关联方法**:通过文档类型声明(DOCTYPE)来关联 DTD 和 XML 文件。具体格式如下: - **非标准化的外部 DTD**:`<!DOCTYPE 根标记名称 SYSTEM "DTD 的 URI">` - **标准化的外部 DTD**:`<!DOCTYPE 根标记名称 ...
内部声明方式,如果要把 DTD 包含在你的 XML 内部,需要以以下的语法包含一个“DOCTYPE”声明:`<!DOCTYPE 根元素 [子元素声明]>`。下面是一个包含 DTD 的 XML 例子: ```xml <?xml version="1.0"?> <!DOCTYPE note ...
DOCTYPE>`声明中,它规定了文档元素的结构。根据题目中的DTD,每个`lib`元素可以包含零个或多个`poems`元素,每个`poems`元素需要一个`number`属性,且`title`元素和`content`元素各有一个。合法的文档元素部分应该...
XML(eXtensible Markup Language),可扩展标记语言,是一种基于标准通用标记语言(SGML)的子集,主要用于存储和传输数据。它的设计目的是为了促进数据交换的灵活性和独立性,使得不同平台和应用程序之间的数据...
`web.xml`文件必须以XML头开始,声明XML版本和字符编码,接着是DOCTYPE声明,指明servlet规范的版本(如2.2或2.3)以及DTD。根元素`<web-app>`是所有配置的起点,注意元素大小写敏感,应使用小写`web-app`。 2. **...
DOCTYPE声明通常位于XML文档的顶部,用于告知解析器文档所遵循的DTD。 元素的定义是DTD的核心部分。元素类型定义了元素可以包含的内容。例如: - `EMPTY`类型的元素不包含任何内容,但可能有属性,如`<!ELEMENT ...