第5章XMLSchema结构.ppt

第5章XMLSchema结构

第5章 XML Schema结构 Schema概述 Schema元素的声明 Schema的属性声明 Schema的数据类型 Schema的名称空间 Schema的使用 建立Schema文档 5.1 Schema概述 XML Schema是2001年5月正式发布的W3C的推荐标准,是全球公认的XML环境下首选的数据建模工具 DTD存在的缺陷: DTD采用不同于XML的语言编写,需要不同的分析器技术 DTD不支持名称空间 DTD在支持继承和子类方面有局限 DTD没有数据类型的概念,无法对特定元素施加数据类型,对强制性结构化无计可施 5.1 Schema概述 XML Schema的优势: 不仅可以定义XML文档的结构,而且允许约束文档的内容 XML Schema自身就是一个XML文档 XML Schema是用一套预先规定的XML元素和属性创建的,这些元素和属性定义了文档的结构和内容模式 XML Schema是Web Services技术中需要使用的一个基本工具 5.1 Schema概述 XML Schema名称空间声明 xmlns:xsd=“/2001/XMLSchema” 约定的XML Schema名称空间前缀:xsd 例如,xsd:string属于XML Schema的内置定义 5.3 Schema元素的声明 Schema根元素 Schema文档中必须定义且只能定义一个Schema根元素 根元素说明:文档类型、模式的约束、XML模式名称空间的定义、版本信息等 具体定义格式: ?xml version=“1.0” encoding=“gb2312”? xsd:schema name=“slschema” xmlns:xsd=“/2001/XMLSchema” …… /xsd: schema 5.3 Schema元素的声明 element元素 具体定义格式: xsd: element name=“author” type=“xsd:string” 全局元素:元素声明在Schema文档的顶级结构中。即,其父元素是Schema xsd:schema xmlns:xsd=“/2001/XMLSchema xsd:element name=“author” type=“xsd:string” minOccuurs=0 maxOccurs=“unbouded/ /xsd:schema 5.3 Schema元素的声明 局部元素:元素声明只出现在复杂类型定义的内部 ?xml version=“1.0” encoding=“gb2312” xsd:schema xmlns:xsd=“/2001/XMLSchema xsd:complexType name=“book” xsd:sequence xsd:element name=“title” type=“xsd:string”/ xsd:element name=“author” type=“xsd:string” minOccuurs=0 maxOccurs=“unbouded/ xsd:element name=“price” type=“xsd:integer”/ /xsd:sequence /xsd:complexType /xsd:schema 5.3 Schema元素的声明 设置默认值和固定值:给空元素增加值 属性设置:default 与fixed只能选择其一 default默认值:若元素为空,填入默认值。 但不同数据类型对“空”的解释不同,并不是都填充默认值。 string数据类型: 不填入默认值 integer数据类型: 填入默认值 元素的属性xsi:nil=“true”:不填入默认值 xsd:element name=“price” type=“xsd:integer” default=“30”/ ?xml version=“1.0” encoding=“gb2312” xsd:schema xmlns:xsd=“/2001/XMLSchema xsd:element name=“title” type=“xsd:string”/ xsd:element name=“author” type=“xsd:string” default=“N/A”/ xsd:element name=“price” type=“xsd:integer” default=“30”/ /xsd:schema 5.3 Schema元素的声明 fixed固定值:若元素有一个值,则该值必须和固定值相等。

文档评论(0)

1亿VIP精品文档

相关文档