|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface DeclHandler
用於 DTD 宣告事件的 SAX2 擴展處理程序。
此模組(包括源程式碼和文檔)在公共域中,同時 沒有擔保。有關更多資訊,請參閱http://www.saxproject.org。
這是 SAX2 的一個可選擴展處理程序,以提供有關 XML 文檔中 DTD 宣告的更完整資訊。不需要 XML 閱讀器識別此處理程序,它不是僅核心 SAX2 分發的一部分。
注意,已經通過 DTDHandler
介面報告與資料相關的 DTD 宣告(未解析的實體和註釋)。
如果將宣告處理程序與詞法處理程序一起使用,則在 startDTD
和 endDTD
事件之間將發生所有事件。
要為 XML 閱讀器設置 DeclHandler,使用帶有屬性名稱 http://xml.org/sax/properties/declaration-handler
的 setProperty
方法以及將此介面(或 null)實作為該值的物件。如果閱讀器不報告宣告事件,則嘗試註冊處理程序時,它將拋出 SAXNotRecognizedException
。
方法摘要 | |
---|---|
void |
attributeDecl(String eName,
String aName,
String type,
String mode,
String value)
報告屬性型別宣告。 |
void |
elementDecl(String name,
String model)
報告元素型別宣告。 |
void |
externalEntityDecl(String name,
String publicId,
String systemId)
報告解析的外部實體宣告。 |
void |
internalEntityDecl(String name,
String value)
報告內部實體宣告。 |
方法詳細資訊 |
---|
void elementDecl(String name, String model) throws SAXException
內容模型將由字元串 "EMPTY"、字元串 "ANY" 或用括號括起來的組組成,可以選擇後面跟隨一個出現指示符。將使模型標準化,以便完全解析所有的參數實體,並移除所有的空白,並將包括括號。其他標準化(例如,移除多餘的括號或簡化出現指示符)是由解析器決定的。
name
- 元素型別名稱。model
- 作為標準化字元串的內容模型。
SAXException
- 應用程序可能引發一個異常。void attributeDecl(String eName, String aName, String type, String mode, String value) throws SAXException
將僅報告屬性的有效(第一個)宣告。型別將是以下字元串之一:"CDATA"、"ID"、"IDREF"、"IDREFS"、"NMTOKEN"、"NMTOKENS"、"ENTITY"、"ENTITIES"、移除所有空格的帶有分隔符 "|" 的加上括號的標記組,或後跟一個空格再跟隨移除所有空白的加上括號的標記組的單詞 "NOTATION"。
值將是報告給應用程序、被適當標準化的值,它帶有實體和擴展的字元參考。
eName
- 關聯元素的名稱。aName
- 屬性的名稱。type
- 表示屬性型別的字元串。mode
- 表示屬性預設網要("#IMPLIED"、"#REQUIRED" 或 "#FIXED")的字元串,如果不應用上述網要,則為 null。value
- 表示屬性的預設值的字元串,如果不存在,則為 null。
SAXException
- 應用程序可能引發一個異常。void internalEntityDecl(String name, String value) throws SAXException
將僅報告每個實體的有效(第一個)宣告。將擴展值中的所有參數實體,但不擴展常規實體。
name
- 實體的名稱。如果是參數實體,則名稱以 "%" 開頭。value
- 實體的替換文本。
SAXException
- 應用程序可能引發一個異常。externalEntityDecl(java.lang.String, java.lang.String, java.lang.String)
,
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
void externalEntityDecl(String name, String publicId, String systemId) throws SAXException
將僅報告每個實體的有效(第一個)宣告。
如果系統標識符是 URL,則解析器必須在將它傳遞給應用程序之前完全解析它。
name
- 實體的名稱。如果是參數實體,則名稱以 "%" 開頭。publicId
- 實體的公共標識符,如果沒有給定,則為 null。systemId
- 實體的系統標識符。
SAXException
- 應用程序可能引發一個異常。internalEntityDecl(java.lang.String, java.lang.String)
,
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。