随便拿个XML文件,感觉都知道怎么回事,但其中的奥秘你注意到了么。那就是XML根据什么写出
来的呢,
我写这篇文章不是介绍怎么写XML Schema,而是介绍XML schema的抽象,把xml schema 进行对象化.
好处以后自然明了。
DTD和Schema都是对XML文档的一种约束,如果你没学过DTD那么你一点也不用学了,学过了呢,
也无所谓,多了解一点嘛,也不是坏事。
Schema是完全使用XML作为描述手段,具有很强的描述能力,扩展能力和处理维护能力等。
如何学习schema ,最好用OO思想来学习,那么很容易掌握的。
Schema使用(元素,类型)模式描述文档的结构
Schema优点
本身是XML文档
内建丰富的数据类型;可以方便地定义数据类型
支持名域(namespace)
所以需要自身强大啊。努力学习。
这个标准看完了,估计你也对xml schema 熟悉了。一个是介绍schema Component,一个是介绍Data type.
简要分析一下schema Component,

01. XSDComponent : 组件的抽象基类
02. XSDScope : XSDComponent 的子类,也是一个抽象基类
03. XSDTerm : XSDComponent 的子类,也是一个抽象基类
04. XSDComplexTypeContent :复杂类型的包含的内容信息
05. XSDNamedComponent :可命名的组件的抽象基类
06. XSDRedefinableComponent :可重新定义的组件的抽象基类
07. XSDTypeDefinition :类型定义的抽象基类
08. XSDFeature :元素声明和属性声明的抽象基类
09. :注释
10. :属性声明时,对属性的一些限制。如use="required", default值等。
11. XSDPathDefinition :路径定义 ,关于XPath的定义
12. :Schema的声明。
13. :通配符<xs:any > or <xs:any Attribute>
14. :模型组
15. :元素声明时,对元素的一些限制。如minOccurs,maxOccurs。
16. :模型组定义
17. :元素声明
18. :简单类型的定义<xsd:simpleType name="xxx" >
19. :属性组的定义
20. :属性声明<xsd:attribute name=“xxx" type="simpleType“>
21. :复杂类型定义
22. :记号声明
23. :ID约束声明。例: