XML DTD介绍以及应用

本文围绕 XML 展开,介绍了 DTD 可定义合法 XML 文档结构。阐述 XML 用于传输和存储数据,有数据交换、流程编排等多种用途。还讲解了标准 XML 格式,包括根元素等要求,以及元素的定义、命名规则、分类、限制和注意事项,同时介绍了属性的语法、类型和描述等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

DTD介绍

XML 简介 

什么是 XML?

XML的能干什么?

一.标准的xml格式

XML 声明

二.元素的定义

2.1 什么是 XML 元素?

2.2 XML 命名规则

2.3 元素的分类

2.4元素的限制

2.5元素注意事项

三.属性的定义

3.1属性语法:

3.2属性类型type

3.3属性描述



DTD介绍

文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。

DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。

XML 简介 


XML 被设计用来传输和存储数据。

HTML 被设计用来显示数据。

XML 指可扩展标记语言(eXtensible Markup Language)。

可扩展标记语言(英语:Extensible Markup Language,简称:XML)是一种标记语言,是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。

什么是 XML?

  • XML 指可扩展标记语言(EXtensible Markup Language)。
  • XML 是一种很像HTML的标记语言。
  • XML 的设计宗旨是传输数据,而不是显示数据。
  • XML 标签没有被预定义。您需要自行定义标签。
  • XML 被设计为具有自我描述性。
  • XML 是 W3C 的推荐标准。

XML的能干什么?

  1. 数据交换:XML 可以作为一种中立的、通用的数据交换格式,用于各种系统之间的数据传输和数据交换,如 Web 服务、数据集成、数据接口和 ETL 工具等。

  2. 流程编排:XML 可以将复杂的业务流程进行描述和编排,包含流程的节点、条件、分支和合并等,与 BPM(Business Process Management)相关的工具和标准都使用了 XML,如 BPEL、BPMN、XPDL 等。

  3. 配置文件:XML 可以用于系统的配置文件,包括 Web 应用程序中的 web.xml、Hibernate 中的 hibernate.cfg.xml、Spring 中的 applicationContext.xml 等,XML 能够在系统运行时对配置进行解析和动态更新。

  4. 消息传递:XML 可以作为一种消息传递格式,如 SOAP 协议中用于消息传递的 XML、消息队列中使用的 XML 消息格式等。

  5. 数据存储:XML 可以作为一种本地数据存储格式,如 Eclipse 可以使用 XML 作为本地存储格式,也可以用于序列化和反序列化数据。

  6. Web 标准:XML 作为 Web 发展的重要组成部分,产生了一系列标准和技术,如 XML、DTD、XML Schema、XSLT、XPath、XQuery、RSS、Atom 等,这些标准和技术对现代 Web 技术的发展有着深远的影响。

        总之,XML 能够描述和处理各种形式的数据和信息,具有广泛的应用领域和重要的价值。

一.标准的xml格式


1.有且只有一个根元素
2.xml标签大小写正确区分
3.正确使用结束标签
4.正确嵌套标签
5.使用合法的标签名
6.定义有效的属性

XML 声明

XML 声明文件的可选部分,如果存在需要放在文档的第一行,如下所示:

<?xml version="1.0" encoding="utf-8"?>

二.元素的定义

2.1 什么是 XML 元素?

XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。

一个元素可以包含:

  • 其他元素
  • 文本
  • 属性
  • 或混合以上所有...

2.2 XML 命名规则

XML 元素必须遵循以下命名规则:

  • 名称可以包含字母、数字以及其他的字符
  • 名称不能以数字或者标点符号开始
  • 名称不能以字母 xml(或者 XML、Xml 等等)开始
  • 名称不能包含空格

可使用任何名称,没有保留的字词。

2.3 元素的分类

<!ELEMENT element-name EMPTY>//空元素
<!ELEMENT element-name(#PCDATA)>//文本元素
<!ELEMENT element-name(e1,e2)>//混合元素

2.4元素的限制

如果混合标签内有多个子标签用“ ,”隔开。

存在是非标签用“ | ”隔开(两个标签的情况下)。

允许标签出现零次或者一次用 “ ?”。

允许标签出现零次或者N次用 “ * ”。

允许标签出现一次或者N次用 “ + ”。

2.5元素注意事项

 一个XML元素可以包含字母、数字以及其它一些可见字符,但必须遵守下面的一些规范:

  1. 区分大小写,例如,<P>和<p>是两个不同的标记。
  2. 不能以数字或"_" (下划线)开头。
  3. 不能以xml(或XML、或Xml 等)开头。
  4. 不能包含空格。
  5. 名称中间不能包含冒号(:)

三.属性的定义

3.1属性语法:

<!ATTLIST element-name att_name type desc>

3.2属性类型type

  • ID : 它是用来指定唯一元素.

  • IDREF : 它是用来引用已命名为另一种元素的ID.

  • IDREFS : 这是用来表示一个元件的所有ID.

  • ENTITY : 表示该属性将代表文件中的外部实体.

  • ENTITIES : 它表示该属性表示文档中的外部实体.

  • NMTOKEN : 它类似于CDATA对哪些数据可以是属性的一部分的限制.

  • NMTOKENS : 它类似于CDATA对哪些数据可以是属性的一部分的限制.

3.3属性描述


#REQUIRED:表示该属性是必须的,即在该元素中必须定义该属性,并且不能省略。
#IMPLIED:表示该属性是可选的,即在该元素中可以定义该属性,也可以不定义。如果没有定义该属性,则使用DTD中规定的默认值。

3.4 避免 XML 属性的注意事项

因使用属性而引起的一些问题:

  • 属性不能包含多个值(元素可以)
  • 属性不能包含树结构(元素可以)
  • 属性不容易扩展(为未来的变化)

属性难以阅读和维护。请尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值