XML Dtd Schema

在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束.

整体比较:

XML Schema符合XML语法结构。 
DOM、SAX等XML API很容易解析出XML Schema文档中的内容。 
XML Schema对名称空间支持得非常好。 
XML Schema比XML DTD支持更多的数据类型,并支持用户自定义新的数据类型。 
XML Schema定义约束的能力非常强大,可以对XML实例文档作出细致的语义限制。
XML Schema不能像DTD一样定义实体,比DTD更复杂,但Xml Schema现在已是w3c组织的标准,它正逐步取代DTD。

具体介绍-DTD(Document Type Definition),全称为文档类型定义。

DTD语法:元素定义、属性定义、实体定义。

声明一个XML元素——<!ELEMENT 元素名称 元素类型>

元素类型可以是元素内容、或类型<!ELEMENT >

在元素内容中也可以使用+、*、?等符号表示元素出现的次数:
+: 一次或多次 (书+)
  ?: 0次或一次 (书?)
 *: 0次或多次  (书*)

xml文档中的标签属性需通过ATTLIST为其设置属性

语法格式:
<!ATTLIST 元素名 
属性名1 属性值类型 设置说明
属性名2 属性值类型 设置说明
……
>

设置说明:
#REQUIRED:必须设置该属性
#IMPLIED:可以设置也可以不设置 
#FIXED:说明该属性的取值固定为一个值,在 XML 文件中不能为该属性设置其它值。但需要为该属性提供这个值 
直接使用默认值:在 XML 中可以设置该值也可以不设置该属性值。若没设置则使用默认值。

常用属性值类型

CDATA:表示属性值为普通文本字符串。
ENUMERATED 
ID
ENTITY(实体)

实体定义:

实体用于为一段内容创建一个别名,以后在XML文档中就可以使用别名引用这段内容了。
在DTD定义中,一条<!ENTITY …>语句用于定义一个实体。
实体可分为两种类型:引用实体和参数实体。

引用实体主要在 XML 文档中被应用
语法格式:
  <!ENTITY 实体名称 “实体内容” >:直接转变成实体内容
引用方式:
  &实体名称;

具体介绍-XML Schema

  在XML Schema技术中有一个专业术语来描述这个过程,即把XML Schema文档声明的元素绑定到一个名称空间上,以后XML文件就可以通过这个URI(即名称空间)来告诉解析引擎,xml文档中编写的元素来自哪里,被谁约束。

  XML Schema 文件自身就是一个XML文件,但它的扩展名通常为.xsd。
一个XML Schema文档通常称之为模式文档(约束文档),遵循这个文档书写的xml文件称之为实例文档。
和XML文件一样,一个XML Schema文档也必须有一个根结点,但这个根结点的名称为Schema。
编写了一个XML Schema约束文档后,通常需要把这个文件中声明的元素绑定到一个URI地址上,
在XML Schema技术中有一个专业术语来描述这个过程,即把XML Schema文档声明的元素绑定到一个名称空间上,
以后XML文件就可以通过这个URI(即名称空间)来告诉解析引擎,xml文档中编写的元素来自哪里,被谁约束。在XML Schema中,每个约束模式文档都可以被赋以一个唯一的名称空间,

  名称空间用一个唯一的URI(Uniform Resource Identifier,统一资源标识符)表示。

在Xml文件中书写标签时,可以通过名称空间声明(xmlns),来声明当前编写的标签来自哪个Schema约束文档。
为了在一个XML文档中声明它所遵循的Schema文件的具体位置,通常需要在Xml文档中的根结点中使用schemaLocation属性来指定,例如:

<itcast:书架 xmlns:itcast="http://www.itcast.cn"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=“http://www.itcast.cn book.xsd">

schemaLocation此属性有两个值。第一个值是需要使用的命名空间。第二个值是供命名空间使用的 XML schema 的位置,两者之间用空格分隔。

注意,在使用schemaLocation属性时,也需要指定该属性来自哪里。

基本格式:
xmlns="URI"

时间: 2024-10-16 04:10:51

XML Dtd Schema的相关文章

JavaScripts学习日记——XML DTD Schema

今日关键词: XML DTD Schema 1.XML 1 XML的概述 1.1 什么是XML XML全称为Extensible Markup Language,意思是可扩展的标记语言.XML语法上和HTML比较相似,但HTML中的元素是固定的,而XML的标签是可以由用户自定义的. W3C在1998年2月发布1.0版本,2004年2月又发布1.1版本,但因为1.1版本不能向下兼容1.0版本,所以1.1没有人用.同时,在2004年2月W3C又发布了1.0版本的第三版.我们要学习的还是1.0版本!!

理清XML,HTML,DTD,Schema,户阿由

其实我是很厉害的段子手,吹逼高手.很久很久以前,有一次,在那个那个地方...(啪)卢本伟闭嘴==! 1.HTML和XML没啥关系,XML和DTD,Schema比较亲近. 2.HTML是显示数据.XML是传输存储数据.(至于定义什么的自己去搜着看,我主要是了解他们干嘛的.) 3.DTD是一种语法规则,它用来规则XML文档怎么怎么写. 4.Schema就牛逼了,基于XML,只是功能比DTD更丰富,但是最最根本的目标,和DTD一样,为了让XML更方便写,传输存储处理数据上功能更强大. 5.DTD和Sc

xml语法、DTD约束xml、Schema约束xml、DOM解析xml

今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的html语言,html是超文本标记语言,使用html语言规定好的标签来封装文本数据.而html使用的标签html语言规定好的,每个标签都有自己特定的功能. xml语言,可扩展的标记语言,这门语言它没有定义任何的标记,而标记是由使用者自己来定义,但是由于标签名称以及属性名称都由用户自己来命名,导致别人在使

XML技术-Schema约束-Dom4j-Xpath详解

这辈子没办法做太多事情所以每一件都要做到精彩绝伦 People can't do too many things in my life,so everything will be wonderful   乔布斯 本文档参考资料w3cschool.CHM  API教程文档免费下载地址http://down.51cto.com/data/2300287 XML技术 1.     什么是XML XML 指可扩展标记语言EXtensibleMarkup Language XML 是一种标记语言很类似 H

XML和Schema命名空间详解

来源:https://blog.csdn.net/wanghuan203/article/details/9204337 XML和Schema具有无关平台,技术厂商,简单,规范统一等特点,极具开放性,所以使用极为广泛,而且使用简单,在XML和Schema和,个人认为比较不好理解的一点是其命名空间问题,在这篇博客里详细进行理解. 名称空间是W3C推荐标准提供的一种统一命名XML文档中的元素和属性的机制.使用名称空间可以明确标识和组合XML文档中来自不同标记词汇表的元素和属性,避免了名称之间的冲突.

XML DTD验证

XML DTD验证 一.什么是DTD 文档类型定义(DTD:Document Type Definition)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 二.DTD的作用 1.有了DTD,每个XML可以携带一个自身格式的描述. 2.有了DTD,不同组织可以使用一个通用的DTD来交换数据. 3.应用程序中使用DTD校检从外部接受的XML数据是否有效. 三.DTD中包含的内容 1.元素的定义规则:在DTD

XML DTD详解(转)

前情提要与本文内容介绍 前面的两篇XML相关博文: 第一篇是介绍格式正规的XML: 格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节 第二篇介绍DTD,引入有效的XML的概念(符合语法规范并符合DTD要求),并介绍DTD的三种使用方法:有效的XML: DTD(文档类型定义)介绍与三种使用方式 一个有效的XML文档必然是结构正规的,结构正规的XML文档不一定是有效的,即有效的是格式正规的一个子集. 本文详细介绍DTD,包括其对元素的定义,属性的定义,以及实体的定义. 元素的定义

怎样用Google APIs和Google的应用系统进行集成(8)----怎样把Google Blogger(博客)的JSON Schema转换成XML的Schema(XSD)?

在Google RESTFul API中,Google Blogger API(Google博客API)应该和我们的生活离得近期:由于差点儿非常多人每天都在看博客,都在写博客,都听说过博客.在前面的Google的应用系统进行集成(5)和Google的应用系统进行集成(6)的系列文章中.我们提到了怎样把Google Calendar和Google Tasks的JSON Schema转换成XML的XSD的Schema.从博客的訪问量来看,还是有非常多志同道合的朋友们对这个比較感兴趣,因此,这个章节.

XML DTD详解

一个有效的XML文档必然是结构正规的,结构正规的XML文档不一定是有效的,即有效的是格式正规的一个子集. 本文详细介绍DTD,包括其对元素的定义,属性的定义,以及实体的定义. 元素的定义 DTD中的修饰符号: 这部分符号可以联系正则表达式的符号来记忆. 属性的定义 属性类型——CDATA 比如: <!ATTLIST title name CDATA #REQUIRED> 定义了一个属性,是属于title元素的,属性名叫name,类型是字符串(包括数字和中文),并且是一个必须要有的属性. 属性类