曝光臺 注意防騙
網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者
串表示。一個實數可能被表示為一個數字字符,一個小數點和小數點后一個描述的數字。日期
被表示成Y Y Y Y- M M - D D。這是ISO 8610格式,它為X M L表示數據時間而采用。
XML 模式:D a t a t y p e全部描述了數值空間,列出了類型屬性的約束。它提供了一系列的原
始數據類型,然后詳述了從那些原始類型生成新類型的機制。這個草案包含了大量生成的高度
有效的類型,但模式設計者對于生成他們自己希望的為特定應用使用的類型非常歡迎。
一些屬性,術語稱為f a c e t,被提供用來說明數據類型。f a c e t細化數值空間以給我們新類型
的允許數值。f a c e t是基本的或約束的。基本f a c e t定義數據類型的一些基本屬性。約束f a c e t在數
值空間放置一些約束而不是定義它的屬性。比如說,字符串有長度。長度并不告訴你有關字符
串的屬性,但它們定義了什么樣的字符串的值被允許。XML 模式里提供的每一個類型列出了它
詳細的f a c e t。一個非常重要的f a c e t是詞匯表示。既然我們根據X M L在講一個基于文本的系統,
則必須說明無文本類型的文本表示法。f a c e t的特別含義依賴于數據類型。更為重要的列在下面
的表格里。
1. 原始類型
原始數據類型是那些沒被定義成與其他類型有關的類型。它們是自明的。我們從所描述類
型的直覺觀念出發。XML 模式提議包含典型的XML 1.0類型是自然的,但它也添加一些它自己
的類型。
表7 - 3中是由XML 模式引入的原始類型。
表7 - 3
模式原始類型定義
s t r i n g ISO 10646或無編碼字符的有限序列,比如“ t h i s i s a s t r i n g”
b o o l e a n 集合{ t r u e , f a l s e }
f l o a t 實數的標準數學概念,對應一個雙精度3 2位浮點類型
d o u b l e 實數的標準數學概念,對應一個雙精度6 4位浮點類型,有一系列小數尾數,
后面可能接著字母E和一個整數指數,例如6 . 0 2 E 2 3
d e c i m a l 實數的標準數學概念,它覆蓋比d o u b l e更小的范圍,并由一系列被句點分
開的數字組成,比如9 . 0 6
t i m e I n s t a n t 日期和時間的聯合,用來定義一個明確的時間實例,編碼為字符串, 2 0 0 0 -
0 1 - 0 1 T 0 8 : 1 2 : 0 0 . 0 0 0代表2 0 0 0年1月1日8 : 1 2,用秒和小數的秒來表達。這個類
型經常表達為Y Y Y Y-MM-DDThh: mm:ss.sss,但能直接后續一個z去指明這個
時間是C U T時間。可以選擇地將時區通過使用后續h h : m m的一個+或-, 提供與
C U T的差來說明。例如上面的日期和時間可以后續- 0 4 : 0 0。
t i m e D u r a t i o n 日期和時間的聯合,用來定義一段時間、間隔或持續時間。例如一個月被
表達成P 0 Y 1 M 0 D T 0 H 0 M 0 S,詞匯模板為P n Y n M n D T n H n M n S ,并且可在前邊加
+或-符號。當不需要精細的時間間隔時,這種描述的右側可被修剪。例如
P 2 Y 3 M代表2年零3個月。注意數字放在代表時間間隔的字符前面。秒用一個
用數字來表達,它可以包括一個代表小數秒的小數。詞匯表示法前面的減號
表示負時間段
220使用XML 高級編程
下載
(續)
模式原始類型定義
r e c u r r i n g I n s t a n t 一種帶有固定頻率再現的時間實例,比如每一天,用一個破折號代替任何
沒有在t i m e I n s t a n t詞匯模板提供的時間段。例如一個在每天0 8 : 0 0出現的實例
將被表達成—T 0 8 : 0 0 : 0 0 . 0 0 0。
b i n a r y 任意長的二進制數據體
u r i U R I引用
2. 生成和用戶自定義的類型
正如名稱所示,一個生成的數據類型是從現有的類型建立的,這個類型叫做基礎類型。
XML 模式指定了一些廣泛使用的生成類型。這些被列在表7 - 4中。
表7 - 4
生成的類型基礎類型含義
l a n g u a g e s t r i n g 自然語言標識符;一個在X M L里與L a n g u a g e I D相
遇的記號,例如“ e n”
N M TO K E N N M TO K E N S XML 1.0 NMTO K E N
N M TO K E N S s t r i n g XML 1.0 NMTO K E N S
N a m e N M TO K E N XML 1.0 名稱
Q n a m e N a m e XML 1.0 限定名
N C N A M E N a m e XML 1.0 “未開拓的”名稱
I D N C N A M E XML 1.0 屬性類型I D
I D R E F I D R E F S XML 1.0 屬性類型I D R E F
I D R E F S s t r i n g XML 1.0 屬性類型I D R E F S
E N T I T Y E N T I T I E S XML 1.0 ENTITY
E N T I T I E S s t r i n g XML 1.0 ENTITYS
N O TAT I O N N C N a m e XML 1.0 NOTAT I O N
I n t e g e r d e c i m a l 離散數字類型的標準數學概念(這里離散使它從數
字定義分離出來)
n o n - n e g a t i v e - i n t e g e r 非負整數的標準數學概念
i n t e g e r
p o s i t i v e - i n t e g e r 正整數的標準數學概念
i n t e g e r
n o n - p o s i t i v e - i n t e g e r 負整數或零的標準數學概念
i n t e g e r
n e g a t i v e - i n t e g e r 嚴格的負整數的標準數學概念
i n t e g e r
d a t e r e c u r r i n g I n s t a n t 標準日期概念,是指一段時間間隔,從午夜開始,
持續2 4小時
t i m e r e c u r r i n g I n s t a n t 與將t i m e I n s t a n t左側截去后相同,形如h h : m m : s s . s s s
我們用d a t a t y p e元素聲明了一個新類型。這個元素有n a m e和s o u r c e屬性。s o u r c e屬性值指明
了新的類型來自的類型。這是一個最小的例子:
第7章命名空間和模式使用221 下載
我們通過添加f a c e t s進而說明一個新類型。這些必須適合基礎類型,這就是說,只有順序的
f a c e t s可以被用于從順序的基礎類型產生的數據類型。典型情況下將要為新類型指定有限制的
f a c e t s,這些通過為限制的基礎類型f a c e t s提供明確的數值來實現。例如,讓我們聲明一些產生的
中國航空網 www.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:
XML高級編程上(80)