I love it! Just some extra clarification for people coming across this:
_
should be read as “any” value. Or not a defined value.
Which is to say with this usage ?p
becomes all pages in the graph. As [?p :block/name _]
simply means a page with any name.
So it isn’t necessarily empty as it is any.