Ensemble による HL7 バージョン 3 のサポート
Health Level Seven (HL7) の以前のバージョンと異なり、HL7 バージョン 3.0 はメッセージに XML エンコードのみを使用します。これは HL7 バージョン 2.x からの大きな飛躍であり、独自の課題がいくつかあります。
このドキュメントでは、ルーティング・エンジンとして Ensemble を使用し、HL7 バージョン 3.0 メッセージをアプリケーションから別のアプリケーションにルーティングする方法について説明します。このドキュメントでは、Ensemble データ変換で XPath 式と XSLT 式の組み合わせを使用して、これらのメッセージの XML コンテンツを変換する方法について説明します。
以下の図に、HL7 インタフェース・ルーティング・エンジンとして機能する Ensemble プロダクションでの HL7 バージョン 3.0 メッセージのフローを示します。
HL7 バージョン 3.0 メッセージは、Ensemble HL7 ルーティング・プロダクションの要素を以下の順に通過します。
-
HL7 ビジネス・サービスは、HL7 メッセージを受け入れるよう構成されている特定のソース・アプリケーションからの受信データ・ストリームを受け取ります。HL7 ビジネス・サービスは、受信データ・ストリームから XML ドキュメントを生成し、そこから、メッセージのルーティングおよび変換に必要な情報を抽出します。
-
ビジネス・サービスは、関連するデータを Ensemble メッセージにパッケージ化し、特定のHL7 ルーティング・プロセスに送信します。これは、HL7 バージョン 3.0 メッセージを Ensemble 外に配信できるように準備する、特定用途の Ensemble ビジネス・プロセスです。
-
ルーティング・プロセスによって XML ドキュメント構造が検証されます。検証に失敗すると、ルーティング・プロセスはメッセージを不正メッセージ・ハンドラに渡します。これは、インタフェースによって解析できなかった受信 HL7 メッセージを廃棄する HL7 ビジネス・オペレーションです。通常、分析できるようにメッセージをファイルに保存することによってメッセージを廃棄します。
-
検証に成功すると、HL7 ルーティング・プロセスは、ルーティング・ルール・セットを Ensemble メッセージに適用します。ルーティング・ルール・セットは、以下を決定するロジックを提供します。
-
メッセージの送信先
-
メッセージ・データを送信する前に変換する必要があるかどうか
-
-
各データ変換は XPath を使用してデータ・ストリーム内の適切なフィールドを探し、次に XSLT を使用して必要に応じてフィールドを変換し、結果を新しい XML ドキュメントに書き込みます。
-
ルーティング・プロセスは、新しい XML ドキュメントを含む Ensemble メッセージを、適切な HL7 ビジネス・オペレーションに渡します。ビジネス・オペレーションは、Ensemble メッセージのルーティング・プロパティを使用して、新しい XML ドキュメントをターゲットのアプリケーションに送信データ・ストリームとして送信します。
より詳しい背景情報として、"Ensemble のベスト・プラクティス" では、Ensemble プロダクションの編成および開発に最も適した現実的手法を紹介しています。このドキュメントには、HL7 バージョン 3.0 メッセージやその他の EDI 形式ドキュメントをルーティングするプロダクションなど、すべてのプロダクションに適用される情報が記載されています。
"Ensemble のベスト・プラクティス" の有用な続編として、"Ensemble プロダクションの開発" では、Ensemble 開発の具体的な実用的手法について詳しく説明しています。