機械翻訳について

Healthcare統合の設計のベスト・プラクティス

最適な医療統合を設計するための次のベスト・プラクティスに注意してください。

単一のHL7インバウンド・メッセージを処理する子統合を起動するための親ルーティング統合の作成

様々なHL7インバウンド・メッセージ・タイプを受信する統合を設計できます。 たとえば:
  • ADT_A05 (患者を事前承認)
  • ADT_A08 (患者情報の更新)
  • ADT_A09 (患者出発 - トラッキング)

ベスト・プラクティスとして、各プロセスが単一のHL7インバウンド・メッセージ・タイプを処理する子統合を起動する親ルーティング統合をビルドします。 この例では、3つの子統合を作成します。 ルーティング・アクション(for-eachアクションやswitchアクションなど)を使用して各メッセージを処理する単一の統合を作成しないでください。

バイナリ形式をリクエスト・ペイロードとして受け入れることができる「RESTアダプタ」トリガー接続を使用して、子統合を作成します。 mimeタイプとしてデフォルトのapplication/octet-streamを選択します。 「ヘルスケア・アクション」のコールから戻されるメッセージ参照オブジェクトを子統合に渡します。 「実行時にインバウンドHL7メッセージを受信する統合の概要」を参照してください。

マッパーの参照関数を使用した起動する子統合の選択

マッパーの参照関数を使用して、起動する子統合を選択します。 メッセージおよびメッセージ・タイプに基づいて、ルックアップ関数は、起動する統合の名前(「統合コード」)および統合のバージョン(「統合バージョン」)を返します。


マッパーの「ソース」、「マッピング」キャンバスおよび「ターゲット」セクションが表示されます。 ターゲット統合コードが選択され、コールされる参照値機能コードが表示されます。

ルックアップ表で、受信した特定のインバウンド・メッセージに基づいて、特定の統合が起動されます。


「参照」表には、参照を削除するための列、DocumentDefinition、ChildProcessorIdentifierおよびChildProcessorVersionが表示されます。 右上隅に「保存」ボタンが表示されます。 表の右端にプラス記号が表示されます。

ヘルスケア処理で選択されていないインバウンド・メッセージに対処するためのフォルト処理の追加

ヘルスケア・アクションは過失を招くものではありません。 メッセージのフォルトを捕捉するには、統合にフォルト処理ロジックを設計する必要があります。 たとえば、次の統合を設計して、HL7アプリケーションからインバウンド・メッセージを受信するとします:


統合には、マップ処理、ヘルスケア処理、割当処理、マップ処理および統合処理が表示されます。

ヘルスケア処理では、翻訳用に次の2つのインバウンド・メッセージ・タイプを選択します:
  • ADT_A08 (患者情報の更新)バージョン2.5
  • ADT_A08 (患者情報の更新)バージョン2.3.1


ヘルスケア・アクション・ダイアログには、「名前」フィールド、「説明」フィールド、「操作」フィールドおよび「メッセージの選択」セクションが表示され、「使用可能」フィールドと「選択済」フィールドが含まれます。 2つの文書が選択されました: ADT_A08バージョン2.5およびADT_A08バージョン2.3.1。

ヘルスケア・アクションがHL7アプリケーションからインバウンドADT_A04 (患者の登録)メッセージも受信するとします。 このメッセージ・タイプはヘルスケア処理で選択されていないため、Oracle Integrationペイロードに変換できません。 ADT_A04メッセージ・タイプはヘルスケア・アクションを介して渡されますが、後続のマップ・アクションでエラーが発生して失敗します。


ソースの「エラー」要素には、「エラー・コード」および「エラー摘要」要素が表示されます。

ベスト・プラクティスとして、次のブランチ・ロジックを使用して、ヘルスケア処理の直後にマップ処理の前にスイッチ処理を追加して設計します:
  • ルート1: ヘルスケア・アクションでメッセージが選択されていない場合は、独自のフォルト処理ロジックを使用して、そのブランチ内のフォルトに対処します。 たとえば、未計画のメッセージが受信されたことを通知する電子メールをインバウンドHL7アプリケーションに送信する通知アクションを追加します。
  • それ以外: メッセージがヘルスケア処理で選択されている場合は、そのメッセージをOracle Integrationペイロードに変換し、マッピングを実行し、子統合をコールしてさらに処理してアウトバウンド・アプリケーション・エンドポイントに配信します。

将来の計画Oracle Integration for Healthcare更新

ハンドラ統合から子(プロセッサ)統合への呼出しに使用する共通インタフェース・ペイロードが提供されます。 このJSONドキュメントは、ハンドラとプロセッサ統合の間の契約を形成します。
<strong>{
    "document-standard": "HL7V2",
    "document-version": "2.3.1",
    "document-type": "ADT_A01",
    "document-definition": "HL7V2_ADT_A01",
    "message": [
        {
            "healthcare-message-reference": "clm:base64_meta.base64_payload1",
            "message-tracking-id": "123"
        },
        {
            "healthcare-message-reference": "clm:base64_meta.base64_payload2",
            "message-tracking-id": "abc"
        }
    ]
}</strong>

子統合でのこのJSONメッセージの使用は必須ではありません。 ただし、このメッセージを使用すると、将来の潜在的な機能を利用できます。 このJSONメッセージを子統合の契約として現在使用している場合、将来は変更が必要ないという考え方があります。 新しいハンドラ統合を作成する必要はありません。 着信HL7メッセージは、ルーティング・ルールに基づいて適切なプロセッサ統合にルーティングされます。 このためには、このJSONペイロードを使用して統合をビルドする必要があります。

このペイロードは、メッセージに関するメタデータを提供し、バッチ・メッセージもサポートする機能を提供します。 操作「インバウンド・メッセージの照合および翻訳」をコールするときにヘルスケア処理から返されたデータを使用して、このデータをマップします。 このマッピングの例を次に示します。


ソースMLLPインバウンド・メッセージは、ターゲットのローカル呼出しにマップされます。 ソースMsgグループ要素は、ターゲット・コンポーネント・スキーマ・リクエスト・ラッパーにマップされます。