切换导航
首页
技术问答
编程语言
前端开发
移动开发
开发工具
程序设计
行业应用
CMS系统
服务器
频道导航
▸ PHP
▸ Java
▸ Java SE
▸ Python
▸ C#
▸ C&C++
▸ Ruby
▸ VB
▸ asp.Net
▸ Go
▸ Perl
▸ netty
▸ Django
▸ Delphi
▸ Jsp
▸ .NET Core
▸ Spring
▸ Flask
▸ Springboot
▸ SpringMVC
▸ Lua
▸ Laravel
▸ Mybatis
▸ Asp
▸ Groovy
▸ ThinkPHP
▸ Yii
▸ swoole
▸ HTML
▸ HTML5
▸ JavaScript
▸ CSS
▸ jQuery
▸ Bootstrap
▸ Angularjs
▸ TypeScript
▸ Vue
▸ Dojo
▸ Json
▸ Electron
▸ Node.js
▸ extjs
▸ Express
▸ XML
▸ ES6
▸ Ajax
▸ Flash
▸ Unity
▸ React
▸ Flex
▸ Ant Design
▸ Web前端
▸ 微信小程序
▸ 微信公众号
▸ iOS
▸ Android
▸ Swift
▸ Hybrid
▸ Cocos2d-x
▸ Flutter
▸ Xcode
▸ Silverlight
▸ cocoa
▸ Cordova
前端之家
XML
XML的约两种约束——DTD、Schema
XML的约两种约束——DTD、Schema
2020-05-31
XML
前端之家
前端之家
收集整理的这篇文章主要介绍了
XML的约两种约束——DTD、Schema
,
前端之家
小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束。 常用的约束技术XML DTD ;XML Schema。 XML Schema 也是一种用于定义和描述 XML 文档结构与
内容
的模式语言,其出现是为了克服 DTD 的局限性 XML Schema VS DTD: 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),全称为文档类型定义。 XML
文件
使用 DOCTYPE 声明语句来指明它所遵循的DTD
文件
,DOCTYPE声明语句有两种形式: 一、当引用的
文件
在本地时,采用如下方式: <!DOCTYPE 文档根结点 SYSTEM "DTD
文件
的URL"> 例如: <!DOCTYPE 书架 SYSTEM “book.dtd”>。在xml
文件
中手写一下。 二、当引用的
文件
是一个公共的
文件
时,采用如下方式: <!DOCTYPE 文档根结点 PUBLIC "DTD
名称
" "DTD
文件
的URL"> 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
文件
就可以通过这个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"
上一篇:XML现在的作用是什么
下一篇:XML和HTML
猜你在找的XML相关文章
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
http://blog.jobbole.com/79252/ 引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技...
作者:前端之家 时间:2020-08-12
自定义圆形控件RoundImageView并认识一下attr.xml
(点击上方公众号,可快速关注) 公众号:smart_android 作者:耿广龙|loonggg 点击“阅读原...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(上)
(点击上方公众号,可快速关注) 来源: Long Luo 的博客 链接:http://longluo.github.i...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(中)
接上文 二、JSON XML很好很强大,但是最近有另外一个时代弄潮儿,这就是JSON。现在JSON的光...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(下)
接上文 2.4 如何解析JSON? Android JSON所有相关类,都在org.json包下。 包括JSONObject、...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
原文出处: Long Luo 的博客(@Long_Luo) 引言 NOKIA 有句著名的广告语:“科技以人...
作者:前端之家 时间:2020-08-12
编程分类
HTML
HTML5
JavaScript
CSS
jQuery
Bootstrap
Angularjs
TypeScript
Vue
Dojo
Json
Electron
Node.js
extjs
Express
XML
ES6
Ajax
Flash
Unity
React
Flex
Ant Design
Web前端
微信小程序
微信公众号
最新文章
• 10分钟掌握XML、JSON及其解
• [CXF REST标准实战系列] 一
• [CXF REST标准实战系列] 一
• 10分钟掌握XML、JSON及其解
• 自定义圆形控件RoundImage
• 【XML】
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
热门标签
更多 ►
关闭广告
单独headers
封装代码
提示错误
整数正则
非0开头
跳页
出页码
antd table
提示URL未注册
公众号支付
vue hash模式
iSlider
车牌键盘
循环图片
echarts 双折
左右布局
DllPlugin
对象创建
打字游戏
圈选
两栏
云函数
蒙版
ES2020
橱窗
无缝滚动轮播
色块碰撞
组件销毁
文档操作