此文章主要是通过示例代码的方式来演示检查Oracle DICOM 对象的一致性的具体方案,如果你对Oracle DICOM 相关操作的过程中存在不解之处的话,你就可以浏览以下的文章对其进行了解。
该主题中的示例代码演示了如何根据一组用户指定的一致性规则检查Oracle DICOM 数据的一致性。一致性规则在一个或多个约束定义文档中指定,这些文档是 XML 文档,可以指定 DICOM 元数据模式无法表达的属性关系和语义约束。默认的约束定义文档ordcmct.xml在安装期间加载。
描述如何自定义约束定义文档的内容超出了本教程的讨论范围。对于本教程,将使用默认的约束定义文档。
以下示例通过在源行的Oracle DICOM 上调用 isConformanceValid(),来通过标识符source_id检查medical_image_table的 DICOM 列的一致性。
执行以下步骤:
1.查看 DICOM 图像是否符合约束规则。从 SQL*Plus 会话中,执行以下脚本:
@check_object_conform
check_object_conform.sql代码如下:
Java代码
--SetDataModelRepository executeordsys.ord_dicom.setDataModel(); selectid,t.dicom.isconformanceValid('OracleOrdObject')asconformant frommedical_image_tablet; --SetDataModelRepository executeordsys.ord_dicom.setDataModel(); selectid,t.dicom.isconformanceValid('OracleOrdObject')asconformant frommedical_image_tablet;
2.如果Oracle DICOM 图像不符合约束定义,系统会将一个或多个消息插入表,通过查询ORDDCM_CONFORMANCE_VLD_MSGS视图可以看到这些消息。该视图列出了在约束验证期间生成的约束消息。从 SQL*Plus 会话中,执行以下脚本:
@review_conform_msgs
review_conform_msgs.sql代码如下:
Java代码
describeorddcm_conformance_vld_msgs; select*fromorddcm_conformance_vld_msgs; describeorddcm_conformance_vld_msgs; select*fromorddcm_conformance_vld_msgs;