For example, a user should be able to search for all images that depict a cat, but that don't specify the colour of the cat
Solution is to use a prefix query https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-prefix-query.html instead of an exact match query for haswbstatement if there's a * at the end of a haswbstatement keyword
Then the user could find all images depicting a cat but that don't have a colour for that cat like this haswbstatement:P180=Q146 -haswbstatement:P180=Q146[P462=*