付録B.2 データ変換処理の概要
データ変換定義ファイルの内容に従ってデータを変換することをサービスプラットフォームのデータ変換処理と呼びます。以降,サービスプラットフォームのデータ変換処理をデータ変換処理と表記します。
データ変換処理では,変換元および変換先のデータ形式によって中間形式化(DOM化)することで変換を実現しています。
ここでは,次のデータ変換処理の流れを説明します。
-
XML形式データの変換
-
バイナリ形式データの変換
-
JSON形式データの変換
-
gRPC電文(Protocol Buffers形式)の変換
(1) XML形式データの変換
XML形式データの変換では,XML形式データを中間形式(DOM)に変換します。この変換をXMLパース処理と呼びます。
XMLパース処理で中間形式化したデータに対して,データ変換定義ファイルの内容に沿った変換処理が行われます。
なお,XMLパース処理は,分岐アクティビティでの条件評価処理など,XML形式データを解析するタイミングでも行われます。
XML形式データの変換の流れを次の図に示します。
|
(2) バイナリ形式データの変換
バイナリ形式データの変換では,バイナリ形式データと中間形式(DOM)を相互に変換します。この変換をバイナリパース処理と呼びます。
バイナリ形式データを中間形式に変換する際,または中間形式からバイナリ形式データに変換する際に,バイナリフォーマット定義ファイルを使用します。
文字列データの型(文字列,整数,実数,固定小数部数値,日付時刻)については,変換時にバイナリフォーマット定義ファイルに指定した文字コードで文字コード変換が行われます。
バイナリパース処理で中間形式化したデータに対して,データ変換定義ファイルの内容に沿った変換処理が行われます。
なお,バイナリパース処理は,分岐アクティビティでの条件評価処理など,バイナリ形式データを解析するタイミングでも行われます。
バイナリ形式データの変換の流れを図に示します。
|
- 注意事項
-
中間形式(DOM)の文字コードはUnicodeになります。このため,Code Converterのユーザマッピングテーブルを使用する場合は,バイナリフォーマット定義ファイルに指定した文字コードと,Unicode(UCS-2)とのユーザマッピングテーブルを定義する必要があります。
例えば,MS932のバイナリ形式のデータから,UTF-8のバイナリ形式のデータへとデータ変換する場合は,MS932→Unicode(UCS-2)のユーザマッピングテーブルを定義してください。
(3) JSON形式データの変換
JSON形式データは,HTTP受付,HTTPアダプタ,Kafka受付,およびKafkaアダプタの処理で,XML形式データとの変換が行われます。
JSON形式データとXML形式データの変換では,中間形式(DOM)化をしないため,実行環境のビジネスプロセス上ではXML形式データとして扱います。
詳細については,次の個所を参照してください。
JSON形式データとXML形式データの変換は,サービスプラットフォームの変換規則に従います。JSONの形式に従っていない場合や,変換規則に従っていない場合はエラーとなります。
具体的な変換規則については,マニュアル「サービスプラットフォーム 開発ガイド 基本開発編」の「11.2 JSON-XML変換の規則」を参照してください。
JSON形式データとXML形式データの変換の流れを次の図に示します。
|
(4) gRPC電文(Protocol Buffers形式)の変換
gRPC電文(Protocol Buffers形式)の変換では,gRPC電文とXML形式データとの変換が行われます。
詳細については,次の個所を参照してください。
gRPC電文(Protocol Buffers形式)とXML形式データの変換の流れを次の図に示します。
|