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