Mule 4 の概要: DataWeave 2.0

DataWeave 2 はほぼ DataWeave 1 のままです。ただし、習得しやすいようにさまざまな点が改善され、新しい機能が追加されています。

演算子は関数

DataWeave 2 では、演算子がすべて関数になりました。このためコード上の括弧が増えるかもしれませんが、曖昧さが減少し、オートコンプリート機能を使用して習得しやすくなります。パラメーターが 2 つある関数はこれまでどおりの構文で機能するため、上級ユーザーは短い構文を使用できます。

DataWeave 1

sizeOf payload filter $.age > 30

DataWeave 2 - 関数構文

sizeOf(filter(payload, (value) → value.age > 30)))

DataWeave 2 - 簡単な構文

sizeOf(payload filter $.age > 30)

特性は関数

DataWeave 1

payload is :empty

DataWeave 2

isEmpty(payload)

型名

DataWeave 2 では型名構文が使用され、型名から ​:​ が除去されます。

DataWeave 1

payload.foo as :string

DataWeave 2

payload.foo as String

XML 形式

DataWeave 2.0 では、​nullValueOn​ リーダープロパティのデフォルト値が ​empty​ です。

DataWeave 1.0 (Mule 3.x に対応) の場合は、以下の例のとおり、この値が ​none​ です。

DataWeave スクリプト
%dw 1.0
%output application/xml nullValueOn="none"
---
payload
入力
<book>
  <name></name>
</book>
出力
<book/>

新機能

以下をはじめとする多数の新機能が導入されています。

  • 再利用可能な関数の入力

  • 複数行のコメント

  • Java コードのコールアウト機能

  • URL エンコードされたマルチパートのテキストリーダーおよびライター

  • モジュールとインポート

  • など