機械翻訳について

実行時の患者更新の統合処理の概要

この項では、患者の更新を処理するためにhandleHL7_MLLP_6200_INBOUND親統合によって起動されるprocessADT_A08子統合における主要なコンポーネント職責の実行時概要を示します。 processADT_A08子統合は、EMRアプリケーションで最初に更新された患者詳細を使用して、FHIR患者リポジトリおよび病理システムを自動的に更新します。

統合の処理

  1. 「RESTアダプタ」トリガー接続(ReceiveMessage)は、handleHL7_MLLP_6200_INBOUND親統合からインバウンド・メッセージを受信します。


    トリガー接続、割当てアクション、マップ・アクションおよびヘルスケア・アクションが表示されます。

    子統合には、同じ名前のマップ・アクションの後にヘルスケア・アクション(ConvertMessage)が含まれます。

  2. ヘルスケア・アクション構成のビューには、「メッセージ参照をドキュメントに変換」操作が選択されていることが示されます。 この操作により、インバウンドHL7ドキュメントがOracle Integration-mappable形式に変換されます。


    ヘルスケア・アクションが示されています。 右側はビュー - 医療措置コール・ページの構成。 「名前」、「説明」、「操作」および「ドキュメント」フィールドが表示されます。

  3. マップ・アクション(ConvertMessage)はマッピングを示します。


    マッパーの左上には3つのアイコンが表示されます。 右上には、開発者アイコン、XSLTアイコンおよび6つのアイコンがあります。 この下には、「ソース」セクション、「マッピング・キャンバス」セクションおよび「ターゲット」セクションがあります。 「ソース」セクションと「ターゲット」セクションの両方に「検索」アイコンがあります。 ソース・ヘルスケア・メッセージ参照要素は、ターゲット・ヘルスケア・メッセージ参照要素にマップされます。

  4. switchアクションの「ルート1」ブランチ内のassignアクション(assignID)は、メッセージ内のFHIR患者IDをチェックします。 IDがある場合は、メッセージから抽出されます。


    ヘルスケア・アクションと切り替えアクションが示されています。 switchアクションが展開され、2つのルートが表示されます: ルート1 (割当アクションを含む)およびその他(割当アクションを含む)。

  5. 抽出されたIDで、患者がFHIR患者リポジトリに存在することを確認するチェックが行われます。


    switchアクションは2つのブランチで構成されます: ルート1には、割当てアクション、マップ・アクション、FHIRアダプタ呼出し、および割当てアクションを含む2番目の切替えアクションが含まれます。 それ以外の場合のルートには、割当てアクションが含まれます。

    次のアクションが実行されます。

    1. 「FHIRアダプタ」 (check4Patient)が呼び出され、患者がFHIRサーバー・リポジトリに存在するかどうかが確認されます。


      FHIR呼出しの「対話の構成」ページには、FHIRスキーマ・ソース、FHIRリソース(患者の値)およびFHIR対話(読取りの値)フィールドが表示されます。

    2. マップ・アクション(check4Patient)は、FHIR患者IDを渡します。


      マッパーの左上には3つのアイコンが表示されます。 右上には、開発者アイコン、XSLTアイコンおよび6つのアイコンがあります。 この下には、「ソース」セクション、「マッピング・キャンバス」セクションおよび「ターゲット」セクションがあります。 「ターゲット」セクションには、両方とも「検索」アイコンが含まれています。 ソースFHIR ID要素は、ターゲットID要素にマッピングされます。

  6. リポジトリで患者IDが見つかった場合、変数はassignアクション(Assignment5)で割り当てられます。
    patientExists = 'TRUE'


    「割当ての構成」パネルには、patientExists = 'TRUE'の値が表示されます。

  7. FHIR IDは、2つのブランチを持つパラレル・アクション(「パラレル」)に渡されます。 パラレル・アクションを使用すると、統合のパスを複数のブランチに分割できます。 各分岐は互いに独立しているため、並行して処理されます。 このユース・ケースでは、両方の外部アプリケーションを更新するためにパラレル・ブランチが提供されます:
    • FHIR患者リポジトリ(ブランチ1)
    • 病理システム(ブランチ2)

FHIR患者リポジトリの更新

  1. パラレル・アクションの最初のブランチには、2つのルートを持つswitchアクションが含まれます。
    • switchアクションの最初のブランチは、新しい患者をFHIR患者リポジトリに追加するかどうかを識別します。 最初のブランチのポップアップ・メッセージは、patientExistsの代入がfalseの場合、患者をFHIR患者リポジトリに挿入することを示します。


      パラレル・アクションが表示されます。 ルート1には、マップ・アクション、起動アクション、マップ・アクションおよび起動アクションを含むスイッチが含まれています。 その下にはルート2。

      次のアクションが実行されます。

      1. 「FHIRアダプタ」 (insertPatient)は、患者をFHIRサーバー・リポジトリに挿入します。


        FHIR呼出しの「対話の構成」ページには、FHIRスキーマ・ソース、FHIRリソース(患者の値)、FHIR対話(作成の値)および「リソースの構成」フィールドが表示されます。

      2. マップ・アクション(insertPatient)は、ターゲット「患者」にマップされている「トランザクション・データ」の下にあるソースHL7メッセージ・ペイロードを示します。


        マッパーの左上には3つのアイコンが表示されます。 右上には、開発者アイコン、XSLTアイコンおよび6つのアイコンがあります。 この下には、「ソース」セクション、「マッピング・キャンバス」セクションおよび「ターゲット」セクションがあります。 「ソース」セクションと「ターゲット」セクションの両方に「検索」アイコンがあります。 ソースPID:PID要素は、ターゲットPatient要素にマップされます。

      3. 展開されたPID:PID要素には、患者名、性別、自宅電話番号などの特定の患者マッピングが表示されます。


        ターゲットPID:PID要素が展開され、マップされたターゲット要素「患者名」、「母の旧姓」、「性別」および「電話番号」が表示されます - Home.

    • switchアクションの2番目のブランチは、既存の患者を更新するかどうかを識別します。 最初のブランチのポップアップ・メッセージは、patientExistsの割当てがtrueと等しい場合、FHIR患者リポジトリで患者を更新することを示します。


      patientExistsがtrueであることを示す「ルート2」アイコンが選択されています。 マップ・アクションとFHIRアダプタ接続はこのルートの一部です。 この下には、ロガー・アクションを含む「その他」ブランチがあります。

    次のアクションが実行されます。

    1. 「FHIRアダプタ」 (updatetPatient)は、FHIRサーバー・リポジトリ内の患者を更新します。


      FHIR呼出しの「対話の構成」ページには、FHIRスキーマ・ソース、FHIRリソース(患者の値)、FHIR対話(更新の値)および「リソースの構成」フィールドが表示されます。

    2. マップ・アクション(updatetPatient)は、ターゲット「患者」にマップされている「トランザクション・データ」の下にあるソースHL7メッセージ・ペイロードを示します。


      マッパーの左上には3つのアイコンが表示されます。 右上には、開発者アイコン、XSLTアイコンおよび6つのアイコンがあります。 この下には、「ソース」セクション、「マッピング・キャンバス」セクションおよび「ターゲット」セクションがあります。 「ソース」セクションと「ターゲット」セクションの両方に「検索」アイコンがあります。 ソースPID:PID要素は、ターゲットPatient要素にマップされます。

    3. 展開されたPID:PID要素には、患者ID、名前、性別、自宅電話番号などの特定の患者マッピングが表示されます。


      ターゲットPID:PID要素が展開され、要素セットID、患者ID、患者識別子リスト、代替患者IDが表示されます - PID、患者名、性別、電話番号 - Home.

  2. 展開されたアクティビティ・ストリームは、患者がすでに存在し、FHIRサーバー・リポジトリで更新されたことを示しています。


    パラレル・アクション・ブランチ1が展開されます。 「Invoke updatePatient」で受信した「Wire Message」という名前のマイルストーンが展開され、患者の更新が成功したことを示すメッセージが表示されます。

病理システムの更新

  1. パラレル・アクションの2番目のブランチは、病理システムを更新します。 EMRアプリケーションではHL7バージョン2.5が使用され、病理システムではHL7バージョン2.3.1が使用されるため、以前のバージョンへのメッセージ変換を実行する必要があります。


    パラレル・アクションのブランチ2には、マップ・アクション、ヘルスケア・アクション、ロガー・アクション、マップ・アクションおよびMLLPアダプタ呼出し接続が含まれます。

  2. 展開されたマッパー(Translate2NativeHL7)には、設計時にユーザーが実行したHL7バージョンの2.5ソースおよびHL7バージョンの2.3.1ターゲット要素のマッピング(患者ID、患者名、生年月日など)が表示されます。


    マッパーの左上には3つのアイコンが表示されます。 右上には、開発者アイコン、XSLTアイコンおよび6つのアイコンがあります。 この下には、「ソース」セクション、「マッピング・キャンバス」セクションおよび「ターゲット」セクションがあります。 「ソース」セクションと「ターゲット」セクションの両方に「検索」アイコンがあります。 ソース取引データ・エレメントは、ターゲット取引データ・エレメントにマッピングされます。

    ドキュメントを病理システムに送信する前に、ヘルスケア・アクションでOracle Integration XML形式からHL7形式に変換する必要があります。

  3. ヘルスケア・アクション(Translate2NativeHL7)構成のビューは、「アウトバウンド・メッセージへの変換」操作が選択されていることを示しています。 この操作により、アウトバウンドXML形式のペイロード・メッセージが、「ドキュメントの選択」フィールドで選択されたHL7バージョンの2.3.1形式のペイロード・メッセージに変換されます。 ヘルスケア・アクションは、MLLPアダプタ呼出し接続に直接渡すヘルスケア・メッセージ参照を生成します。


    ヘルスケア・アクションが示されています。 右側はビュー - 医療措置コール・ページの構成。 「名前」、「説明」、「操作」および「ドキュメント」フィールドのフィールドが表示されます。

  4. 「MLLPアダプタ」呼出し接続(MLLPAdapter_Outbound)は、更新のためにHL7バージョンの2.3.1メッセージを病理システムに送信します。


    パラレル・アクションのブランチ2には、マップ・アクション、ヘルスケア・アクション、ロガー・アクション、マップ・アクションおよびMLLPアダプタ呼出し接続が含まれます。

  5. 展開されたアクティビティ・ストリームのログ出力アクション(logOutboundMessage)は、HL7 2.3.1メッセージが送信されたことを示しています。


    アクティビティ・ストリームには、HL7 V2リクエストの確認済マイルストンが展開されて表示されます。 メッセージが表示されます。

    統合が完了しました。 EMRアプリケーション患者詳細の更新は、FHIR患者リポジトリおよび病理システムで自動的に同期されています。