JavaTM Platform
Standard Ed. 6

javax.xml.namespace
クラス QName

java.lang.Object
  上位を拡張 javax.xml.namespace.QName
すべての実装されたインタフェース:
Serializable

public class QName
extends Object
implements Serializable

QName は XML 仕様「XML Schema Part2: Datatypes specification」「Namespaces in XML」「Namespaces in XML Errata」に定義されている修飾名を表します。

 

QName の値には名前空間 URIローカル部分接頭辞が含まれます。

 

XML 入力ソース存在する場合に、QName には字句情報を保持する接頭辞が含まれます。QName.equals(Object) 内、または QName.hashCode() の計算には接頭辞は使われません。同一性およびハッシュコードは、名前空間 URI およびローカル部分のみを使用して定義されます。

 

名前空間 URI を指定しない場合、XMLConstants.NULL_NS_URI に設定されます。接頭辞を指定しない場合、XMLConstants.DEFAULT_NS_PREFIX に設定されます。

 

QName は不変です。

導入されたバージョン:
1.5
関連項目:
「XML Schema Part2:Datatypes specification」, 「Namespaces in XML」, 「Namespaces in XML Errata」, 直列化された形式

コンストラクタの概要
QName(String localPart)
          ローカル部分を指定する QName コンストラクタです。
QName(String namespaceURI, String localPart)
          名前空間 URI とローカル部分を指定する QName コンストラクタです。
QName(String namespaceURI, String localPart, String prefix)
          名前空間 URI、ローカル部分と接頭辞を指定する QName コンストラクタです。
 
メソッドの概要
 boolean equals(Object objectToTest)
          この QName が別の Object と等しいかどうかを判定します。
 String getLocalPart()
          この QName のローカル部分を取得します。
 String getNamespaceURI()
          この QName の名前空間 URI を取得します。
 String getPrefix()
          この QName の接頭辞を取得します。
 int hashCode()
          この QName のハッシュコードを生成します。
 String toString()
          この QNameString 表現  QNameString として表す一般に受け入れられている方法は James Clark によって定義されています
static QName valueOf(String qNameAsString)
          書式化された String の解析から取得された QName です。
 
クラス java.lang.Object から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

QName

public QName(String namespaceURI,
             String localPart)

名前空間 URI とローカル部分を指定する QName コンストラクタです。

 

名前空間 URI が null の場合、XMLConstants.NULL_NS_URI に設定されます。この値は「Namespaces in XML」仕様に定義されているように、名前空間が明示的に定義されていないことを表します。このアクションは QName 1.0 と互換性のある動作を保持します。コーディングスタイルとして、XMLConstants.NULL_NS_URI 値を明示的に指定することをお勧めします。

 

ローカル部分が null の場合、IllegalArgumentException がスローされます。"" のローカル部分は QName 1.0 との互換性のある動作が保持されます。

 

このコンストラクタを使用する場合、接頭辞は XMLConstants.DEFAULT_NS_PREFIX に設定されます。

 

名前空間 URI は、URI reference として検証されません。また、ローカル部分は、「Namespaces in XML」 で指定されている NCName として検証されません。

パラメータ:
namespaceURI - QName の名前空間 URI
localPart - QName のローカル部分
例外:
IllegalArgumentException - localPartnull の場合
関連項目:
QName(String namespaceURI, String localPart, String prefix)

QName

public QName(String namespaceURI,
             String localPart,
             String prefix)

名前空間 URI、ローカル部分と接頭辞を指定する QName コンストラクタです。

 

名前空間 URI が null の場合、XMLConstants.NULL_NS_URI に設定されます。この値は「Namespaces in XML」仕様に定義されているように、名前空間が明示的に定義されていないことを表します。このアクションは QName 1.0 と互換性のある動作を保持します。コーディングスタイルとして、XMLConstants.NULL_NS_URI 値を明示的に指定することをお勧めします。

 

ローカル部分が null の場合、IllegalArgumentException がスローされます。"" のローカル部分は QName 1.0 との互換性のある動作が保持されます。

 

接頭辞が null の場合、IllegalArgumentException がスローされます。XMLConstants.DEFAULT_NS_PREFIX を使用して、接頭辞が存在しないか、接頭辞が関係ないことを明示的に指示します。

 

名前空間 URI は、URI reference として検証されません。また、ローカル部分および接頭辞は、「Namespaces in XML」 で指定されている NCName として検証されません。

パラメータ:
namespaceURI - QName の名前空間 URI
localPart - QName のローカル部分
prefix - QName の接頭辞
例外:
IllegalArgumentException - localPart または prefixnull の場合

QName

public QName(String localPart)

ローカル部分を指定する QName コンストラクタです。

 

ローカル部分が null の場合、IllegalArgumentException がスローされます。"" のローカル部分は QName 1.0 との互換性のある動作が保持されます。

 

このコンストラクタを使用する場合、名前空間 URI を XMLConstants.NULL_NS_URI に設定し、接頭辞を XMLConstants.DEFAULT_NS_PREFIX に設定します。

 

XML コンテキストでは、すべての要素名および属性名が名前空間のコンテキストに存在します。QName の構築時に、これを明示的にすることによって、XML 妥当性エラーの診断を容易にします。コンストラクタ QName(String namespaceURI, String localPart) および QName(String namespaceURI, String localPart, String prefix) を使用することをお勧めします。

 

また、ローカル部分は、「Namespaces in XML」 で指定されている NCName として検証されません。

パラメータ:
localPart - QName のローカル部分
例外:
IllegalArgumentException - localPartnull の場合
関連項目:
QName(String namespaceURI, String localPart), QName(String namespaceURI, String localPart, String prefix)
メソッドの詳細

getNamespaceURI

public String getNamespaceURI()

この QName の名前空間 URI を取得します。

戻り値:
この QName の名前空間 URI

getLocalPart

public String getLocalPart()

この QName のローカル部分を取得します。

戻り値:
この QName のローカル部分

getPrefix

public String getPrefix()

この QName の接頭辞を取得します。

 

QName に割り当てられる接頭辞は、別のコンテキストでは有効でない可能性があります。たとえば、ドキュメントの構文解析のコンテキストで、QName に接頭辞が割り当てられることがありますが、その接頭辞は別のドキュメントのコンテキストでは無効な場合があります。

戻り値:
この QName の接頭辞

equals

public final boolean equals(Object objectToTest)

この QName が別の Object と等しいかどうかを判定します。

 

判定する ObjectQName でないか、null の場合、このメソッドは false を返します。

 

2 つの QName は、両方の名前空間 URI とローカル部分が等しい場合にのみ同じであるとみなされます。このメソッドは String.equals() を使用して、名前空間 URI とローカル部分が同じであるかチェックします。同一性の判定に接頭辞は使われません

 

このメソッドは Object.equals(Object) の汎用規約を満たします。

オーバーライド:
クラス Object 内の equals
パラメータ:
objectToTest - この QName と等しいかどうかが 判定される Object
戻り値:
指定した Object がこの QName と 等しい場合は true。そうでない場合は false
関連項目:
Object.hashCode(), Hashtable

hashCode

public final int hashCode()

この QName のハッシュコードを生成します。

 

ハッシュコードは、QName の名前空間 URI とローカル部分の両方を使用して計算されます。ハッシュコードの計算に接頭辞は使われません

 

このメソッドは Object.hashCode() の汎用規約を満たします。

オーバーライド:
クラス Object 内の hashCode
戻り値:
この QName Object のハッシュコード
関連項目:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()

この QNameString 表現

 

QNameString として表す一般に受け入れられている方法は James Clark によって定義されています。これは「標準」仕様ではありませんが、一般に使われています。 たとえば Transformer.setParameter(String name, Object value) などです。 This implementation represents a QName as: "{" + Namespace URI + "}" + local part.名前空間 URI .equals(XMLConstants.NULL_NS_URI) の場合、ローカル部分のみが返されます。このメソッドの適切な用途は、デバッグやユーザー用のログなどです。

 

接頭辞の値は String 表現の一部として返されないことに注意してください。

 

このメソッドは Object.toString() の汎用規約を満たします。

オーバーライド:
クラス Object 内の toString
戻り値:
この QNameString 表現

valueOf

public static QName valueOf(String qNameAsString)

書式化された String の解析から取得された QName です。

 

Stringnull、または QName.toString() 書式に従っていない場合、IllegalArgumentException がスローされます。

 

StringQName.toString() によって返される形式でなければなりません

 

QNameString として表す一般に受け入れられている方法は James Clark によって定義されています。これは「標準」仕様ではありませんが、一般に使われています。 たとえば Transformer.setParameter(String name, Object value) などです。 This implementation parses a String formatted as: "{" + Namespace URI + "}" + local part.名前空間 URI .equals(XMLConstants.NULL_NS_URI) の場合、ローカル部分のみが提供されるはずです。

 

接頭辞値は String表せないため、XMLConstants.DEFAULT_NS_PREFIX に設定されます。

 

このメソッドは結果の QName を完全に検証しません。  

名前空間 URI は、URI reference として検証されません。また、ローカル部分は、「Namespaces in XML」 で指定されている NCName として検証されません。

パラメータ:
qNameAsString - QNameString 表現
戻り値:
指定された String に対応する QName
例外:
IllegalArgumentException - qNameAsStringnull または不正である場合
関連項目:
QName.toString()

JavaTM Platform
Standard Ed. 6

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

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