Developer Documentation Library > Scripting > Expressions > Hierarchical expressions > The down-lev (^.) operator
 
The down-lev (^.) operator
You use the down-lev operator when you want to include data from a higher parent level in an expression at a lower level.
Down-leving one level
The following person-level expression filters on the Age variable (this is a numeric variable in the Household sample) and the top-level Region variable, which is down-leved to the Person level.
Age > 16 And ^.Region = {north}
This expression selects people who are over 16 and who live in households that are in the North.
The following example concatenates two text variables--the Person-level Name variable and the top-level Address variable, which is down-leved to the Person level. This means that the data in the Address variable will be repeated for each person in the household.
Name + ', ' + ^.Address
Down-leving two levels
You can use the down-lev operator multiple times to down-lev the data more than one level. For example, the following expression is at the Trip level and the down-lev operator has been used twice to expand the data in the Region variable down two levels from the top to the Trip level.
Purpose = {vacation} And ^.^.Region = {South}
This expression selects trips whose purpose was a vacation taken by people who live in households in the South.
Down-leving variables from different levels
You can down-lev data from different levels in the same expression. The following example is the same as the previous one and is also at the Trip level. However, another subexpression has been added, which down-levs the Person-level Gender variable to the Trip level.
Purpose = {vacation} And ^.^.Region = {South} And ^.Gender = {Male}
This expression selects trips whose purpose was a vacation taken by males who live in households in the South.
See
Hierarchical expressions