@prefix log: . @prefix ont: . @prefix xsd: . @prefix rdfs: . @prefix rdf: . @prefix : . { ?p ont:inverseOf ?q . ?s ?p ?o } log:implies { ?o ?q ?s } . { ?p a ont:TransitiveProperty . ?s ?p ?x . ?x ?p ?o } log:implies { ?s ?p ?o } . { ?p a ont:UniqueProperty . ?s ?p ?x . ?s ?p ?y } log:implies { ?x ont:sameIndividualAs ?y } . { ?p a ont:UnambiguousProperty . ?x ?p ?o . ?y ?p ?o } log:implies { ?x ont:sameIndividualAs ?y } . { ?C ont:oneOf [ :member ?x ] } log:implies { ?x a ?C } . [ ont:first ?x; ont:rest ?b ] :member ?x . { ?b :member ?x } log:implies { [ ont:first ?a; ont:rest ?b ] :member ?x } . { ?b :member ?x } log:implies { [ ont:first ?a; ont:rest ?b; :member ?x ] } . # { ?l ont:first ?o } log:implies { ?l :member ?o } . # { ?l ont:rest [ :member ?o ] } log:implies { ?l :member ?o } . { ?R a ont:Restriction; ont:onProperty ?p; ont:toClass ?X . ?i a ?R; ?p ?j } log:implies { ?j a ?X } . ### rules for a :schemaInconsistency { ?x a ?y . ?x a ?z . ?y ont:complementOf ?z } log:implies { ?x a :schemaInconsistency } . { ?x a ?y . ?x a ?z . ?y ont:disjointWith ?z } log:implies { ?x a :schemaInconsistency } . { ?x a ?y . ?x a ?z . ?d a ont:Disjoint; :member ?y; :member ?z . ?y ont:differentIndividualFrom ?z } log:implies { ?x a :schemaInconsistency } . { ?p a ont:UniqueProperty . ?s ?p ?x . ?s ?p ?y . ?x ont:differentIndividualFrom ?y } log:implies { ?x a :schemaInconsistency } . { ?p a ont:UnambiguousProperty . ?x ?p ?o . ?y ?p ?o . ?x ont:differentIndividualFrom ?y } log:implies { ?x a :schemaInconsistency } .