{/* Licensed to the Apache Software Foundation (ASF) under one */}
{/* or more contributor license agreements. See the NOTICE file */}
{/* distributed with this work for additional information */}
{/* regarding copyright ownership. The ASF licenses this file */}
{/* to you under the Apache License, Version 2.0 (the */}
{/* "License"); you may not use this file except in compliance */}
{/* with the License. You may obtain a copy of the License at */}
{/*  */}
{/* http://www.apache.org/licenses/LICENSE-2.0 */}
{/*  */}
{/* Unless required by applicable law or agreed to in writing, */}
{/* software distributed under the License is distributed on an */}
{/* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY */}
{/* KIND, either express or implied. See the License for the */}
{/* specific language governing permissions and limitations */}
{/* under the License. */}

import { Meta, Story, Canvas } from "@storybook/blocks";

<Meta title="Boxed Expressions/Overview" />

# Boxed Expressions

A boxed expression in DMN is defined as a graphical notation for all decision logic. This notation is
used to decompose the decision logic into small pieces that can be associated with the DRG artifacts.
The combination of the DRG with the boxed expressions forms a complete and mostly graphical language [1].

The boxed expressions are defined recursively, meaning that some boxed expressions can contain another
boxed expression. The top level of a boxed expression corresponds to the decision logic of a single DRG artifact,
and this boxed expression will have a header with the DRG artifact name and type.

Currently, the following boxed expressions are supported:

- [Context](/docs/boxed-expressions-context--overview)
- [Decision Table](/docs/boxed-expressions-decision-table--overview)
- [Function](/docs/boxed-expressions-function--overview)
- [Invocation](/boxed-expressions-invocation--overview)
- [List](/docs/boxed-expressions-list--overview)
- [Literal](/docs/boxed-expressions-literal--overview)
- [Relation](/docs/boxed-expressions-relation--overview)
- [Conditional](/docs/boxed-expressions-conditional--overview)
- [Filter](/docs/boxed-expressions-filter--overview)
- [Every](/docs/boxed-expressions-every--overview)
- [For](/docs/boxed-expressions-for--overview)
- [Some](/docs/boxed-expressions-some--overview)

## Reference

[1] [DMN 1.4 Spec](https://www.omg.org/spec/DMN/1.4/Beta1/PDF#page=103)
