This needs an attribute precedence level (like `node.set`)