DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML與XSLT >> XML入門教程:實體-XML/XSLT
XML入門教程:實體-XML/XSLT
編輯:XML與XSLT     

由於數據不是XML格式,所以使用NDATA聲明指定數據類型。avi是在NOTATION中定義的MIME媒體類型。在XML中嵌入未析實體很復雜且不規范,盡量不要使用。 實體

    用ENTITY聲明定義實體。如:
    <!ENTITY linux "linux is a very good system"> 用&linux;可引用該字符串
    可定義一個外部實體,引用外部XML文檔
    <!ENTITY linux SYSTEM "/home/linux/test.xml"> 使用&linux;可引用/home/linux/test.xml文檔
    外部實體沒有XML聲明,但可以有文本聲明,兩者很類似,主要區別是文本聲明必須有編碼聲明,而版本信息則是可選的。
    <?xml version="1.0" encoding="gb2312"?> 是一個合法的文本聲明 <?xml encoding="gb2312"?> 也是一個合法的文本聲明
    不是所有的數據都是XML。如jpeg照片,mpeg電影等。XML建議使用外部未析實體作為在文檔中嵌入這些內容的機制。DTD為包含非XML數據的實體指定一個名稱和URI。
    <!ENTITY movie SYSTEM "/home/linux/test.avi" NDATA avi>
    由於數據不是XML格式,所以使用NDATA聲明指定數據類型。avi是在NOTATION中定義的MIME媒體類型。在XML中嵌入未析實體很復雜且不規范,盡量不要使用。
    本文由(http://www.jb51.net)整理發布!轉載請注明出處,謝謝!

      參數實體可定義一組通用的實體,在文檔中可通過該參數實體來引用實體。參數實體的定義與通用實體定義類似,只是中間多了一個%,引用時也是用%代碼&。
      <!ENTITY % person "name,address,postcode"> 引用方法 %person; 這樣會用name,address,postcode代替參數實體%person;
      通常DTD都比較大,DocBook的DTD長達11000多行,如果把它存放在單一文件中,管理和維護起來都非常困難。我們可以使用外部DTD子集,把一個大的DTD按功能分成不同的功能塊,存放在不同的文件中。再通過外部參數實體聲明引入當前DTD中,如:
      定義參數實體引用外部names.dtd <!ENTITY % names SYSTEM "names.dtd"> 調用外部DTD子集 %names;
      使用IGNORE關鍵字可注釋聲明,如:
      <![IGNORE[ <!ELEMENT note (#PCDATA)> ]]>
      當然了,使用<!-- 注釋 -->的方式也是一樣的。
      INCLUDE關鍵字表示DTD中的確在使用給定的聲明,如:
      <![INCLUDE[ <!ELEMENT note (#PCDATA)> ]]>
      單從該聲明來看,有沒有使用INCLUDE效果都一樣,但如果組合INCLUDE和IGNORE,可實現DTD功能的選擇。我們可定義一個參數實體:
      <!ENTITY % note_allowed "INCLUDE" >
      然後使用參數實體引用而不使用關鍵字:
      <![%note_allowed;[ <!ELEMENT note (#PCDATA)> ]]>
      按上述操作,元素聲明是有效的,但我們也可以把參數實體%note_allowed重新定義為IGNORE,這樣,該元素聲明就無效了。
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved