---
schema_version: "1"
id: d175725815bb72a82a3972ecffca574e15ea649e66cc62b45b40f3cf60331978
title: Types Types (dw::core::Types)
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/dataweave/2.9/dw-types-types.md
canonical_url: https://docs.mulesoft.com/dataweave/2.9/dw-types-types
source_site: docs.mulesoft.com
content_type: documentation
content_hash: dc88560ca97e531026e9813ae34f069611bb3e055da47b6c9409d0f9799360c7
description: MuleSoft Documentation Site
release: "2.9"
latest: false
---
---
product: DataWeave
version: 2.9
---

# Types Types (dw::core::Types)

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

<table><colgroup><col> <col> <col></colgroup><thead><tr><th>Type</th><th>Definition</th><th>Description</th></tr></thead><tbody><tr><td><p>Attribute</p></td><td><div><div><p><code>type Attribute = { name: QName, required: Boolean, value: Type }</code></p></div></div></td><td><div><div><p>Represents an Attribute definition that is part of an Object field Key.</p></div><div><p><em>Introduced in DataWeave version 2.3.0.</em></p></div></div></td></tr><tr><td><p>Field</p></td><td><div><div><p><code>type Field = { key: { name: QName, attributes: Array&lt;Attribute&gt; }, required: Boolean, repeated: Boolean, value: Type }</code></p></div></div></td><td><div><div><p>Represents a Field description that is part of an Object.</p></div><div><p><em>Introduced in DataWeave version 2.3.0.</em></p></div></div></td></tr><tr><td><p>FunctionParam</p></td><td><div><div><p><code>type FunctionParam = { paramType: Type, optional: Boolean }</code></p></div></div></td><td><div><div><p>Represents a Function parameter that is part of a Function type.</p></div><div><p><em>Introduced in DataWeave version 2.3.0.</em></p></div></div></td></tr><tr><td><p>QName</p></td><td><div><div><p><code>type QName = { localName: String, namespace: Namespace | Null }</code></p></div></div></td><td><div><div><p>Represents a Qualified Name definition with a <code>localName</code> (a string) and a <code>namespace</code>. If the QName does not have a Namespace, its value is <code>null</code>.</p></div><div><p><em>Introduced in DataWeave version 2.3.0.</em></p></div></div></td></tr></tbody></table>
