This page details the various domain prefixes used in Appian. Domain prefixes appear before the identifying name of certain functions, rules, data, etc. Between the prefix and name is an exclamation mark
!, also referred to as a 'bang'.
Domain prefixes serve a couple of purposes:
Domain prefixes are used anywhere someone can create an expression. However, certain prefixes are only used in certain contexts.
Best Practice: With the exception of the
fn! domain designers should always uses domain prefixes in their expressions.
After entering a domain prefix in an expression, a type ahead will begin to suggest the best matched function, object, or data point.
There are two function domain prefixes in Appian:
a! is used to call various system, smart service, and connector functions as well as interface components. While
a! should always be used to call one of these functions or components,
fn! does not need to be.
Rule-based objects also have a domain prefix. These include:
Stored data values can be invoked with domain prefixes as well. Of these data prefixes, certain are specific to one object type while others can be used in many
The following data prefixes can be used in multiple object types in Appian.
ri!Rule-based objects, like expression rules, interfaces, and decisions, let designers create rule inputs, which are invoked using the
The following prefixes can only be invoked in certain cases: within an object's expression editors (like process models or record types).
Do not reference these prefixes outside of their intended location. For example, do not try to use
rf! directly on an interface. Instead create a rule input for those values and pass data in through the rule input.
Process models have several out-of-the-box domain prefixes that can be used from expression editors within the Process Modeler.
Record types have three domain prefixes that can be used to retrieve certain record data and properties.
rsp!Exclusively used with expression-backed records.
Web APIs use the
http! prefix to expose certain http properties when someone calls that web API.
Test cases in Expression rules can use
test!output to create test assertions based on the test's output.
Within certain functions, properties of that function can be called by using the following prefixes:
local!Through the load() and with() functions designers can create local variables and call those local variables using the
fv!used within certain functions and interface components. The available function variables will be listed in the inline documentation.
save!used within a!save() function.