JavaTM 2 Platform
Standard Ed. 6

org.w3c.dom.ls
介面 LSInput


public interface LSInput

此介面表示資料的輸入源。

此介面允許應用程序封裝有關單個物件中的輸入源的資訊,它可包括公共標識符、系統標識符、位元組串流(可能帶有指定的編碼)、基本 URI 和/ 或字元串流。

對位元組串流和字元串流的精確定義具有綁定依賴性。

當需要這種物件時,期望應用程序提供實作此介面的物件。應用程序既可以提供自己的實作此介面的物件,也可以使用一般的處理器方法 DOMImplementationLS.createLSInput() 來創建實作此介面的物件。

LSParser 將使用 LSInput 物件來確定如何讀取資料。LSParser 將按照下面的順序查看在 LSInput 中指定的不同輸入,以便知道將從哪個輸入中讀取資料,將使用不為 null 並且不是空字元串的第一個輸入:

  1. LSInput.characterStream
  2. LSInput.byteStream
  3. LSInput.stringData
  4. LSInput.systemId
  5. LSInput.publicId

如果所有的輸入都為 null,LSParser 將報告有 DOMError,其 DOMError.type 被設置為 "no-input-specified",其 DOMError.severity 被設置為 DOMError.SEVERITY_FATAL_ERROR

LSInput 物件屬於應用程序。DOM 實作永遠不會修改這些物件(儘管可在必要時製作副本和修改副本)。

另請參見《Document Object Model (DOM) Level 3 Load and Save Specification》。


方法摘要
 String getBaseURI()
          基 URI(請參閱 [IETF RFC 2396]中的 5.1.4 節),它用來解析絕對 URI 的相對 systemId
 InputStream getByteStream()
          依賴於語言和綁定型別的屬性,表示位元組的串流。
 boolean getCertifiedText()
          如果設置為 true,則假定解析 [XML 1.1] 時對輸入進行認證(請參閱 [XML 1.1] 中的 2.13 節)。
 Reader getCharacterStream()
          依賴於語言和綁定型別的屬性,表示 16 位單元串流。
 String getEncoding()
          字元編碼(如果已知)。
 String getPublicId()
          此輸入源的公共標識符。
 String getStringData()
          要解析的字元串資料。
 String getSystemId()
          系統標識符,它是此輸入源的 URI 參考 [IETF RFC 2396]。
 void setBaseURI(String baseURI)
          基 URI(請參閱 [IETF RFC 2396])中的 5.1.4 節),它用來解析絕對 URI 的相對 systemId
 void setByteStream(InputStream byteStream)
          依賴於語言和綁定型別的屬性,表示位元組串流。
 void setCertifiedText(boolean certifiedText)
          如果設置為 true,則假定解析 [XML 1.1] 時對輸入進行驗證(請參閱 [XML 1.1] 中的 2.13 節)。
 void setCharacterStream(Reader characterStream)
          依賴於語言和綁定型別的屬性,表示 16 位單元的串流。
 void setEncoding(String encoding)
          字元串編碼(如果已知)。
 void setPublicId(String publicId)
          此輸入源的公共標識符。
 void setStringData(String stringData)
          要解析的字元串資料。
 void setSystemId(String systemId)
          系統標識符,它是此輸入源的 URI 參考 [IETF RFC 2396]。
 

方法詳細資訊

getCharacterStream

Reader getCharacterStream()
依賴於語言和綁定型別的屬性,表示 16 位單元串流。應用程序必須使用 UTF-16(在 [Unicode] 和 [ISO/IEC 10646] 中定義)編碼串流。當使用字元串流時,不必具有 XML 宣告。如果有 XML 宣告,將忽略編碼屬性的值。


setCharacterStream

void setCharacterStream(Reader characterStream)
依賴於語言和綁定型別的屬性,表示 16 位單元的串流。應用程序必須使用 UTF-16(在 [Unicode] 和 [ISO/IEC 10646] 中定義)編碼串流。當使用字元串流時,不必具有 XML 宣告。如果有 XML 宣告,將忽略編碼屬性的值。


getByteStream

InputStream getByteStream()
依賴於語言和綁定型別的屬性,表示位元組的串流。
如果應用程序知道位元組串流的字元編碼,則必須設置編碼屬性。用此方法設置編碼將覆寫在資料的 XML 宣告中指定的任何編碼。


setByteStream

void setByteStream(InputStream byteStream)
依賴於語言和綁定型別的屬性,表示位元組串流。
如果應用程序知道位元組串流的字元編碼,則必須設置編碼屬性。用此方法設置編碼將覆寫在資料的 XML 宣告中指定的任何編碼。


getStringData

String getStringData()
要解析的字元串資料。如果提供了字元串資料,將始終將此視為 16 位單元序列(UTF-16 編碼字元)。當使用 stringData 時,不必具有 XML 宣告。如果有 XML 宣告,將忽略編碼屬性的值。


setStringData

void setStringData(String stringData)
要解析的字元串資料。如果提供了字元串資料,將始終將此視為 16 位單元序列(UTF-16 編碼的字元)。當使用 stringData 時,不必具有 XML 宣告。如果有 XML 宣告,將忽略編碼屬性的值。


getSystemId

String getSystemId()
系統標識符,它是此輸入源的 URI 參考 [IETF RFC 2396]。如果有位元組串流、字元串流或字元串資料,則系統標識符將為可選項。提供一項非常有用,因為應用程序將使用它來解析任何相對 URI,並可將它包含到錯誤訊息和警告中。(如果在輸入源中沒有其他的輸入可供使用,則 LSParser 將只嘗試獲取由 URI 參考標識的資源。)
如果應用程序知道系統標識符所指向的物件的字元編碼,則可以使用 encoding 屬性來設置編碼。
如果指定的系統 ID 是相對 URI 參考(請參閱 [IETF RFC 2396] 中的 5 節),則 DOM 實作將嘗試以 baseURI 為基解析相對 URI,如果嘗試失敗,則表示該行為具有實作依賴性。


setSystemId

void setSystemId(String systemId)
系統標識符,它是此輸入源的 URI 參考 [IETF RFC 2396]。如果有位元組串流、字元串流或字元串資料,則系統標識符將為可選項。提供一項仍非常有用,因為應用程序將使用它來解析任何相對 URI,並可將它包含到錯誤訊息和警告中。(如果在輸入源中沒有其他的輸入可供使用,則 LSParser 將只嘗試獲取由 URI 參考標識的資源。)
如果應用程序知道系統標識符所指向的物件的字元編碼,則可以使用 encoding 屬性來設置編碼。
如果指定的系統 ID 是相對 URI 參考(請參閱 [IETF RFC 2396] 中的 5 節),則 DOM 實作將嘗試以 baseURI 為基解析相對 URI,如果嘗試失敗,則表示該行為與實作有關。


getPublicId

String getPublicId()
此輸入源的公共標識符。可以使用依賴於實作的機制(如目錄或其他映射)將它映射到一個輸入源。當報告錯誤時,也可以將公共標識符(如果已指定)作為位置資訊的一部分來報告。


setPublicId

void setPublicId(String publicId)
此輸入源的公共標識符。可以使用具有實作依賴性的機制(如目錄或其他映射)將它映射到一個輸入源。當報告錯誤時,還可以將公共標識符(如果已指定)作為位置資訊的一部分來報告。


getBaseURI

String getBaseURI()
基 URI(請參閱 [IETF RFC 2396]中的 5.1.4 節),它用來解析絕對 URI 的相對 systemId
如果使用時基 URI 本身是相對 URI、空字元串或 null,則表示該行為具有實作依賴性。


setBaseURI

void setBaseURI(String baseURI)
基 URI(請參閱 [IETF RFC 2396])中的 5.1.4 節),它用來解析絕對 URI 的相對 systemId
如果使用時基 URI 本身是相對 URI、空字元串或 null,則該行為具有實作依賴性。


getEncoding

String getEncoding()
字元編碼(如果已知)。編碼必須是 XML 編碼宣告([XML 1.0] 的 4.3.3 節 "Character Encoding in Entities")可接受的字元串。
當應用程序提供字元串流或字元串資料時,此屬性無效。對於其他的輸入源,通過此屬性指定的編碼將覆寫在 XML 宣告或 Text 宣告中指定的任何編碼,或者從高層協議中獲取的編碼,如 HTTP [IETF RFC 2616]。


setEncoding

void setEncoding(String encoding)
字元串編碼(如果已知)。編碼必須是 XML 編碼宣告([XML 1.0] 的 4.3.3 節 "Character Encoding in Entities")可接受的字元串。
當應用程序提供字元串流或字元串資料時,此屬性無效。對於其他的輸入源,通過此屬性指定的編碼將覆寫在 XML 宣告或 Text 宣告中指定的任何編碼,或者從高層協議中獲取的編碼,如 HTTP [IETF RFC 2616]。


getCertifiedText

boolean getCertifiedText()
如果設置為 true,則假定解析 [XML 1.1] 時對輸入進行認證(請參閱 [XML 1.1] 中的 2.13 節)。


setCertifiedText

void setCertifiedText(boolean certifiedText)
如果設置為 true,則假定解析 [XML 1.1] 時對輸入進行驗證(請參閱 [XML 1.1] 中的 2.13 節)。


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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