模块说明

l  元素

l  属性

l  实体

l  PCDATA(parsed character data)

PCDATA 是会被解析器解析的文本。这些文本将被解析器检查实体以及标记。

l  CDATA(character data)

CDATA 是不会被解析器解析的文本。在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开

DTD文件元素说明

元素的声明方式:

<!ELEMENT 元素名称 类别>

<!ELEMENT 元素名称 (元素内容)>

修饰符选项

符号

描述

()

用来元素分组

|

在列举中选择一个

+

至少出现一次(1次或者多次)

*

0次至任意次(0到多次)

?

0次或者一次

,

对象必须 按照指定顺序出现

EMPTY

没有子元素

ANY

任何可解析的数据组合

#PCDATA

(#PCDATA)会被文本解析器解析的文本

仍用mybatis dtd文件说明:

<!ELEMENT configuration (properties?, settings?, typeAliases?, typeHandlers?, objectFactory?, objectWrapperFactory?, reflectorFactory?, plugins?, environments?, databaseIdProvider?, mappers?)>

说明:

Configuration元素下子元素可以有properties等元素,且必须按照指定顺序定义,否则会出现解析错误,同时,只能出现一次或者不定义。

<!ELEMENT databaseIdProvider (property*)>

说明:

databaseIdProvider元素子元素是property,可以出现0次至任意次

<!ELEMENT property EMPTY>

说明:

Property元素的子元素为空。

<!ELEMENT settings (setting+)>

说明:

settings的子元素为setting,且至少出现一次。

另外两种没有使用 情况说明

<!ELEMENT author (#PCDATA)>

<author>蜗牛</author>

说明:

通过解析文本得到具体值,author值为蜗牛

<!ELEMENT 元素名称 ANY>

说明:

通过类别关键词 ANY 声明的元素,可包含任何可解析数据的组合

DTD文件属性说明

声明属性的默认说明:

<!ATTLIST 元素名称 属性名称 属性类型 默认值>

以下是属性类型的选项:

类型

描述

CDATA

值为字符数据 (character data)

(en1|en2|..)

此值是枚举列表中的一个值

ID

值为唯一的 id

IDREF

值为另外一个元素的 id

IDREFS

值为其他 id 的列表

NMTOKEN

值为合法的 XML 名称

NMTOKENS

值为合法的 XML 名称的列表

ENTITY

值是一个实体

ENTITIES

值是一个实体列表

NOTATION

此值是符号的名称

xml:

值是一个预定义的 XML 值

默认值参数可使用下列值:

解释

属性的默认值

#REQUIRED

属性值是必需的

#IMPLIED

属性不是必需的

#FIXED value

属性值是固定的

以mybatis dtd中的一个配置说明:

源文件中的配置如下:

1、databaseIdProvider说明

<!ATTLIST databaseIdProvider

type CDATA #REQUIRED

>

说明:

元素databaseIdProvider,属性为type,字符类型,必选。

2、<!ATTLIST properties

resource CDATA #IMPLIED

url CDATA #IMPLIED

>

说明:

元素properties,属性为resource,字符类型,非必选

属性为url,字符类型,非必选

实体

实体引用

字符

&lt;

<

&gt;

>

&amp;

&

&quot;

"

&apos;

'

DTD文档说明的更多相关文章

  1. 课时14.DTD文档声明上(掌握)

    1.什么是DTD文档声明? 由于HTML有很多格版本的规范,每个版本的规范之间又又一些差异,所以为了让浏览器能够正确的编译/解析/渲染我们的网页,我们需要在HTML文件的第一行告诉浏览器,我们当前这个 ...

  2. 课时15.DTD文档声明下(了解)

    W3C的官方网站是W3School,我们可以去官方网站查询DTD文档声明. HTML4.01       Strict  非常严谨的 如果你写了这个DTD文档声明,你就不能写如下样式: <fon ...

  3. xml基础之二(XML结构【2】)DTD文档模版

    xml基础之二(XML结构[2])DTD文档模版 xml 模板 文档结构  我们知道XML主要用于数据的存储和传输,所以无论是自定义还是外部引用DTD模板文档,都是为了突出数据的存储规范.DTD(文档 ...

  4. DTD文档模型和HTML基础

    html是超文本标记语言,现在常用到的2中文档格式是html5和XHTML 1.0 Transitiona(过渡). <!DOCTYPE html> <!--当前文档为html5-- ...

  5. 【HTML&CSS】 第一章:DTD文档声明

    <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYPE> 声明不是 HTML 标签:它是指示 web 浏览器关 ...

  6. 有效的XML: DTD(文档类型定义)介绍(转)

    文档类型定义和命名空间 有效(Valid)的XML文档: 首先,XML文档是个格式正规的(Well-formed)XML文档:(见格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节). ...

  7. 【HTML/XML 10】XML文档中的Schema文件

    导读:DTD是对XML文档进行有效性验证的方法之一,事实上,继DTD之后,出现了用来规范和描述XML文档的第二代标准:Schema.Schema是DTD的继承,但是也有其不同的地方,它是真正的以独立的 ...

  8. Doctype 文档类型,标准模式,混杂模式

    HTML4.01和XHTML1.0 基于 SGML,支持DTD声明,HTML5不是,但是需要 doctype 来规范浏览器的行为. 标准模式是指,DTD声明定义了标准文档的类型后,浏览器按W3C标准解 ...

  9. dom4j解析xml文档全面介绍

    一.dom4j介绍 dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点, ...

随机推荐

  1. sublime text2和3怎么设置修改字体

    首先,请打开你的sublime text2或3,点击工具栏中的Preferences 然后打开Settings-User 打开Settings-User之后 如下图 请复制以下代码然后粘贴至花括号内 ...

  2. 2016 CCPC 长春 Solution

    A - Hanzo vs. Genji 留坑. B - Fraction 水. #include <bits/stdc++.h> using namespace std; inline i ...

  3. uva473

     Raucous Rockers  You just inherited the rights to n previously unreleased songs recorded by the pop ...

  4. FindBugs详解

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  5. PostgreSQL 9.3:在windows(包括win7)下的安装与正确配置

    首先,以下是常用命令: ③ initdb 初始化 数据库. ④ pg_ctl start 启动数据库 ⑤ pg_ctl stop 停止数据库 ⑥ post_svc -install 建立windows ...

  6. SQL学习笔记三(补充-2)之MySQL数据类型

    阅读目录 一 介绍 二 数值类型 三 日期类型 四 字符串类型 五 枚举类型与集合类型 一 介绍 存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的 ...

  7. bzoj3751 / P2312 解方程

    P2312 解方程 bzoj3751(数据加强) 暴力的一题 数据范围:$\left | a_{i} \right |<=10^{10000}$.连高精都无法解决. 然鹅面对这种题,有一种常规套 ...

  8. 20145309李昊《网络对抗》MSF应用基础

    实验内容 掌握metasploit的基本应用方式1.主动攻击——ms08_0672.针对浏览器的攻击——ms11_0503.针对客户端的攻击——Adobe4.成功应用一个辅助模块——scanner/d ...

  9. 20145315 《Java程序设计》第一周学习总结

    20145315 <Java程序设计>第一周学习总结 教材学习内容总结 第一章 java原来以橡树为名,后来才改成java,灵感是咖啡. 作者戏称JDK为java developer ki ...

  10. 20172305 2018-2019-1 《Java软件结构与数据结构》第五周学习总结

    20172305 2018-2019-1 <Java软件结构与数据结构>第五周学习总结 教材学习内容总结 本周内容主要为书第九章内容: 查找是在某个项目组中寻找到某一指定目标元素,或者确定 ...