博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【XML】文档类型定义
阅读量:4046 次
发布时间:2019-05-24

本文共 1412 字,大约阅读时间需要 4 分钟。

定义与用途

        DHD: Document Type Definition。是一套为了进行程序间的数据交换而建立的关于标记符的语法规则。它定义XML文件的结构,为XML文件提供语法和规则。其内容既可以定义在XML文件中,也可定义在XML文件之外。DTD对于XML时可选内容,使用XML进行数据交换的行业或组织可定义自己的DTD。

为什么要使用DHD?

        为了正确交换数据,XML文件需要确定的结构

        如下:一个
标签只能包含一个
标签               
                       
Seven
                       
1234567
               

结构

        XML文件构成模块:元素、属性、实体、PCDATA、CDATA

        定义元素

                声明元素语法                       

                        或者
                        例子:                               
                               
                                其中,#后跟子元素内容

                空元素通过关键字EMPTY进行声明 

                      DHD:
                        XML:

                表示带有任何内容的元素

                     
                        例子:DHD:
                              XML:
Seven
                                   
Seven

                子元素要求顺序:

                子元素不要求顺序:

                   

                重复元素:

                   < !ELEMENT 计算机书籍(书名,作者+)>

                成组元素:

                   

        定义元素的属性

                声明属性通过ATTLIST来进行

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

                属性类型

                属性的默认值:

                        #REQUIRED    属性值是必需的                        #IMPLIED     属性不是必需的                        #FIXED value 属性值是固定的

                实体:

                        实体是用于定义引用普通文本或特殊字符的快捷方式的变量;

                        实体引用是对实体的引用,其中实体可在内部或外部进行声明;

                声明:

                        内部声明:
                        外部声明:

                前缀表示法:

                        在元素名和属性名前增加一个标识,以唯一区分当前元素或属性来自哪一个DTD。           

 

你可能感兴趣的文章
一篇文章搞懂 HBase 的整体架构
查看>>
HBase 表的数据模型是什么?
查看>>
3 张图搞懂 HBase 的存储原理.md
查看>>
一篇文章搞懂 HBase 的 flush 机制和 compact 机制
查看>>
一篇文章搞懂 HBase 的 region 拆分机制
查看>>
HBase 表的预分区是什么?为什么要预分区?如何预分区?
查看>>
Flume 是什么?Flume 有什么特点?
查看>>
一篇文章搞懂 Flume 的架构设计
查看>>
Flume 是怎么保障可靠性的?
查看>>
Flume 怎样实现数据的断点续传?
查看>>
Flume 如何自定义 Mysql Source?
查看>>
Flume 如何自定义 Mysql Sink?
查看>>
Flume 的可靠性级别有哪些?
查看>>
Sqoop 是什么?Sqoop 有什么特点?
查看>>
Sqoop 的使用场景分析
查看>>
DAGScheduler 是什么?有什么作用?
查看>>
DAGScheduler 是如何划分 Stage 的?
查看>>
TaskScheduler 是什么?有什么作用?
查看>>
一篇文章搞懂 DAGScheduler 的调度流程
查看>>
SparkEnv 是什么?有什么作用?
查看>>