標準通用標記語言實體

標準通用標記語言裡頭,一個實體是一個原始數據類型。

介紹,實體類型,一般或參數,內部和外部實體,語法,

介紹

標準通用標記語言裡頭,一個實體是一個原始數據類型。

實體類型

一般或參數

一般實體 只能引用文檔裡頭的內容。
參數實體 只能引用文檔類型定義裡頭的。
實體也進一步分類,解析和未解析的:
已解析的實體 包含文本,將被合併到文檔的解析,如果被引用的實體。參數實體只能是已解析的實體。
未解析的實體 包含任意類型的數據,對它的引用將導致應用程式的實體的存在,只是被通知;該實體的內容將不能被解析,即使它是文本。未解析的實體只能是外部的。

內部和外部實體

一個 內部實體有一個值要么是一文字字元串,或一個解析字元串包括標記和實體定義在同一文檔中(如文檔類型定義或子文檔)。相反,一個外部實體有一個聲明調用一個外部檔案,因此必須干預一個實體管理器來達到解決外部檔案引用的目的。
系統實體 一個 系統實體 調用可選的SYSTEM ,它指示標準通用標記語言解析器處理實體的字元串所指的資源標識符。
文檔實體 當外部實體引用一個完整的標準通用標記語言文檔,它是已知的文檔作為調用 標準通用標記語言文檔實體。一個標準通用標記語言文檔是一個文字檔案同標準通用標記語言的標記在標準通用標記語言序章定義。一個完整的標準通用標記語言文檔不僅包括文檔實例本身,序言和可選的標準通用標記語言聲明(其中定義文檔的標記語法和聲明字元編碼)。

語法

一個實體定義通過一個實體聲明 在一個文檔類型聲明的文檔裡頭文檔類型定義
例如:
<!ENTITY 名稱 "超級無線保真">
<!ENTITY 棧 SYSTEM "file:///網關接口.入口">
<!ENTITY % 歡迎語 "你好!">
<!ENTITY 歡迎語貳 "%歡迎語; 意為您好!">
此文檔類型定義標記聲明如下:
一個內部一般實體命名為"名稱",和字元串構成的"超級無線保真"。
一個外部一般實體命名為"棧",和由標識的資源裡頭找到的文本"file:///網關接口.入口"。
一個內部參數實體命名為"歡迎語",和由字元串"你好!"。
一個內部一般實體命名為"歡迎語貳",和由字元串"你好!意為您好!"。
實體名稱必須遵循標準通用標記語言名稱的規則,也有局限性可以參照實體。
從上面的例子中,一般的實體中引用的檔案如下:
<內容>
<信息>'&名稱;'是一種常見的測試字元串。</信息>
<信息>網關接口.入口 的內容是: &棧;</信息>
<信息>中華人民共和國漢語 &歡迎語貳;</信息>
</內容>
當解析,本檔案將被報告的向下的流的應用程式相同的,如果它已被寫為如下假設“網關接口.入口”檔案包含文本"稱呼語":
<內容>
<信息>'&名稱;'是一種常見的測試字元串。</信息>
<信息>網關接口.入口 的內容是:稱呼語</信息>
<信息>中華人民共和國漢語 你好!意為您好!</信息>
</內容>
未聲明的實體的引用是一個錯誤,除非已經定義了一個默認的實體。例如:
<!ENTITY
DEFAULT "該實體未定義。">
其他標記結構和處理器選項可能會影響是否和如何處理實體。例如,一個處理器可以選擇忽略外部實體。

相關詞條

熱門詞條

聯絡我們