ページの先頭行へ戻る
Symfoware Server V12.7.0 XQueryリファレンス
FUJITSU Software

2.1.5 名前(QName)

機能

種々の名前を指定します。

記述形式

QName

NCName

構文の構成
[QName]

一般規則

QName
  • XQueryにおける名前は、すべてQNameで記述されます。

  • XQueryで使用される名前の種類を以下に示します。

    • 変数名

    • 関数名

    • エレメントノード名

    • 属性ノード名

  • 関数名に使用されるQNameは、ネームスペースを認識します。ただし、使用できるネームスペースURIとネームスペース接頭辞は、あらかじめXQueryで宣言されたものであり、以下に示す値でそれぞれ固定されています。変更することはできません。また、新しいネームスペースURIや接頭辞を作成することもできません。関数名のデフォルトネームスペースは接頭辞fnで表されるネームスペースに一致します。

    ネームスペース接頭辞

    バインドされたネームスペースURI

    xs

    http://www.w3.org/2001/XMLSchema

    fn

    http://www.w3.org/2005/xpath-functions

  • エレメントノード名、属性ノード名に使用されるQNameはネームスペースを認識しません。しかし、ネームスペース接頭辞で修飾された名前をもつエレメントノードや属性ノードを、パス式の名前テストで検索することが可能です。名前テストのQNameには、検索したいノードの名前を接頭辞付きで指定することができます。指定した名前に一致するノードが検索結果として得られます。名前テストの詳細については、“4.3.1 軸ステップ”を参照してください。

    注意

    • ノード名のQNameと名前テストのQNameの比較は、接頭辞とローカル名がそれぞれ一致するかどうかで判断します。接頭辞に対応するネームスペースURIが一致するかどうかは無視します。

    • ネームスペース接頭辞に“xmlns”を指定することはできません。

  • 変数名に使用されるQNameはネームスペースを認識しません。

  • QNameの長さは最大128バイトまで指定できます。ただし、QNameの長さは文字コード系をUNICODEで表現したときの長さで計算されます。

NCName
  • QNameのネームスペース接頭辞、またはローカル名を表します。

使用例

QNameとして、変数名($abc)、エレメントノード名(employees、employee)、属性ノード名(id)を使用する場合

for  $abc  in  /employees/employee[@id>30000]
     return $abc