...
https://github.com/edmcouncil/fibo/blob/master/etc/testing/hygiene/testHygiene3.sq
Labels and DefintionsDefinitions
Every Class and Property defined in FIBO must have an rdfs:label and a skos:definition https://github.com/edmcouncil/fibo/blob/master/etc/testing/hygiene/testHygiene4.sq
...
Do not import an ontology unless elements something in it are is explicitly referenced.
Here is some pseudo-SPARQL which assumes we've used the nQuads - not sure of the graph selection syntax
SELECT ?Importer ?UnusedImported
WHERE (?Importer a owl:Ontology.
?Importer owl:imports ?UnusedImported.
?ImportedElement rdfs:isDefinedBy ?UnusedImported.
FILTER NOT EXISTS {
GRAPH ?g {?Importer a owl:Ontology # select the named graph containing the triple defining the ontology
?x ?p ?ImportedElement. # check to see if an imported element is the object of a triple in this graph
}
}}
No Unsatisfied References
Any resource referenced should be explicitly declared.
Here is some SPARQL which should be run without inferencing.
SELECT ?source ?property ?ref
WHERE {?property a owl:ObjectProperty.
?source ?property ?ref.
FILTER NOT EXISTS{?ref rdf:type ?t}
}