use source in 'parent' mechanism for nested datastructure