XMLELEMENT構文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - XMLデータ型

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/kxe1590704060061.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1140
Product Category
Software
Teradata Vantage
XMLELEMENT (
  NAME XML_element_name

  [, XML_namespace_declaration ]

  [, ( XML_attribute_spec [,...] ) ]

  [, XML_value_expr
    [ OPTION
      {
        { NULL | EMPTY | ABSENT | NIL } ON NULL |
          NIL ON NO CONTENT
      }
    ]
  ]

  [ RETURNING { CONTENT | SEQUENCE } ]
)
デフォルトの名前空間宣言項目は、1回のみ含めることができます。それは、カンマ区切り名前空間宣言のリストの中の任意の位置、またはリストの末尾に出現可能です。

構文要素

XML_namespace_declaration
XMLNAMESPACES (
  { 'XML_namespace_URI' AS XML_namespace_prefix |
    DEFAULT 'XML_namespace_URI' |
    NO DEFAULT
  } [,...]
)

問合わせ式(行と列)の評価時点のスコープを決定するXML名前空間。

ここに指定される名前空間宣言は、問合わせのプロローグの中で宣言されている名前空間によって上書きされます。
XML_attribute_spec
XML_attribute_value [ AS XML_attribute_name ]
XML_element_name
要素の名前。
XML_value_expr
XML要素コンテンツを表わすXML型のインスタンス。
  • XML_value_exprはXML型でなければなりません。
  • 構成する要素には、ANSI SQL/XML仕様のルールを適用することによって派生した名前が付けられます。それはXML 1.1 QNameになります。
  • XML要素コンテンツが提供されている場合、属性の名前をxsi:nilにすることはできません(xsiは、名前空間URI "http://www.w3.org/2001/XMLSchema-instance"で識別されるxmlスキーマ インスタンス名前空間にマップされます)。
  • XML要素コンテンツがNULLの場合、結果値はXMLコンテンツ オプションによって決まります。XMLコンテンツ オプションが指定されていない場合、デフォルトはEMPTY ON NULLです。XML要素コンテンツがNULLであり、かつXMLコンテンツ オプションが
    • NULL ON NULLの場合、NULLが返されます。
    • ABSENT ON NULLの場合、空のXQueryシーケンスが返されます。
    • NIL ON NULLの場合、構成する要素にxsi:nil=trueという属性が追加されます(xsiは、xmlスキーマ インスタンス スキーマに関連付けられた接頭辞)。
    • EMPTY ON NULLの場合、パラメータの残り(名前、名前空間、属性など)に応じて空要素が生成されて返されます。
  • XML要素コンテンツが、テキスト ノードでも要素ノードでもないノードのみからなるシーケンスの場合、かつXMLコンテンツ オプションがNIL ON NO CONTENTの場合、構成される要素に属性xsi:nil=trueが追加されます。
OPTION
NULL ON NULL
EMPTY ON NULL
ABSENT ON NULL
NIL ON NULL
NIL ON NO CONTENT
XMLコンテンツのオプション。
RETURNING CONTENT
戻り値は、1つ以上の子要素ノードを伴う文書ノードです。
RETURNING SEQUENCE
戻り値はシーケンスです(項目の順序付きコレクション、各項目は有効なXQueryノードかアトミック値のいずれか)。これは、デフォルトです。
'XML_namespace_URI'
XML名前空間を識別するURI(Uniform Resource Identifier)。
XML_namespace_prefix
XML名前空間を識別するURI(Uniform Resource Identifier)。
XML_attribute_value
要素の属性の値。
XML_attribute_name
属性の名前。名前をxmlnsにすることはできません。また、2つの属性の修飾名が同じになることは許されません(例えば、同じ名前空間かつ同じローカル名)。