capture position with hierarchical roots