链接:https://www.zhihu.com/question/21167385/answer/214543406
什么是 XML Schema? XML Schema 的作用是定义 XML 文档的合法构建模块,类似 DTD。 XML Schema 的作用: 定义可出现在文档中的元素 定义可出现在文档中的属性 定义哪个元素是子元素 定义子元素的次序 定义子元素的数目 定义元素是否为空,或者是否可包含文本 定义元素和属性的数据类型 定义元素和属性的默认值以及固定值
什么是DTD? 文档类型定义(Document Type Definition)是一套为了进行程序间的数据交换而建立的关于标记符的语法规则。 为什么使用DTD? 由于xml的标签由用户自己定义,因此在开发的时候,每个人都可以根据自己的需求来定义xml标签,这样导致项目中的xml难以维护,因此需要使用一定的规范机制来约束xml文件中的标签书写。
通俗的理解XML Schema
Schema 可以理解为概要、轮廓、结构、规则,或者说标准;它用来规定xml文档可以包含哪些标签,标签可以是什么数据类型等等;就好比手机的充电接口,如果你的是迷你口的,那只要是迷你口的数据线就可以为你的手机充电,不管它是哪个厂家生产的;而迷你口就是一个标准,它规定了接口的大小外形输出电压等等,生产手机的和生产线的厂商之间不需要知道对方,不需要互相沟通,只需要按照相同的标准生产,就可以配合使用了。有了 XML Schema,用户可以根据它编写符合规则的 xml 文档,编辑器可以根据 XML Schema 进行语法提示,解析器可以 根据 XML Schema 来知道应该如何解析 xml 。
schema的学习:http://www.w3school.com.cn/schema/schema_intro.asp