---
title: "Value References"
canonical: "https://support.appfire.com/space/CDML/649694302/Value%20References"
format: markdown
---
> Macro (aura-html)


## Overview

> Macro (excerpt)
> 
> Value references are placeholders for values stored elsewhere. They allow you to use dynamic information in your workflow.

Value references allow you to add dynamic information and parameter values to your workflow markup – they are placeholders for information that's located somewhere else.

Each time the reference is encountered, for example in a [trigger action](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649858941) or [macro condition](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649694110), the value at that moment in time is retrieved. This means your workflow can dynamically adapt to changing situations.

## Reference types

There are several types of value reference, depending on where the information is stored:

> Macro (children)

## Where can I use them?

Value references are used in macro parameters, sometimes *macro body*, and even [conditions](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649694110). However, actual availability depends on two factors:

- the type of reference determines which macros it can be used in
- the macro used determines which parameters support value references

For a full list of places where value references are used, see [Conditions, Content and Value References](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649957347). But remember it's the reference type and macro which determine the specifics.

Comala Document Management includes

- [get-metadata macro](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649826804) to retrieve the value of a value reference
- [set-metadata macro](https://appfire.atlassian.net/wiki/spaces/CDML/pages/650251172) to create metadata or set a value for a metadata reference
- [workflow parameter references](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649760641) are bespoke value references that are created and defined for a workflow [using workflow builder](https://appfire.atlassian.net/wiki/spaces/CDML/pages/650154373)

[Workflow parameters](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649760641) are used as placeholders for example, for users who are reviewers for approvals; for duration periods for the expiry of your content, or for labels to be added to your documents.

This allows the creation of a workflow that can be used for different teams or projects but these workflow parameters values are set within a space or for a specific document. The values are then retrieved by the workflow on the application of the workflow or a workflow event.

> 📝 A default value can be set for each workflow parameter when it is defined in the workflow. This default value of a workflow parameter can be changed on a workflow event such as applying the workflow. A value can be retrieved from the [space parameters dashboard](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649726501) (on workflow application); by a user on application of the workflow ([if parameter is editable](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649792431)) or using the [set-metadata macro](https://appfire.atlassian.net/wiki/spaces/CDML/pages/650251172) in a workflow trigger on a workflow event.

## Value reference retrieval order

If a named value reference is requested, for using the [get-metadata macro](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649826804), then the value reference is resolved in the following order:

> Macro (excerpt)
> 
> 1. Comala Metadata which include [workflow parameters](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649760641) with `edit=true` that have been saved and metadata set using Comala Document Management [set-metadata macro](https://appfire.atlassian.net/wiki/spaces/CDML/pages/650251172)
> 2. Confluence page properties macro
> 3. Communardo Metadata
> 4. Workflow parameters saved at the space level - without `edit=true`
> 5. Page references
> 6. Suppliers (ServiceRocket, Workflows, Metadata)

This order is important when there are conflicts in value reference names.

## Basic example

In your workflow, you might need to refer to the author of a piece of content. You won't know this information in advance.

To get around this problem, use the `@author@` value reference, which is one of the references that the app creates and updates automatically. When a macro that uses the reference is activated, the reference value is replaced with the username of the person who most recently created or edited the content.

```plaintext
{workflow:Value references}
   {state:Editing|submit=Review}
   {state}
   {state:Review|approved=Published|rejected=Editing}
      {approval:Review}
   {state}
   {state:Published|final=true|updated=Editing}
   {state}
   {trigger:pageapproved|approval=Review|partial=true}
      {send-email:@user@|Subject=Your recent @approvalname@ approval} 
         Thank you for approving @page@ which was created by @author@ 
      {send-email}
   {trigger}
{workflow}
```

## All examples

> Macro (contentbylabel)

## See also

[Workflow Authoring Guide](https://appfire.atlassian.net/wiki/spaces/CDML/pages/648611901)

- [Actions](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649858941)
- [Conditions](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649694110)
- [Events](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649759655)
- [Reviews](https://appfire.atlassian.net/wiki/spaces/CDML/pages/650153766)
- [States](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649595551)
- [Triggers](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649563178)

[Integration Guides](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649396230)

- [Metadata, Forms and Reporting Integrations](https://appfire.atlassian.net/wiki/spaces/CDML/pages/649888421)