You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.

What is it for?

A container is used to create groups of display elements that can be reused. 

What is it?

A container is a type of Containment, an interaction element that can group Attribute or text elements together. 

Container types

Container types give Containers special features. Please refer to the Reference Guide for Container types.

Containment

What is it for?

Containments (Page, Container and Inline Containers) are used for grouping display elements together

How to – add containment to a page

A page is entirely made out of containers. A container itself can have containment, including other containers. Inline Containers are Containers that cannot be reused or have a Container Type.

To compose a page, please refer to add containment to a container. Both Page and Container are types of Containment.

Display names for pages and containers can contain Text Substitution Language: TSL

What can a containment contain?

Attributes in containments

When an Attribute is placed in a containment, its question text will be displayed as label of the input field. If the attribute is placed as Read only, then its value will be shown.

If the Attribute has a Validation rule set, then the validation will be triggered (and displayed if the validation fails) in these cases:

  • There is a Refresh set on the attribute (or a parent container)
  • The attribute (or a parent container) is set as Required and the validation is set as Blocking

Relations in containments

When a Relation is placed in a containment, a selected Container is displayed in which the Instance is active that is reached via that relation. This only works for a 1:1 relation. This will not repeat over a 1:n relation.

Please see the documentation on managing relations via containment.

Settings

Precondition

The containment is placed on the page when the expression of its precondition evaluates to TRUE.

Repeat

A container and its children can be repeated over, instances, values of a multivalued attribute, or a defined number of times. To do this, define a repeat expression which determines over which instances, values or how many times (defined by an integer) the container should be repeated.

For each instance in the set that results from the repeat expression, the container with its content is repeated. With each repetition an instance from the set is activated. You can determine the order in which the instances are activated by sorting on the value of an attribute (both ascending and descending).

A simple example: if you have a number of Person instances with attributes such as Name, Birthdate, you can easily create a page that displays all the Person instances with their data (sorted by Name). To do this:

  1. Create a container PersonData containing all the attributes of Person
  2. Put the container PersonData on a page
  3. Fill in the repeat expression for the container PersonData, e.g. ALL Person
  4. (optional) Sort the instances by Person.Name
The precondition and read-only expressions are evaluated independently from the repeat expression and the precondition is evaluated first. If you only want to repeat over a certain set of instances, you can solve this by using a COLLECT function.

Read only

With this parameter you are able to specify whether its containment should be editable or read only. This can be either TRUE, FALSE or conditional.

Presentation style

You can attach one or more presentation style(s) to a container each with a different condition.

Refresh

If refresh is checked, then the current page is refreshed whenever input changes within the containment.

This triggers Validation rule and can also trigger Flows if the Container type: AQ_FlowOnRefresh is used.

Inline abuse

Using inline containers relates all contained elements to the first available parent (page or reusable container). Using only inline containers will therefor decrease the ability to determine the usage of an element. Dependencies will only point to the parent element.

  • No labels