Sequence 指示器<sequence> 规定子元素必须按照特定的顺序出现:
Occurrence 指示器Occurrence 指示器用于定义某个元素出现的频率。
minOccurs 指示器<minOccurs> 指示器可规定某个元素能够出现的最小次数:
Group 指示器Group 指示器用于定义相关的数批元素。主要有以下两点:
元素组
属性组
<any> 元素使我们有能力通过未被 schema 规定的元素来拓展 XML 文档!
下面这个例子是从名为 "family.xsd" 的 XML schema 中引用的片段。
下面这个例子是从名为"children.xsd": 的 XML schema 中引用的片段。
/////////////////////////////////////////////////////////////////////////////////////////////DOM
/////////////////////////////////////////////////////////////////////////////////////////////
XML DOM 是 XML Document Object Model 的缩写,即 XML 文档对象模型。
XML DOM 定义了所有 XML 元素的对象和属性,以及访问它们的方法(接口)。
换句话说:
XML DOM 是用于获取、更改、添加或删除 XML 元素的标准。
根据 DOM,XML 文档中的每个成分都是一个节点。
XML DOM 节点树XML DOM 把 XML 文档视为一种树结构。这种树结构被称为节点树。
可通过这棵树访问所有节点。可以修改或删除它们的内容,也可以创建新的元素。
因为 XML 数据是按照树的形式进行构造的,所以可以在不了解树的确切结构且不了解其中包含的数据类型的情况下,对其进行遍历。
您将在本教程稍后的章节学习更多有关遍历节点树的知识。
父节点:Parent Node,子节点:Children Node,同级节点:Sibling Node。
以上就是一些XML最必须掌握的一些东西
/////////////////////////////////////////////////////////////////////////////////////////
RELAX NG
///////////////////////////////////////////////////////////////////////////////////////
我做的项目里面金融协议都是用这种语言定义的
This document uses the compact syntax of the RELAX NG schema language [RNC] to formally define the XML structure for template definitions.
http://www.ibm.com/developerworks/cn/xml/x-matters/part25/
http://www.ibm.com/developerworks/cn/education/xml/x-relaxng/index.html
RELAX NG 几乎在各方面都完全优于 W3C XML Schema 或 DTD!
RELAX-NG (读音是“relaxing”)也是一种XML schema定义语言,它的主要特征是比目前通用的基于DTD或是XSD的语言要简洁优雅的多。W3C XML Schemas已经因为“卓越”的复杂性而臭名昭著了,许多XML大师都对此表示过不满,Tim Bray评论说:
W3C XML Schemas (XSD) 烂透了。又难读,又难写,还不容易理解,交互性也成问题,而且你想用XML来做的很多事情都没法描述出来。
Griffin Brown最近列出了使用RELAX-NG,而不是W3C XML Schema来进行XML建模的10条原因,把网络上散落的对RELAX-NG的赞誉做了归纳。如下所示:
- “好的规格说明就意味着好的交互性”。
- “提供了简洁的语法”(RELAX-NG支持使用DSL来精确的描述约束条件,而不是使用尖括号)。
- “它的规范是一个稳定的ISO标准”。
- “没有PSVI”(PSVI 被认为是有害的)。
- “没有给内容提供默认值”。
- “更好的数据类型支持”。
- “更加完善的模型”。
- “更加完善的语法校验”。
- “文档实例没有依赖性”。
- “正在获得越来越广泛的应用”。