7 DICOM PL/SQL APIリファレンス
Oracle Multimedia DICOMにはPL/SQL APIが用意されており、これはORD_DICOM PL/SQLパッケージで定義されています。
ORD_DICOM PL/SQLパッケージには、形式の変換、メタデータの抽出、準拠の検証など、共通の操作を実行するファンクションとプロシージャが用意されています。このパッケージにより、BLOBおよびBFILEに格納されている医療用画像データに対するOracle Multimediaのサポートが追加されています。
医療用画像処理アプリケーションを作成するアプリケーション開発者は、医療用画像データのリレーショナル表への格納および管理にOracle MultimediaのORDDicomオブジェクト型を使用しない場合、Oracle Multimedia DICOMのPL/SQL APIを使用して医療用画像データを管理できます。また、Oracle MultimediaのORDDicomオブジェクトを使用するために既存の医療用画像アプリケーションを移行することを望まないアプリケーション開発者も、DICOM PL/SQL APIを使用して医療用画像データを管理できます。
ORD_DICOMパッケージは、ordcpksp.sql
ファイルに定義されています。インストール後、このファイルは次のOracleホーム・ディレクトリに格納されています。
<ORACLE_HOME>
/ord/im/admin
(LinuxおよびUNIXの場合)
<ORACLE_HOME>
\ord\im\admin
(Windowsの場合)
この章では、DICOM PL/SQL APIのファンクションおよびプロシージャについて説明します。
この章では、次の内容を説明します。
関連項目:
その他のDICOMアプリケーション・プログラミング・インタフェース(API)の詳細は、Oracle Multimedia DICOMで使用するAPIを参照してください。
7.1 DICOM PL/SQL APIのファンクションおよびプロシージャの例
この章で説明するDICOM PL/SQL APIのファンクションおよびプロシージャでは、MEDICAL_IMAGE_REL表を基盤とした例を使用します。これらの例を確認するときは、MEDICAL_IMAGE_REL表の定義を参照してください。
DICOM PL/SQL APIのファンクションおよびプロシージャを使用する前に、いくつかのデータを表にロードする必要があります。たとえば、SQL*LoaderやimportFrom( )プロシージャを使用できます。例中のファイルは、実際のDICOMファイルで置き換えてください。
7.1.1 DICOM PL/SQL APIの例を使用するためのディレクトリの定義および設定
例を実行する前に、ディレクトリ・オブジェクトを作成する権限を持つユーザーに接続した状態で、次の文を発行します。ここでc:\mydir\work
は、ユーザー<user>
がDICOMファイルを見つけることができるディレクトリです。
CREATE OR REPLACE DIRECTORY DICOMDIR as 'c:\mydir\work'; GRANT READ, WRITE ON DIRECTORY DICOMDIR TO <user>;
7.1.2 MEDICAL_IMAGE_REL表の定義
データを表にロードする前に、データを格納する表および列を作成する必要があります。次に示すPL/SQLコード・セグメントでは、5つの列を含むMEDICAL_IMAGE_REL表が作成されます。
CREATE TABLE MEDICAL_IMAGE_REL ( id integer primary key, blob_src blob, bfile_src bfile, image_src ordsys.ordimage, blob_dest blob );
各項目の意味は次のとおりです。
-
blob_src: BLOBのソースDICOMコンテンツ。
-
bfile_src: BFILEのソースDICOMコンテンツ。
-
image_src: ORDImageオブジェクトのソースDICOMコンテンツ。
-
blob_dest: BLOBの宛先DICOMコンテンツ。
7.2 DICOM PL/SQL APIのファンクション
ORD_DICOMパッケージでは、次に示すDICOM PL/SQL APIのファンクションが定義されています。
7.2.1 BFILEのextractMetadata( )
形式
extractMetadata(data IN BFILE, extractOption IN VARCHAR2 DEFAULT 'ALL', docName IN VARCHAR2 DEFAULT 'ordcmmp.xml') RETURN SYS.XMLTYPE
説明
指定されたマッピング・ドキュメント用のXMLドキュメントとして、DICOMメタデータを戻します。デフォルトのマッピング・ドキュメントでは、デフォルトのメタデータ名前空間http://xmlns.oracle.com/ord/dicom/metadata_1_0
を参照します。
パラメータ
- data
-
BFILEに格納されている入力DICOMコンテンツを指定します。
- extractOption
-
DICOMコンテンツから抽出するメタデータのタイプを指定する文字列です。有効な値は、
ALL
、MAPPED
およびSTANDARD
です。デフォルトはALL
です。extractOptionパラメータの値が
ALL
の場合は、DICOMコンテンツのすべての属性が抽出されます。この値がMAPPED
に設定されている場合は、マップされた属性のみが抽出されます。また、この値がSTANDARD
に設定されている場合は、DICOM標準規格に準拠している属性と、マップされた属性のみが抽出されます。 - docName
-
マッピング・ドキュメントの名前を指定します。インストール時にはデフォルトのマッピング・ドキュメント
ordcmmp.xml
がロードされます。
プラグマ
なし。
例外
なし。
使用上の注意
XMLへのエンコード時に省略の基準となるDICOM属性のサイズ制限を指定するには、プリファレンス・パラメータXML_SKIP_ATTRを使用します。このプリファレンス・パラメータの詳細は、XML_SKIP_ATTRプリファレンス・パラメータの定義を参照してください。
グローバルまたはローカルのXMLスキーマとしてOracle XML DBに登録されている特定のXMLスキーマに照らしあわせてXMLドキュメントを検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
プリファレンス・パラメータVALIDATE_METADATAの値がtrue
に設定されているときにこのファンクションをコールすると、現在のユーザーがマッピング・ドキュメント内のメタデータの名前空間を使用できない場合に、エラーが発生します。
例
BFILEに格納されているDICOMコンテンツからメタデータを抽出します。
declare src bfile; metadata xmltype; begin select bfile_src into src from medical_image_rel where id = 1 for update; metadata := ord_dicom.extractMetadata(src, 'all', 'ordcmmp.xml'); end; /
7.2.2 BLOBのextractMetadata( )
形式
extractMetadata(data IN BLOB, extractOption IN VARCHAR2 DEFAULT 'ALL', docName IN VARCHAR2 DEFAULT 'ordcmmp.xml') RETURN SYS.XMLTYPE
説明
指定されたマッピング・ドキュメント用のXMLドキュメントとして、DICOMメタデータを戻します。デフォルトのマッピング・ドキュメントでは、デフォルトのメタデータ名前空間http://xmlns.oracle.com/ord/dicom/metadata_1_0
を参照します。
パラメータ
- data
-
BLOBに格納されている入力DICOMコンテンツを指定します。
- extractOption
-
DICOMコンテンツから抽出するメタデータのタイプを指定する文字列です。有効な値は、
ALL
、MAPPED
およびSTANDARD
です。デフォルトはALL
です。extractOptionパラメータの値が
ALL
の場合は、DICOMコンテンツのすべての属性が抽出されます。この値がMAPPED
に設定されている場合は、マップされた属性のみが抽出されます。また、この値がSTANDARD
に設定されている場合は、DICOM標準規格に準拠している属性と、マップされた属性のみが抽出されます。 - docName
-
マッピング・ドキュメントの名前を指定します。インストール時にはデフォルトのマッピング・ドキュメント
ordcmmp.xml
がロードされます。
プラグマ
なし。
例外
なし。
使用上の注意
XMLへのエンコード時に省略の基準となるDICOM属性のサイズ制限を指定するには、プリファレンス・パラメータXML_SKIP_ATTRを使用します。このプリファレンス・パラメータの詳細は、XML_SKIP_ATTRプリファレンス・パラメータの定義を参照してください。
グローバルまたはローカルのXMLスキーマとしてOracle XML DBに登録されている特定のXMLスキーマに照らしあわせてXMLドキュメントを検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
プリファレンス・パラメータVALIDATE_METADATAの値がtrue
に設定されているときにこのファンクションをコールすると、現在のユーザーがマッピング・ドキュメント内のメタデータの名前空間を使用できない場合に、エラーが発生します。
例
BLOBに格納されているDICOMコンテンツからメタデータを抽出します。
declare src blob; metadata xmltype; begin select blob_src into src from medical_image_rel where id = 1 for update; metadata := ord_dicom.extractMetadata(src, 'all', 'ordcmmp.xml'); end;
7.2.3 ORDImageのextractMetadata( )
形式
extractMetadata(data IN ORDSYS.ORDImage, extractOption IN VARCHAR2 DEFAULT 'ALL', docName IN VARCHAR2 DEFAULT 'ordcmmp.xml') RETURN SYS.XMLTYPE
説明
指定されたマッピング・ドキュメント用のXMLドキュメントとして、DICOMメタデータを戻します。デフォルトのマッピング・ドキュメントでは、デフォルトのメタデータ名前空間http://xmlns.oracle.com/ord/dicom/metadata_1_0
を参照します。
パラメータ
- data
-
ORDImageオブジェクトに格納されている入力DICOMコンテンツを指定します。
- extractOption
-
DICOMコンテンツから抽出するメタデータのタイプを指定する文字列です。有効な値は、
ALL
、MAPPED
およびSTANDARD
です。デフォルトはALL
です。extractOptionパラメータの値が
ALL
の場合は、DICOMコンテンツのすべての属性が抽出されます。この値がMAPPED
に設定されている場合は、マップされた属性のみが抽出されます。また、この値がSTANDARD
に設定されている場合は、DICOM標準規格に準拠している属性と、マップされた属性のみが抽出されます。 - docName
-
マッピング・ドキュメントの名前を指定します。インストール時にはデフォルトのマッピング・ドキュメント
ordcmmp.xml
がロードされます。
プラグマ
なし。
例外
なし。
使用上の注意
XMLへのエンコード時に省略の基準となるDICOM属性のサイズ制限を指定するには、プリファレンス・パラメータXML_SKIP_ATTRを使用します。このプリファレンス・パラメータの詳細は、XML_SKIP_ATTRプリファレンス・パラメータの定義を参照してください。
グローバルまたはローカルのXMLスキーマとしてOracle XML DBに登録されている特定のXMLスキーマに照らしあわせてXMLドキュメントを検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
プリファレンス・パラメータVALIDATE_METADATAの値がtrue
に設定されているときにこのファンクションをコールすると、現在のユーザーがマッピング・ドキュメント内のメタデータの名前空間を使用できない場合に、エラーが発生します。
例
ORDImageオブジェクトに格納されているDICOMコンテンツからメタデータを抽出します。
declare src ordimage; metadata xmltype; begin select image_src into src from medical_image_rel where id = 1 for update; metadata := ord_dicom.extractMetadata(src, 'all', 'ordcmmp.xml'); end; /
7.2.4 BFILEのisAnonymous( )
形式
isAnonymous(src IN BFILE, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml') RETURN INTEGER
説明
指定された匿名ドキュメントを使用して、入力DICOMコンテンツが匿名かどうかを判別します。このファンクションは、データが匿名の場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
BFILEに格納されているDICOMコンテンツが匿名かどうかを確認します。
select ord_dicom.isAnonymous(t.bfile_src, 'ordcman.xml') from medical_image_rel t where id = 1;
7.2.5 BLOBのisAnonymous( )
形式
isAnonymous(src IN BLOB, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml') RETURN INTEGER
説明
指定された匿名ドキュメントを使用して、入力DICOMコンテンツが匿名かどうかを判別します。このファンクションは、データが匿名の場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
BLOBに格納されているDICOMコンテンツが匿名かどうかを確認します。
select ord_dicom.isAnonymous(t.blob_src, 'ordcman.xml') from medical_image_rel t where id = 1;
7.2.6 ORDImageのisAnonymous( )
形式
isAnonymous(src IN ORDSYS.ORDImage, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml') RETURN INTEGER
説明
指定された匿名ドキュメントを使用して、入力DICOMコンテンツが匿名かどうかを判別します。このファンクションは、データが匿名の場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
ORDImageオブジェクトに格納されているDICOMコンテンツが匿名かどうかを確認します。
select ord_dicom.isAnonymous(t.image_src, 'ordcman.xml') from medical_image_rel t where id = 1;
7.2.7 BFILEのisConformanceValid( )
形式
isConformanceValid(src IN BFILE, constraintName IN VARCHAR2) RETURN INTEGER
説明
constraintNameパラメータによって識別される指定された一連の制約に対して、入力DICOMコンテンツが準拠しているかどうかを確認するために、準拠の検証チェックを実行します。このファンクションは、準拠している場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
また、このファンクションは、制約ドキュメントからのエラー・メッセージをログに記録します。このエラー・メッセージは、パブリック・ビューorddcm_conformance_vld_msgsを問い合せることで表示できます。パブリック・ビューorddcm_constraint_namesには制約名のリストが表示されます。
プラグマ
なし。
例外
なし。
使用上の注意
このファンクションがSQL問合せからコールされる場合は、制約ルール定義に<ACTION>要素が含まれていないことを確認してください。
準拠の検証中に欠落した属性またはnullの属性値が見つかったときに例外をスローするかどうかを指定するには、プリファレンス・パラメータEXP_IF_NULL_ATTR_IN_CONSTRAINTを使用します。このプリファレンス・パラメータの詳細は、EXP_IF_NULL_ATTR_IN_CONSTRAINTプリファレンス・パラメータの定義を参照してください。
例
既存の準拠の検証メッセージを削除します。BFILEに格納されているDICOMコンテンツが制約に準拠しているかどうかを確認します。その後、新しく生成された準拠の検証メッセージを表示します。
-- clear the previous conformance validation messages delete from orddcm_conformance_vld_msgs; -- conformance validate the DICOM content declare src bfile; begin select bfile_src into src from medical_image_rel where id = 1; dbms_output.put_line('isConformanceValid(PatientModule) ' || ord_dicom.isConformanceValid(src, 'PatientModule')); end; / -- get the logged conformance validation messages select message, msg_time time from orddcm_conformance_vld_msgs where rule_name='PatientModule';
7.2.8 BLOBのisConformanceValid( )
形式
isConformanceValid(src IN BLOB, constraintName IN VARCHAR2) RETURN INTEGER
説明
constraintNameパラメータによって識別される指定された一連の制約に対して、入力DICOMコンテンツが準拠しているかどうかを確認するために、準拠の検証チェックを実行します。このファンクションは、準拠している場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
また、このファンクションは、制約ドキュメントからのエラー・メッセージをログに記録します。このエラー・メッセージは、パブリック・ビューorddcm_conformance_vld_msgsを問い合せることで表示できます。パブリック・ビューorddcm_constraint_namesには制約名のリストが表示されます。
プラグマ
なし。
例外
なし。
使用上の注意
このファンクションがSQL問合せからコールされる場合は、制約ルール定義に<ACTION>要素が含まれていないことを確認してください。
準拠の検証中に欠落した属性またはnullの属性値が見つかったときに例外をスローするかどうかを指定するには、プリファレンス・パラメータEXP_IF_NULL_ATTR_IN_CONSTRAINTを使用します。このプリファレンス・パラメータの詳細は、EXP_IF_NULL_ATTR_IN_CONSTRAINTプリファレンス・パラメータの定義を参照してください。
例
既存の準拠の検証メッセージを削除します。BLOBに格納されているDICOMコンテンツが制約に準拠しているかどうかを確認します。その後、新しく生成された準拠の検証メッセージを表示します。
-- clear the previous conformance validation messages delete from orddcm_conformance_vld_msgs; -- conformance validate the DICOM content declare src blob; begin select blob_src into src from medical_image_rel where id = 1; dbms_output.put_line('isConformanceValid(PatientModule) ' || ord_dicom.isConformanceValid(src, 'PatientModule')); end; / -- get the logged conformance validation messages select message, msg_time time from orddcm_conformance_vld_msgs where rule_name='PatientModule';
7.2.9 ORDImageのisConformanceValid( )
形式
isConformanceValid(src IN ORDSYS.ORDImage, constraintName IN VARCHAR2) RETURN INTEGER
説明
constraintNameパラメータによって識別される指定された一連の制約に対して、入力DICOMコンテンツが準拠しているかどうかを確認するために、準拠の検証チェックを実行します。このファンクションは、準拠している場合に1
の値を戻し、それ以外の場合は0
の値を戻します。
また、このファンクションは、制約ドキュメントからのエラー・メッセージをログに記録します。このエラー・メッセージは、パブリック・ビューorddcm_conformance_vld_msgsを問い合せることで表示できます。パブリック・ビューorddcm_constraint_namesには制約名のリストが表示されます。
プラグマ
なし。
例外
なし。
使用上の注意
このファンクションがSQL問合せからコールされる場合は、制約ルール定義に<ACTION>要素が含まれていないことを確認してください。
準拠の検証中に欠落した属性またはnullの属性値が見つかったときに例外をスローするかどうかを指定するには、プリファレンス・パラメータEXP_IF_NULL_ATTR_IN_CONSTRAINTを使用します。このプリファレンス・パラメータの詳細は、EXP_IF_NULL_ATTR_IN_CONSTRAINTプリファレンス・パラメータの定義を参照してください。
例
既存の準拠の検証メッセージを削除します。ORDImageオブジェクトに格納されているDICOMコンテンツが制約に準拠しているかどうかを確認します。その後、新しく生成された準拠の検証メッセージを表示します。
-- clear the previous conformance validation messages delete from orddcm_conformance_vld_msgs; -- conformance validate the DICOM content declare src ordimage; begin select image_src into src from medical_image_rel where id = 1; dbms_output.put_line('isConformanceValid(PatientModule) ' || ord_dicom.isConformanceValid(src, 'PatientModule')); end; / -- get the logged conformance validation messages select message, msg_time time from orddcm_conformance_vld_msgs where rule_name='PatientModule';
7.3 DICOM PL/SQL APIのプロシージャ
ORD_DICOMパッケージでは、次に示すDICOM PL/SQL APIのプロシージャが定義されています。
注意:
この項では、<unique-UID>は、DICOMコンテンツに対する全世界的にグローバルな一意識別子を表す、ドットで連結された64バイトの数字列を表します。UIDは、通常、DICOMコンテンツを作成する組織を一意に識別するルートと、組織内のDICOMコンテンツを一意に識別する接尾辞で構成されます。この項の一部の例では、<unique-UID>を適切なUIDで置き換える必要があります。
7.3.1 BFILEのcreateDicomImage( )
形式
createDicomImage(src IN BFILE, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB)
説明
ソース画像およびDICOMメタデータからDICOM画像を作成します。このプロシージャに入力されるソース・コンテンツがDICOMコンテンツである場合、作成される宛先DICOMコンテンツには、metadataパラメータでこのプロシージャに入力されたメタデータのみが含まれます。したがって、宛先DICOMコンテンツでは、ソースDICOMコンテンツのメタデータが削除され、入力されたメタデータに置換されます。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
画像コンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
ソースBFILEおよびDICOMメタデータからDICOM画像を作成します。
declare src bfile; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select bfile_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.createDicomImage(src, metadata, dest); end; /
7.3.2 BLOBのcreateDicomImage( )
形式
createDicomImage(src IN BLOB, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB)
説明
ソース画像およびDICOMメタデータからDICOM画像を作成します。このプロシージャに入力されるソース・コンテンツがDICOMコンテンツである場合、作成される宛先DICOMコンテンツには、metadataパラメータでこのプロシージャに入力されたメタデータのみが含まれます。したがって、宛先DICOMコンテンツでは、ソースDICOMコンテンツのメタデータが削除され、入力されたメタデータに置換されます。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
画像コンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
ソースBLOBおよびDICOMメタデータからDICOM画像を作成します。
declare src blob; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select blob_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.createDicomImage(src, metadata, dest); end; /
7.3.3 ORDImageのcreateDicomImage( )
形式
createDicomImage(src IN ORDSYS.ORDImage, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB)
説明
ソース画像およびDICOMメタデータからDICOM画像を作成します。このプロシージャに入力されるソース・コンテンツがDICOMコンテンツである場合、作成される宛先DICOMコンテンツには、metadataパラメータでこのプロシージャに入力されたメタデータのみが含まれます。したがって、宛先DICOMコンテンツでは、ソースDICOMコンテンツのメタデータが削除され、入力されたメタデータに置換されます。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
画像コンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
ソースORDImageオブジェクトおよびDICOMメタデータからDICOM画像を作成します。
declare src ordimage; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select image_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.createDicomImage(src, metadata, dest); end; /
7.3.4 export( )
形式
export(src IN BLOB, dest_type IN VARCHAR2, dest_location IN VARCHAR2, dest_name IN VARCHAR2)
説明
BLOBのDICOMコンテンツを指定の宛先にエクスポートします。データが宛先にコピーされる際、データはソースBLOBに保持されます。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
export( )プロシージャは、ユーザーがアクセス権を持つデータベース・ディレクトリのオブジェクトに対してのみ書き込みます。つまり、SQL文のCREATE DIRECTORYを使用して作成したディレクトリ・オブジェクト、または読取りおよび書込み権限を付与されたディレクトリ・オブジェクトにアクセスできます。
たとえば、次のSQL*Plusコマンドを実行すると、ディレクトリ・オブジェクトが作成され、ディレクトリc:\mydir\work
内の任意のファイルに対する読取りおよび書込み権限がユーザー<user>
に付与されます。これらのコマンドを実行する前に、ディレクトリ・オブジェクトを作成する権限を持ったユーザーとして接続しておく必要があります。
CREATE OR REPLACE DIRECTORY DICOMDIR AS 'c:\mydir\work'; GRANT READ,WRITE ON DIRECTORY DICOMDIR TO <user>;
ディレクトリおよび表の定義の詳細は、DICOM PL/SQL APIのファンクションおよびプロシージャの例を参照してください。
例
BLOBのDICOMコンテンツを指定のファイルにエクスポートします。
declare src blob; begin select blob_src into src from medical_image_rel where id = 1; ord_dicom.export(src, 'FILE', 'DICOMDIR', 'exported.dcm'); end; /
7.3.5 importFrom( )
形式
importFrom(dest IN OUT NOCOPY BLOB, source_type IN VARCHAR2, source_location IN VARCHAR2, source_name IN VARCHAR2)
説明
指定されたソースのDICOMコンテンツをBLOBにインポートします。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
importFrom( )プロシージャは、ユーザーがアクセス権を持つデータベース・ディレクトリのオブジェクトからのみ読み取ります。つまり、SQL文のCREATE DIRECTORYを使用して作成したディレクトリ・オブジェクト、または読取り権限を付与されたディレクトリ・オブジェクトにアクセスできます。
たとえば、次のSQL*Plusコマンドを実行すると、ディレクトリ・オブジェクトが作成され、ディレクトリc:\mydir\work
内の任意のファイルに対する読取り権限がユーザー<user>
に付与されます。これらのコマンドを実行する前に、ディレクトリ・オブジェクトを作成する権限を持ったユーザーとして接続しておく必要があります。
CREATE OR REPLACE DIRECTORY DICOMDIR AS 'c:\mydir\work'; GRANT READ ON DIRECTORY DICOMDIR TO <user>;
ディレクトリおよび表の定義の詳細は、DICOM PL/SQL APIのファンクションおよびプロシージャの例を参照してください。
例
DICOMコンテンツをBLOBにインポートします。
declare dest blob; begin select blob_dest into dest from medical_image_rel where id = 1 for update; ord_dicom.importFrom(dest, 'file', 'DICOMDIR', 'example.dcm'); end; /
7.3.6 BFILEのmakeAnonymous( )
形式
makeAnonymous(src IN BFILE, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml')
説明
患者を特定する情報を別のDICOMコンテンツのBLOBにコピーした後、指定された匿名ドキュメントに基づいて、それらの情報をソースのDICOMコンテンツから削除します。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
BFILEに格納されている埋込みDICOMコンテンツから、患者を特定する情報を削除します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
declare
src bfile;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select bfile_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.makeAnonymous(src, dest_sop_instance_uid, dest, 'ordcman.xml');
end;
/
7.3.7 BLOBのmakeAnonymous( )
形式
makeAnonymous(src IN BLOB, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml')
説明
患者を特定する情報を別のDICOMコンテンツのBLOBにコピーした後、指定された匿名ドキュメントに基づいて、それらの情報をソースのDICOMコンテンツから削除します。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
BLOBに格納されている埋込みDICOMコンテンツから、患者を特定する情報を削除します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
declare
src blob;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select blob_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.makeAnonymous(src, dest_sop_instance_uid, dest, 'ordcman.xml');
end;
/
7.3.8 ORDImageのmakeAnonymous( )
形式
makeAnonymous(src IN ORDSYS.ORDImage, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, anonymityDocName IN VARCHAR2 DEFAULT 'ordcman.xml')
説明
患者を特定する情報を別のDICOMコンテンツのBLOBにコピーした後、指定された匿名ドキュメントに基づいて、それらの情報をソースのDICOMコンテンツから削除します。
パラメータ
プラグマ
なし。
例外
なし。
使用上の注意
なし。
例
ORDImageオブジェクトに格納されている埋込みDICOMコンテンツから、患者を特定する情報を削除します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
declare
src ordimage;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select image_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.makeAnonymous(src, dest_sop_instance_uid, dest, 'ordcman.xml');
end;
/
7.3.9 BFILEのprocessCopy( )
形式
processCopy(src IN BFILE, command IN VARCHAR2, dest IN OUT NOCOPY BLOB)
説明
ソースBFILEから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行してから、作成された画像を宛先BLOBに格納します。ソースBFILE内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースBFILEに格納されている入力DICOMコンテンツを指定します。
- command
-
処理演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
fileFormat
、frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
DICOMコンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
DICOMソースから新しいJPEGサムネイル画像を生成します。
declare src bfile; dest blob; begin select bfile_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.processCopy(src, 'fileFormat=jpeg maxScale=100 100', dest); end; /
7.3.10 SOPインスタンスUIDを持つBFILEのprocessCopy( )
形式
processCopy(src IN BFILE, command IN VARCHAR2, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, metadata IN SYS.XMLTYPE DEFAULT NULL)
説明
ソースBFILEから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行し、新しいメタデータでその画像を更新してから、作成された画像を宛先BLOBに格納します。ソースBFILE内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースBFILEに格納されている入力DICOMコンテンツを指定します。
- command
-
処理演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest_sop_instance_uid
-
宛先DICOMコンテンツのSOPインスタンスUIDを指定します。宛先DICOMコンテンツはグローバルに一意である必要があります。
- dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
- metadata
-
新しいDICOMコンテンツに書き込まれる新しいメタデータを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
DICOMコンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
新しい圧縮済のDICOM画像を生成します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
src bfile;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select bfile_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.processCopy(
src, 'CompressionFormat=jpeg', dest_sop_instance_uid, dest);
end;
/
7.3.11 BLOBのprocessCopy( )
形式
processCopy(src IN BLOB, command IN VARCHAR2, dest IN OUT NOCOPY BLOB)
説明
ソースBLOBから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行してから、作成された画像を宛先BLOBに格納します。ソースBLOB内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースBLOBに格納されている入力DICOMコンテンツを指定します。
- command
-
処理演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
fileFormat
、frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
DICOMコンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
新しいJPEGサムネイル画像を作成します。
src blob; dest blob; begin select blob_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.processCopy(src, 'fileFormat=jpeg maxScale=100 100' dest); end; /
7.3.12 SOPインスタンスUIDを持つBLOBのprocessCopy( )
形式
processCopy(src IN BLOB, command IN VARCHAR2, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, metadata IN SYS.XMLTYPE DEFAULT NULL)
説明
ソースBLOBから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行し、新しいメタデータでその画像を更新してから、作成された画像を宛先BLOBに格納します。ソースBLOB内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースBLOBに格納されている入力DICOMコンテンツを指定します。
- command
-
処理演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest_sop_instance_uid
-
宛先DICOMコンテンツのSOPインスタンスUIDを指定します。宛先DICOMコンテンツはグローバルに一意である必要があります。
- dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
- metadata
-
新しいDICOMコンテンツに書き込まれる新しいメタデータを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
DICOMコンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
新しい圧縮済のDICOM画像を作成します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
declare
src blob;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select blob_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.processCopy(
src, 'CompressionFormat=jpeg', dest_sop_instance_uid, dest);
end;
/
7.3.13 ORDImageのprocessCopy( )
形式
processCopy(src IN ORDSYS.ORDImage, command IN VARCHAR2, dest IN OUT NOCOPY BLOB)
説明
ソースORDImageオブジェクトから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行してから、作成された画像を宛先BLOBに格納します。ソースORDImageオブジェクト内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースORDImageオブジェクトに格納されている入力DICOMコンテンツを指定します。
- command
-
画像処理の演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
fileFormat
、frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。画像処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
埋込みDICOMコンテンツからWebでの表示に適したDICOM以外の画像を取得するには、このプロシージャを使用します。
画像コンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
新しいJPEGサムネイル画像を作成します。
declare src ordimage; dest blob; begin select image_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.processCopy(src, 'fileFormat=jpeg maxScale=100 100' dest); end; /
7.3.14 SOPインスタンスUIDを持つORDImageのprocessCopy( )
形式
processCopy(src IN ORDSYS.ORDImage, command IN VARCHAR2, dest_sop_instance_uid IN VARCHAR2, dest IN OUT NOCOPY BLOB, metadata IN SYS.XMLTYPE DEFAULT NULL)
説明
ソースORDImageオブジェクトから入力されるDICOMコンテンツを読み取り、その画像に対して指定された処理操作を実行し、新しいメタデータでその画像を更新してから、作成された画像を宛先BLOBに格納します。ソースORDImageオブジェクト内の元のDICOMコンテンツは変更されません。
パラメータ
- src
-
ソースORDImageオブジェクトに格納されている入力DICOMコンテンツを指定します。
- command
-
画像処理の演算子を入力として受け入れるコマンド文字列を指定します。有効な値には、
frame
、contentFormat
、compressionFormat
、cut
、scale
、rotate
などがあります。画像処理演算子の詳細は、DICOMの処理およびサポートされる形式を参照してください。 - dest_sop_instance_uid
-
宛先DICOM画像のSOPインスタンスUIDを指定します。宛先DICOMコンテンツはグローバルに一意である必要があります。
- dest
-
宛先コンテンツを格納するための空のBLOBを指定します。
- metadata
-
新しいDICOMコンテンツに書き込まれる新しいメタデータを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
埋込みDICOMコンテンツからWebでの表示に適したDICOM以外の画像を取得するには、このプロシージャを使用します。
画像コンテンツの処理をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。DICOM処理の詳細は、DICOMの処理およびサポートされる形式を参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
例
新しい圧縮済のDICOM画像を作成します。
注意:
<unique-UID>は、DICOMコンテンツを生成する組織、およびその組織内のDICOMコンテンツを識別するUIDに置き換えます。
declare
src ordimage;
dest blob;
dest_sop_instance_uid varchar2(128) := '<unique-UID>';
begin
select image_src, blob_dest into src, dest from medical_image_rel
where id = 1 for update;
ord_dicom.processCopy(
src, 'CompressionFormat=jpeg', dest_sop_instance_uid, dest);
end;
/
7.3.15 BFILEのwriteMetadata( )
形式
writeMetadata(src IN BFILE, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB),
説明
既存のDICOMコンテンツを宛先BLOBにコピーし、メタデータを変更することによって作成されるメタデータを使用して、現行のDICOMコンテンツへの書込みまたは変更を行います。元のDICOMコンテンツは変更されません。宛先DICOMコンテンツの属性は、入力されたメタデータからコピーされます。
パラメータ
- src
-
BFILEに格納されている入力DICOMコンテンツを指定します。
- metadata
-
XMLTypeのデータ型で格納されている入力メタデータを指定します。宛先DICOMコンテンツでは、この入力メタデータを使用して、ソースDICOMコンテンツの属性と同じ属性についてはその値が更新され、それ以外の属性については新しい属性が追加されます。メタデータは、名前空間
http://xmlns.oracle.com/ord/dicom/metadata_1_0
を持つデフォルトのメタデータ・スキーマに準拠している必要があります。メタデータのSOPインスタンスUIDでは、宛先DICOMコンテンツがグローバルに一意である必要があります。 - dest
-
新しいメタデータを含む新しいDICOMコンテンツを格納するための、空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
メタデータの抽出をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
DICOMシーケンス(SQ)型のエンコード方法を指定するには、プリファレンス・パラメータSQ_WRITE_LENを使用します。このプリファレンス・パラメータの詳細は、SQ_WRITE_LENプリファレンス・パラメータの定義を参照してください。
例
新しいメタデータを宛先BLOBのDICOMコンテンツのコピーに書き込みます。
declare src bfile; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select bfile_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.writeMetadata(src, metadata, dest); end; /
7.3.16 BLOBのwriteMetadata( )
形式
writeMetadata(src IN BLOB, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB),
説明
既存のDICOMコンテンツを宛先BLOBにコピーし、メタデータを変更することによって作成されるメタデータを使用して、現行のDICOMコンテンツへの書込みまたは変更を行います。元のDICOMコンテンツは変更されません。宛先DICOMコンテンツの属性は、入力されたメタデータからコピーされます。
パラメータ
- src
-
BLOBに格納されている入力DICOMコンテンツを指定します。
- metadata
-
XMLTypeのデータ型で格納されている入力メタデータを指定します。宛先DICOMコンテンツでは、この入力メタデータを使用して、ソースDICOMコンテンツの属性と同じ属性についてはその値が更新され、それ以外の属性については新しい属性が追加されます。メタデータは、名前空間
http://xmlns.oracle.com/ord/dicom/metadata_1_0
を持つデフォルトのメタデータ・スキーマに準拠している必要があります。メタデータのSOPインスタンスUIDでは、宛先DICOMコンテンツがグローバルに一意である必要があります。 - dest
-
新しいメタデータを含む新しいDICOMコンテンツを格納するための、空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
メタデータの抽出をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
DICOMシーケンス(SQ)型のエンコード方法を指定するには、プリファレンス・パラメータSQ_WRITE_LENを使用します。このプリファレンス・パラメータの詳細は、SQ_WRITE_LENプリファレンス・パラメータの定義を参照してください。
例
新しいメタデータを宛先BLOBのDICOMコンテンツのコピーに書き込みます。
declare src blob; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select blob_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.writeMetadata(src, metadata, dest); end; /
7.3.17 ORDImageのwriteMetadata( )
形式
writeMetadata(src IN ORDSYS.ORDImage, metadata IN SYS.XMLTYPE, dest IN OUT NOCOPY BLOB),
説明
既存のDICOMコンテンツを宛先BLOBにコピーし、メタデータを変更することによって作成されるメタデータを使用して、現行のDICOMコンテンツへの書込みまたは変更を行います。元のDICOMコンテンツは変更されません。宛先DICOMコンテンツの属性は、入力されたメタデータからコピーされます。
パラメータ
- src
-
ORDImageオブジェクトに格納されている入力DICOMコンテンツを指定します。
- metadata
-
XMLTypeのデータ型で格納されている入力メタデータを指定します。宛先DICOMコンテンツでは、この入力メタデータを使用して、ソースDICOMコンテンツの属性と同じ属性についてはその値が更新され、それ以外の属性については新しい属性が追加されます。メタデータは、名前空間
http://xmlns.oracle.com/ord/dicom/metadata_1_0
を持つデフォルトのメタデータ・スキーマに準拠している必要があります。メタデータのSOPインスタンスUIDでは、宛先DICOMコンテンツがグローバルに一意である必要があります。 - dest
-
新しいメタデータを含む新しいDICOMコンテンツを格納するための、空のBLOBを指定します。
プラグマ
なし。
例外
なし。
使用上の注意
メタデータの抽出をサポートするエンコーディング・ルールの詳細は、DICOMエンコーディング・ルールを参照してください。
XMLドキュメントをOracleのデフォルトのDICOMメタデータ・スキーマに照らしあわせて検証するかどうかを指定するには、プリファレンス・パラメータVALIDATE_METADATAを使用します。このプリファレンス・パラメータの詳細は、VALIDATE_METADATAプリファレンス・パラメータの定義を参照してください。
DICOMシーケンス(SQ)型のエンコード方法を指定するには、プリファレンス・パラメータSQ_WRITE_LENを使用します。このプリファレンス・パラメータの詳細は、SQ_WRITE_LENプリファレンス・パラメータの定義を参照してください。
例
新しいメタデータを宛先BLOBのDICOMコンテンツのコピーに書き込みます。
declare src ordimage; dest blob; metadata xmltype; begin metadata := xmltype(bfilename('DICOMDIR', 'wm_meta.xml'), nls_charset_id('AL32UTF8'), 'http://xmlns.oracle.com/ord/dicom/metadata_1_0'); select image_src, blob_dest into src, dest from medical_image_rel where id = 1 for update; ord_dicom.writeMetadata(src, metadata, dest); end; /