Attribute Paths
An attributeName in a DQL expression can be specified either as a simple name, or as an attribute path, which uses dot notation to navigate around the data model.
For example:
orders.orderLines.quantity = 1
An attribute path can be:
- the name of an attribute of the case object
- the name of a composition/association relationship of the case object
- the name of an attribute within its containment hierarchy, separated by dots
If an attribute is multiplicity-many, then it will, by default, match if any of its values satisfy the condition. Alternatively, '[ALL]' may be placed after the path fragment to indicate that all values must match.
A zero-based index number may be specified after the path fragment in the form '[i]' to require a given value within a list of multiple values to match.
For example, given the following model of an Order class:
The following table shows a number of example attribute paths and their meanings.
Attribute path | Meaning |
---|---|
orderId | The 'orderId' attribute. |
comments | Any value of the multiplicity-many 'comments' attribute. |
comments[ALL] | All values of the multiplicity-many 'comments' attribute. |
comments[0] | The first (index zero) value of the multiplicity-many 'comments' attribute. |
orderLines | The 'orderLines' composition relationship. |
orderLines.quantity | The 'quantity' attribute of any of the OrderLine objects referred to by orderLines. |
orderLines[ALL].quantity | The 'quantity' attribute of all of the OrderLine objects referred to by orderLines. |
orderLines.orderItem.itemEvents[ALL].description | The 'description' attribute of all of the ItemEvent objects referred to by the OrderItem object of any OrderLine object referred to by orderLines. That is, there must be at least one OrderLine where all ItemEvents match. |
orderLines[ALL].orderItem.itemEvents.description | The 'description' attribute of any of the ItemEvent objects referred to by the OrderItem object of all OrderLine objects referred to by orderLines. That is, every OrderLine must have at least one matching ItemEvent. |
orderLines[ALL].orderItem.itemEvents[ALL].description | The 'description' attribute of all of the ItemEvent objects referred to by the OrderItem object of all OrderLine objects referred to by orderLines. That is, all ItemEvents must match. |
dispatchNote | This is a reference to a global object, so only the =null and !=null operators are valid. |
Copyright © Cloud Software Group, Inc. All rights reserved.