Question 1: Basic String Manipulation
Input:
{ "name": "John Doe"}DataWeave Script:
%dw 2.0output application/json---{ "name": upper(payload.name)}Output:
{ "name": "JOHN DOE"}Question 2: Filtering an Array
Input:
[ {"id": 1, "value": 10}, {"id": 2, "value": 20}, {"id": 3, "value": 30}]DataWeave Script:
%dw 2.0output application/json---payload filter ((item) -> item.value > 15)
Output:
[ {"id": 2, "value": 20}, {"id": 3, "value": 30}]Question 3: Transforming an Object
Input:
{ "firstName": "John", "lastName": "Doe"}DataWeave Script:
%dw 2.0output application/json---{ "fullName": payload.firstName ++ " " ++ payload.lastName}Output:
{ "fullName": "John Doe"}Question 4: Nested Object Access
Input:
{ "user": { "name": "Alice", "age": 30 }}DataWeave Script:
%dw 2.0output application/json---payload.user.name
Output:
"Alice"
Question 5: Map Over an Array
Input:
[1, 2, 3, 4]
DataWeave Script:
%dw 2.0output application/json---payload map ((item) -> item * 2)
Output:
[2, 4, 6, 8]
Question 6: Combining Arrays
Input:
[[1, 2, 3], [4, 5, 6]]
DataWeave Script:
%dw 2.0output application/json---payload[0] ++ payload[1]
Output:
[1, 2, 3, 4, 5, 6]
Question 7: Conditional Logic
Input:
{ "age": 20}DataWeave Script:
%dw 2.0output application/json---if (payload.age >= 18) "Adult" else "Minor"
Output:
"Adult"
Question 8: Date Formatting
Input:
"2023-01-01T00:00:00Z"
DataWeave Script:
%dw 2.0output application/json---payload as Date {format: "yyyy-MM-dd'T'HH:mm:ssz"} as String {format: "MM/dd/yyyy"}Output:
"01/01/2023"
Question 9: Splitting Strings
Input:
"apple,banana,cherry"
DataWeave Script:
%dw 2.0output application/json---payload splitBy ","
Output:
["apple", "banana", "cherry"]
Question 10: Combining Objects
Input:
[{"name": "John"}, {"age": 30}]DataWeave Script:
%dw 2.0output application/json---payload[0] ++ payload[1]
Output:
{ "name": "John", "age": 30}Question 11: Flattening an Array of Arrays
Input:
[[1, 2], [3, 4], [5, 6]]
DataWeave Script:
%dw 2.0output application/json---flatten(payload)
Output:
[1, 2, 3, 4, 5, 6]
Question 12: String Length
Input:
"Hello, World!"
DataWeave Script:
%dw 2.0output application/json---sizeOf(payload)
Output:
13
Question 13: Array with Object Mapping
Input:
[ {"name": "John", "age": 30}, {"name": "Jane", "age": 25}]DataWeave Script:
%dw 2.0output application/json---payload map ((item) -> item.name)
Output:
["John", "Jane"]
Question 14: Finding an Object
Input:
[ {"id": 1, "name": "John"}, {"id": 2, "name": "Jane"}]DataWeave Script:
%dw 2.0output application/json---(payload filter ((item) -> item.id == 1))[0]
Output:
{"id": 1, "name": "John"}Question 15: Joining Strings
Input:
["Data", "Weave", "is", "awesome"]
DataWeave Script:
%dw 2.0output application/json---payload joinBy " "
Output:
"Data Weave is awesome"]]>