記錄點滴

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            10 Posts :: 1 Stories :: 1 Comments :: 0 Trackbacks
          XML簡介:
              Xml是可擴展性標記語言(eXtendsible Markup Language)的縮寫。
              所謂標記,是指一系列的特許的字符符號,可以通過向其中插入文本來存儲文檔的內容。
              它是不同技術之間數據交換的基石。
           
          * xml與html的區別:
              > Xml是一中標記語言,這意味著xml文檔都是使用標記來存儲數據和信息的。
              >> 一個規范的html文檔完全可以被看做xml文檔。
              >> xml的可擴展性體現在其標記可由開發者自行定義。
              >> xml文檔更接近于數據庫,它并不存儲數據的表現形式。
           
              > html是一門編程語言,它可以被解析工具(如IE瀏覽器)處理,
                  并將信息以某種格式顯示出來。
              >> html注重的是數據的表現形式。
           
              HTML由于已定義標記的有限性,在很多領域已經抓襟見肘了。
              而xml可擴展性很好的彌補了HTML的缺陷。
           
          * xml主要應用于一下幾個方面:
              1.數據交換
              2.跨平臺應用開發
              3.數據轉換
              4.數據庫:xml完全可以作為一個小型數據庫來使用。
              5.配置文件:尤其是在Java開源框架中,如struts,hibernate,spring等。
                  都是用xml文檔作為配置文件。
           
          * xml語法:
          一.文檔類型的聲明:
              <?xml version="1.0"?>
              該語句是xml文檔類型的聲明,表示該文檔是一個xml文件。
              version="1.0"表示該xml文檔的版本是1.0的。
           
          說明:
              w3c雖然已經提供了xml1.1的版本的推薦標準,但并未被廣泛的普及和應用。
              最主要原因是說明了1.1版本不能完全向后兼容xml1.0版本。
              因為xml的應用非常廣泛,所以在無法做到很好兼容的情況下,
              使用xml1.1來代替xml1.0是不可取的。
           
          1.文檔編碼:xml的字符被設計為使用Unicode編碼。
              > xml文檔的默認編碼為UTF-8,欲改變xml的字符編碼,應適用encoding屬性。
              > 具體設置:<?xml version="1.0" encoding="ISO-8859-1"?>
           
          2.文檔的獨立性:xml文檔的外部關聯一般使用外部實體或應用了外部DTD文件。
           
          3.注意的問題:
              a) xml文檔類型的聲明并不是處理命令,雖然其形式和處理指令非常相似。
              b) 字符串"xml"和字符串"<?"之間不能留有空格。
              c) 文檔類型的聲明可以不出現在xml文檔中,
                 如果出現,則一定要出現在xml文檔的第一行第一列。
           
          二。文檔注釋:
              xml的文檔注釋以<!--開頭,以-->結束,中間為注釋的內容。
           
          注意的問題:
              1.文檔注釋中可以包含任何特殊的字符。
              2.文檔注釋必須以-->結束
           
          三。元素:元素是指標簽及包含在標簽內部的內容。
          > 元素的命名要遵循以下規則:
              1.元素名只能以字母或下劃線開始,其后可以跟數字,字母和下劃線的任意組合。
              2.元素名不能以xml(Xml xMl......)開頭
              3.元素名不能包含空格
              4.元素的開始標簽與結束標簽名稱必須完全一致,包括大小寫一致。
           
          > 根元素:
              >> 每個xml文檔元素有且只有一個根元素,
              >> 根元素是頂級元素(也就是第一個元素),
              >> 除處理指令和注釋外,其余所有必須包含在根元素當中。
           
          > 元素的嵌套和元素的并列:
              >> 元素嵌套是指一個元素完全包含在另一個元素中。
              >> 元素并列是指多個元素具有相同的父元素。
              >> 在xml文檔中不允許元素的交叉使用。
           
          注意的問題:
              1.xml是大小寫敏感的
              2.文檔類型聲明,注釋和文檔的處理指令都不是元素
              3.元素的開始標簽和結束標簽必須成對出現。
           
          四。屬性:
              > 屬性用于描述元素,所以屬性必須出現在元素的標簽內部。
              >> 屬性值一定要用引括號起來。
              > 在屬性賦值時所使用的雙引號可以單引號來代替。
              >> 兩者在使用時并無區別,但是當屬性值含有雙引號時,
                 則必須使用單引號來進行屬性賦值,反之亦然。
           
          使用屬性還是子元素的區別:
              > 描敘一個元素的某個特征時,使用子元素和屬性都是可行的。
              > 屬性相對與子元素的局限性:
                  1.屬性的擴展性差。
                  2.每個元素中同名的屬性只能出現一次而同名的子元素可以出現多個。
                  3.屬性存儲的數據量一旦過大,就會造成xml文檔結構上的失衡,
                  給閱讀造成很大的不便。
           
          五:實體引用
          記住五種實體引用:
              1.&amp;------------------&
              2.&lt;    ------------------<
              3.&gt;    ------------------>
              4.&apos;------------------'
              5.&quot;------------------"
           
          六。CDATA的語法
              > CDATA的全稱為字符數據(Character Data),
              > 其語法規則:<![CDATA[comment]]>,其中<![為開始符,]]>為結束符,
              > 包含在其中的全部字符都被處理器視為普通字符。
           
          注意的問題:
              1.CDATA段不可嵌套,而且沒有嵌套的必要。
              2.當需要將大塊的文本內容填充到元素中時,比較適合用CDATA部件。
           
          七。xml中的DTD
                    > DTD實際上可以看做一個或多個xml文件的模板,
                > 這些xml文件中的元素,元素屬性,元素的排列方式、順序,
                  元素能夠包含的內容等,都必須符合DTD中的定義。
                > DTD可以是一個完全獨立的文件,也可以是在xml文件中直接設定。
                  所以DTD分為外部DTD和內部DTD.
           
          內部DTD:
              內部DTD是在xml文件中的文件序言區域中定義的。
              語法:
              <!DOCTYPE elementname[
                  ............
              ]>
              說明:
              <!DOCTYPE :    表示開始設定DTD
              elementsname:    制定此DTD的根元素名稱
              [..........]:    在[]標記里面定義xml文件使用的元素,然后用>結束DTD定義
           
              在DTD定義的中間元素設定,是DTD的最主要部分,其語法如下:
              <!ELEMENT elementname elementdifinition>
               
              內容模式:ANY,EMPTY,MIXED,子元素
              元素:
                  ? 不出現或只出現一次
                  * 不出現或可以出現多次
                  + 必須出現一次以上
                  無符號 只能出現一次
           
              <!ATTLIST 元素名 屬性名 屬性類型 缺省類型>
              屬性類型:10種   缺省類型:4種:#required  #implied #fix 字符串
           
          八。命名空間
          語法:xmlns:prefix="uri"
           
              > uri是一個虛擬的空間,不一定是實實在在存在的。
              >
          命名空間用來解決同名標簽的問題.

              > 命名空間對屬性不起作用,只表明標簽屬于哪個命名空間.
           
           
          十。如何書寫xml文檔
              a) 首先要書寫xml文檔的類型聲明
              b) 然后添加一個注釋以標注開發者的信息,開發時間等。
              c) 接著為xml文檔定義一個根元素。
              d) 再接著添加二級元素,三級元素。
          以上只是書寫xml的一般步驟,其中元素的嵌套和屬性依附是最關鍵的步驟。
          posted on 2009-02-14 23:16 liuliang 閱讀(536) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 从江县| 永和县| 江口县| 蒙山县| 晋州市| 夹江县| 中卫市| 五指山市| 武安市| 山阳县| 尼玛县| 清水县| 台湾省| 六枝特区| 萨迦县| 桑植县| 清丰县| 廊坊市| 台东市| 宜宾市| 布尔津县| 嵩明县| 晋中市| 兴宁市| 赤城县| 虞城县| 都江堰市| 旬邑县| 贵南县| 山西省| 扬中市| 静乐县| 确山县| 合阳县| 化德县| 和硕县| 大兴区| 板桥市| 岑巩县| 韶山市| 阜阳市|