LOTUS DOMINO の XML
このクラスによって、SAX アプリケーションが、入力ソースについての情報を 1 つのオブジェクトとしてカプセル化できるようになります。情報とは、パブリック ID、システム ID、バイトストリーム (できればエンコードの種類を指定して)、そして文字ストリームなどです。
アプリケーションがこの入力ソースをパーサーに渡す方法は 2 種類です。Parser.parse メソッドの引数として渡すか、EntityResolver.resolveEntity メソッドの戻り値として渡します。
SAX パーサーは XML 入力の読み込み方法を決めるために InputSource オブジェクトを使用します。有効な文字ストリームが存在する場合はパーサーがそのストリームを直接読み込みます。文字ストリームがない場合は、バイトストリームが利用可能であれば、バイトストリームが使用されます。文字ストリームもバイトストリームも無効であれば、パーサーはシステム ID で指定されたリソースへの URI 接続を開こうと試みます。
InputSource オブジェクトはアプリケーションに属しています。SAX パーサーで編集してはなりません (必要な場合はコピーを編集します)。
Constructors
引数のないデフォルトのコンストラクタです。
構文:
public InputSource()
システム ID を含めた新規の入力ソースを作成します。アプリケーションではパブリック ID を含めるために setPublicId も使用できます。または分かっていれば文字のエンコード方式を指定するために setEncoding も使用できます。システム ID が URL の場合は、完全に解析されなければなりません。
public InputSource(java.lang.String systemId)
パラメータ
バイトストリームを使用して新規の入力ソースを生成します。アプリケーション作成者は、相対 URI を解析するためのベースを提供するために setSystemId が使用できます。またパブリック ID を含めるためには setPublicId が使用できます。オブジェクトの文字エンコード方式を指定するためには setEncoding が使用できます。
public InputSource(java.io.InputStream byteStream)
文字ストリームを使用して新規の入力ソースを生成します。アプリケーション作成者は、相対 URI を解析するためのベースを提供するために setSystemId() が、パブリック ID を含めるために setPublicId が使用できます。文字ストリームはバイトオーダーマークを含んではいけません。
public InputSource(java.io.Reader characterStream)
メソッド
getByteStream
getCharacterStream
getEncoding
getPublicID
getSystemID
setByteStream
setCharacterStream
setEncoding
setPublicID
setSystemID
この入力ソースのバイトストリームを取得します。getEncoding メソッドはこのバイトストリーム用の文字エンコード方式を返します。未知の場合は Null を返します。
public java.io.InputStream getByteStream()
戻り値:
この入力ソースの文字ストリームを取得します。
public java.io.Reader getCharacterStream()
バイトストリームまたは URI 用の文字エンコード方式を取得します。
public java.lang.String getEncoding()
この入力ソース用のパブリック ID を取得します。
public java.lang.String getPublicId()
この入力ソースのシステム ID を取得します。getEncoding メソッドは対象のオブジェクトの文字エンコード方式を返します。未知の場合は Null を返します。システム ID が URL の場合、完全に解析されなければなりません。
public java.lang.String getSystemId()
この入力ソースのバイトストリームを設定します。SAX パーサーは文字ストリームが指定されているとこのメソッドを無視します。しかし URI 接続自身を開くには優先してバイトストリームを使用します。
アプリケーションでバイトストリームの文字エンコード方式が分かっている場合は、setEncoding メソッドで設定しなければなりません。
public void setByteStream(java.io.InputStream byteStream)
この入力ソースの文字ストリームを設定します。文字ストリームが指定されていると、SAX パーサーはバイトストリームを無視し、システム ID への URI 接続を開く試みは行われません。
public void setCharacterStream(java.io.Reader characterStream)
分かっていれば文字エンコード方式を設定します。エンコード方式は、XML エンコーディング宣言で使用できるように文字列でなければなりません。アプリケーションで文字ストリームが提供されている場合はこのメソッドは無効です。
public void setEncoding(java.lang.String encoding)
この入力ソースにパブリック ID を設定します。パブリック ID は常に省略できます。アプリケーションの書き込みにパブリック ID が含まれる場合は、ロケーション情報の一部として提供されます。
public void setPublicId(java.lang.String publicId)
この入力ソースにシステム ID を設定します。システム ID は、バイトストリームか文字ストリームが存在する場合は常に省略できますが、システム ID を提供することは有効です。アプリケーションで相対 URI を解析するのに使用できたり、エラーや警告のメッセージに ID を含めたりできます (パーサーは指定されたバイトストリームまたは文字ストリームがない場合のみ、URI への接続を開こうと試みます)。
アプリケーションで、システム ID の示すオブジェクトの文字エンコード方式が分かっている場合、setEncoding メソッドを使用してエンコード方式を登録できます。システム ID が URL の場合は、完全に解析されなければなりません。
public void setSystemId(java.lang.String systemId)