Schema之简单元素、复合元素和属性
2010-12-03 07:24
302 查看
1、XML对Schema文档的引用123 |
2、Schema文档概述123 |
3、Schema之简单元素、复合元素和属性 |
4、Schema约束 |
5、Schema指示器 |
6、如何创建一份XMLSchema And XML Elements |
1、简单元素:只含有文本的XML元素。它不可以含有其他元素或属性;
1.1、为复合元素添加简单元素的两种方式:直接添加方式如下:<xs:element name ="Book"> <xs:complexType > <xs:sequence > <xs:element name ="title" type ="xs:string"></xs:element> </xs:sequence> </xs:complexType> </xs:element>
或者引用的方式:
<xs:element name ="Book"> <xs:complexType > <xs:sequence > <xs:element ref ="title" ></xs:element> </xs:sequence> </xs:complexType> </xs:element>
1.2、为简单元素设置默认值和固定值:
<xs:element name ="price" type ="xs:double" default ="22.22"></xs:element> <xs:element name ="press" type ="xs:string" fixed="清华大学出版社"></xs:element>
2、属性:简单的元素没有属性,当一个元素包含属性时,则成为复合元素,
2.1、属性的定义非常类似于简单元素:<xs:attribute name ="lang" type ="xs:string"></xs:attribute>
2.2、为复合元素添加属性的方式和添加简单元素的方式类似:
<xs:attribute name ="lang" type ="xs:string"></xs:attribute><xs:element name ="Book">
<xs:complexType >
<xs:attribute ref ="lang" ></xs:attribute>
</xs:complexType>
</xs:element>
或者:
<xs:element name ="Book"> <xs:complexType > <xs:attribute name ="lang" type ="xs:string"></xs:attribute> </xs:complexType> </xs:element>
2.3、同样可以为属性添加默认值或者固定值;
<xs:attribute name ="lang" type ="xs:string" default ="xie"></xs:attribute>
2.4、任意属性和必须属性:必须属性就是说在写XML文档时,该属性必须含有,不是可有可无的;通过use 属性来指定:
<xs:element name ="Book"> <xs:complexType > <xs:attribute name ="lang" type ="xs:string" use ="required"></xs:attribute> </xs:complexType> </xs:element>
3、复合元素:是含有其他元素和/或属性的XML元素
复合元素分为四种:空元素、只含有其他元素、只含有文本、含有其他元素和文本;3.1、空元素:
<product pid="1345"/>
空元素的定义:[/code]
方法一: <xs:element name ="product"> <xs:complexType > <xs:attribute name ="proid" type ="xs:positiveInteger"></xs:attribute> </xs:complexType> </xs:element> 方法二: <xs:element name ="product" type ="prodtype"/> <xs:complexType name ="prodtype"> <xs:attribute name ="prodid" type ="xs:positiveInteger"/> </xs:complexType>
如果使用方法二,几个元素可以同时引用相同的复合类型;[/code]
3.2、只含有其他元素的复合元素:<person> <firstname>John</firstname> <lastname>Smith</lastname> </person>
schema:
同样如果使用方法二,几个元素可以同时引用相同的复合类型;
3.3、只含有简单文本或属性的复合元素:
<shoesize country="france">35</shoesize>
这种类型只含有简单内容(文本和属性),因此我们在内容周围添加一个simpleContent元素,当用到简单内容时,你必须在simpleContent元素里定义一个扩展或约束,就像这样:
<xs:element name="somename"> <xs:complexType> <xs:simpleContent> <xs:extension base="basetype"> .... .... </xs:extension> </xs:simpleContent> </xs:complexType> </xs:element> OR <xs:element name="somename"> <xs:complexType> <xs:simpleContent> <xs:restriction base="basetype"> .... .... </xs:restriction> </xs:simpleContent> </xs:complexType> </xs:element>
tips:用extension/restriction元素扩展或限制元素的基本简单类型;
3.4、混合内容的元素:既含有文本又含有其他元素;
<letter> Dear Mr.<name>John Smith</name>. Your order <orderid>1032</orderid> will be shipped on <shipdate>2001-07-13</shipdate> </letter>
schema:
<xs:element name="letter"> <xs:complexType mixed="true"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="orderid" type="xs:positiveInteger"/> <xs:element name="shipdate" type="xs:date"/> </xs:sequence> </xs:complexType> </xs:element>
上面为了使字符数据能出现在"letter"子元件之间,mixed属性必须设置为"true"。<xs:sequence>标签指出了已定义的元素(name, orderid 和shipdate)在"letter"元素里必须以指定的顺序出现;
更多参考/content/4026651.html
相关文章推荐
- XML简介之Schema之XSD 复合类型指示器 VS XSD <any> 元素
- XML简介之Schema之 XSD 仅含文本复合元素 VS XSD 带有混合内容的复合类型
- HTML简单学习(lecture 1)简介、编辑器、基础、元素、属性
- XML第十讲:XML中Schema深入详解、元素、属性、关系
- XSD中schema元素elementFormDefault属性说明
- XSD 简单元素,属性及限定
- BeanComparator实现ArrayList中的元素按多个属性复合排序
- XML简介之Schema之XSD 复合类型指示器 VS XSD <any> 元素
- BeanComparator实现ArrayList中的元素按多个属性复合排序
- 07_schema的元素和属性的定义
- Schema的命名空间支持---6.2.5: 局部元素和局部属性的强制限定
- 结合元素和属性的定义分析Schema的几种设计方案
- Schema入门之XMLSchema元素及属性
- [XML]学习笔记(五)——XML Schema简单类型元素与属性
- XML简介之Schema之XSD 复合空元素 VS XSD 复合类型 - 仅含元素
- iOS UI控件的圆角设置,layer属性简单使用
- 简单的改变元素样式
- jquary根据td中按钮的元素属性删除tr行(删选出想删除的行)
- JavaScript DOM 创建元素并设置属性
- 移除数组中的重复元素(简单题)