XML

          Posted on 2010-05-12 20:03 eric_xu 閱讀(223) 評(píng)論(0)  編輯  收藏 所屬分類: Database
           

          XML的優(yōu)勢(shì):自描述,格式擴(kuò)展性強(qiáng),允許嵌套

          子元素和屬性的區(qū)別,屬性是隱式的,不出現(xiàn)在文檔中。

          Xmlns名字空間

          CDATA用于對(duì)正常文本的處理。

          XML模式定義語(yǔ)言:DTDXML Schema

          XML Schema事實(shí)上也是XML的一種應(yīng)用,也就是說(shuō)XML Schema的格式與XML的格式是完全相同的,而作為SGML DTD的一個(gè)子集,XML DTD具有著與XML格式完全不同的格式。這種區(qū)別會(huì)給XML Schema的使用帶來(lái)許多好處:

          1.       由于XML Schema本身也是一種XML,所以許多的XML編輯工具、API 開(kāi)發(fā)包、XML語(yǔ)法分析器可以直接的應(yīng)用到XML Schema,而不需要修改。

          2.       作為XML的一個(gè)應(yīng)用,XML Schema理所當(dāng)然的繼承了XML的自描述性和可擴(kuò)展性,這使得XML Schema 更具有可讀性和靈活性。

          3.       由于格式完全與XML一樣,XML Schema除了可以像XML一樣處理外,也可以同它所描述的XML文檔以同樣的方式存儲(chǔ)在一起,方便管理。

          4.       XML SchemaXML格式的一致性,使得以XML為數(shù)據(jù)交換的應(yīng)用系統(tǒng)之間,也可以方便的進(jìn)行模式交換。

          XML Schema則不同,它內(nèi)置了三十七種數(shù)據(jù)類型,如longintshortdouble等常用的數(shù)據(jù)類型,XML Schema數(shù)據(jù)類型的真正靈活性來(lái)自于其對(duì)用戶自定義類型的支持。使用complexTypesequence構(gòu)造復(fù)雜類型。

          DTD:限制并歸類文檔中的信息,并不限制基本類型意義上的類型,只限制元素子元素很屬性的出現(xiàn)。是有關(guān)一個(gè)元素中可以出現(xiàn)何種模式的子元素的一系列規(guī)則。|表示或,+表示一個(gè)或多個(gè),*表示零個(gè)或多個(gè),?表示零個(gè)或一個(gè)。

          DTD

          1.         單個(gè)文本元素和屬性不能定義,不能定于為整數(shù)。

          2.         只能指定一個(gè)無(wú)序的集合,很難指定每個(gè)標(biāo)簽只出現(xiàn)一次

          XML Schema可以用minOccursmaxOccurs指定某個(gè)子元素出現(xiàn)的最多和最少次數(shù)。

          XML SchemaDTD的優(yōu)勢(shì):

          1.         允許把元素中出現(xiàn)的文本限制為專門類型

          2.         允許創(chuàng)建用戶自定義類型

          3.         允許唯一性和外鍵約束

          4.         與名字空間結(jié)合以允許文檔遵從不同模式

          5.         允許使用繼承來(lái)擴(kuò)展復(fù)雜類型

          6.         允許使用專門類型來(lái)對(duì)類型進(jìn)行限制,最大最小值

          XML查詢轉(zhuǎn)換工具:XPathXQueryXSLT

          XPath是基于路徑表達(dá)式的語(yǔ)言,FLWOR表達(dá)式

          XQuery仿照SQL

          XSLT(XSL Transformation)是由XSL(XML Stylesheet Language)擴(kuò)展而來(lái)的

          #PCDATA表示文本數(shù)據(jù),empty表示沒(méi)有內(nèi)容,any表示任意。

          <?xml version="1.0"?>

            <!DOCTYPE note [

            <!ELEMENT note (to,from,heading,body)>

            <!ELEMENT to (#PCDATA)>

            <!ELEMENT from (#PCDATA)>

            <!ELEMENT heading (#PCDATA)>

            <!ELEMENT body (#PCDATA)>

            ]>


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          posts - 37, comments - 5, trackbacks - 0, articles - 0

          Copyright © eric_xu

          主站蜘蛛池模板: 武强县| 日照市| 武隆县| 乌恰县| 西藏| 林周县| 崇礼县| 武定县| 八宿县| 如东县| 法库县| 怀化市| 正阳县| 浙江省| 临颍县| 同江市| 大宁县| 吉木乃县| 永寿县| 聊城市| 张家港市| 阿勒泰市| 泸州市| 偏关县| 余庆县| 临汾市| 梅州市| 巍山| 洪湖市| 安多县| 龙泉市| 四会市| 喀什市| 喀喇沁旗| 安化县| 青神县| 临夏县| 屏边| 宕昌县| 景宁| 额敏县|