Schema支持的数据类型分两大类:
简单类型:使用<simpleType.../>,即可做元素,也可做属性。内容必须是简单类型值,不能包含属性。
复杂类型:使用<complexType.../>,只可做元素。包含简单内容的复杂类型——内容是简单类型值,并包含属性;包含复杂内容的复杂类型——包含子元素、空元素或混合内容的元素,不管是否包含属性。
简单类型
内置类型分2种:
1:内置基本类型;
2:内置派生类型。
内置基本类型、内置派生类型、内置限制类型也可成为原子类型。
自定以类型是有内置类型派生过来的,派生方式分三种:
1:限制<restriction.../>
2:列表<list.../>
3:联合<union.../>
复杂类型
复杂类型分2种:
包含简单内容的复杂类型——内容是简单类型值,并包含属性;
包含复杂内容的复杂类型——包含子元素、空元素或混合内容的元素,不管是否包含属性。
复杂类型定义使用<complexType.../>,其可接受如下两种子元素:
<simpleContent.../>:用于定义包含简单内容的复杂类型。
<complexContext.../>:用于定义包含复杂内容的复杂类型
复杂类型的派生方式:
<restriction.../>:限制派生(<simpleContent.../>或<complexContext.../>的子元素);
<extension.../>:扩展派生(<simpleContent.../>或<complexContext.../>的子元素);