注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

XML をスキーマとして解析する

対応している状況: バッチ、ストリーミング

指定されたスキーマ定義に従って XML 文字列を解析し、スキーマにないフィールドは無視します。 式のカテゴリー: ファイル、ストラクト

宣言された引数

  • スキーマ - XML 文字列を解析する際に使用されるスキーマ定義。
    Type<Struct>
  • Xml - 解析する XML 文字列。
    Expression<String>
  • オプション 属性プレフィックス - タグの属性に対するプレフィックス。
    Literal<String>
  • オプション 値タグ - 子要素がない要素内に属性がある場合の値に使用されるタグ。
    Literal<String>

出力タイプ: ストラクト

例 1 - 基本ケース

引数の値:

  • スキーマ: Struct<id, airport<id, miles>>
  • Xml: xml
  • 属性プレフィックス: null
  • 値タグ: null
xml:arrow_right:出力
<id>XB-112</id>
<airport>
  <id>JFK</id>
  <miles>2000</miles>
</airport>

| | {
airport: {
id: JFK,
miles: 2000,
},
id: XB-112,
} |


例 2 - Null ケース

説明: 入力 XML に要求されたフィールドが欠けている場合、そのフィールドは null になります。 引数の値:

  • スキーマ: Struct<id, airport<id, miles>>
  • Xml: xml
  • 属性プレフィックス: null
  • 値タグ: null
xml:arrow_right:出力
<id>XB-112</id>
<airport>
  <id>JFK</id>
</airport>

| | {
airport: {
id: JFK,
miles: null,
},
id: XB-112,
} |


例 3 - Null ケース

説明: 要求されたスキーマが小さすぎる場合、スキーマ内のフィールドのみが解析されます。 引数の値:

  • スキーマ: Struct<id>
  • Xml: xml
  • 属性プレフィックス: null
  • 値タグ: null
xml:arrow_right:出力
<id>XB-112</id>
<airport>
  <id>JFK</id>
</airport>

| | {
id: XB-112,
} |


例 4 - Null ケース

説明: 属性名の前に属性プレフィックスを置くことで、属性を読み取ることができます。 引数の値:

  • スキーマ: Struct<id, airport<_id, miles>>
  • Xml: xml
  • 属性プレフィックス: _
  • 値タグ: null
xml:arrow_right:出力
XB-112
  <miles>2000</miles>
</airport>

| | {
airport: {
_id: JFK,
miles: 2000,
},
id: XB-112,
} |