code: func (v *evalVisitor) evalCtxPathExpression(node *ast.PathExpression, exprRoot bool) interface{} {
  	v.at(node)
  
  	if node.IsDataRoot() {
  		// `@root` - remove the first part
  		parts := node.Parts[1:len(node.Parts)]
  
  		result, _ := v.evalCtxPath(v.rootCtx(), parts, exprRoot)
  		return result
  	}
  
  	return v.evalDepthPath(node.Depth, node.Parts, exprRoot)
  }
docs: // evalCtxPathExpression evaluates a context path expression