JavaTM 2 Platform
Standard Ed. 5.0

org.xml.sax
インタフェース Locator

既知のサブインタフェースの一覧:
Locator2
既知の実装クラスの一覧:
Locator2Impl, LocatorImpl

public interface Locator

SAX イベントと文書の位置を関連付けるためのインタフェースです。

このモジュールは、ソースコード、文書ともに公開ドメインに置かれています。したがって、内容に関する保証は一切提供されません。詳細については、http://www.saxproject.org を参照してください。

SAX パーサは、このインタフェースを実装し、コンテンツハンドラの setDocumentLocator メソッドを使ってインスタンスを渡すことにより、SAX アプリケーションに位置情報を提供します。SAX アプリケーションは、このオブジェクトを使って XML ソース文書内のその他の SAX イベントの位置を突き止めることができます。

オブジェクトによって返される結果は、各コールバックメソッドのスコープ内でだけ有効です。このスコープ外、または解析が完了したあとでロケータを使用しようとすると、アプリケーションに予想外の影響が及びます。

SAX パーサにロケータを提供させるのは必須条件ではありませんが、そうすることを強くお勧めします。この場合、SAX パーサは、その他の文書イベントを報告する前にロケータを提供する必要があります。アプリケーションが startDocument イベントを受け取る前にロケータを設定しておかないと、アプリケーションはロケータを利用できないと判断します。

導入されたバージョン:
SAX 1.0
関連項目:
ContentHandler.setDocumentLocator(org.xml.sax.Locator)

メソッドの概要
 int getColumnNumber()
          現在のドキュメントイベントが終了する列番号を返します。
 int getLineNumber()
          現在の文書イベントが終了する行番号を返します。
 String getPublicId()
          現在の文書イベントの公開識別子を返します。
 String getSystemId()
          現在の文書イベントのシステム識別子を返します。
 

メソッドの詳細

getPublicId

String getPublicId()
現在の文書イベントの公開識別子を返します。

戻り値は、文書エンティティの公開識別子か、イベントをトリガするマークアップを含む外部の構文解析対象エンティティの公開識別子です。

戻り値:
公開識別子を含む文字列。使用できない場合は null
関連項目:
getSystemId()

getSystemId

String getSystemId()
現在の文書イベントのシステム識別子を返します。

戻り値は、文書エンティティのシステム識別子か、イベントをトリガするマークアップを含む外部の構文解析対象エンティティのシステム識別子です。

システム識別子が URL の場合、パーサはこれをアプリケーションに渡す前に完全に解決する必要があります。たとえば、ファイル名は常に file:... URL として提供される必要があり、その他の種類の相対 URL もその基底に対して解決されます。

戻り値:
システム識別子を含む文字列。使用できない場合は null
関連項目:
getPublicId()

getLineNumber

int getLineNumber()
現在の文書イベントが終了する行番号を返します。行は行末で区切られ、行末は XML 仕様に定義されます。

警告: メソッドからの戻り値は、診断用の近似値としてのみ使用されます。元の XML 文書の文字コンテンツを編集するための詳細情報を提供することは、目的としていません。これらの「行」番号は、列として表示されるものと一致することもあれば、内部エンティティの拡張のためにソーステキストと一致しないこともあります。

戻り値は、文書エンティティの行番号の近似値か、イベントをトリガするマークアップを含む外部の構文解析対象エンティティの行番号の近似値です。

SAX ドライバは、文書イベントに関連付けられたテキストの直後にある、最初の文字を含む行の位置を返そうとします。1 行目は先頭行です。

戻り値:
行番号。使用できない場合は -1
関連項目:
getColumnNumber()

getColumnNumber

int getColumnNumber()
現在のドキュメントイベントが終了する列番号を返します。これは、最後の行が終了したあとの Java char 値の 1 から始まる番号です。

警告: メソッドからの戻り値は、診断用の近似値としてのみを対象とされます。元の XML 文書の文字コンテンツを編集するための詳細情報を提供することは、目的としていません。たとえば、行に結合文字シーケンス、ワイド文字配列、サロゲートペア、または双方向テキストが含まれる場合、この値はテキストエディタの画面の列に対応しないことがあります。

戻り値は、文書エンティティの列番号の近似値か、イベントをトリガするマークアップを含む外部の構文解析対象エンティティの列番号の近似値です。

SAX ドライバは、文書イベントに関連付けられたテキストの直後にある、最初の文字を含む行の位置を返そうとします。なお、各行の最初の列が 1 列目になります。

戻り値:
列番号。使用できない場合は -1
関連項目:
getLineNumber()

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。