Any |
type Any = Any
|
The top-level type. Any extends all of the system types, which
means that anything can be assigned to a Any typed variable. |
Array |
type Array = Array
|
Array type that requires a Type(T) to represent the elements of the list.
Example: Array<Number> represents an array of numbers, and Array<Any>
represents an array of any type.
Example: [1, 2, "a", "b", true, false, { a : "b"}, [1, 2, 3] ] |
Binary |
type Binary = Binary
|
A blob. |
Boolean |
type Boolean = Boolean
|
A Boolean type of true or false . |
CData |
type CData = String {cdata: true}
|
XML defines a CData custom type that extends from String and is used
to identify a CDATA XML block.
It can be used to tell the writer to wrap the content inside CDATA or to
check if the string arrives inside a CDATA block. CData inherits
from the type String .
Source:
output application/xml --- { "user" : "Shoki" as CData }
Output:
<?xml version="1.0" encoding="UTF-8"?><user><![CDATA[Shoki]]></user>
|
Comparable |
type Comparable = String | Number | Boolean | DateTime | LocalDateTime | Date | LocalTime | Time | TimeZone
|
A union type that represents all the types that can be compared to each other. |
Date |
type Date = Date
|
A date represented by a year, month, and day. For example: |2018-09-17| |
DateTime |
type DateTime = DateTime
|
A Date and Time within a TimeZone . For example: |2018-09-17T22:13:00Z| |
Dictionary |
type Dictionary = { _?: T }
|
Generic dictionary interface. |
Enum |
type Enum = String {enumeration: true}
|
This type is based on the
Enum Java class.
It must always be used with the class property, specifying the full Java
class name of the class, as shown in the example below.
Source:
"Max" as Enum {class: "com.acme.MuleyEnum"}
|
Iterator |
type Iterator = Array {iterator: true}
|
This type is based on the
iterator Java class.
The iterator contains a collection and includes methods to iterate through
and filter it.
Just like the Java class, Iterator is designed to be consumed only once. For
example, if you pass it to a
Logger component,
the Logger consumes it, so it becomes unreadable by further elements in the flow. |
Key |
type Key = Key
|
A key of an Object .
Examples: { myKey : "a value" } , { myKey : { a : 1, b : 2} } ,
{ myKey : [1,2,3,4] } |
LocalDateTime |
type LocalDateTime = LocalDateTime
|
A DateTime in the current TimeZone . For example: |2018-09-17T22:13:00| |
LocalTime |
type LocalTime = LocalTime
|
A Time in the current TimeZone . For example: |22:10:18| |
NaN |
type NaN = Null {NaN: true}
|
java.lang.Float and java.lang.Double have special cases for NaN and Infinit .
DataWeave does not have these concepts for its number multi-precision nature.
So when it is mapped to DataWeave values, it is wrapped in a Null with a Schema marker.
|
Namespace |
type Namespace = Namespace
|
A Namespace type represented by a URI and a prefix. |
Nothing |
type Nothing = Nothing
|
Bottom type. This type can be assigned to all the types. |
Null |
type Null = Null
|
A Null type. |
Number |
type Number = Number
|
A number type: Any number, decimal, or integer is represented by the Number` type. |
Object |
type Object = Object
|
Type that represents any object, which is a collection of Key and value pairs.
Examples: { myKey : "a value" } , { myKey : { a : 1, b : 2} } ,
{ myKey : [1,2,3,4] } |
Pair |
type Pair = { l: LEFT, r: RIGHT }
|
A type used to represent a pair of values.
Introduced in DataWeave 2.2.0. Supported by Mule 4.2 and later. |
Period |
type Period = Period
|
A period. |
Range |
type Range = Range
|
A Range type represents a sequence of numbers. |
Regex |
type Regex = Regex
|
A Java regular expression (regex) type. |
SimpleType |
type SimpleType = String | Boolean | Number | DateTime | LocalDateTime | Date | LocalTime | Time | TimeZone | Period
|
A union type that represents all the simple types. |
String |
type String = String
|
String type
|
StringCoerceable |
type StringCoerceable = String | Boolean | Number | DateTime | LocalDateTime | Date | LocalTime | Time | TimeZone | Period | Key | Binary | Uri | Type<Any> | Regex | Namespace
|
A union type of all the types that can be coerced to String type.
Introduced in DataWeave 2.3.0. Supported by Mule 4.3 and later. |
Time |
type Time = Time
|
A time in a specific TimeZone . For example: |22:10:18Z| |
TimeZone |
type TimeZone = TimeZone
|
A time zone. |
Type |
type Type = Type
|
A type in the DataWeave type system. |
Uri |
type Uri = Uri
|
A URI. |