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_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つの属性の修飾名が同じになることは許されません(例えば、同じ名前空間かつ同じローカル名)。