惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
爱范儿
爱范儿
H
Help Net Security
Last Week in AI
Last Week in AI
The Cloudflare Blog
博客园 - 三生石上(FineUI控件)
小众软件
小众软件
IT之家
IT之家
aimingoo的专栏
aimingoo的专栏
大猫的无限游戏
大猫的无限游戏
Jina AI
Jina AI
Google DeepMind News
Google DeepMind News
B
Blog
C
Check Point Blog
T
Tailwind CSS Blog
云风的 BLOG
云风的 BLOG
D
Docker
Recent Announcements
Recent Announcements
Vercel News
Vercel News
博客园 - 聂微东
阮一峰的网络日志
阮一峰的网络日志
MyScale Blog
MyScale Blog
The GitHub Blog
The GitHub Blog
Stack Overflow Blog
Stack Overflow Blog
雷峰网
雷峰网
人人都是产品经理
人人都是产品经理
月光博客
月光博客
F
Fortinet All Blogs
Blog — PlanetScale
Blog — PlanetScale
B
Blog RSS Feed
The Register - Security
The Register - Security
V
Visual Studio Blog
F
Full Disclosure
Hugging Face - Blog
Hugging Face - Blog
T
Threat Research - Cisco Blogs
Latest news
Latest news
PCI Perspectives
PCI Perspectives
Cisco Talos Blog
Cisco Talos Blog
博客园 - Franky
D
DataBreaches.Net
A
Arctic Wolf
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
Google Developers Blog
P
Palo Alto Networks Blog
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
T
Tenable Blog
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy

博客园 - 震

关于反射中方法指针中我遇到的问题 一些关于数据库的问题 使用ORACLE和MYSQL的简单心得 出来混总有一天要还的 Java中的访问修饰符 Java中的static、final、this、super xslt学习简单笔记 DOM中对象的方法(转贴) 学习JavaScript的开源好东东 关于CSS中的一些问题 - 震 - 博客园 web标准的悄然袭来 替换字符性能测试 在JAVA中调用外部可执行程序 - 震 - 博客园 一小练习 - 震 - 博客园 Java中的String类和StringBuffer类 将Java对象转为String的几种方法剖析(转贴) java 中的随机数用法 两种特殊的Java容器类List和Set分析[转贴] java.util.list初体验
XML schema学习笔记
· 2006-06-27 · via 博客园 - 震

        写在前面的话,很多文章里面把schema和XML Schema当成了一个东东,其实schema或XML schema泛指XML文档的模式,而XML Schema是schema中的一种。除XML Schema以外,DTD也是一种schema。
        在XML Schema出来之前,我们一直使用的是DTD来定义XML结构的方式。而DTD对于XML Schema来说最大的不足就是:DTD只能把内容类型定义为一个字符串。而XML Schema允许你把内容类型定义为整型、浮点型、数据型、布尔型或者许多其他的数据类型,而无须重定义。并且DTD的语法复杂,并且它不符合XML文件的标准。
其实通过一个简单的代码就能看出区别:
XML 文档:

<ID>k123456</ID>

DTD:

<!ELEMENT ID (#PCDATA)>

XML Schema:

<element name='ID' type='ProductCode'/>
<simpleType name='ProductCode' base='string'>
<pattern value='[A-Z]{1}d{6}'/>
</simpleType>

        通过上面我们看出,XML Schema片段中检查元素ID 的首字符是否为 A 到 Z 之间的字母,后面为六个阿拉伯数字。相反,DTD只是检查这些元素是否用字符串表示。 简单的说DTD只能说明XML"哪个在前面,哪个在后面,那个一定有,哪个可以没用"这些结构,而不能说明"这个只能是数字,那个性别只能是男或女"这些数据类型的东东。