XSD 字串 數據類型
字串數據類型用於可包含字串的值。
字串數據類型(String Data Type)
字串數據類型可包含字元、換行、回車以及跳位字元。
下麵是一個關於某個 scheme 中字串聲明的例子:
<xs:element name="customer" type="xs:string"/>
文檔中的元素看上去應該類似這樣:
<customer>John Smith</customer>
或者類似這樣:
<customer> John Smith </customer>
注意:如果您使用字串數據類型,XML 處理器就不會更改其中的值。
規格化字串數據類型(NormalizedString Data Type)
規格化字串數據類型源自於字串數據類型。
規格化字串數據類型同樣可包含字元,但是 XML 處理器會移除折行,回車以及跳位字元。
下麵是一個關於在某個 schema 中規格化字串數據類型的例子:
<xs:element name="customer" type="xs:normalizedString"/>
文檔中的元素看上去應該類似這樣:
<customer>John Smith</customer>
或者類似這樣:
<customer> John Smith </customer>
注意:在上面的例子中,XML 處理器會使用空格替換所有的跳位字元。
Token 數據類型(Token Data Type)
Token 數據類型同樣源自於字串數據類型。
Token 數據類型同樣可包含字元,但是 XML 處理器會移除換行符、回車、跳位字元、開頭和結尾的空格以及(連續的)空格。
下麵是在 schema 中一個有關 token 聲明的例子:
<xs:element name="customer" type="xs:token"/>
文檔中的元素看上去應該類似這樣:
<customer>John Smith</customer>
或者類似這樣:
<customer> John Smith </customer>
注意:>在上面這個例子中,XML 解析器會移除跳位字元。
字串數據類型
請注意,所有以下的數據類型均衍生於字串數據類型(除了字串數據類型本身)!
名稱 | 描述 |
---|---|
ENTITIES | |
ENTITY | |
ID | 在 XML 中提交 ID 屬性的字串 (僅與 schema 屬性一同使用) |
IDREF | 在 XML 中提交 IDREF 屬性的字串(僅與 schema 屬性一同使用) |
IDREFS language | 包含合法的語言 id 的字串 |
Name | 包含合法 XML 名稱的字串 |
NCName | |
NMTOKEN | 在 XML 中提交 NMTOKEN 屬性的字串 (僅與 schema 屬性一同使用) |
NMTOKENS | |
normalizedString | 不包含換行符、回車或跳位字元的字串 |
QName | |
string | 字串 |
token | 不包含換行符、回車或跳位字元、開頭或結尾空格或者多個連續空格的字串 |
對字串數據類型的限定(Restriction)
可與字串數據類型一同使用的限定:
- enumeration
- length
- maxLength
- minLength
- pattern (NMTOKENS、IDREFS 以及 ENTITIES 無法使用此約束)
- whiteSpace