Node navigation
When you visualize data, it is sliced into pieces, which are represented by different types of markers, for example, table cells, bar segments, line vertexes, or pie sectors. When you want to perform calculations that involve various combinations of slices, there are different methods available to reference these combinations. The methods are called node navigation methods, and they are used together with the OVER statement.
The following illustration will serve as a base to clarify the different node navigation methods. It shows a time hierarchy where nodes represent various slices of the data.
The topics below introduce the different node navigation methods. The expressions used assume that in-memory data is used.
- All()
You use the All() navigation method in an expression, when you want to reference all the nodes on an axis. - Previous()
You use the Previous() navigation method in an expression, when you want to reference the previous node within the same level of the hierarchy. - Next()
You use the Next() navigation method in an expression, when you want to reference the next node within the same level of the hierarchy. - AllPrevious()
You use the AllPrevious() navigation method, when you want to reference the current node along with all previous nodes in the level of the hierarchy. - LastPeriods()
You use the LastPeriods() navigation option, when you want to reference a set of nodes, prior to and including the current node within the same level of the hierarchy. It is up to you to specify how far to look backwards in time. - AllNext()
You use the AllNext() navigation method, when you want to reference the current node along with the nodes that follow in the level of the hierarchy. - Parent()
You use the Parent() navigation method, when you want to reference a parent node in the hierarchy. - Intersect()
You use the Intersect() navigation method, when you want to reference the nodes that are the result of the intersection of two or more node navigation methods. - PreviousPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month) and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is PreviousPeriod(), which references the previous node within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - NextPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month) and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is NextPeriod(), which references the next node within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - ParallelPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month), and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is ParallelPeriod(), which references the corresponding node in the previous branch of the hierarchy within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - NavigatePeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month), and the time periods are recurrent. One of these navigation methods is NavigatePeriod(). This method lets you define your own navigation in a hierarchy, because you can specify four arguments, that is, input values that control which axis to reference, how many levels to move up in the hierarchy, how many steps to move sideways, and how many levels to move down.
- All()
You use the All() navigation method in an expression, when you want to reference all the nodes on an axis. - Previous()
You use the Previous() navigation method in an expression, when you want to reference the previous node within the same level of the hierarchy. - Next()
You use the Next() navigation method in an expression, when you want to reference the next node within the same level of the hierarchy. - AllPrevious()
You use the AllPrevious() navigation method, when you want to reference the current node along with all previous nodes in the level of the hierarchy. - LastPeriods()
You use the LastPeriods() navigation option, when you want to reference a set of nodes, prior to and including the current node within the same level of the hierarchy. It is up to you to specify how far to look backwards in time. - AllNext()
You use the AllNext() navigation method, when you want to reference the current node along with the nodes that follow in the level of the hierarchy. - Parent()
You use the Parent() navigation method, when you want to reference a parent node in the hierarchy. - Intersect()
You use the Intersect() navigation method, when you want to reference the nodes that are the result of the intersection of two or more node navigation methods. - PreviousPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month) and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is PreviousPeriod(), which references the previous node within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - NextPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month) and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is NextPeriod(), which references the next node within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - ParallelPeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month), and the time periods are recurrent. Because the nodes in a time hierarchy are obvious, any nodes that miss data can be detected automatically. One of these navigation methods is ParallelPeriod(), which references the corresponding node in the previous branch of the hierarchy within the same level of the hierarchy. When you use this method in an expression, and any nodes are missing data, the expression will return empty values for such nodes. - NavigatePeriod()
Some node navigation methods are especially suited for hierarchies containing periodic data, first and foremost time hierarchies. Time is structured hierarchically by nature (like year, quarter, month), and the time periods are recurrent. One of these navigation methods is NavigatePeriod(). This method lets you define your own navigation in a hierarchy, because you can specify four arguments, that is, input values that control which axis to reference, how many levels to move up in the hierarchy, how many steps to move sideways, and how many levels to move down.
Parent topic: Slicing and marker concepts