JSON to XML

JSON to XML ポリシーは、API のコンテキスト・ペイロードを JavaScript Object Notation (JSON) 形式から Extensible Markup Language (XML) 形式に変換するために使用します。

ゲートウェイのサポート

表 1. このポリシーをサポートするゲートウェイと、対応するポリシーのバージョンを示す表
ゲートウェイ ポリシーのバージョン
DataPower® Gateway (v5 互換) 1.0.0
DataPower API Gateway 2.0.0

このトピックでは、アセンブリー・ユーザー・インターフェースでのポリシーの構成方法について説明します。OpenAPI ソースでのポリシーの構成方法について詳しくは、json-to-xmlを参照してください。

概要

JSON to XML ポリシーでは、BadgerFish に基づく単純な規則を使用して、API コンテキスト・ペイロードが JSON から XML に変換されます。このポリシーは、JSON 入力が BadgerFish 規則と同じ形式であることを予期するため、構造は XML で再作成できます。追加の構成は不要です。BadgerFish 規則について詳しくは、BadgerFish を参照してください。
注: JSON to XML ポリシーは、JSON 構造 { "a" : "hello" } (BadgerFish 規則ではない構造) を <a>hello</a> に変換します。
このポリシーを以下の API フローに付加できます。
  • REST
  • SOAP

組み込みポリシーをフローに追加するために API 定義を作成する場合は、IBM® API Connect API Manager アセンブリー・ビューを使用します。

このポリシーは、変換を実行する必要があるポイントのフローに付加する必要があります。例えば、JSON 形式の要求を XML 形式の要求に変換する必要がある場合は、このポリシーを要求フローに付加します。

ポリシーは、message.body のコンテキストが存在する場合は message.body から入力を読み取り、存在しない場合は request.body から入力を読み取って、message.body に出力を書き込みます。

プロパティー

以下の表に、このポリシーのプロパティーをリストします。表には、プロパティーが必須かどうか、入力用の有効な値とデフォルト値、および値のデータ型が示されています。

表 2. ポリシーのプロパティー
プロパティー・ラベル 必須 説明 データ型
タイトル はい ポリシーのタイトル。

デフォルト値は、json-to-xml です。

ストリング
説明 いいえ ポリシーの説明。 ストリング
DataPower API Gateway のみ入力 いいえ 変換する入力メッセージ。API コンテキストの変数の名前を指定します。 variableName.body (メッセージ・ペイロード) が、変換対象の JSON 入力を表します。この変数のデフォルト値は message であり、message.body がデフォルトの入力です。 ストリング
DataPower API Gateway のみ出力 いいえ 変換結果を保管するための出力メッセージ。API コンテキストの変数の名前を指定します。 variableName.body が、JSON 形式から XML 形式への変換の結果を表します。指定された入力メッセージがデフォルトのメッセージである場合、デフォルトの出力は message.body です。それ以外の場合、例えば、入力メッセージが変数 my-message-variable である場合は、デフォルトの出力は my-message-variable.body となります。

変数を、API コンテキストの読み取り専用にすることはできません。

ストリング
DataPower API Gateway のみ変換のタイプ いいえ 出力のターゲット形式を決定する変換タイプ。使用可能なオプションは次のとおりです。
  • None: 出力の変換が行われません。
  • badgerFish: BadgerFish 規則は、出力のターゲット変換形式を決めるために使用されます。
ストリング
ルート XML エレメント名 (Root XML Element Name) はい 結果の XML 文書のルート・エレメント名。このプロパティーが使用されるのは、階層構造になっていない入力 JSON 文書に複数の最上位プロパティーが含まれている場合か、「常にルート・エレメントを出力 (Always output the root element)」チェック・ボックスが選択されている場合だけです。

デフォルト値は json です。

ストリング
常にルート・エレメントを出力 (Always output the root element) はい XML 文書を整形式にする必要がない場合であっても、ポリシーで常にルート・エレメントを出力する場合は、このチェック・ボックスを選択します。

デフォルト値は false です。

ブール
JSON 配列エレメントのエレメント名 いいえ JSON 配列エレメントに使用される XML エレメント名です。 ストリング

例えば、以下の単純な JSON オブジェクト
{ "a": { "$" : "hello" } }
は、次のようになります。
<a>hello</a>
1 つの属性が指定された以下の JSON オブジェクト
{ "a": { "$" : "hello", "@type" : "world" } }
は、次のようになります。
<a type="world">hello</a>
タイム・スタンプ・アイコン 最終更新: 2019 年 6 月 7 日