JSON to XML (json-to-xml)
JSON to XML ポリシーは、API のコンテキスト・ペイロードを JavaScript Object Notation (JSON) 形式から Extensible Markup Language (XML) 形式に変換するために使用します。
制約事項: JSON to XML ポリシーは、DataPower® Gateway にのみ使用できます。
概要
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 定義を作成する場合は、API Designer アセンブリー・ビューを使用します。
このポリシーは、変換を実行する必要があるポイントのフローに付加する必要があります。例えば、JSON 形式の要求を XML 形式の要求に変換する必要がある場合は、このポリシーを要求フローに付加します。
ポリシーは、message.body のコンテキストが存在する場合は message.body から入力を読み取り、存在しない場合は request.body から入力を読み取って、message.body に出力を書き込みます。
プロパティー
以下の表に、このポリシーのプロパティーをリストします。表には、プロパティーが必須かどうか、入力用の有効な値とデフォルト値、および値のデータ型が示されています。
プロパティー・ラベル | 必須 | 説明 | データ型 |
---|---|---|---|
タイトル | はい | ポリシーのタイトル。 デフォルト値は、json-to-xml です。 |
ストリング |
説明 | いいえ | ポリシーの説明。 | ストリング |
ルート XML エレメント名 (Root XML Element Name) | はい | 結果の XML 文書のルート・エレメント名。このプロパティーが使用されるのは、階層構造になっていない入力 JSON 文書に複数の最上位プロパティーが含まれている場合か、「常にルート・エレメントを出力 (Always output the root element)」チェック・ボックスが選択されている場合だけです。 デフォルト値は json です。 |
ストリング |
常にルート・エレメントを出力 (Always output the root element) | はい | XML 文書を整形式にする必要がない場合であっても、ポリシーで常にルート・エレメントを出力する場合は、このチェック・ボックスを選択します。 デフォルト値は false です。 |
ブール |
例
例えば、以下の単純な JSON オブジェクト
{ "a": { "$" : "hello" } }
は、次のようになります。<a>hello</a>
1 つの属性が指定された以下の JSON オブジェクト
{ "a": { "$" : "hello", "@type" : "world" } }
は、次のようになります。<a type="world">hello</a>