简单类型(内置类型和派生的类型)具有方面。 方面是单个定义方面,有助于为简单类型确定值集。 例如,length、minInclusive 和 maxInclusive 是内置数据类型的公共方面。 一个简单类型的所有方面为该简单类型定义合法值的集合。
方面是作为元素定义的。 每一 facet 元素都具有 fixed 属性,该属性是一个布尔值。 在定义简单类型时,可以防止该类型的派生修改指定方面的值。 若要防止对方面的修改,请将 fixed 属性添加到该方面并将其值设置为 true。
除了 enumeration 和 pattern 方面之外,其余方面在类型定义中只能出现一次。 Enumeration 和 pattern 方面可以具有多个项并且会组合在一起。
示例
以下示例说明一个简单类型,其 fixed 属性设置为 true
,以防止长度值不是 7
。
约束方面的列表
下面列出了约束方面(可用于约束简单类型的值的方面)、其说明以及应用这些约束的内置数据类型。
- enumeration
指定的值集。 这将数据类型约束为指定的值。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-enumeration。
- fractionDigits
在小数部分具有特定的最大小数位数的值。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-fractionDigits。
- length
长度的单位数。 长度单位取决于数据类型。 该值必须是 nonNegativeInteger。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-length。
- maxExclusive
上限值(所有值都小于该值)。 该值的数据类型必须与继承的数据类型相同。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-maxExclusive。
- maxInclusive
最大值。 该值的数据类型必须与继承的数据类型相同。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-maxInclusive。
- maxLength
长度的最大单位数。 长度单位取决于数据类型。 该值必须是 nonNegativeInteger。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-maxLength。
- minExclusive
下限值(所有值都大于该值)。 该值的数据类型必须与继承的数据类型相同。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-minExclusive。
- minInclusive
最小值。 该值的数据类型必须与继承的数据类型相同。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-minInclusive。
- minLength
长度的最小单位数。 长度单位取决于数据类型。 该值必须是 nonNegativeInteger。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-minLength。
- pattern
数据类型的值必须匹配的特定模式。 这将数据类型限制为与指定模式匹配的文本。 模式值必须是正则表达式。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-pattern。
- totalDigits
具有特定的最大小数位数的值。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-totalDigits。
whiteSpace
必须是 preserve、replace 或 collapse 之一的值。 对于大多数数字数据类型,不能更改 whiteSpace 方面。 有关更多信息,请参见“W3C XML Schema Part 2: Datatypes Recommendation”(W3C XML 架构第 2 部分:数据类型建议)中的相关部分,网址为:http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#element-whiteSpace。preserve
不执行任何标准化;根据“W3C XML 1.0 建议”的要求,不为元素内容更改该值。
replace
出现的所有 #x9(制表符)、#xA(换行符)和 #xD(回车符)均由 #x20(空格)替代。
collapse
在执行了由 replace 暗指的处理后,多个 #x20 的连续序列被压缩成单个 #x20,并且移除前导和尾随的 #x20。