bbcarchdev / spindle

RES Linked Open Data aggregation engine
https://bbcarchdev.github.io/spindle/
Apache License 2.0
2 stars 1 forks source link

Rulebase: accept rdfs:subClassOf and owl:equivalentClass as synonyms for spindle:expressedAs for classes #104

Open nevali opened 7 years ago

nevali commented 7 years ago

This would make it easier to generate a meaningful ontology or class diagram from the rulebase.

nevali commented 7 years ago

it may be necessary to add additional code to allow matching the object of these triples to the subjects of other spindle:expressedAs statements.

For example, the rulebase currently contains:

foaf:Agent
                a spindle:Class ;
                olo:index 30 ;
                rdfs:label "Agent"@en .

dct:Agent spindle:expressedAs foaf:Agent .
<http://www.tate.org.uk/ontologies/collection#Artist> spindle:expressedAs foaf:Agent .
<http://dbpedia.org/ontology/Agent> spindle:expressedAs foaf:Agent .

It ought to be possible to express this as:

foaf:Agent
                a spindle:Class ;
                olo:index 30 ;
                rdfs:label "Agent"@en ;
                owl:equivalentClass dct:Agent .

<http://dbpedia.org/ontology/Agent> owl:equivalentClass dct:Agent .
<http://www.tate.org.uk/ontologies/collection#Artist> rdfs:subClassOf foaf:Agent .

Because this equivalence handling is all within a single graph, it ought to be somewhat simpler than Spindle's usual co-reference matching.