Schema的内置类型继承关系
Schema内置类型说明
Table 2. Simple Types Built In to XML Schema | ||||
---|---|---|---|---|
Simple Type | Examples (delimited by commas) | Notes | ||
string | Confirm this is electric | |||
normalizedString | Confirm this is electric | see (3) | ||
token | Confirm this is electric | see (4) | ||
base64Binary | GpM7 | |||
hexBinary | 0FB7 | |||
integer | ...-1,1,... | see (2) | ||
positiveInteger | 1,2,... | see (2) | ||
negativeInteger | ... -2,-1 | see (2) | ||
nonNegativeInteger | 0,... | see (2) | ||
nonPositiveInteger | ... -2,-1,0 | see (2) | ||
long | -9223372036854775808,... -1,... 9223372036854775807 | see (2) | ||
unsignedLong | 0,... 18446744073709551615 | see (2) | ||
int | -2147483648,... 2147483647 | see (2) | ||
unsignedInt | 0,...4294967295 | see (2) | ||
short | -32768,... 32767 | see (2) | ||
unsignedShort | 0,... 65535 | see (2) | ||
byte | -128,...-1,... 127 | see (2) | ||
unsignedByte | 0,... 255 | see (2) | ||
decimal | -1.23,123.4,1000.00 | see (2) | ||
float | -INF,-1E4,-0,12.78E-2,12,INF,NaN | equivalent to single-precision 32-bit floating point,NaN is "not a number",see (2) | ||
double | -INF,NaN | equivalent to double-precision 64-bit floating point,see (2) | ||
boolean | true,false,0 | |||
duration | P1Y2M3DT10H30M12.3S | 1 year,2 months,3 days,10 hours,30 minutes,and 12.3 seconds | ||
dateTime | 1999-05-31T13:20:00.000-05:00 | May 31st 1999 at 1.20pm Eastern Standard Time which is 5 hours behind Co-Ordinated Universal Time,see (2) | ||
date | 1999-05-31 | see (2) | ||
time | 13:20:00.000,13:20:00.000-05:00 | see (2) | ||
gYear | 1999 | 1999,see (2) (5) | ||
gYearMonth | 1999-02 | the month of February 1999,regardless of the number of days,see (2) (5) | ||
gMonth | --05 | May,see (2) (5) | ||
gMonthDay | --05-31 | every May 31st,see (2) (5) | ||
gDay | ---31 | the 31st day,see (2) (5) | ||
Name | shipTo | XML 1.0 Name type | ||
QName | po:USAddress | XML Namespace QName | ||
NCName | USAddress | XML Namespace NCName,i.e. a QName without the prefix and colon | ||
anyURI |
|
|||
language | en-GB,en-US,fr | valid values for xml:lang as defined in XML 1.0 | ||
ID | XML 1.0 ID attribute type,see (1) | |||
IDREF | XML 1.0 IDREF attribute type,see (1) | |||
IDREFS | XML 1.0 IDREFS attribute type,see (1) | |||
ENTITY | XML 1.0 ENTITY attribute type,see (1) | |||
ENTITIES | XML 1.0 ENTITIES attribute type,see (1) | |||
NOTATION | XML 1.0 NOTATION attribute type,see (1) | |||
|
XML 1.0 NMTOKEN attribute type,see (1) | |||
NMTOKENS |
|
XML 1.0 NMTOKENS attribute type,i.e. a whitespace separated list of NMTOKEN's,see (1) | ||
Notes: (1) To retain compatibility between XML Schema and XML 1.0 DTDs,the simple types ID,IDREF,IDREFS,ENTITY,ENTITIES,NOTATION,NMTOKEN,NMTOKENS should only be used in attributes. (2) A value of this type can be represented by more than one lexical format,e.g. 100 and 1.0E2 are both valid float formats representing "one hundred". However,rules have been established for this type that define a canonical lexical format,seeXML Schema Part 2. (3) Newline,tab and carriage-return characters in a normalizedString type are converted to space characters before schema processing. (4) As normalizedString,and adjacent space characters are collapsed to a single space character,and leading and trailing spaces are removed. (5) The "g" prefix signals time periods in the Gregorian calendar. |
各种内置类型详解
1:string及其相关类型
string:保留原始字符串。
normalizedString:字符串中Newline、tab和carriage-return都会被替换成空白。
token:字符串中Newline、tab和carriage-return都会被替换成空白,并且字符串中间连续的空白会被压缩成一个,字符串前后的空白会被自动删除。
Name:要求是合法的XML签名。
NCName:不带命名空间的XML签名。
QName:带命名空间的XML签名。
由string派生出来的ID、IDREF、ENTITY、ENTITIES、NMTOKEN、NMTOKENS类型只能用来约束属性。
ID:标识符。
IDREF:引用另一个ID。
IDREFS:引用多个已有的ID,空格为分隔符。
NMTOKEN:必须是合法的XML名称,只能由字母、数字、_、-、.、:组成。
NMTOKENS:多个NMTOKEN,空格为分隔符。
ENTITY:外部实体。
ENTITIES:多个外部实体,空格为分隔符。