This is an equivalent to #409 in the other direction. For consistency it would be nice to have such a functional equivalent.
FWIW, we are also finding xml_parent() much more performant than xml_find_{first,all}(x, "parent::*"):
r-lib/lintr#2718 (comment)
So presumably the same could be true of xml_ancestor().