We first concentrate on the pattern attribute. The following expressions are allowed. Capital letters indicate that the term is a placeholder for some label occuring in the query definition or the answer objects.
{this.cat1} evaluates to v11,v12 and {this.cat2} evaluates to v21. For the complex object `B', a path expression like {this.cat2.cat21} is allowed
and yields v21. Note that all such expressions are set-valued.
{this^label12} evaluates to v12.
ATTRIBUTE_CAT}
{this|cat1} evaluates to label11,label12.
The derivation of pattern is performed for each answer object that is in the result set of a query. The answer object `A' induces the following substition rules:
Extended examples for these simple expressions are given in simple_answerformats1.sml and simple_answerformats2.sml in
the directory $CB_HOME/examples/AnswerFormat/.
Note that only objects that match the query constraint are in the answer. Particularly, computed_attribute and retrieved_attribute require that at least one filler for the respective attribute is present in an answer object! Use ConceptBase views (`View') and inherited_attribute in case that zero fillers are also allowed for answers.
There are few other simple expressions that may be useful. They just list attributes without having to refer to specific attributes.
{this.attrCategory} evaluates to cat1,cat2.
attribute}
{this|attribute} evaluates to label11,label12,label21.
{this.attribute} evaluates to v11,v12,v21.
For the answer object A, these expressions induce the following additional substitution rules: