JavaTM 2 Platform
Standard Ed. 6

軟體套件 javax.xml.transform.sax

此套件實作特定於 SAX2 的轉換 API。

請參見:
          描述

介面摘要
TemplatesHandler 可用於將 SAX 解析事件(解析轉換指令)處理為 Templates 物件的 SAX ContentHandler。
TransformerHandler 偵聽 SAX ContentHandler 解析事件,並將它們轉換為 Result 的 TransformerHandler。
 

類別摘要
SAXResult 充當轉換 Result 的持有者。
SAXSource 充當 SAX 樣式 Source 的持有者。
SAXTransformerFactory 此類別擴展了 TransformerFactory 以提供特定於 SAX 的處理器方法。
 

軟體套件 javax.xml.transform.sax 的描述

此套件實作特定於 SAX2 的轉換 API。它提供了允許從 ContentHandler 事件輸入的類別,還提供了產生 org.xml.sax.ContentHandler 事件的類別。它還提供了用於將輸入源設置為 XMLReader,或使用 InputSource 作為源的方法。它還允許創建 XMLFilter,這支持從其他轉換“拉入”的轉換,並使轉換器通過多種形式作為 XMLReader 使用。

SAXSource 類別允許設置用於“拉入”解析事件的 XMLReader,以及用於指定 SAX 源的 InputSource

SAXResult 類別允許設置用作來自轉換的 SAX2 事件接收器的 ContentHandler

SAXTransformerFactory 擴展了 TransformerFactory,以提供用於創建 TemplatesHandlerTransformerHandlerXMLReader 實例的處理器方法。

要獲取 SAXTransformerFactory,調用者必須強制轉換從 TransformerFactory.newInstance() 返回的 TransformerFactory 實例。

@link javax.xml.transform.sax.TransformerHandler} 介面允許從 SAX2 解析事件創建轉換,這是 "push"(推)模型,而不是轉換中通常發生的 "pull"(拉)模型。正常解析事件通過 ContentHandler 介面接收,詞法事件(例如 startCDATA 和 endCDATA)通過 LexicalHandler 介面接收,標記禁用輸出轉義的開始或結束的事件通過 ContentHandler.processingInstruction(java.lang.String, java.lang.String) 接收,目標參數為 Result.PI_DISABLE_OUTPUT_ESCAPINGResult.PI_ENABLE_OUTPUT_ESCAPING。如果要在 Transformer 處理程序中設置參數、輸出屬性或其他功能,則需要從 TransformerHandler.getTransformer() 獲取 Transformer 參考,以及從該參考調用的方法。

TemplatesHandler 介面允許從 SAX2 解析事件創建 Templates 物件。當 ContentHandler 事件完成後,可以從 TemplatesHandler.getTemplates() 獲取 Templates 物件。注意,應正常調用 TemplatesHandler.setSystemId(java.lang.String),以建立可以從其解析 URL 的基本系統 ID。

SAXTransformerFactory.newXMLFilter(javax.xml.transform.Source) 方法允許創建 XMLFilter,它封裝了 "pull" 轉換的 SAX2 概念。以下闡釋了互相形成鏈的幾種轉換。每個過濾器均指向一個父 XMLReader,且通過調用鏈中最後的 reader 上的 XMLReader.parse(org.xml.sax.InputSource) 來引發最後的轉換。


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only