> For the complete documentation index, see [llms.txt](https://docs.wem.io/platform/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.wem.io/platform/wemreference/functions/concepts/union.md).

# Union

{% hint style="info" %}
The **`Union()`** function produces a concept set with all the concepts from a collection of concept sets and concepts (needs the List() function to combine literal sets and concepts).

Combining concepts and concept sets into a new concept set can also be achieved using addition (+).

[*Read general information about Concepts and Ontology*](/platform/wemmodeler/concepts-and-concept-queries/concepts.md)

This function is NOT SQL compatible. For more information about SQL compatibility, see our [documentation](/platform/wemreference/sql-compatibility.md).
{% endhint %}

{% hint style="success" %}
Returns a new concept set with all concepts provided in the parameter list. This collection can contain concepts from different parents.

Returns <mark style="color:red;">**`Unknown`**</mark> if one of the parameter values is unknown.
{% endhint %}

### Syntax

<details>

<summary><code>Union( List(</code><mark style="color:blue;"><code>concepts | concept_sets</code></mark><code>) )</code></summary>

`Union( List('Colors'.'Orange', 'Colors'.'Red', 'Colors'.'Blue') )`  \
\&#xNAN;*=>Result: { orange, red, blue } as a new concept set*

`Union( [Products.Markets] of [Products] )`\
\&#xNAN;*=>Result: a combination of only the Markets that are stored in multi-select field in Products, for example { 'APAC', 'EMEA', 'CIS', 'LATAM', 'NA'* *}. Using the \[multi-select-field] of \[list] results in a list of concept-sets, so the List() function is not necessary in this case.*

`Union( List(GetChildren('Color'), [AllDevices], 'Status'.'Assigned') )`\
\&#xNAN;*=>Result: a combination of all color-children concepts, all Devices from conceptset and the Assigned status concept.*

*Similar results can be achieved with addition:*

`'Colors'.'Orange' + 'Colors'.'Red' + 'Colors'.'Blue'`

`List(GetChildren('Color') + [AllDevices] + 'Status'.'Assigned'`

</details>

### Parameters

<table><thead><tr><th width="241.70825474075613">Name</th><th width="167">Type</th><th width="150" align="center">Required</th><th width="248.15953250810662">Description</th><th data-hidden>Required?</th></tr></thead><tbody><tr><td><mark style="color:blue;"><code>List(concepts | concept_sets)</code></mark></td><td>A list of concepts and/or concept-sets</td><td align="center"><span data-gb-custom-inline data-tag="emoji" data-code="2611">☑️</span></td><td>a list of separate concepts or concept-sets</td><td>yes</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.wem.io/platform/wemreference/functions/concepts/union.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
