- 相關(guān)推薦
XML認證知識點(diǎn):XML Schema
XML(XML培訓 編程語(yǔ)言培訓 ) Schema如同DTD一樣是負責定義和描述XML文檔的結構和內容模式。它可以定義XML文檔中存在哪些元素和元素之間的關(guān)系,并且可以定義元素和屬性的數據類(lèi)型。
什么是XML Schema
XML Schema如同DTD一樣是負責定義和描述XML文檔的結構和內容模式。它可以定義XML文檔中存在哪些元素和元素之間的關(guān)系,并且可以定義元素和屬性的數據類(lèi)型。
XML Schema本身是一個(gè)XML文檔,它符合XML語(yǔ)法結構?梢杂猛ㄓ玫腦ML解析器解析它。
為什么要使用Schema
我們前面已經(jīng)使用DTD來(lái)定義一個(gè)XML的結構和數據類(lèi)型,那為什么還要Schema呢?
因DTD有著(zhù)不少缺陷:
1) DTD是基于正則表達式的,描述能力有限;
2) DTD沒(méi)有數據類(lèi)型的支持,在大多數應用環(huán)境下能力不足;
3) DTD的約束定義能力不足,無(wú)法對XML實(shí)例文檔作出更細致的語(yǔ)義限制;
4) DTD的結構不夠結構化,重用的代價(jià)相對較高;
5) DTD并非使用XML作為描述手段,而DTD的構建和訪(fǎng)問(wèn)并沒(méi)有標準的編程接口,無(wú)法使用標準的編程方式進(jìn)行DTD維護。
而XML Schema正是針對這些DTD的缺點(diǎn)而設計的,XML Schema的優(yōu)點(diǎn):
1) XML Schema基于XML,沒(méi)有專(zhuān)門(mén)的語(yǔ)法
2) XML可以象其他XML文件一樣解析和處理
3) XML Schema支持一系列的數據類(lèi)型(int、float、Boolean、date等)
4) XML Schema提供可擴充的數據模型。
5) XML Schema支持綜合命名空間
6) XML Schema支持屬性組。
Schema中的類(lèi)型
Schema中主要包括三種部件:元素(element)、屬性(attribute)、注釋(notation)。
這三種基本的部件還能組合成以下的部件:
a)類(lèi)型定義部件: 簡(jiǎn)單類(lèi)型和復合類(lèi)型
b)組部件
c)屬性組部件
所有內建的簡(jiǎn)單類(lèi)型
原始類(lèi)型
string,boolean,decimal,float,double,durationdatetime,time,date,gYearMonth,gYear,gMonthDay,dDay,gMonth,hexBinary,base64Binary,any URI,QNameNOTATION
衍生類(lèi)型(括號中為基類(lèi)型)
normalizedString(string),language(tonken),token(normalizedString)NMTOKEN(token),Name(token),NCName(Name),ID(NCName),IDREF(NCName)IDREFS(list of IDREF),ENTITY(NCName),ENTITIES(list of ENTITY)integer(decimal),nonPositiveInteger(integer),negativeInteger(noPositiveInteger),long(integer),int(long),short(int),byte(short),nonNegativeInteger(integer)unsignedLong(nonNegativeInteger),unsignedInt(unsignedLong),unsignedShort(unsignedInt),unsignedByte(unsignedShort),positiveInteger(nonNegativeInteger)
【XML認證知識點(diǎn):XML Schema】相關(guān)文章:
XML認證元素類(lèi)型聲明05-28
關(guān)于IBM XML認證考試的要點(diǎn)09-07
關(guān)于XML的介紹08-29
Xml的英語(yǔ)解釋11-01
XML入門(mén)教程10-22
XML的重要性06-23
XML有哪些用途08-27