SPARQL DEFINE get:soft "no-sponge" LOAD ; -- assuming IFP assertion isn't in FOAF graph SPARQL INSERT DATA INTO { foaf:mbox a owl:InverseFunctionalProperty. } ; -- Make Rule RDFS_RULE_SET ( 'urn:ifp:inference:rule' , 'http://xmlns.com/foaf/0.1/' ) ; -- Verify Rule Creation SELECT RS_NAME FROM sys_rdf_schema WHERE RS_NAME = 'urn:ifp:inference:rule' ; -- Clean up SPARQL CLEAR GRAPH ; -- Instance Data (ABox) SPARQL INSERT DATA INTO { <#kidehen> # a foaf:Person; foaf:mbox ; schema:name "Kingsley Idehen" ; foaf:nick "kidehen". # a foaf:Person; foaf:mbox ; schema:name "Kingsley Idehen" ; schema:mainEntityOfPage ; foaf:nick "@kidehen". # a foaf:Person; foaf:mbox ; schema:name "Kingsley Uyi Idehen" ; schema:mainEntityOfPage ; foaf:nick "@kidehen". <#kidehen> owl:sameAs , . } ; -- Test 1 SPARQL DEFINE input:inference 'urn:ifp:inference:rule' SELECT DISTINCT <#kidehen> AS ?s ?p ?o FROM WHERE { <#kidehen> ?p ?o } ; -- Test 2 SPARQL DEFINE input:same-as "yes" SELECT DISTINCT <#kidehen> AS ?s ?p ?o FROM WHERE { <#kidehen> ?p ?o }