DBMS_XMLDOM
パッケージは、XMLType
オブジェクトへのアクセスに使用されます。また、このパッケージによって、HTMLドキュメントとXML文書用のApplication Program Interface(API)であるDocument Object Model(DOM)が実装されます。
関連項目: 『Oracle XML Developer's Kitプログラマーズ・ガイド』 |
この章では、次の項目について説明します。
概要
定数
タイプ
例外
DOMNodeサブプログラム
DOMAttrサブプログラム
DOMCDataSectionサブプログラム
DOMCharacterDataサブプログラム
DOMCommentサブプログラム
DOMDocumentサブプログラム
DOMDocumentFragmentサブプログラム
DOMDocumentTypeサブプログラム
DOMElementサブプログラム
DOMEntityサブプログラム
DOMEntityReferenceサブプログラム
DOMImplementationサブプログラム
DOMNamedNodeMapサブプログラム
DOMNodeListサブプログラム
DOMNotationサブプログラム
DOMProcessingInstructionサブプログラム
DOMTextサブプログラム
Document Object Model(DOM)は、HTMLドキュメントとXML文書用のApplication Program Interface(API)です。DOMは、ドキュメントの論理構造、およびドキュメントへのアクセスと操作の方法を定義します。DOM仕様では、「ドキュメント」という用語が広い意味で使用されます。XMLは、様々なシステムに保存される数多くの種類の情報を表す言語として、急速に普及してきました。 これらの情報は従来「データ」と呼ばれていますが、XMLではこのデータをドキュメント(文書)として表現します。DBMS_XMLDOM
パッケージでは、スキーマ・ベースのドキュメントと、非スキーマ・ベースのドキュメントの両方を操作できます。
注意:
|
Document Object Model(DOM)を使用すると、HTMLまたはXML文書の内容へのアクセス、変更、削除または追加を行うことができます。ただし、いくつかの例外があります。特に、XMLの内部および外部のサブセットに対するDOMインタフェースは、まだ仕様化されていません。
DOMのW3C仕様の重要な目的の1つは、広範な環境、プログラミング言語、アプリケーションで使用できる標準的なプログラミング・インタフェースを提供することです。DOM標準はオブジェクト指向ですが、PL/SQLは本質的に手続き型言語であるため、次の変更が必要でした。
各種のDOMインタフェース(Node
、Element
など)には、同等のPL/SQLタイプ(それぞれ、DOMNode
、DOMElement
など)があります。
各種のDOMException
コード(WRONG_DOCUMENT_ERR
、HIERARCHY_REQUEST_ERR
など)には、同じ名前のPL/SQL例外があります。
各種のDOMノード・タイプ・コード(ELEMENT_NODE
、ATTRIBUTE_NODE
など)には、同じ名前のPL/SQL定数があります。
DOMタイプに対して定義されたサブプログラムは、そのDOMタイプをパラメータとして受け取るファンクションまたはプロシージャになります。たとえば、DOMNode
n
に対してAPPENDCHILDファンクションを実行するために、PL/SQLファンクション(APPENDCHILDファンクション)が用意されています。
DOMElement elem
に対してsetAttribute
を実行するには、PL/SQLプロシージャ(SETATTRIBUTEプロシージャ)を使用します。
DOMでは、継承の階層が定義されています。たとえば、Document
、Element
およびAttr
は、Node
のサブタイプとして定義されています(図155-1を参照)。したがって、Node
インタフェースで定義されているメソッドは、これらのサブタイプでも使用できます。PL/SQLではこのような継承がサポートされないため、MAKENODE
ファンクションを直接コールすることによって継承が実現されています。様々なDOMタイプに対してMAKENODE
をコールすると、それらのDOMタイプがDOMNode
に変換されます。次に、DOMNode
を受け取る適切なファンクションまたはプロシージャをコールすれば、これらのDOMNodeを操作できます。その後、各DOMタイプに固有の機能が必要な場合は、make
XXX
ファンクション(DOM
XXX
は目的のDOMタイプ)をコールすれば、DOMNode
を元のDOMタイプに再変換できます。
このインタフェースは、REC-DOM-Level-1-19981001に基づいて実装されています。
表155-1に、DBMS_XMLDOM
で定義されている定数を示します。
表155-1 DBMS_XMLDOMの事前定義定数
定数 | 型 | 値 | 説明 |
---|---|---|---|
|
|
1 |
ノードは要素です。 |
|
|
2 |
ノードは属性です。 |
|
|
3 |
ノードはテキスト・ノードです。 |
|
|
4 |
ノードはCDataSectionです。 |
|
|
5 |
ノードは実体参照です。 |
|
|
6 |
ノードはエンティティです。 |
|
|
7 |
ノードは処理命令です。 |
|
|
8 |
ノードはコメントです。 |
|
|
9 |
ノードはドキュメントです。 |
|
|
10 |
ノードはDocument Type Definition(DTD)です。 |
|
|
11 |
ノードはドキュメント・フラグメントです。 |
|
|
12 |
ノードは表記法です。 |
表155-2に、DBMS_XMLDOM.DOMTYPE
で定義されているタイプを示します。
表155-2 XDB_XMLDOMタイプ
タイプ | 説明 |
---|---|
|
DOMのAttrインタフェースを実装します。 |
|
DOMのCDataSectionインタフェースを実装します。 |
|
DOMのCharacterDataインタフェースを実装します。 |
|
DOMのCommentインタフェースを実装します。 |
|
DOMのDocumentインタフェースを実装します。 |
|
DOMのDocumentFragmentインタフェースを実装します。 |
|
DOMのDocumentTypeインタフェースを実装します。 |
|
DOMのElementインタフェースを実装します。 |
|
DOMのEntityインタフェースを実装します。 |
|
DOMのEntityReferenceインタフェースを実装します。 |
|
DOMのImplementationインタフェースを実装します。 |
|
DOMのNamedNodeMapインタフェースを実装します。 |
|
DOMのNodeインタフェースを実装します。 |
|
DOMのNodeListインタフェースを実装します。 |
|
DOMのNotationインタフェースを実装します。 |
|
DOMのProcessingInstructionインタフェースを実装します。 |
|
DOMのTextインタフェースを実装します。 |
表155-3に、DBMS_XMLDOM
で定義されている例外を示します。
表155-3 DBMS_XMLDOMの例外
例外 | 説明 |
---|---|
|
指定したテキスト範囲が |
|
ノードが属していない場所にノードが挿入された場合。 |
|
索引またはサイズが負数か、許容値を超えている場合。 |
|
すでに他で使用中の属性を追加しようとした場合。 |
|
名前などに指定した文字が無効な場合。有効な文字の定義についてはXML Specificationのproduction 2を、有効な名前文字の定義についてはproduction 5を参照してください。 |
|
データをサポートしないノードにデータが指定された場合。 |
|
ノードが存在しないコンテキストでノードを参照しようとした場合。 |
|
変更不可のオブジェクトを変更しようとした場合。 |
|
要求されたタイプのオブジェクトまたは操作が実装でサポートされていない場合。 |
|
ノードを作成したドキュメント以外のドキュメント(そのノードをサポートしていない)でそのノードが使用された場合。 |
DBMS_XMLDOM
サブプログラムは、W3Cインタフェースに従って複数のグループに分割されます。
表155-4 DBMS_XMLDOM - DOMNodeサブプログラムの要約
サブプログラム | 説明 |
---|---|
|
別のドキュメントからノードを採用します。 |
|
新規の子をノードに追加します。 |
|
ノードをクローニングします。 |
|
ノードに関連付けられたすべてのリソースを解放します。 |
|
ノードの属性を取得します。 |
|
ノードの子を取得します。 |
|
ノードの拡張名を取得します。 |
|
ノードの最初の子を取得します。 |
|
ノードの最後の子を取得します。 |
|
修飾名のローカル部分を取得します。 |
|
ノードの名前空間URIを取得します。 |
|
ノードの次の兄弟関係を取得します。 |
|
ノードの名前を取得します。 |
|
ノードのタイプを取得します。 |
|
ノードの値を取得します。 |
GETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャ |
ノード値をバイナリ・ストリームとして取得します。 |
GETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャ |
ノード値を文字ストリームとして取得します。 |
|
ノードの所有者ドキュメントを取得します。 |
ノードの親を取得します。 |
|
|
名前空間の接頭辞を取得します。 |
|
ノードの直前の兄弟関係を取得します。 |
|
関連付けられたスキーマURIを取得します。 |
|
ノードに属性が存在するかどうかをテストします。 |
|
ノードに子ノードが存在するかどうかをテストします。 |
|
別のドキュメントからノードをインポートします。 |
|
参照先の子の前に子を挿入します。 |
|
ノードが |
|
ノードをAttrに変換します。 |
|
ノードをCDataSectionに変換します。 |
|
ノードをCharacterDataに変換します。 |
|
ノードをCommentに変換します。 |
|
ノードをDOMDocumentに変換します。 |
|
ノードをDOMDocumentFragmentに変換します。 |
|
ノードをDOMDcumentTypeに変換します。 |
|
ノードをDOMElementに変換します。 |
|
ノードをDOMEntityに変換します。 |
|
ノードをDOMEntityReferenceに変換します。 |
|
ノードをDOMNotationに変換します。 |
MAKEPROCESSINGINSTRUCTIONファンクション |
ノードをDOMProcessingInstructionに変換します。 |
|
ノードをDOMTextに変換します。 |
|
指定した子をノードから削除します。 |
|
既存の子ノードを新規の子ノードで置き換えます。 |
|
ノードの値を設定します。 |
SETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャ |
ノード値をバイナリ・ストリームとして設定します。 |
SETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャ |
ノード値を文字ストリームとして設定します。 |
|
名前空間の接頭辞を設定します。 |
|
ストリームが有効であることを確認します。 |
|
ノードの内容をバッファに書き込みます。 |
|
ノードの内容を |
|
ノードの内容をファイルに書き込みます。 |
表155-5 DBMS_XMLDOM - DOMAttrサブプログラムの要約
メソッド | 説明 |
---|---|
|
属性の拡張名を取得します。 |
|
属性のローカル名を取得します。 |
|
属性の名前を取得します。 |
|
属性の名前空間URIを取得します。 |
|
属性の親である要素ノードを取得します。 |
|
属性の修飾名を取得します。 |
|
要素に属性が指定されているかどうかをテストします。 |
|
属性の値を取得します。 |
|
属性ノードが |
|
属性をノードに変換します。 |
|
属性の値を設定します。 |
表155-6 DBMS_XMLDOM - DOMCdataサブプログラムの要約
メソッド | 説明 |
---|---|
|
|
|
|
表155-7 DBMS_XMLDOM - DOMCharacterDataサブプログラムの要約
メソッド | 説明 |
---|---|
|
指定したデータをノード・データに追加します。 |
|
指定したオフセットからデータを削除します。 |
|
ノードのデータを取得します。 |
|
データの長さを取得します。 |
|
指定したオフセットでノード内にデータを挿入します。 |
|
CharacterDataが |
|
CharacterDataをノードに変換します。 |
|
ノード内の特定範囲の文字列を新しい文字列で置き換えます。 |
|
データをノードに設定します。 |
|
データのサブストリングを取得します。 |
表155-9 DBMS_XMLDOM - DOMDocumentサブプログラムの要約
メソッド | 説明 |
---|---|
|
属性を作成します。 |
|
|
|
コメント・ノードを作成します。 |
|
新規ドキュメントを作成します。 |
|
新規のドキュメント・フラグメントを作成します。 |
|
新規の要素を作成します。 |
|
実体参照を作成します。 |
CREATEPROCESSINGINSTRUCTIONファンクション |
処理命令を作成します。 |
|
テキスト・ノードを作成します。 |
|
ドキュメント・フラグメントを解放します。 |
|
ドキュメントを解放します。 |
|
ドキュメントのDTDを取得します。 |
|
ドキュメントのルート要素を取得します。 |
|
要素のノード・リストをタグ名別に取得します。 |
|
DOMの実装を取得します。 |
|
ドキュメントのスタンドアロン・プロパティを取得します。 |
|
ドキュメントのバージョンを取得します。 |
|
DOMDocumentに関連付けられた |
|
ドキュメントが |
|
ドキュメントをノードに変換します。 |
|
新規ドキュメントを作成します。 |
|
ドキュメントのDTDを設定します。 |
|
ドキュメントのスタンドアロン・プロパティを設定します。 |
|
ドキュメントのバージョンを設定します。 |
|
ドキュメントをバッファに書き込みます。 |
|
ドキュメントを |
|
ドキュメントをファイルに書き込みます。 |
表155-10 DBMS_XMLDOM - DOMDocumentFragmentサブプログラムの要約
メソッド | 説明 |
---|---|
|
指定したドキュメント・フラグメントを解放します。 |
|
ドキュメント・フラグメントが |
|
ドキュメント・フラグメントをノードに変換します。 |
|
ドキュメント・フラグメントの内容をバッファに書き込みます。 |
表155-11 DBMS_XMLDOM - DOMDocumentTypeサブプログラムの要約
メソッド | 説明 |
---|---|
|
ドキュメント・タイプで指定のエンティティを検索します。 |
|
ドキュメント・タイプで指定の表記法を検索します。 |
|
ドキュメント・タイプのエンティティのノードマップを取得します。 |
|
ドキュメント・タイプの名前を取得します。 |
|
ドキュメント・タイプの表記法のノードマップを取得します。 |
|
ドキュメント・タイプの公開識別子を取得します。 |
|
ドキュメント・タイプのシステム識別子を取得します。 |
|
ドキュメント・タイプが |
|
ドキュメント・タイプをノードに変換します。 |
表155-12 DBMS_XMLDOM - DOMElementサブプログラムの要約
メソッド | 説明 |
---|---|
|
指定した名前の属性ノードを取得します。 |
|
指定した名前の属性ノードを取得します。 |
|
タグ名を指定して要素の子を取得します。 |
|
サブツリー内の要素をタグ名別に取得します。 |
|
要素の拡張名を取得します。 |
|
要素のローカル名を取得します。 |
|
要素の名前空間URIを取得します。 |
|
要素の修飾名を取得します。 |
|
要素のタグ名を取得します。 |
|
指定した属性が定義されているかどうかをテストします。 |
|
要素が |
|
要素をノードに変換します。 |
|
要素のテキストの子を正規化します。 |
|
指定した名前の属性を削除します。 |
|
要素内の属性ノードを削除します。 |
|
指定した名前空間URIの接頭辞を解決します。 |
|
指定した名前の属性を設定します。 |
|
属性ノードを要素に追加します。 |
表155-13 DBMS_XMLDOM - DOMEntityサブプログラムの要約
メソッド | 説明 |
---|---|
|
エンティティの表記法の名前を取得します。 |
|
エンティティの公開識別子を取得します。 |
|
エンティティのシステム識別子を取得します。 |
|
エンティティが |
|
エンティティをノードに変換します。 |
表155-14 DBMS_XMLDOM - DOMEntityReferenceサブプログラムの要約
メソッド | 説明 |
---|---|
|
|
|
|
表155-15 DBMS_XMLDOM - DOMImplementationサブプログラムの要約
メソッド | 説明 |
---|---|
|
|
|
|
表155-16 DBMS_XMLDOM - DOMNamedNodeMapサブプログラムの要約
メソッド | 説明 |
---|---|
|
マップ内の項目の数を取得します。 |
|
指定した名前の項目を取得します。 |
|
|
|
索引を指定してマップ内の項目を取得します。 |
|
指定した名前の項目を削除します。 |
|
指定した名前の項目をマップに追加します。 |
表155-17 DBMS_XMLDOM - DOMNodeListサブプログラムの要約
メソッド | 説明 |
---|---|
|
リスト内の項目の数を取得します。 |
|
|
|
索引を指定して |
表155-18 DBMS_XMLDOM - DOMNotationサブプログラムの要約
メソッド | 説明 |
---|---|
|
表記法の公開識別子を取得します。 |
|
表記法のシステム識別子を取得します。 |
|
表記法が |
|
表記法をノードに変換します。 |
表155-19 DBMS_XMLDOM - DOMProcessingInstructionサブプログラムの要約
メソッド | 説明 |
---|---|
|
処理命令のデータを取得します。 |
|
処理命令のターゲットを取得します。 |
|
処理命令が |
|
処理命令をノードに変換します。 |
|
処理命令のデータを設定します。 |
表155-21 DBMS_XMLDOMパッケージのサブプログラムの要約
サブプログラム | 説明 | グループ |
---|---|---|
|
別のドキュメントからノードを採用します。 |
|
|
新規の子をノードに追加します。 |
|
|
指定したデータをノード・データに追加します。 |
|
|
ノードをクローニングします。 |
|
|
属性を作成します。 |
|
|
|
|
|
コメント・ノードを作成します。 |
|
|
新規ドキュメントを作成します。 |
|
|
新規のドキュメント・フラグメントを作成します。 |
|
|
新規の要素を作成します。 |
|
|
実体参照を作成します。 |
|
CREATEPROCESSINGINSTRUCTIONファンクション |
処理命令を作成します。 |
|
|
テキスト・ノードを作成します。 |
|
|
指定したオフセットからデータを削除します。 |
|
|
ドキュメント・タイプで指定のエンティティを検索します。 |
|
|
ドキュメント・タイプで指定の表記法を検索します。 |
|
|
ドキュメント・フラグメントを解放します。 |
|
|
ドキュメントを解放します。 |
|
|
ノードに関連付けられたすべてのリソースを解放します。 |
|
|
指定した名前の属性ノードを取得します。 |
|
|
指定した名前の属性ノードを取得します。 |
|
|
ノードの属性を取得します。 |
|
|
ノードの子を取得します。 |
|
|
タグ名を指定して要素の子を取得します。 |
|
|
次のものを取得します。
|
|
|
ドキュメントのDTDを取得します。 |
|
|
ドキュメントのルート要素を取得します。 |
|
|
次のものを取得します。
|
|
|
ドキュメント・タイプのエンティティのノードマップを取得します。 |
|
|
次のものを取得します。
|
|
|
ノードの最初の子を取得します。 |
|
|
DOMの実装を取得します。 |
|
|
ノードの最後の子を取得します。 |
|
|
次のものを取得します。
|
|
|
次のものを取得します。
|
|
|
次のものを取得します。
|
|
|
次のものを取得します。
|
|
|
次のものを取得します。
|
|
|
ノードの次の兄弟関係を取得します。 |
|
|
ノードの名前を取得します。 |
|
|
ノードのタイプを取得します。 |
|
|
ノードの値を取得します。 |
|
GETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャ |
ノード値をバイナリ・ストリームとして取得します。 |
|
GETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャ |
ノード値を文字ストリームとして取得します。 |
|
|
エンティティの表記法の名前を取得します。 |
|
|
ドキュメント・タイプの表記法のノードマップを取得します。 |
|
|
処理命令のターゲットを取得します。 |
DOMProcessingInstructionサブプログラム |
|
ノードの所有者ドキュメントを取得します。 |
|
|
属性の親である要素ノードを取得します。 |
|
ノードの親を取得します。 |
|
|
|
名前空間の接頭辞を取得します。 |
|
|
ノードの直前の兄弟関係を取得します。 |
|
|
次のものを取得します。
|
|
|
次のものを取得します。
|
|
|
関連付けられたスキーマURIを取得します。 |
|
|
要素に属性が指定されているかどうかをテストします。 |
|
|
ドキュメントのスタンドアロン・プロパティを取得します。 |
|
|
次のものを取得します。
|
|
|
要素のタグ名を取得します。 |
|
|
属性の値を取得します。 |
|
|
ドキュメントのバージョンを取得します。 |
|
|
DOMDocumentに関連付けられた |
|
|
ノードに属性が存在するかどうかをテストします。 |
|
|
指定した属性が定義されているかどうかをテストします。 |
|
|
ノードに子ノードが存在するかどうかをテストします。 |
|
|
|
|
|
別のドキュメントからノードをインポートします。 |
|
|
参照先の子の前に子を挿入します。 |
|
|
指定したオフセットでノード内にデータを挿入します。 |
|
|
次のテストを実行します。
|
|
|
次のものを取得します。
|
|
|
ノードをAttrに変換します。 |
|
|
ノードをCDataSectionに変換します。 |
|
|
ノードをCharacterDataに変換します。 |
|
|
ノードをCommentに変換します。 |
|
|
ノードをDOMDocumentに変換します。 |
|
|
ノードをDOMDocumentFragmentに変換します。 |
|
|
ノードをDOMDcumentTypeに変換します。 |
|
|
ノードをDOMElementに変換します。 |
|
|
ノードをDOMEntityに変換します。 |
|
|
ノードをDOMEntityReferenceに変換します。 |
|
|
次の変換を実行します。
|
|
|
ノードをDOMNotationに変換します。 |
|
MAKEPROCESSINGINSTRUCTIONファンクション |
ノードをDOMProcessingInstructionに変換します。 |
|
|
ノードをDOMTextに変換します。 |
|
|
新規ドキュメントを作成します。 |
|
|
要素のテキストの子を正規化します。 |
|
|
指定した名前の属性を削除します。 |
|
|
要素内の属性ノードを削除します。 |
|
|
指定した子をノードから削除します。 |
|
|
指定した名前の項目を削除します。 |
|
|
既存の子ノードを新規の子ノードで置き換えます。 |
|
|
ノード内の特定範囲の文字列を新しい文字列で置き換えます。 |
|
|
指定した名前空間URIの接頭辞を解決します。 |
|
|
指定した名前の属性を設定します。 |
|
|
属性ノードを要素に追加します。 |
|
|
次のデータを設定します。
|
|
|
ドキュメントのDTDを設定します。 |
|
|
指定した名前の項目をマップに追加します。 |
|
|
ノードの値を設定します。 |
|
SETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャ |
ノード値をバイナリ・ストリームとして設定します。 |
|
SETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャ |
ノード値を文字ストリームとして設定します。 |
|
|
名前空間の接頭辞を設定します。 |
|
|
ドキュメントのスタンドアロン・プロパティを設定します。 |
|
|
属性の値を設定します。 |
|
|
ドキュメントのバージョンを設定します。 |
|
|
テキスト・ノードの内容を2つのテキスト・ノードに分割します。 |
|
|
データのサブストリングを取得します。 |
|
|
ストリームが使用に有効であることを確認します。 |
|
|
次の書込み処理を実行します。
|
|
|
次の書込み処理を実行します。
|
|
|
次の書込み処理を実行します。
|
|
このファンクションは、別のドキュメントからノードを採用して、この新規ノードを戻します。
構文
DBMS_XMLDOM.ADOPTNODE( doc IN DOMDocument, importedNode IN DOMNode) RETURN DOMNODE;
パラメータ
使用上の注意
ADOPTNODEファンクションはソース・ドキュメントからノードを削除します。一方、IMPORTNODEファンクションはノードのクローンをソース・ドキュメント内に作成します。
このファンクションは、ノードnewchild
を、指定したノードの子ノード・リストの最後に追加し、新しく追加したノードを戻します。newchild
がすでにツリーに追加されている場合は、そのノードが最初に削除されます。
構文
DBMS_XMLDOM.APPENDCHILD( n IN DOMNode, newchild IN DOMNode) RETURN DOMNODE;
パラメータ
このプロシージャは、ノードの文字データの最後に文字列を追加します。データが正常に追加されると、連結データと指定の文字列引数にアクセスできます。
構文
DBMS_XMLDOM.APPENDDATA( cd IN DOMCHARACTERDATA, arg IN VARCHAR2);
パラメータ
このファンクションは、指定したノードの複製を戻し、ノードの汎用コピー・コンストラクタとして機能します。複製ノードに親はないため、複製ノードの親ノードはNULL
になります。
構文
DBMS_XMLDOM.CLONENODE( n IN DOMNODE, deep IN BOOLEAN) RETURN DOMNODE;
パラメータ
使用上の注意
要素のクローニングによって、すべての属性とその値(デフォルトの属性を示すためにXMLプロセッサで生成された値を含む)がコピーされます。ただし、このメソッドは、ディープ・クローンの場合を除き、格納されているテキストをコピーしません。これは、テキストが子のテキスト・ノードに格納されているためです。
属性の直接クローニングでは、要素のクローニング操作の一部としてクローニングする場合とは対照的に、指定した属性(TRUE
に指定)が戻されます。
他のタイプのノードをクローニングすると、単にそのノードのコピーが戻されます。
このファンクションは、DOMATTR
ノードを作成します。
構文
指定した名前を持つDOMATTR
ノードを作成します。
DBMS_XMLDOM.CREATEATTRIBUTE( doc IN DOMDOCUMENT, name IN VARCHAR2) RETURN DOMATTR;
指定した名前と名前空間URIを持つDOMATTR
ノードを作成します。
DBMS_XMLDOM.CREATEATTRIBUTE( doc IN DOMDOCUMENT, qname IN VARCHAR2, ns IN VARCHAR2) RETURN DOMATTR;
パラメータ
このファンクションは、DOMCDATASECTION
ノードを作成します。
構文
DBMS_XMLDOM.CREATECDATASECTION( doc IN DOMDOCUMENT, data IN VARCHAR2) RETURN DOMCDATASECTION;
パラメータ
このファンクションは、DOMCOMMENT
ノードを作成します。
構文
DBMS_XMLDOM.CREATECOMMENT( doc IN DOMDOCUMENT, data IN VARCHAR2) RETURN DOMCOMMENT;
パラメータ
このファンクションは、指定した名前空間URI、ルート要素名、DTDを持つDOMDOCUMENT
ノードを作成します。
構文
DBMS_XMLDOM.CREATEDOCUMENT( namespaceURI IN VARCHAR2, qualifiedName IN VARCHAR2, doctype IN DOMTYPE := NULL) RETURN DOMDOCUMENT;
パラメータ
表155-29 CREATEDOCUMENTファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
名前空間URI。 |
|
ルート要素名。 |
|
ドキュメント・タイプ。 |
このファンクションは、DOMDOCUMENTFRAGMENT
を作成します。
構文
DBMS_XMLDOM.CREATEDOCUMENTFRAGMENT( doc IN DOMDOCUMENT) RETURN DOMDOCUMENTFRAGMENT;
パラメータ
このファンクションは、DOMELEMENT
を作成します。
構文
指定した名前を持つDOMElement
を作成します。
DBMS_XMLDOM.CREATEELEMENT( doc IN DOMDOCUMENT, tagName IN VARCHAR2) RETURN DOMELEMENT;
指定した名前と名前空間URIを持つDOMElement
を作成します。
DBMS_XMLDOM.CREATEELEMENT( doc IN DOMDOCUMENT, tagName IN VARCHAR2, ns IN VARCHAR2) RETURN DOMELEMENT;
パラメータ
このファンクションは、DOMENTITYREFERENCE
ノードを作成します。
構文
DBMS_XMLDOM.CREATEENTITYREFERENCE( doc IN DOMDOCUMENT, name IN VARCHAR2) RETURN DOMENTITYREFERENCE;
パラメータ
このファンクションは、DOMPROCESSINGINSTRUCTION
ノードを作成します。
構文
DBMS_XMLDOM.CREATEPROCESSINGINSTRUCTION( doc IN DOMDocument, target IN VARCHAR2, data IN VARCHAR2) RETURN DOMPROCESSINGINSTRUCTION;
パラメータ
表155-33 CREATEPROCESSINGINSTRUCTIONファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
新規の処理命令のターゲット。 |
|
新規の処理命令のコンテンツ・データ。 |
このファンクションは、DOMTEXT
ノードを作成します。
構文
DBMS_XMLDOM.CREATETEXTNODE( doc IN DOMDocument, data IN VARCHAR2) RETURN DOMTEXT;
パラメータ
このプロシージャは、特定範囲の文字をノードから削除します。正常に削除されると、データと長さに変更が反映されます。
構文
DBMS_XMLDOM.DELETEDATA( cd IN DOMCHARACTERDATA, offset IN NUMBER, cnt IN NUMBER);
パラメータ
表155-35 DELETEDATAプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
データを削除するオフセット。 |
|
削除する(オフセット以降の)文字数。 |
このファンクションは、指定のDTDでエンティティを検索し、見つかった場合はそのエンティティを戻します。
構文
DBMS_XMLDOM.FINDENTITY( dt IN DOMDOCUMENTTYPE, name IN VARCHAR2, par IN BOOLEAN) RETURN DOMENTITY;
パラメータ
表155-36 FINDENTITYファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
DTD。 |
|
検索するエンティティ。 |
|
エンティティのタイプを示すフラグ。パラメータ・エンティティの場合は |
このファンクションは、指定のDTDで表記法を検索し、見つかった場合はその表記法を戻します。
構文
DBMS_XMLDOM.FINDNOTATION( dt IN DOMDocumentType, name IN VARCHAR2) RETURN DOMNOTATION;
パラメータ
このプロシージャは、指定したドキュメント・フラグメントを解放します。
構文
DBMS_XMLDOM.FREEDOCFRAG( df IN DOMDOCUMENTFRAGMENT);
パラメータ
このプロシージャは、DOMDOCUMENT
オブジェクトを解放します。
構文
DBMS_XMLDOM.FREEDOCUMENT( doc IN DOMDOCUMENT);
パラメータ
このプロシージャは、DOMNODE
に関連付けられたすべてのリソースを解放します。
構文
DBMS_XMLDOM.FREENODE( n IN DOMNODE);
パラメータ
このファンクションは、指定した名前のDOMELEMENT
の属性値を戻します。
構文
指定した名前のDOMELEMENT
の属性値を戻します。
DBMS_XMLDOM.GETATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2) RETURN VARCHAR2;
指定した名前と名前空間URIのDOMELEMENT
の属性値を戻します。
DBMS_XMLDOM.GETATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2, ns IN VARCHAR2) RETURN VARCHAR2;
パラメータ
このファンクションは、指定した名前のDOMELEMENT
の属性ノードを戻します。このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
指定した名前のDOMELEMENT
の属性ノードを戻します。
DBMS_XMLDOM.GETATTRIBUTENODE( elem IN DOMElement, name IN VARCHAR2) RETURN DOMATTR;
指定した名前と名前空間URIのDOMELEMENT
の属性ノードを戻します。
DBMS_XMLDOM.GETATTRIBUTENODE( elem IN DOMElement, name IN VARCHAR2, ns IN VARCHAR2) RETURN DOMATTR;
パラメータ
表155-42 GETATTRIBUTENODEファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
属性名。ワイルドカード(*)を使用すると、すべての属性が指定されます。 |
|
名前空間。 |
このファンクションは、指定したノードが要素の場合はその要素の属性を含むNAMEDNODEMAP
を取得し、それ以外の場合はNULL
になります。
構文
DBMS_XMLDOM.GETATTRIBUTES( n IN DOMNode) RETURN DOMNAMEDNODEMAP;
パラメータ
このファンクションは、指定したノードのすべての子ノードを含むDOMNODELIST
を取得します。子ノードが存在しない場合は、ノードを含まないDOMNODELIST
になります。
構文
DBMS_XMLDOM.GETCHILDNODES( n IN DOMNode) RETURN DOMNodeList;
パラメータ
このファンクションは、DOMELEMENT
の子を戻します。
構文
タグ名を指定して、DOMELEMENT
の子を戻します。
DBMS_XMLDOM.GETCHILDRENBYTAGNAME( elem IN DOMElement, name IN VARCHAR2) RETURN DOMNODELIST;
タグ名と名前空間を指定して、DOMELEMENT
の子を戻します。
DBMS_XMLDOM.GETCHILDRENBYTAGNAME( elem IN DOMElement, name IN VARCHAR2, ns IN VARCHAR2) RETURN DOMNODELIST;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
インタフェースを実装するノードの文字データを取得します(関連項目: 「DOMCharacterDataサブプログラム」)。
DBMS_XMLDOM.GETDATA( cd IN DOMCHARACTERDATA) RETURN VARCHAR2;
DOMProcessingInstruction
のコンテンツ・データを戻します(関連項目: 「DOMProcessingInstructionサブプログラム」)。
DBMS_XMLDOM.GETDATA( pi IN DOMPROCESSINGINSTRUCTION) RETURN VARCHAR2;
パラメータ
このファンクションは、DOMDOCUMENT
に関連付けられたDTDを戻します。
構文
DBMS_XMLDOM.GETDOCTYPE( doc IN DOMDOCUMENT) RETURN DOMDOCUMENTTYPE;
パラメータ
このファンクションは、DOMDOCUMENT
のルート要素を戻します。
構文
DBMS_XMLDOM.GETDOCUMENTELEMENT( doc IN DOMDOCUMENT) RETURN DOMELEMENT;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
タグ名を指定して、すべての要素のDOMNODELIST
を戻します(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.GETELEMENTSBYTAGNAME( doc IN DOMDOCUMENT, tagname IN VARCHAR2) RETURN DOMNODELIST;
タグ名を指定して、DOMELEMENT
の要素の子を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETELEMENTSBYTAGNAME( elem IN DOMELEMENT, name IN VARCHAR2) RETURN DOMNODELIST;
タグ名と名前空間を指定して、DOMELEMENT
の要素の子を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETELEMENTSBYTAGNAME( elem IN DOMELEMENT, name IN VARCHAR2, ns IN VARCHAR2) RETURN DOMNODELIST;
パラメータ
表155-49 GETELEMENTSBYTAGNAMEファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
一致させるタグの名前。 |
|
|
|
タグ名。ワイルドカード(*)を使用すると、すべてのタグが指定されます。 |
|
名前空間。 |
このファンクションは、DTDで宣言された一般的なエンティティ(外部と内部の両方)を含むDOMNAMEDNODEMAP
を取得します。
構文
DBMS_XMLDOM.GETENTITIES( dt IN DOMDocumentType) RETURN DOMNAMEDNODEMAP;
パラメータ
このサブプログラムは、1つのプロシージャおよび2つのファンクションとしてオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
Node
がElement
タイプまたはAttribute
タイプである場合は、そのノードの拡張名を取得し、それ以外の場合はNULL
を戻します(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.GETEXPANDEDNAME( n IN DOMNODE data OUT VARCHAR);
DOMAttr
の拡張名を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.GETEXPANDEDNAME( a IN DOMAttr) RETURN VARCHAR2;
DOMElement
の拡張名を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETEXPANDEDNAME( elem IN DOMELEMENT) RETURN VARCHAR2;
パラメータ
表155-51 GETEXPANDEDNAMEプロシージャ/ファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
戻される |
|
|
|
|
このファンクションは、ノードの最初の子を取得します。該当するノードがない場合は、NULL
を戻します。
構文
DBMS_XMLDOM.GETFIRSTCHILD( n IN DOMNODE) RETURN DOMNODE;
パラメータ
このファンクションは、指定したDOMDOCUMENT
を処理するDOMIMPLEMENTATION
オブジェクトを戻します。
構文
DBMS_XMLDOM.GETIMPLEMENTATION( doc IN DOMDOCUMENT) RETURN DOMIMPLEMENTATION;
パラメータ
このファンクションは、ノードの最後の子を取得します。該当するノードがない場合は、NULL
を戻します。
構文
DBMS_XMLDOM.GETLASTCHILD( n IN DOMNODE) RETURN DOMNODE;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
データの文字数を取得します。CharacterDataノードが空の場合は、ゼロが戻されます(関連項目: 「DOMCharacterDataサブプログラム」)。
DBMS_XMLDOM.GETLENGTH( cd IN DOMCHARACTERDATA) RETURN NUMBER;
指定したマップ内のノード数を取得します。子ノードの索引の有効範囲は、0
以上かつlength-1
以下です(関連項目: 「DOMNamedNodeMapサブプログラム」)。
DBMS_XMLDOM.GETLENGTH( nnm IN DOMNAMEDNODEMAP) RETURN NUMBER;
リスト内のノード数を取得します。子ノードの索引の有効範囲は、0
以上かつlength-1
以下です(関連項目: 「DOMNodeListサブプログラム」)。
DBMS_XMLDOM.GETLENGTH( nl IN DOMNODELIST) RETURN NUMBER;
パラメータ
このファンクションは、1つのプロシージャおよび2つのファンクションとしてオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
ノードの修飾名のうちローカル部分を取得します(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.GETLOCALNAME( n IN DOMNODE, data OUT VARCHAR2);
DOMAttr
のローカル名を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.GETLOCALNAME( a IN DOMATTR) RETURN VARCHAR2;
DOMElement
のローカル名を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETLOCALNAME( elem IN DOMELEMENT) RETURN VARCHAR2;
パラメータ
表155-56 GETLOCALNAMEプロシージャ/ファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
戻されるローカル名。 |
|
|
|
|
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
属性の名前を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.GETNAME( a IN DOMATTR) RETURN VARCHAR2;
DTDの名前、またはDOCTYPE
キーワードの直後の名前を取得します(関連項目: 「DOMDocumentTypeサブプログラム」)。
DBMS_XMLDOM.GETNAME( dt IN DOMDOCUMENTTYPE) RETURN VARCHAR2;
パラメータ
このファンクションは、指定した名前のノードを取得します。
構文
指定した名前のノードを取得します。
DBMS_XMLDOM.GETNAMEDITEM( nnm IN DOMNAMEDNODEMAP, name IN VARCHAR2) RETURN DOMNODE;
指定した名前と名前空間URIのノードを取得します。
DBMS_XMLDOM.GETNAMEDITEM( nnm IN DOMNAMEDNODEMAP, name IN VARCHAR2, ns IN VARCHAR2) RETURN DOMNODE;
パラメータ
このサブプログラムは、1つのプロシージャおよび2つのファンクションとしてオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
ノードに関連付けられた名前空間URIを取得します(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.GETNAMESPACE( n IN DOMNODE, data OUT VARCHAR2);
DOMATTR
の名前空間を取得します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.GETNAMESPACE( a IN DOMATTR) RETURN VARCHAR2;
DOMELEMENT
の名前空間を取得します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETNAMESPACE( elem IN DOMELEMENT) RETURN VARCHAR2;
パラメータ
表155-59 GETNAMESPACEプロシージャ/ファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
戻される名前空間URI。 |
|
|
|
|
このファンクションは、指定したノードの直後に続くノードを取得します。該当するノードがない場合は、NULL
を戻します。
構文
DBMS_XMLDOM.GETNEXTSIBLING( n IN DOMNODE) RETURN DOMNode;
パラメータ
このファンクションは、ノードの基礎となるオブジェクトのタイプを表すコードを取得します。
構文
DBMS_XMLDOM.GETNODETYPE( n IN DOMNODE) RETURN NUMBER;
パラメータ
このファンクションは、ノードのタイプに応じてノード名を取得します。
構文
DBMS_XMLDOM.GETNODENAME( n IN DOMNODE) RETURN VARCHAR2;
パラメータ
このファンクションは、ノードのタイプに応じてノードの値を取得します。
構文
DBMS_XMLDOM.GETNODEVALUE( n IN DOMNODE) RETURN VARCHAR2;*
パラメータ
これらのサブプログラムの操作は、各構文の実装で説明されています。
構文
このファンクションは、PL/SQL XMLBinaryInputStream
のインスタンスを戻します。 ノードのデータ型は、RAW
またはBLOB
である必要があります。それ以外の場合は、例外が発生します。
DBMS_XMLDOM.GETNODEVALUEASBINARYSTREAM ( n IN DOMNODE) RETURN SYS.UTL_BINARYINPUTSTREAM;
このプロシージャを使用して、アプリケーションは、XDBがノードの内容を書き込むSYS
.UTL_BINARYOUTPUTSTREAM
の実装を渡します。 ノードのデータ型は、RAW
またはCLOB
である必要があります。それ以外の場合は、例外が発生します。
DBMS_XMLDOM.GETNODEVALUEASBINARYSTREAM ( n in DOMNODE, value in SYS.UTL_BINARYOUTPUTSTREAM);
パラメータ
表155-64 GETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
value |
|
これらのサブプログラムの操作は、各構文の実装で説明されています。
構文
このファンクションは、PL/SQL XMLCharacterInputStream
のインスタンスを戻します。ノード・データが文字の場合は、現行セッションのキャラクタ・セットに変換されます。ノード・データが文字データでない場合は、最初に文字データに変換されます。
DBMS_XMLDOM.GETNODEVALUEASCHARACTERSTREAM ( n IN DOMNODE) RETURN SYS.UTL_CHARACTERINPUTSTREAM;
このプロシージャを使用して、ノード・データは必要に応じてセッションのキャラクタ・セットに変換され、次にSYS
.UTL_CHARACTEROUTPUTSTREAM
に送信されます。
DBMS_XMLDOM.GETNODEVALUEASCHARACTERSTREAM ( n IN DOMNODE, value IN SYS.UTL_CHARACTEROUTPUTSTREAM);
パラメータ
表155-65 GETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
value |
|
このファンクションは、DOMENTITY
の表記法の名前を戻します。
構文
DBMS_XMLDOM.GETNOTATIONNAME( ent IN DOMENTITY) RETURN VARCHAR2;
パラメータ
このファンクションは、DTDで宣言された表記法を含むDOMNAMEDNODEMAP
を取得します。
構文
DBMS_XMLDOM.GETNOTATIONS( dt IN DOMDOCUMENTTYPE) RETURN DOMNAMEDNODEMAP;
パラメータ
このファンクションは、DOMPROCESSINGINSTRUCTION
のターゲットを戻します。
構文
DBMS_XMLDOM.GETTARGET( pi IN DOMPROCESSINGINSTRUCTION) RETURN VARCHAR2;
パラメータ
このファンクションは、指定したノードに関連付けられたドキュメント・オブジェクトを取得します。このドキュメント・オブジェクトは、新規ノードの作成にも使用されます。指定したノードがドキュメントによってまだ使用されていないドキュメント・タイプまたはドキュメントの場合は、NULL
が戻されます。
構文
DBMS_XMLDOM.GETOWNERDOCUMENT( n IN DOMNODE) RETURN DOMDOCUMENT;
パラメータ
このファンクションは、指定した属性が接続される要素ノードを取得します。
構文
DBMS_XMLDOM.GETOWNERELEMENT( a IN DOMATTR) RETURN DOMElement;
パラメータ
このファンクションは、指定したノードの親を取得します。すべてのノード(Attr
、Document
、DocumentFragment
、Entity
およびNotation
を除く)は親を持つことができます。ただし、作成したノードがツリーに追加されていない場合、またはノードがツリーから削除された場合は、NULL
が戻されます。
構文
DBMS_XMLDOM.GETPARENTNODE( n IN DOMNODE) RETURN DOMNODE;
パラメータ
このファンクションは、ノードの名前空間の接頭辞を取得します。
構文
DBMS_XMLDOM.GETPREFIX( n IN DOMNODE) RETURN VARCHAR2;
パラメータ
このファンクションは、指定したノードの直前にあるノードを取得します。該当するノードがない場合は、NULL
を戻します。
構文
DBMS_XMLDOM.GETPREVIOUSSIBLING( n IN DOMNODE) RETURN DOMNODE;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
指定したDTDの公開識別子を戻します(関連項目: 「DOMDocumentTypeサブプログラム」)。
DBMS_XMLDOM.GETPUBLICID( dt IN DOMDOCUMENTTYPE) RETURN VARCHAR2;
DOMENTITY
の公開識別子を戻します(関連項目: 「DOMEntityサブプログラム」)。
DBMS_XMLDOM.GETPUBLICID( ent IN DOMENTITY) RETURN VARCHAR2;
DOMNOTATION
の公開識別子を戻します(関連項目: 「DOMNotationサブプログラム」)。
DBMS_XMLDOM.GETPUBLICID( n IN DOMNOTATION) RETURN VARCHAR2;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
DOMATTR
の修飾名を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.GETQUALIFIEDNAME( a IN DOMATTR) RETURN VARCHAR2;
DOMElement
の修飾名を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.GETQUALIFIEDNAME( elem IN DOMELEMENT) RETURN VARCHAR2;
パラメータ
このファンクションは、ノードに関連付けられたスキーマURIを取得します。
構文
DBMS_XMLDOM.GETSCHEMANODE( n IN DOMNODE) RETURN DOMNODE;
パラメータ
元のドキュメントで属性の値が明示的に指定されている場合はTRUE
、それ以外の場合はFALSE
を戻します。
構文
DBMS_XMLDOM.GETSPECIFIED( a IN DOMATTR) RETURN BOOLEAN;
パラメータ
このファンクションは、DOMDOCUMENT
に関連付けられたスタンドアロン・プロパティを戻します。
構文
DBMS_XMLDOM.GETSTANDALONE( doc IN DOMDOCUMENT) RETURN VARCHAR2;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
指定したDTDのシステム識別子を戻します(関連項目: 「DOMDocumentTypeサブプログラム」)。
DBMS_XMLDOM.GETSYSTEMID( dt IN DOMDOCUMENTTYPE) RETURN VARCHAR2;
DOMENTITY
のシステム識別子を戻します(関連項目: 「DOMEntityサブプログラム」)。
DBMS_XMLDOM.GETSYSTEMID( ent IN DOMENTITY) RETURN VARCHAR2;
DOMNOTATION
のシステム識別子を戻します(関連項目: 「DOMNotationサブプログラム」)。
DBMS_XMLDOM.GETSYSTEMID( n IN DOMNOTATION) RETURN VARCHAR2;
パラメータ
このファンクションは、DOMELEMENT
の名前を戻します。
構文
DBMS_XMLDOM.GETTAGNAME( elem IN DOMELEMENT) RETURN VARCHAR2;
パラメータ
このファンクションは、属性の値を取得します。
構文
DBMS_XMLDOM.GETVALUE( a IN DOMATTR) RETURN VARCHAR2;
パラメータ
このファンクションは、DOMDOCUMENT
のバージョンを戻します。
構文
DBMS_XMLDOM.GETVERSION( doc IN DOMDOCUMENT) RETURN VARCHAR2;
パラメータ
このファンクションは、DOMDOCUMENT
に関連付けられたXMLType
を戻します。
構文
DBMS_XMLDOM.GETXMLTYPE( doc IN DOMDOCUMENT) RETURN SYS.XMLTYPE;
パラメータ
指定した属性がDOMELEMENT
で定義されているかどうか、またはデフォルト値が存在するかどうかをテストします。
構文
指定した名前を持つ属性がDOMElement
で定義されているかどうかをテストします。
DBMS_XMLDOM.HASATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2) RETURN VARCHAR2;
指定した名前と名前空間URIを持つ属性がDOMELEMENT
で定義されているかどうかをテストし、名前空間を有効にします。
DBMS_XMLDOM.HASATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2, ns IN VARCHAR2) RETURN VARCHAR2;
パラメータ
表155-84 HASATTRIBUTEファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
属性名。ワイルドカード(*)を使用すると、すべての属性が指定されます。 |
|
名前空間。 |
このファンクションは、ノードに属性が存在するかどうかをテストします。
構文
DBMS_XMLDOM.HASATTRIBUTES( n IN DOMNODE) RETURN BOOLEAN;
パラメータ
このファンクションは、ノードに子ノードが存在するかどうかをテストします。
構文
DBMS_XMLDOM.HASCHILDNODES( n IN DOMNODE) RETURN BOOLEAN;
パラメータ
このファンクションは、DOMIMPLEMENTATION
で特定の機能が実装されているかどうかをテストします。
構文
DBMS_XMLDOM.HASFEATURE( di IN DOMIMPLEMENTATION, feature IN VARCHAR2, version IN VARCHAR2) RETURN BOOLEAN;
パラメータ
表155-87 HASFEATUREファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
チェックする機能。 |
|
チェックするDOMのバージョン。 |
このファンクションは外部のドキュメントからノードをインポートして、その新規ノードを戻します。
構文
DBMS_XMLDOM.IMPORTNODE( doc IN DOMDOCUMENT, importedNode IN DOMNODE, deep IN BOOLEAN) RETURN DOMNODE;
パラメータ
表155-88 IMPORTNODEファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
ノードをインポートする元のドキュメント。 |
|
インポートするノード。 |
|
再帰的インポートに関する設定。
|
使用上の注意
ADOPTNODEファンクションはソース・ドキュメントからノードを削除します。一方、IMPORTNODEファンクションはノードのクローンをソース・ドキュメント内に作成します。
このファンクションは、ノードnewchild
を、既存の子ノードrefchild
の前に挿入します。refchild
がNULL
の場合、newchild
は子リストの最後に挿入されます。
newchild
がDOCUMENTFRAGMENT
オブジェクトの場合は、newchild
のすべての子が同じ順序でrefchild
の前に挿入されます。newchild
がすでにツリーに追加されている場合は、そのノードが最初に削除されます。
構文
DBMS_XMLDOM.INSERTBEFORE( n IN DOMNODE, newchild IN DOMNODE, refchild IN DOMNODE) RETURN DOMNode;
パラメータ
表155-89 INSERTBEFOREファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
|
このプロシージャは、文字数単位で指定されたオフセット位置に文字列データを挿入します。
構文
DBMS_XMLDOM.INSERTDATA( cd IN DOMCHARACTERDATA, offset IN NUMBER, arg IN VARCHAR2);
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
指定したDOMNODE
がNULL
かどうかをチェックします。NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.ISNULL( n IN DOMNODE) RETURN BOOLEAN;
指定したDOMATTR
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.ISNULL( a IN DOMATTR) RETURN BOOLEAN;
指定したDOMCDATASECTION
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMCDataSectionサブプログラム」)。
DBMS_XMLDOM.ISNULL( cds IN DOMCDATASECTION) RETURN BOOLEAN;
指定したDOMCHARACTERDATA
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMCharacterDataサブプログラム」)。
DBMS_XMLDOM.ISNULL( cd IN DOMCHARACTERDATA) RETURN BOOLEAN;
指定したDOMCOMMENT
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMCommentサブプログラム」)。
DBMS_XMLDOM.ISNULL( com IN DOMCOMMENT) RETURN BOOLEAN;
指定したDOMDOCUMENT
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.ISNULL( doc IN DOMDOCUMENT) RETURN BOOLEAN;
指定したDOMDOCUMENTFRAGMENT
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMDocumentFragmentサブプログラム」)。
DBMS_XMLDOM.ISNULL( df IN DOMDOCUMENTFRAGMENT) RETURN BOOLEAN;
指定したDOMDOCUMENTTYPE
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMDocumentTypeサブプログラム」)。
DBMS_XMLDOM.ISNULL( dt IN DOMDOCUMENTTYPE) RETURN BOOLEAN;
指定したDOMELEMENT
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.ISNULL( elem IN DOMELEMENT) RETURN BOOLEAN;
指定したDOMENTITY
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMEntityサブプログラム」)。
DBMS_XMLDOM.ISNULL( ent IN DOMENTITY) RETURN BOOLEAN;
指定したDOMENTITYREFERENCE
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMEntityReferenceサブプログラム」)。
DBMS_XMLDOM.ISNULL( EREF IN DOMENTITYREFERENCE) RETURN BOOLEAN;
指定したDOMIMPLEMENTATION
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMImplementationサブプログラム」)。
DBMS_XMLDOM.ISNULL( di IN DOMIMPLEMENTATION) RETURN BOOLEAN;
指定したDOMNAMEDNODEMAP
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMNamedNodeMapサブプログラム」)。
DBMS_XMLDOM.ISNULL( nnm IN DOMNAMEDNODEMAP) RETURN BOOLEAN;
指定したDOMNODELIST
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMNodeListサブプログラム」)。
DBMS_XMLDOM.ISNULL( nl IN DOMNODELIST) RETURN BOOLEAN;
指定したDOMNOTATION
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMNotationサブプログラム」)。
DBMS_XMLDOM.ISNULL( n IN DOMNOTATION) RETURN BOOLEAN;
指定したDOMPROCESSINGINSTRUCTION
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMProcessingInstructionサブプログラム」)。
DBMS_XMLDOM.ISNULL( pi IN DOMPROCESSINGINSTRUCTION) RETURN BOOLEAN;
指定したDOMTEXT
がNULL
かどうかをチェックし、NULL
の場合はTRUE
を、それ以外の場合はFALSE
を戻します(関連項目: 「DOMTextサブプログラム」)。
DBMS_XMLDOM.ISNULL( t IN DOMTEXT) RETURN BOOLEAN;
パラメータ
表155-91 ISNULLファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
|
チェックする |
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
マップ内の項目のうち、指定した索引(INDEX
パラメータ)に対応する項目を戻します。索引(INDEX
)の値がマップ内のノード数以上の場合は、NULL
を戻します(関連項目: 「DOMNamedNodeMapサブプログラム」)。
DBMS_XMLDOM.ITEM( nnm IN DOMNAMEDNODEMAP, index IN NUMBER) RETURN DOMNODE;
ノード・リスト内の項目のうち、指定した索引(INDEX
パラメータ)に対応する項目を戻します。索引(INDEX)の値がノード・リスト内のノード数以上の場合は、NULL
を戻します(関連項目: 「DOMNodeListサブプログラム」)。
DBMS_XMLDOM.ITEM( nl IN DOMNODELIST, index IN NUMBER) RETURN DOMNODE;
パラメータ
表155-92 ITEMファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
ノード・マップ内の索引のうち、取得する項目が存在する位置の索引。 |
|
|
|
|
このファンクションは、指定したDOMNODE
をDOMATTR
に変換し、そのDOMATTR
を戻します。
構文
DBMS_XMLDOM.MAKEATTR( n IN DOMNODE) RETURN DOMATTR;
パラメータ
このファンクションは、指定したDOMNODE
をDOMCDATASECTION
に変換します。
構文
DBMS_XMLDOM.MAKECDATASECTION( n IN DOMNODE) RETURN DOMCDATASECTION;
パラメータ
このファンクションは、指定したDOMNODE
をDOMCHARACTERDATA
に変換し、そのDOMCHARACTERDATA
を戻します。
構文
DBMS_XMLDOM.MAKECHARACTERDATA( n IN DOMNode) RETURN DOMCharacterData;
パラメータ
このファンクションは、指定したDOMNODE
をDOMCOMMENT
に変換し、そのDOMCOMMENT
を戻します。
構文
DBMS_XMLDOM.MAKECOMMENT( n IN DOMNODE) RETURN DOMCOMMENT;
パラメータ
このファンクションは、指定したDOMNODE
をDOMDOCUMENT
に変換し、そのDOMDOCUMENT
を戻します。
構文
DBMS_XMLDOM.MAKEDOCUMENT( n IN DOMNODE) RETURN DOMDocument;
パラメータ
このファンクションは、指定したDOMNODE
をDOMDOCUMENTFRAGMENT
に変換し、そのDOMDOCUMENTFRAGMENT
を戻します。
構文
DBMS_XMLDOM.MAKEDOCUMENTFRAGMENT( n IN DOMNODE) RETURN DOMDOCUMENTFRAGMENT;
パラメータ
このファンクションは、指定したDOMNODE
をDOMDOCUMENTTYPE
に変換し、そのDOMDOCUMENTTYPE
を戻します。
構文
DBMS_XMLDOM.MAKEDOCUMENTTYPE( n IN DOMNODE) RETURN DOMDOCUMENTTYPE;
パラメータ
このファンクションは、指定したDOMNODE
をDOMELEMENT
に変換し、そのDOMELEMENT
を戻します。
構文
DBMS_XMLDOM.MAKEELEMENT( n IN DOMNODE) RETURN DOMELEMENT;
パラメータ
このファンクションは、指定したDOMNODE
をDOMENTITY
に変換し、そのDOMENTITY
を戻します。
構文
DBMS_XMLDOM.MAKEENTITY( n IN DOMNODE) RETURN DOMENTITY;
パラメータ
このファンクションは、指定したDOMNODE
をDOMENTITYREFERENCE
に変換し、そのDOMENTITYREFERENCE
を戻します。
構文
DBMS_XMLDOM.MAKEENTITYREFERENCE( n IN DOMNODE) RETURN DOMENTITYREFERENCE;
パラメータ
このファンクションはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
指定したDOMATTR
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMAttrサブプログラム」)。
DBMS_XMLDOM.MAKENODE( a IN DOMATTR) RETURN DOMNODE;
指定したDOMCDATASECTION
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMCDataSectionサブプログラム」)。
DBMS_XMLDOM.MAKENODE( cds IN DOMCDATASECTION) RETURN DOMNODE;
指定したDOMCHARACTERDATA
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMCharacterDataサブプログラム」)。
DBMS_XMLDOM.MAKENODE( cd IN DOMCHARACTERDATA) RETURN DOMNODE;
指定したDOMCOMMENT
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMCommentサブプログラム」)。
DBMS_XMLDOM.MAKENODE( com IN DOMCOMMENT) RETURN DOMNODE;
指定したDOMDOCUMENT
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.MAKENODE( doc IN DOMDOCUMENT) RETURN DOMNODE;
指定したDOMDOCUMENTFRAGMENT
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMDocumentFragmentサブプログラム」)。
DBMS_XMLDOM.MAKENODE( df IN DOMDOCUMENTFRAGMENT) RETURN DOMNode;
指定したDOMDOCUMENTTYPE
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMDocumentTypeサブプログラム」)。
DBMS_XMLDOM.MAKENODE( dt IN DOMDOCUMENTTYPE) RETURN DOMNODE;
指定したDOMELEMENT
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMElementサブプログラム」)。
DBMS_XMLDOM.MAKENODE( elem IN DOMELEMENT) RETURN DOMNODE;
指定したDOMENTITY
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMEntityサブプログラム」)。
DBMS_XMLDOM.MAKENODE( ent IN DOMENTITY) RETURN DOMNODE;
指定したDOMENTITYREFERENCE
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMEntityReferenceサブプログラム」)。
DBMS_XMLDOM.MAKENODE( eref IN DOMENTITYREFERENCE) RETURN DOMNODE;
指定したDOMNOTATION
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMNotationサブプログラム」)。
DBMS_XMLDOM.MAKENODE( n IN DOMNOTATION) RETURN DOMNODE;
指定したDOMPROCESSINGINSTRUCTION
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMProcessingInstructionサブプログラム」)。
DBMS_XMLDOM.MAKENODE( pi IN DOMPROCESSINGINSTRUCTION) RETURN DOMNODE;
指定したDOMTEXT
をDOMNODE
に変換し、そのDOMNODE
を戻します(関連項目: 「DOMTextサブプログラム」)。
DBMS_XMLDOM.MAKENODE( t IN DOMTEXT) RETURN DOMNODE;
パラメータ
表155-103 MAKENODEファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
|
変換する |
t |
変換する |
このファンクションは、指定したDOMNODE
をDOMNOTATION
に変換し、そのDOMNOTATION
を戻します。
構文
DBMS_XMLDOM.MAKENOTATION( n IN DOMNODE) RETURN DOMNOTATION;
パラメータ
このファンクションは、指定したDOMNODE
をDOMPROCESSINGINSTRUCTION
に変換し、そのDomprocessinginstruction
を戻します。
構文
DBMS_XMLDOM.MAKEPROCESSINGINSTRUCTION( n IN DOMNODE) RETURN DOMPROCESSINGINSTRUCTION;
パラメータ
このファンクションは、指定したDOMNODE
をDOMTEXT
に変換し、そのDOMTEXT
を戻します。
構文
DBMS_XMLDOM.MAKETEXT( n IN DOMNODE) RETURN DOMTEXT;
パラメータ
このファンクションは、新規のDOMDOCUMENT
インスタンスを戻します。
構文
新規のDOMDOCUMENT
インスタンスを戻します。
DBMS_XMLDOM.NEWDOMDOCUMENT RETURN DOMDOCUMENT;
指定したXMLType
オブジェクトから作成された新規のDOMDOCUMENT
インスタンスを戻します。
DBMS_XMLDOM.NEWDOMDOCUMENT( xmldoc IN SYS.XMLTYPE) RETURN DOMDOCUMENT;
指定したCLOB
から作成された新規のDOMDOCUMENT
インスタンスを戻します。
DBMS_XMLDOM.NEWDOMDOCUMENT( cl IN CLOB) RETURN DOMDOCUMENT;
パラメータ
表155-107 NEWDOMDOCUMENTファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
このプロシージャは、DOMELEMENT
のテキストの子を正規化します。
構文
DBMS_XMLDOM.NORMALIZE( elem IN DOMELEMENT);
パラメータ
このプロシージャは、指定した名前の属性をDOMELEMENT
から削除します。
構文
指定した名前のDOMELEMENT
の属性値を削除します。
DBMS_XMLDOM.REMOVEATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2);
指定した名前と名前空間URIのDOMELEMENT
の属性値を削除します。
DBMS_XMLDOM.REMOVEATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2, ns IN VARCHAR2);
パラメータ
このファンクションは、指定した属性ノードをDOMELEMENT
から削除します。削除された属性ノードを戻します。
構文
DBMS_XMLDOM.REMOVEATTRIBUTENODE( elem IN DOMELEMENT, oldAttr IN DOMATTR) RETURN DOMAttr;
パラメータ
このファンクションは、oldchild
パラメータで指定される子ノードを子ノード・リストから削除し、その子ノードを戻します。
構文
DBMS_XMLDOM.REMOVECHILD( n IN DOMNode, oldchild IN DOMNode) RETURN DOMNODE;
パラメータ
このファンクションは、指定した名前のノードをマップから削除し、そのノードを戻します。要素に添付した属性がこのマップに含まれ、削除した属性にデフォルト値があることが判明している場合、属性は、デフォルト値、対応する名前空間URI、ローカル名および接頭辞(該当する場合)とともに表示されます。
構文
指定した名前のノードを削除します。
DBMS_XMLDOM.REMOVENAMEDITEM( nnm IN DOMNamedNodeMap, name IN VARCHAR2) RETURN DOMNode;
指定した名前と名前空間URIのノードを削除します。
DBMS_XMLDOM.REMOVENAMEDITEM( nnm IN DOMNamedNodeMap, name IN VARCHAR2, ns IN VARCHAR2) RETURN DOMNode;
パラメータ
このファンクションは、子ノード・リスト内において、既存の子ノードoldchild
を新しい子ノードnewchild
で置き換え、そのoldchild
ノードを戻します。newchild
がDocumentFragment
オブジェクトの場合、oldchild
は、DocumentFragment
のすべての子ノードで置き換えられます(これらの子ノードは、DocumentFragment内と同じ順序で挿入されます)。newchild
がすでにツリーに追加されている場合は、そのノードが最初に削除されます。
構文
DBMS_XMLDOM.REPLACECHILD( n IN DOMNode, newchild IN DOMNode, oldchild IN DOMNode) RETURN DOMNode;
パラメータ
表155-113 REPLACECHILDファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
既存の子ノードを置き換える新規の子ノード。 |
|
新規の子ノードで置き換えられるノードnの子ノード。 |
このプロシージャは、ノード内の特定範囲の文字列を新しい文字列で置き換えます。正常に削除されると、データと長さに変更が反映されます。
構文
DBMS_XMLDOM.REPLACEDATA( cd IN DOMCHARACTERDATA, offset IN NUMBER, cnt IN NUMBER, arg IN VARCHAR2);
パラメータ
表155-114 REPLACEDATAプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
置換するオフセット。 |
|
置換する文字数。 |
|
置換に使用する新しい値。 |
このファンクションは、指定した名前空間の接頭辞を解決し、解決済の名前空間を戻します。
構文
DBMS_XMLDOM.RESOLVENAMESPACEPREFIX( elem IN DOMELEMENT, prefix IN VARCHAR2) RETURN VARCHAR2;
パラメータ
指定した名前のDOMELEMENT
の属性値を設定します。
構文
指定した名前のDOMELEMENT
の属性値を設定します。
DBMS_XMLDOM.SETATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2, value IN VARCHAR2);
指定した名前と名前空間URIのDOMElement
の属性値を設定します。
DBMS_XMLDOM.SETATTRIBUTE( elem IN DOMELEMENT, name IN VARCHAR2, value IN VARCHAR2, ns IN VARCHAR2);
パラメータ
新規の属性ノードをDOMELEMENT
に追加します。
構文
新規の属性ノードをDOMELEMENT
に追加します。
DBMS_XMLDOM.SETATTRIBUTENODE( elem IN DOMELEMENT, newAttr IN DOMATTR) RETURN DOMATTR;
新規の属性ノードをDOMElement
に追加し、名前空間を有効にします。
DBMS_XMLDOM.SETATTRIBUTENODE( elem IN DOMELEMENT, newAttr IN DOMATTR, ns IN VARCHAR2) RETURN DOMATTR;
パラメータ
このプロシージャはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
インタフェースを実装するノードの文字データを設定します(関連項目: 「DOMCharacterDataサブプログラム」)。
DBMS_XMLDOM.SETDATA( cd IN DOMCHARACTERDATA, data IN VARCHAR2);
DOMPROCESSINGINSTRUCTION
のコンテンツ・データを設定します(関連項目: 「DOMProcessingInstructionサブプログラム」)。
DBMS_XMLDOM.SETDATA( pi IN DOMPROCESSINGINSTRUCTION, data IN VARCHAR2);
パラメータ
表155-118 SETDATAプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
ノードに設定するデータ。 |
|
|
|
新規の処理命令のコンテンツ・データ。 |
DOM文書の場合、このプロシージャは、指定した名前、システム識別子、および公開識別子を持つ新しいDTDを作成して、DOM文書に設定します。このDTDは、後でGETDOCTYPEファンクションを使用して取得できます。
構文
DBMS_XMLDOM.SETDOCTYPE( doc IN DOMDocument, name IN VARCHAR2, sysid IN VARCHAR2, pubid IN VARCHAR2);
パラメータ
表155-119 SETDOCTYPEプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
DTDを設定するドキュメント。 |
|
doctypeの初期化で使用する名前。 |
|
doctypeの初期化で使用するシステム識別子。 |
|
doctypeの初期化で使用する公開識別子。 |
このファンクションは、NodeName
属性に基づいてノードを追加します。指定した名前のノードがすでにマップ内に存在する場合は、その既存のノードが新規のノードで置き換えられます。このような置換が発生した場合は、既存のノードが戻り値となります。置換が発生しなかった場合は、NULL
が戻されます。
ノードが格納される名前は、NodeName
属性に基づいて決定されます。したがって、特定タイプの複数のノード(特殊な文字列値を持つ複数のノード)は、名前が競合するために格納できません。このため、ノードに別名を付けることをお薦めします。
構文
NodeName
属性に基づいて、ノードを追加します。
DBMS_XMLDOM.SETNAMEDITEM( nnm IN DOMNAMEDNODEMAP, arg IN DOMNODE) RETURN DOMNode;
NodeName
属性と名前空間URIに基づいて、ノードを追加します。
DBMS_XMLDOM.SETNAMEDITEM( nnm IN DOMNAMEDNODEMAP, arg IN DOMNODE, ns IN VARCHAR2) RETURN DOMNode;
パラメータ
表155-120 SETNAMEDITEMファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
|
|
名前空間。 |
このプロシージャは、ノードのタイプに応じて、ノードの値を設定します。ノードの値をNULL
に設定した場合は、この値を設定しても無効になります。
構文
DBMS_XMLDOM.SETNODEVALUE( n IN DOMNODE, nodeValue IN VARCHAR2);
パラメータ
これらのサブプログラムの操作は、各構文の実装で説明されています。
構文
このファンクションは、コール元がノード値を書き込むことができるPL/SQL XMLBINARYOUTPUTSTREAM
のインスタンスを戻します。 ノードのデータ型は、RAW
またはBLOB
である必要があります。それ以外の場合は、例外が発生します。
DBMS_XMLDOM.SETNODEVALUEASBINARYSTREAM ( n IN DOMNODE) RETURN SYS.UTL_BINARYOUTPUTSTREAM;
このプロシージャを使用して、アプリケーションは、XDBがノードに移入するデータを読み込むsys
.utl_BinaryInputStream
の実装を渡します。 ノードのデータ型は、RAW
またはBLOBである必要があります。それ以外の場合は、例外が発生します。
DBMS_XMLDOM.SETNODEVALUEASBINARYSTREAM ( n in DOMNODE, value in SYS.UTL_BINARYINPUTSTREAM);
パラメータ
表155-122 SETNODEVALUEASBINARYSTREAMファンクションおよびプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
value |
|
これらのサブプログラムの操作は、各構文の実装で説明されています。
構文
このファンクションは、コール元がノード値を書き込むことができるPL/SQL XMLCHARACTEROUTPUTSTREAM
タイプのインスタンスを戻します。ノードのデータ型は、任意の有効なXDBデータ型を使用できます。型が文字またはCLOB
でない場合、ストリームに書き込まれる文字データは、ノードのデータ型に変換されます。ノードのデータ型が文字またはCLOB
の場合、ストリームに書き込まれる文字データは、PL/SQLセッションのキャラクタ・セットからノードのキャラクタ・セットに変換されます。
DBMS_XMLDOM.SETNODEVALUEASCHARACTERSTREAM ( n IN DOMNODE) RETURN SYS.UTL_CHARACTEROUTPUTSTREAM;
このプロシージャを使用して、アプリケーションは、XDBがノードに移入するデータを読み込むSYS
.UTL_CHARACTERINPUTSTREAM
の実装を渡します。ノードのデータ型は、XDBでサポートされている任意の有効な型を使用できます。文字以外のデータ型の場合、ストリームから読み込まれる文字データは、ノードのデータ型に変換されます。 ノードのデータ型が文字またはCLOB
の場合、変換は行われず、ノードのキャラクタ・セットがPL/SQLセッションのキャラクタ・セットとなります。
DBMS_XMLDOM.SETNODEVALUEASCHARACTERSTREAM ( n IN DOMNODE, value IN SYS.UTL_CHARACTERINPUTSTREAM);
パラメータ
表155-123 SETNODEVALUEASCHARACTERSTREAMファンクションおよびプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
value |
|
このプロシージャは、ノードの名前空間の接頭辞を指定の値に設定します。
構文
DBMS_XMLDOM.SETPREFIX( n IN DOMNODE, prefix IN VARCHAR2);
パラメータ
このプロシージャは、DOMDOCUMENT
のスタンドアロン・プロパティを設定します。
構文
DBMS_XMLDOM.SETSTANDALONE( doc IN DOMDOCUMENT, newvalue IN VARCHAR2);
パラメータ
このプロシージャは、属性の値を設定します。
構文
DBMS_XMLDOM.SETVALUE( a IN DOMATTR, value IN VARCHAR2);
パラメータ
このプロシージャは、DOMDOCUMENT
のバージョンを設定します。
構文
DBMS_XMLDOM.SETVERSION( doc IN DOMDOCUMENT, version IN VARCHAR2);
パラメータ
このファンクションは、指定したオフセット位置で、1つのDOMTEXT
ノードを2つのDOMTEXT
ノードに分割します。
構文
DBMS_XMLDOM.SPLITTEXT( t IN DOMTEXT, offset IN NUMBER) RETURN DOMText;
パラメータ
このファンクションは、指定された範囲のデータ(サブストリング)をノードから抽出します。
構文
DBMS_XMLDOM.SUBSTRINGDATA( cd IN DOMCHARACTERDATA, offset IN NUMBER, cnt IN NUMBER) RETURN VARCHAR2;
パラメータ
表155-129 SUBSTRINGDATAファンクションのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
取得するデータの開始オフセット。 |
|
取得するデータの(オフセットからの)文字数。 |
このファンクションは、ノードのデータ型がRAW
またはBLOB
の場合、UTL_BINARYINPUTSTREAM
またはUTL_BINARYOUTPUTSTREAM
を使用してノード値を読取りまたは書込みできるように、TRUE
を戻します。 FALSE
の値が返された場合、ノード値はUTL_CHARACTERINPUTSTREAM
またはUTL_CHARACTEROUTPUTSTREAM
でのみアクセスできます。
構文
DBMS_XMLDOM.USEBINARYSTREAM ( n IN DOMNODE) RETURN BOOLEAN;
パラメータ
このプロシージャはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
データベース・キャラクタ・セットを使用して、XMLノードを指定のバッファに書き込みます(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.WRITETOBUFFER( n IN DOMNODE, buffer IN OUT VARCHAR2);
データベース・キャラクタ・セットを使用して、XML文書を指定のバッファに書き込みます(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.WRITETOBUFFER( doc IN DOMDOCUMENT, buffer IN OUT VARCHAR2);
データベース・キャラクタ・セットを使用して、指定のドキュメント・フラグメントの内容をバッファに書き込みます(関連項目: 「DOMDocumentFragmentサブプログラム」)。
DBMS_XMLDOM.WRITETOBUFFER( df IN DOMDOCUMENTFRAGMENT, buffer IN OUT VARCHAR2);
パラメータ
表155-131 WRITETOBUFFERプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
|
|
書込み先のバッファ。 |
|
|
|
DOMDocumentFragment。 |
このプロシージャはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
データベース・キャラクタ・セットを使用して、XMLノードを指定のCLOB
に書き込みます(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.WRITETOCLOB( n IN DOMNODE, cl IN OUT CLOB);
データベース・キャラクタ・セットを使用して、XML文書を指定のCLOB
に書き込みます(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.WRITETOCLOB( doc IN DOMDOCUMENT, cl IN OUT CLOB);
パラメータ
このプロシージャはオーバーロードされています。各バージョンの機能と構文宣言を次に示します。
構文
データベース・キャラクタ・セットを使用して、XMLノードを指定のファイルに書き込みます(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.WRITETOFILE( n IN DOMNODE, fileName IN VARCHAR2);
指定したキャラクタ・セットを使用して、XMLノードを指定のファイルに書き込みます。このキャラクタ・セットは、個別のパラメータとして渡されます(関連項目: 「DOMNodeサブプログラム」)。
DBMS_XMLDOM.WRITETOFILE( n IN DOMNODE, fileName IN VARCHAR2, charset IN VARCHAR2);
データベース・キャラクタ・セットを使用して、XML文書を指定のファイルに書き込みます(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.WRITETOFILE( doc IN DOMDOCUMENT, filename IN VARCHAR2);
指定したキャラクタ・セットを使用して、XML文書を指定のファイルに書き込みます(関連項目: 「DOMDocumentサブプログラム」)。
DBMS_XMLDOM.WRITETOFILE( doc IN DOMDOCUMENT, fileName IN VARCHAR2, charset IN VARCHAR2);
パラメータ