This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Symbols and Symbol Sets

Symbols and Symbol Sets

1 - Symbols

Symbols

Symbols

Symbols have the following three attributes:

  • a symbol (lowercase, no spaces or hyphens..)
  • an associated text (free text)
  • (internally) a unique identifier

Using symbols to ensure consistency in representation across Processes

The options in a Select question might involve concepts which have relevance not only in a single Process but across the whole Project.

You can ensure that you represent such concepts consistently across Projects by defining symbols at the Project level and choosing to use them within the Process as option values.

Using project level symbols to ensure consistency

Using Symbols to compute with

Symbols can be used as the value of options in a select question select question

When the user responds to a select question, the resulting value is a set of symbols.

Using Symbols for translating system terms

System Symbols

Project Symbols

2 - Reasoning with Sets

Set Reasoning

Reasoning with Sets in Processes

Example

Let us create an example to show reasoning with sets.

Suppose you are creating a nutrition App, and you are interested in people’s diet.

Asking the user for their eaten_regularly set

Suppose you create a Process and ask the user the following multi-select question:

Let us give the value name eaten_regularly to this select question.

The values of select questions have the data type symbol set.

So the response value of this question will be the set of symbols associated with the options selected by the user.

Asking the user for their finds_expensive set

Suppose you ask a second question multi-select question with the same options (and importantly, the same associated symbols).

Let us give the value name finds_expensive to this select question.

And now compute

Maybe now you want to calculate: which foods are eaten even though considered expensive?

This will be the intersection of the two sets

  • eaten_regularly
  • finds_expensive

How do we do this?

Defining and updating a set variable

Calculating a new set and updating set variable

Reasoning with symbols sets defined at Project level

We can also define symbols and sets project-wide, and reason with them.

For example, we could define Project Symbols for each of the foods, and define Project Symbol Sets with various combinations.

Here is an example of a set called foods containing symbols for the foods above

Within a Process, we can choose to associate Project-level symbols with options:

So when we are doing set calculations, we can make use of sets defined at the Project-level:

3 - Symbol Sets

Symbols

Symbol Set

Symbols sets are straightforward: they are set of symbols

Using sets in Dynamic Select questions

Using sets as Symbol field “Edit sets” Object Field

Reasoning with Sets in Processes