more ancestor/descendant methods