Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

C-CDA 2.1 ドキュメントの前処理

インターシステムズの医療製品では、XSLT 1.0 を使用した C-CDA 2.1 から SDA へのインポート変換をサポートしています。XSLT 2.0 を使用した C-CDA 2.1 から SDA への変換はサポートしていません。

C-CDA 2.1 のサポートに関連するインポート機能の強化の 1 つとして、インポート用の変換を実行する前に C-CDA 入力ファイルを前処理する機能が追加されました。 前処理サポートの導入により、変換が大幅に簡素化され、変換に要する合計処理時間が削減されます。

考えられるユース・ケースは次の 2 つです。

  • 要素がない、またはその形式が正しくない

  • 日付スタンプの変換

C-CDA を前処理して句読点を取り除き、特定の要素に必要な子ノードを追加する方法、およびプリプロセッサ変換のサンプル・コード、トップレベル変換の変更、入力ファイルの詳細は、InterSystems Developer Community の記事 "C-CDA 2.1 からインポートトランスフォーメーションを実行する際の前処理サポートOpens in a new tab" を参照してください。

一般に、以下のような手順になります。

  1. 組織のドメイン名の管理者の協力を得て、コード拡張に使用するサブドメイン名を取得します。

  2. 前処理のカスタム・モードに使用するプレフィックスと名前を選択します。

  3. XSL プリプロセッサを作成します。

    • stylesheet 要素は以下の形式にします。

      <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" xmlns:hl7="urn:hl7-org:v3" xmlns:custom_mode_prefix="<subdomain>" exclude-result-prefixes="hl7 <custom_mode_prefix>"></xsl:stylesheet>

      カスタム・モードのプレフィックスを含めることに注意してください。

    • トップレベルの要素を複製してすべての属性、要素、テキスト・ノードをコピーするテンプレートを含めます。両方のテンプレートで、カスタム・モードを使用する必要があります。

    • C-CDA の変更ごとにテンプレートを作成します。これらのテンプレートでもカスタム・モードを使用する必要があります。

  4. XSL プリプロセッサを ../CDA-Support-Files/Import/ にコピーします。

  5. CCDAv21-to-SDA.xsl または CCDAv21-nonXML-to-SDA.xsl を複製し、以下のように変更して、カスタムのトップレベル変換を作成します。

    • stylesheet 要素にカスタム・ネームスペースを含めます。

    • XSL プリプロセッサのパス名を指定する include 文を追加します。

    • 次の行を見つけます。

      <xsl:variable name="input" select="/hl7:ClinicalDocument"/>

      これを次のブロックに置き換えます。

      <xsl:variable name="inputRTF">

      <xsl:apply-templates select="/hl7:ClinicalDocument" mode="<custom_mode_prefix>:<mode>"/>

      </xsl:variable>

      <xsl:variable name="input" select="exsl:node-set($inputRTF)/hl7:ClinicalDocument"></xsl:variable>

  6. プロダクションで、C-CDA > SDA 変換用のファイル入力を取るビジネス・サービスを見つけます。

  7. そのサービスの InputXSL という追加設定の値を、カスタムのトップレベル変換のファイル名に設定します。

  8. C-CDA ファイルを通常どおりにインポートします。

FeedbackOpens in a new tab