uses descendant-or-self