count(ancestor::*)
. Но записать ее никуда не получится :) Ее можно только использовать, например, чтоб отклонить элемент (если превышен некий резрешенный уровень вложенности) или выбрать, на соответствие какой именно структуре его проверять (инвариантность). Возможно, это подскажет дальнейший ход размышлений... Вот, например, неплохая статья на тему новшеств в 1.1 на немецком. Попробуйте самостоятельно разобраться или хотя бы сформулировать конкретные вопросы. Только так можно будет посоветовать что-то конкретное.