First of all: I love the proposal! One thing that I couldn't figure out is what specificity :parent, :next and :prev have. I am also wondering wether they are needed. :parent is by far the most useful of them, but the only one you'd really need is :self. Overall it feels like these selectors should be in a separate proposal. I am only commenting this because I love the proposal and hope it will be accepted. Additional complexity could prevent that.