DICOM 消息模式

消息模式用于描述 DICOM 节点所发送和接收的消息。

描述

DICOM 节点全都使用同一种模式来描述其 DICOM XML 消息的内容。

DICOMInputDICOMOutput 节点使用同一复杂类型定义 (DICOM)。DICOMFindMove 节点具有名为 FindMove 的复杂类型(用于定义查询的搜索参数)和名为 Results 的复杂类型(用于定义结果消息的结构)。

下表概括了输入终端所期望的复杂类型以及从输出终端发送的复杂类型。

节点 输入终端所期望的复杂类型 从输出终端发送的复杂类型
DICOMInput 节点   DICOM
DICOMOutput 节点 DICOM DICOM
DICOMFindMove 节点 FindMove Results

DICOM 复杂类型是 DICOM 数据元素的有序列表。每个数据元素(称为属性)既可以包含单个值(例如患者姓名),也可以包含元素中其他属性元素的重复序列。每个 DICOM 属性都包含一个名为 Tag 的元素(其中包含 DICOM 标记名称)和一个名为 VR 的元素(其中包含 DICOM 数据类型)。

DICOM XML 消息还包含名为 SourceLocation 的属性。在 DICOMInputDICOMOutput 节点中,使用这些属性来链接到文件系统中的那些未包括在 DICOM XML 消息中的数据(例如像素数据)。Location 属性在 DICOM 根元素中始终存在,并指向发送到 DICOMInput 节点的图像所在的目录。Source 属性选择性地存在于 AttributeItem 元素中,并指定处理目录中包含 DICOM XML 消息中不存在的数据的文件名。例如:
<Attribute Tag="7FE00010" VR="OW" Source="7FE00010"/>

DICOMFindMove 节点使用 FindMove 模式类型来表示 C-FIND 命令的搜索参数。此节点可以返回多个搜索结果。每个结果都由一个 DICOM 元素(DICOMInputDICOMOutput 节点所使用的类型定义)表示。如果搜索参数包含 MoveDestination 元素,那么每个 Results 元素都另外包含一个名为 MoveResults 的 XML 元素。MoveResults 元素指定是否已成功地将 DICOM 图像移至目标。此元素还在 ErrorIDErrorComment 元素中提供了详细的错误信息(如果有)。查询消息可以在 Return 元素中包含特定于供应商的返回标记。如果对 Service Class Provider (SCP) 配置了相关的供应商支持,那么这些标记将包括在响应消息中。

通过使用 DICOMInput 节点特性(排除 DICOM 属性),可以配置要在消息流中排除的数据元素。有关更多信息,请参阅 DICOMInput 节点中的“高级属性”一节。
注: DICOM 模式定义文件 DICOM.xsd 包含在库 DICOMLibrary 中,后者由 Healthcare:从 Web Service 到 DICOM 模式生成。

模式

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns="http://com.ibm.healthcare/DICOM" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://com.ibm.healthcare/DICOM">
  <xsd:element name="DICOM" type="DICOM"/>
  <xsd:element name="Results" type="Results"/>
  <xsd:element name="FindMove" type="FindMove"/>

  <xsd:complexType name="Attribute" mixed="true">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM data attributes.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element maxOccurs="unbounded" minOccurs="0" name="Item" type="Item"/>
    </xsd:sequence>
    <xsd:attribute name="Tag" type="xsd:string"/>
    <xsd:attribute name="VR" type="xsd:string" use="optional"/>
    <xsd:attribute name="Source" type="xsd:string" use="optional"/>
  </xsd:complexType>

  <xsd:complexType name="MoveResults">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM C-MOVE results.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element name="Completed" type="xsd:string"/>
      <xsd:element name="Failed" type="xsd:string"/>
      <xsd:element name="Warnings" type="xsd:string"/>
      <xsd:element name="Status" type="xsd:string"/>
      <xsd:element name="ErrorID" type="xsd:string"/>
      <xsd:element name="ErrorComment" type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Item">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM sequences.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element maxOccurs="unbounded" minOccurs="0" name="Attribute" type="Attribute"/>
    </xsd:sequence>
    <xsd:attribute name="Source" type="xsd:string" use="optional"/>
  </xsd:complexType>

  <xsd:complexType name="DICOM">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM data objects.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element maxOccurs="unbounded" minOccurs="0" name="Attribute" type="Attribute"/>
      <xsd:element minOccurs="0" name="MoveResults" type="MoveResults"/>
    </xsd:sequence>
    <xsd:attribute name="Location" type="xsd:string" use="optional"/>
  </xsd:complexType>

  <xsd:complexType name="Results">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM C-FIND result messages.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element maxOccurs="unbounded" minOccurs="0" name="DICOM" type="DICOM"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="FindMove">
    <xsd:annotation>
      <xsd:documentation xml:lang="en">Defines the schema for DICOM C-FIND query messages.</xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
      <xsd:element minOccurs="0" name="QueryRoot" type="xsd:string"/>
      <xsd:element minOccurs="0" name="QueryLevel" type="xsd:string"/>
      <xsd:element minOccurs="0" name="MoveDestination" type="xsd:string"/>
      <xsd:element minOccurs="0" name="OperationPriority" type="xsd:string"/>
      <xsd:element name="Match">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element maxOccurs="unbounded" name="Attribute" type="Attribute"/>
          </xsd:sequence>
	      </xsd:complexType>
	    </xsd:element>
      <xsd:element minOccurs="0" name="Return">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element maxOccurs="unbounded" minOccurs="0" name="Tag" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>
声明 | 商标 | 下载 | 资料库 | 支持 | 反馈

Copyright IBM Corporation 2011, 2014Copyright IBM Corporation 2011, 2014.

        
        最近一次更新时间
        最近一次更新时间 : 2014-03-20 23:38:26


参考主题参考主题 | V3.0.0.0 | ha05040