WEB开发网
开发学院数据库DB2 使用 DB2 pureXML 实现医疗行业数据解决方案 阅读

使用 DB2 pureXML 实现医疗行业数据解决方案

 2010-05-13 00:00:00 来源:WEB开发网   
核心提示: 通过使用 API,QED 临床数据源接口根据 XML 请求创建一个简单的 SQL 语句,使用 DB2 pureXML 实现医疗行业数据解决方案(5),以便在临床数据源(例如从静态 XQuery 查询创建的关系数据库)上运行该语句,临床数据源接口将查询返回的匹配的 CDA 中的结果包装到 PCC-

通过使用 API,QED 临床数据源接口根据 XML 请求创建一个简单的 SQL 语句,以便在临床数据源(例如从静态 XQuery 查询创建的关系数据库)上运行该语句。临床数据源接口将查询返回的匹配的 CDA 中的结果包装到 PCC-1 QED 响应中,临床数据使用者将它显示给终端用户,如图 4 所示。

图 4. PCC-1 QED 结果
使用 DB2 pureXML 实现医疗行业数据解决方案

查看原图(大图)

示例解决方案将 QED 消息中的医疗供给代码映射到临床数据源中的属性。并且定义从临床数据源中提取的数据的 XPATH。

处理查询

为了给 QED 标准查询提取数据,需要在 CDA 文档上运行静态查询。除了添加到临床数据源数据库的查询结果外,还需添加和映射一些附加字段,以便查询能找到满足 QED 规范所需的数据。数据的 XPath 也包括在一个列中。Connectathon 委员会指定 IBM Research 团队的 demo 必须提供的查询。清单 2 显示提取心搏观察数据的查询。

清单 2. 心搏观察数据

xquery 
 declare default element namespace "urn:hl7-org:v3"; 
 for $obs in db2-fn:xmlcolumn('RIM.INSTANCE') 
 //section[@classCode='DOCSECT'] 
 [code/@code='8716-3']/entry/observation[@classCode='OBS'] 
 [code/@code='8867-4'] 
  let $y := fn:root($obs) 
   let $entity_ext:=$y/*/id/@extension 
   let $entity_root:=$y/*/id/@root 
   let $effectiveTime:=$obs/effectiveTime[1] 
   let $statusCode:=$obs/statusCode 
   return <ibm:res xmlns:ibm="http://www.ibm.com/hrl" xmlns:v3="urn:hl7-org:v3" 
     entity_ext="{string($entity_ext)}" entity_root="{string($entity_root)}" 
     attr="HEART_BEAT" value="{string($obs/value/@value)}" 
     nullFlavor="{string($obs/value/@value/../@nullFlavor)}" 
     bakRef_root="{string($obs/id/@root)}" bakRef_ext="{string($obs/id/@extension)}"> 
     <ibm:props>{$effectiveTime}{$statusCode}</ibm:props></ibm:res> 

上一页  1 2 3 4 5 6  下一页

Tags:使用 DB pureXML

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接