rdf - How to differentiate between a Thing and an inanimate object with SPARQL -


using sparql, can related info resource quite easily, i'm having hard time figuring out how differentiate between things , things -- in thing super class of classes, , things inanimate objects, cup, spoon, pencil, etc.

for example, here few innanimate objects in dbpedia:

here's thing -- know lot of ontologies don't have specific type give ability query objects, however, perhaps theres way tell if thing because has no subclasses, or maybe property path of types can used differentiate in roundabout way.

but, in general, i'd know if possible differentiate between things , things using sparql query? , if so, how?

you can browse dbpedia ontology classes online. under owl:thing, there number of toplevel classes. while it's not perfect match, because includes collective entities, looks agent class , complement correspond animate , inanimate objects. might need consider animal class well, or other things under species class. there non-dbpedia classes, e.g., foaf:person should consider, too. @ rate, big approach here select classes in hierarchy consider represent animate , inanimate things, , use decide instances.

e.g., use query find animate things (if define animate things agents , animals):

select ?x {    ?x owl:thing    filter exists {     ?x ?type .     filter( ?type in ( dbpedia-owl:agent, dbpedia-owl:animal ) )   } } limit 100  

sparql results


Comments

Popular posts from this blog

Android layout hidden on keyboard show -

google app engine - 403 Forbidden POST - Flask WTForms -

c - Why would PK11_GenerateRandom() return an error -8023? -