Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > ASP > XML Schema指南(四)之Data Types
【标  题】:XML Schema指南(四)之Data Types
【关键字】:XML,Schema,Data,Types
【来  源】:http://blog.csdn.net/zhangjunhd/archive/2006/12/16/1445556.aspx

XML Schema指南(四)之Data Types

Your Ad Here XML定义语言做一概述然后重点介绍XML Schema的相关语法翻译XML Schema Tutorialhttp://www.w3schools.com/schema/default.asp),参考http://www.w3pop.com.sixxs.org/tech/。本文为XSD内置(build-in)数据类型介绍。
author: zhangjunhd@gmail.com 06-12-16
Blog: http://blog.csdn.net/zhangjunhd/ 

18XSD 字符串数据类型
字符串数据类型用于定义字符串的值的。

18.1字符串数据类型
字符串数据类型包括字符,换行符,回车符,和制表符.

下面是关于字符在schemaXML公式)里的声明方法的例子:
<xs:element name="customer" type="xs:string"/>

你文档中也许有这样的元素:
<customer>John Smith</customer>
它也许会是这样:
<customer>    John Smith     </customer>
注意:如果你用字符串数据类型,XML处理器将不会修改数值。

18.2规格化的字符串数据类型(NormalizedString Data Type
规格化的字符串数据类型是从字符数据类型里派生出来的。规格化的字符串数据类型也包括字符,但
XML processor会清除换行符,回车符和制表符。

下面的是关于一个规格化的字符串数据类型(normalizedString)在Schema中声明方法的例子:
<xs:element name="customer" type="xs:normalizedString"/>
你的文档中也许有像这样的元素:
<customer>John Smith</customer>
或者它也许会是这样:
<customer>    John Smith     </customer>
注意:上述例子里XML处理器会用空格符替代制表符.

18.3记号(token)数据类型
记号数据类型也是从字符串数据类型里派生出来的。记号数据类型也包括字符,但
XML处理器会清除换行符,回车符,制表符,头尾的空格,以及多重的(multiple)空格。

下面是关于符号(token)在schema中声明的例子:
<xs:element name="customer" type="xs:token"/>
你文档中的元素也许像这样:
<customer>John Smith</customer>
或者它也有可能像这样:
<customer>    John Smith     </customer>
注意:在上述例子里,XML处理器会清除制表符。

18.4字符串数据类型
要注意下面所有的数据类型都是从字符串数据类型里派生出来的(除了字符串本身)

名称

解释

ENTITIES

 

ENTITY

 

ID

象征XMLID属性的字符串(只用在schema属性里)

IDREF

象征XML里的IDREF属性的字符串(只能和schema属性一起使用)

IDREFS

 

language

含有正确的语言ID的字符串

Name

含有一个有效的XML名称的字符串

NCName

 

NMTOKEN

象征XML里的NMTOKEN属性的字符串(只能和schema属性一起使用)

NMTOKENS

 

normalizedString

不含有换行符,回车符或制表符的字符串

QName

 

string

一个字符串

token

不含有换行符,回车符,制表符,头尾空格,或重复空格的字符串

 
18.5
对字符串数据类型的约束(Restrictions on String Data Types
可约束的字符串数据类型:
enumeration 列举
length 长度
maxLength 最大长度
minLength最小长度
pattern  式样(不能约束NMTOKENS, IDREFS, ENTITIES
whiteSpace 空白

19XSD 日期数据类型
日期和时间数据类型(Date and time data types)用于定义日期和时间数据的。

19.1日期数据类型
日期数据类型用于指定一个具体的日期。日期由下面的
"YYYY-MM-DD"形式指定。 YYYY指示年份;MM指示月份;DD 指示日期
注意:所有组件都是必需的。

下面是schemaXML公式)里的声明日期的例子
<xs:element name="start" type="xs:date"/>
你文档中的某个元素也许是这样的:
<start>2002-09-24</start>

19.2时间区
为指定一个时间区,你既可以通过在日期的后面加个
"Z"访问UTC时间格式的日期,就像这样:
<start>2002-09-24Z</start>
也可以UTC时间后加、减一个时间值,就像这样:
<start>2002-09-24-06:00</start>
or
<start>2002-09-24+06:00</start>

19.3时间数据类型
时间数据类型用于指定一个时间。时间由下面的
"hh:mm:ss"形式指定:hh指示小时; mm 指示分钟 ss指示秒钟
注意:所有的组件都是必需的

下面是schemaXML公式)里的时间声明的例子
<xs:element name="start" type="xs:time"/>
你文档中或许有这样的元素:
<start>09:00:00</start>
或者是这样的:
<start>09:30:10.5</start>

19.4时间区
19.2

19.5日期时间数据类型(DateTime Data Type
日期时间数据类型用于指定一个日期和一个时间。日期时间由
"YYYY-MM-DDThh:mm:ss"的形式指定。
注意:所有组件都是必需的

下面是schemaXML公式)里的日期时间声明的例子
<xs:element name="startdate" type="xs:dateTime"/>

你文档中或许有这样的元素:
<startdate>2002-05-30T09:00:00</startdate>
或者是这样的:
<startdate>2002-05-30T09:30:10.5</startdate>

19.6时间区
19.2

19.7持续时间数据类型(或时间段数据类型)(Duration Data Type
持续时间数据类型(或
时间段数据类型)用于定义一段时间间隔。时间间隔由"PnYnMnDTnHnMnS"形式定义的,P指示时间段(必需);nY指示年数;nM指示月数;nD指示天数 T指示时间部分的开头(如果你要指定时间,分钟,或秒数,就必须用到T);nH指示小时数; nM指示分钟数 nS指示秒数。

下面是schemaXML公式)里的时间段声明的例子:
<xs:element name="period" type="xs:duration"/>
你文档中或许有这样的元素:
<period>P5Y</period>
上面的例子指示了5年的时间段。
或者也可以像这样:
<period>P5Y2M10D</period>
上面的例子指出了52个月零10天的时间段。
它也可以这样:
<period>P5Y2M10DT15H</period>
上面的例子指出了52个月零10天的时间段。
或者它会是可以这样:
<period>PT15H</period>
上面的例子指出了15小时的时间段。

19.8负时间段
为定义负的时间段,在
P之前添个负号:
<period>-P10D</period>
上面的例子指出里负10天的时间段。

19.9日期和时间数据类型

名称

解释

date

定义日期的值

dateTime

定义了日期和时间值

duration

定义了时间间隔

gDay

定义了日期的部分定义了时间的一部分——日部分(DD)

gMonth

定义了日期的一部分——月部分(MM)

gMonthDay

定义了日期的一部分——月和日部分(MM-DD)

gYear

定义了日期的年部分(YYYY)

gYearMonth

定义了日期的一部分——年和月部分(YYYY-MM)

time

定义时间值

19.10对日期数据类型的约束
对日期数据类型可进行约束
:
enumeration 列举
maxExclusive 除去最大值
maxInclusive 包括最大值
minExclusive 除去最小值排外
minInclusive 包括最小值
pattern 式样
whiteSpace 空白

20XSD 小数数据类型
小数数据类型用于指定一个数值。

20.1小数数据类型
下面是在
schemaXML公式)里关于小数声明的例子
<xs:element name="prize" type="xs:decimal"/>

你文档中的一个元素也许会像这样:
<prize>999.50</prize>
或者会像这样:
<prize>+999.5450</prize>
又或者像这样:
<prize>-999.5230</prize>
也可能这样:
<prize>14</prize>
注意:可以指定的小数位数最多是18位。

20.2数字数据类型
要注意的是下面所有的数据类型都是从小数数据类型里派生出来的(除了小数自身)

名称

解释

byte

最大8位的带符号整数

decimal

小数数值

int

最大32位的带符号整数

integer

整数值

long

最大64位的带符号整数

negativeInteger

含有负值的整数 ( .., -2, -1.)

nonNegativeInteger

含有非负值的整数 (0, 1, 2, ..)

nonPositiveInteger

含有非正值的整数 (.., -2, -1, 0)

positiveInteger

只含有正值的整数(1, 2, ..)

short

最大16位的带符号整数

unsignedLong

最大64位的不带符号整数

unsignedInt

最大32位的不带符号整数

unsignedShort

最大16位的不带符号整数

unsignedByte

最大8位的不带符号整数

 
20.3
对字数据类型的约束
可用于约束的数字数据类型:
enumeration 列举
fractionDigits 小数位数
maxExclusive 除去最大值
maxInclusive 包括最大值
minExclusive 除去最小值
minInclusive 包括最小值
pattern 式样类型
totalDigits 总的数字位数
whiteSpace 空白部分

21XSD 逻辑值数据类型
其他混合的数据类型包括逻辑值(boolean),基本的64个二进制数、十六进位数、浮点精度小数、双精度型数、anyURI、限定名称(QName)和符号。

21.1逻辑值数据类型
逻辑型数据类型用于指定值为真或假。

以下是在schemaXML公式)里有关逻辑声明的例子:
<xs:attribute name="disabled" type="xs:boolean"/>
你文档里或许有这样的元素:
<prize disabled="true">999</prize>
注意:合法的逻辑值是truefalse1(指示真),0(指示假)

21.2二进制数据类型
二进制数据用于表示二进制的数据。我们有两种二进制数据类型:
①基础
64二进制(64基础的二进制数据Base64-encoded binary data
16进制(16进位编码的二进制数据hexadecimal-encoded binary data

以下是关于十六进位数在schema里的声明方法:
<xs:element name="blobsrc" type="xs:hexBinary"/>

21.3anyURI数据类型
anyURI数据类型用于指定一个URI.

以下是关于anyURIschema里的声明方法:
<xs:attribute name="src" type="xs:anyURI"/>
你文档里也许有这个元素:
<pic src="http://www.w3schools.com.sixxs.org/images/smiley.gif" />
注意:如果URI包含空格,可以用“%20”替代它们。

21.4对混合数据类型的约束
可用于约束的其他数据类型:
enumeration列举(不能用此约束逻辑值数据类型)
length长度(不能用此约束逻辑值数据类型)
maxLength最大长度(不能用此约束逻辑值数据类型)
minLength最短长度(不能用此约束逻辑值数据类型)
pattern式样
whiteSpace空白

Div+CSS布局入门教程(一):【上一篇】
XML Schema指南(三)之实例介绍:【下一篇】
【相关文章】
  • 如何于DataGridView中使用计算字段
  • NETCF平台下利用XmlSerializer对于复杂类型序列化的探索(一)
  • NETCF平台下利用XmlSerializer对于复杂类型序列化的探索(二)
  • NETCF平台下利用XmlSerializer对于复杂类型序列化的探索(三)
  • 我对AS一点都不会 ? 好吧,来做个最简单的使用DATA对象做得电子表的例子
  • - lastChild 返回当前XML结点的最后一个子结点 -
  • 实际项目:基于xml的数据交换平台!欢迎参加讨论!
  • XMLHttpRequest对象的属性和方法
  • [收藏] XML Notepad 2007
  • Asp.Net22.0中ObjectDataSource+Formview实现添加,修改
  • 【随机文章】
  • 文件句柄2.7
  • 总体了解C#(12.接口)
  • 2007数据库技术谁主沉浮(下):特定领域数据库市场与技术分析
  • ESFramework扩展之NaptP2P -- 可靠的P2P传递
  • 嵌入式内容(杂)
  • 一些常见的SQL Server扩展存储过程
  • 使用Apache Axis部署 Web服务时的常见问题及其解决方法(转)
  • TCP协议规范
  • Linux中开发工具的配置
  • 用BBI做的侧栏
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.