XML入門操作程序

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

XML入門操作程序

用ENTITY聲明定義實體。如:

用&linux;可引用該字符串

可定義一個外部實體,引用外部XML文檔

使用&linux;可引用/home/linux/文檔

外部實體沒有XML聲明,但可以有文本聲明,兩者很類似,主要區別是文本聲明必須有編碼聲明,而版本信息則是可選的。

是一個合法的文本聲明 也是一個合法的文本聲明

不是所有的數據都是XML。如jpeg照片,mpeg電影等。XML建議使用外部未析實體作爲在文檔中嵌入這些內容的機制。DTD爲包含非XML數據的實體指定一個名稱和URI。

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

參數實體可定義一組通用的.實體,在文檔中可通過該參數實體來引用實體。參數實體的定義與通用實體定義類似,只是中間多了一個%,引用時也是用%代碼&。

引用方法%person;這樣會用name,address,postcode代替參數實體%person;

通常DTD都比較大,DocBook的DTD長達11000多行,如果把它存放在單一文件中,管理和維護起來都非常困難。我們可以使用外部DTD子集,把一個大的DTD按功能分成不同的功能塊,存放在不同的文件中。再通過外部參數實體聲明引入當前DTD中,如:

定義參數實體引用外部調用外部DTD子集%names;

使用IGNORE關鍵字可註釋聲明,如:

<![IGNORE[ ]]>

當然了,使用的方式也是一樣的。

INCLUDE關鍵字表示DTD中的確在使用給定的聲明,如:

<![INCLUDE[ ]]>

單從該聲明來看,有沒有使用INCLUDE效果都一樣,但如果組合INCLUDE和IGNORE,可實現DTD功能的選擇。我們可定義一個參數實體:

然後使用參數實體引用而不使用關鍵字:

<![%note_allowed;[ ]]>

按上述操作,元素聲明是有效的,但我們也可以把參數實體%note_allowed重新定義爲IGNORE,這樣,該元素聲明就無效了。