My goal is to get all images related to a wikidata entity. I can get the image property (of e.g. the statue of liberty) with the following query:
SELECT ?image WHERE
{
wd:Q9202 wdt:P18 ?image.
}
This gets me the associated image but there are many types of image properties (P14, P15, P18, P41,...). They are all types of "Wikidata property for linking to a representative image (Q26940804)".
Is there an elegant way to get all properties that are subclasses of Q26940804
(getting all images)?
Truthy predicates, which start with wdt:P
, are connected to wd:Q26940804
not directly, but through their prototypic properties, which start with wd:P
.
SELECT ?predicate ?propertyLabel ?image WHERE
{
wd:Q9202 ?predicate ?image .
?property wikibase:directClaim ?predicate .
?property wdt:P31 wd:Q26940804
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
More info:
Also, those wd:P18
etc. are instances of wd:Q26940804
, not subclasses.