Hi All,
I'm working on some kind of faceted filtering using the Dbpedia data.
For that I'm trying to get all properties that have a specific owl class and
all its superclasses (transitive) as domain, i.e. each property that has the
class Actor, Artist, Person or owl:Thing as domain.
So I built a sparql query like the following that worked almost fine for me:
SELECT * WHERE {
{ dbpedia-owl:Actor rdfs:subClassOf ?superClass OPTION (transitive, t_min(0)) }
{ ?property rdfs:domain ?superClass }
}
One remaining problem is that the result doesn't include properties that
have owl:Thing as domain, IMHO because in the owl file they just don't have a
domain set for these properties.
I'm no owl/rdf expert so I don't know if this is on purpose. I solved it by
including all properties that don't have a domain, like in this query:
SELECT DISTINCT ?property WHERE {
{{ dbpedia-owl:Actor rdfs:subClassOf ?superClass OPTION (transitive, t_min(0)) }
{ ?property rdfs:domain ?superClass }
{ ?property rdfs:domain ?domain }}
UNION
{{ ?property rdf:type owl:ObjectProperty } UNION { ?property
rdf:typeowl:DatatypeProperty }
OPTIONAL { ?property rdfs:domain ?domain }
FILTER(!BOUND(?domain)) }
}
But some properties are still missing in the ontology although they are
specified in the mapping, i.e all the foaf properties like foaf:homepage are
missing in the ontology but listed here:
http://mappings.dbpedia.org/server/ontology/classes/Actor
It seems like the missing properties are all from other ontologies/namespaces.
Is there a reason for these properties missing?
Thanks for your time.
Best regards,
Sören
------------------------------------------------------------------------------
_______________________________________________
Dbpedia-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dbpedia-discussion