Course Overview
Advance your DataWeave skills beyond those taught in Development: Fundamentals to build complex transformations.
What you’ll learn
When you complete this course, you will be able to:
- Write generalized and reusable transformations using variables, functions, DataWeave modules.
- Use the DataWeave Playground to test and author DataWeave code.
- Build complex transformations from smaller testable steps.
- Build more robust and testable functions and expressions using strong typing, match operators, error handling, and logging.
- Create, transform, filter, combine, shuffle, select from, and reduce complex data structures that include nested arrays, objects, and arrays of objects.
- Recursively replace or format every element or a list of elements in a nested schema.
- Reduce arrays to other data structures or data types and calculate key performance indicators.
Requirements
- This course is for Mule 4 developers or architects who want to advance their DataWeave skills beyond those taught in the Anypoint Platform Development: Fundamentals course so that they can build complex transformations. Prerequisites: Experience developing Mule 4 applications as demonstrated by one of the following: A current MuleSoft Certified Developer - Level 1 certification Completion of the Anypoint Platform Development: Fundamentals course Completion of the Anypoint Platform Development: Mule 4 for Mule 3 Users course A basic knowledge of functional programming Note: If you are new to functional programming, read An introduction to functional programming in JavaScript.
Target audiences
- This course is for Mule 4 developers or architects who want to advance their DataWeave skills beyond those taught in the Anypoint Platform Development: Fundamentals course so that they can build complex transformations.
Curriculum
- 1 Section
- 8 Lessons
- 2 Days
Expand all sectionsCollapse all sections
- Topics8
- 1.1Lessons and Topics Applying DataWeave fundamentals Review and apply DataWeave fundamentals as learned in the Anypoint Platform Development: Fundamentals course Set example input to preview DataWeave results in Anypoint Studio Chain together two argument functions by using infix notation Filter, order, and group elements of an object or array Retype DataWeave expressions in the middle of code execution
- 1.2Organizing an reusing DataWeave code Organize DataWeave code into variables and functions Enclose variables and functions in do statement scopes Pass functions and lambda expressions as arguments to other DataWeave functions Create and use reusable DataWeave modules
- 1.3Writing more defensive and more robust DataWeave Write more defensive DataWeave expressions that filter and route data based upon conditions Write more robust functions using a match operator to test for data types Handle and raise errors Log from inside DataWeave expressions
- 1.4Constructing arrays and objects Add components to and remove elements from arrays and objects Construct objects from lists of DataWeave expressions by using object constructor curly braces { } Troubleshoot common issues when using object constructor curly braces { }
- 1.5Iteratively mapping and joining arrays and objects Combine objects and arrays into nested data structures by using map and mapObject functions Extract an array of keys and/or values from an object by using the pluck function Extract an array of keys and/or values from an object by using the DataWeave core Arrays module functions Conditionally join together two nested schema by using the join function
- 1.6Updating inside nested data structures Conditionally update and mask parts of nested data structures Format and transform nested data structures by using recursive functions
- 1.7Reducing data from arrays Conditionally test, count, and sum up elements of an array by using the DataWeave core Arrays module Reduce and accumulate array elements to other output types by using the reduce function Calculate key performance indicators from input collections by using the reduce function
- 1.8Setup requirements A computer with at least 8-16 GB available RAM (16 highly recommended), 2GHz CPU, and 10GB available storage Internet access to port 80 (with > 5Mbps download and > 2Mbps upload) Anypoint Studio 7.14.0 or later with embedded Mule runtime Advanced REST Client (or any other REST client application)

