/** * Return a Model through which all the RDFS entailments * derivable from the given model are accessible. Some work is done * when the inferenced model is created but each query will also trigger some * additional inference work. * * @param model the Model containing both instance data and schema assertions to be inferenced over */ public static InfModel createRDFSModel(Model model) { Reasoner reasoner = ReasonerRegistry.getRDFSReasoner(); InfGraph graph = reasoner.bind( model.getGraph() ); return new InfModelImpl( graph ); }
/** * Return a Model through which all the RDFS entailments * derivable from the given model are accessible. Some work is done * when the inferenced model is created but each query will also trigger some * additional inference work. * * @param model the Model containing both instance data and schema assertions to be inferenced over */ public static InfModel createRDFSModel(Model model) { Reasoner reasoner = ReasonerRegistry.getRDFSReasoner(); InfGraph graph = reasoner.bind( model.getGraph() ); return new InfModelImpl( graph ); }
/** * Return a Model through which all the RDFS entailments * derivable from the given data and schema models are accessible. * There is no strict requirement to separate schema and instance data between the two * arguments. * * @param model a Model containing instance data assertions * @param schema a Model containing RDFS schema data */ public static InfModel createRDFSModel( Model schema, Model model ) { Reasoner reasoner = ReasonerRegistry.getRDFSReasoner(); InfGraph graph = reasoner.bindSchema(schema.getGraph()).bind(model.getGraph()); return new InfModelImpl( graph ); }
/** * Return a Model through which all the RDFS entailments * derivable from the given data and schema models are accessible. * There is no strict requirement to separate schema and instance data between the two * arguments. * * @param model a Model containing instance data assertions * @param schema a Model containing RDFS schema data */ public static InfModel createRDFSModel( Model schema, Model model ) { Reasoner reasoner = ReasonerRegistry.getRDFSReasoner(); InfGraph graph = reasoner.bindSchema(schema.getGraph()).bind(model.getGraph()); return new InfModelImpl( graph ); }
/** * Test that reset does actually clear out all the data. * We use the RDFS configuration because uses both TGC, forward and backward * rules and so is a good check. */ public void testRebind2() { String NS = "http://jena.hpl.hp.com/test#"; Model base = ModelFactory.createDefaultModel(); Resource A = base.createResource(NS + "A"); Resource B = base.createResource(NS + "B"); Resource I = base.createResource(NS + "i"); A.addProperty(RDFS.subClassOf, B); I.addProperty(RDF.type, A); InfModel inf = ModelFactory.createInfModel(ReasonerRegistry.getRDFSReasoner(), base); assertTrue(inf.containsResource(A) && inf.containsResource(I)); base.removeAll(); inf.rebind(); assertFalse(inf.containsResource(A) || inf.containsResource(I)); }
/** * Test that reset does actually clear out all the data. * We use the RDFS configuration because uses both TGC, forward and backward * rules and so is a good check. */ public void testRebind2() { String NS = "http://jena.hpl.hp.com/test#"; Model base = ModelFactory.createDefaultModel(); Resource A = base.createResource(NS + "A"); Resource B = base.createResource(NS + "B"); Resource I = base.createResource(NS + "i"); A.addProperty(RDFS.subClassOf, B); I.addProperty(RDF.type, A); InfModel inf = ModelFactory.createInfModel(ReasonerRegistry.getRDFSReasoner(), base); assertTrue(inf.containsResource(A) && inf.containsResource(I)); base.removeAll(); inf.rebind(); assertFalse(inf.containsResource(A) || inf.containsResource(I)); }
Graph data = Factory.createGraphMem(); data.add(new Triple(a, p, b)); InfGraph igraph = ReasonerRegistry.getRDFSReasoner().bind(new Union(tdata, data)); TestUtil.assertIteratorValues(this, igraph.find(a, ty, null), new Object[] { igraph = ReasonerRegistry.getRDFSReasoner().bindSchema(tdata).bind(data); TestUtil.assertIteratorValues(this, igraph.find(a, ty, null), new Object[] {
Graph data = Factory.createGraphMem(); data.add(new Triple(a, p, b)); InfGraph igraph = ReasonerRegistry.getRDFSReasoner().bind(new Union(tdata, data)); TestUtil.assertIteratorValues(this, igraph.find(a, ty, null), new Object[] { igraph = ReasonerRegistry.getRDFSReasoner().bindSchema(tdata).bind(data); TestUtil.assertIteratorValues(this, igraph.find(a, ty, null), new Object[] {
/** * Check interface extensions which had an earlier bug with null handling */ public void testListWithPosits() { String NS = PrintUtil.egNS; Model data = ModelFactory.createDefaultModel(); Resource c1 = data.createResource(NS + "C1"); Resource c2 = data.createResource(NS + "C2"); Resource c3 = data.createResource(NS + "C3"); data.add(c2, RDFS.subClassOf, c3); Model premise = ModelFactory.createDefaultModel(); premise.add(c1, RDFS.subClassOf, c2); InfModel im = ModelFactory.createInfModel(ReasonerRegistry.getRDFSReasoner(), data); TestUtil.assertIteratorValues(this, im.listStatements(c1, RDFS.subClassOf, null, premise), new Object[] { data.createStatement(c1, RDFS.subClassOf, c2), data.createStatement(c1, RDFS.subClassOf, c3), data.createStatement(c1, RDFS.subClassOf, c1) }); OntModel om = ModelFactory.createOntologyModel(OntModelSpec.RDFS_MEM_RDFS_INF, data); TestUtil.assertIteratorValues(this, om.listStatements(c1, RDFS.subClassOf, null, premise), new Object[] { data.createStatement(c1, RDFS.subClassOf, c2), data.createStatement(c1, RDFS.subClassOf, c3), data.createStatement(c1, RDFS.subClassOf, c1) }); }
/** * Check interface extensions which had an earlier bug with null handling */ public void testListWithPosits() { String NS = PrintUtil.egNS; Model data = ModelFactory.createDefaultModel(); Resource c1 = data.createResource(NS + "C1"); Resource c2 = data.createResource(NS + "C2"); Resource c3 = data.createResource(NS + "C3"); data.add(c2, RDFS.subClassOf, c3); Model premise = ModelFactory.createDefaultModel(); premise.add(c1, RDFS.subClassOf, c2); InfModel im = ModelFactory.createInfModel(ReasonerRegistry.getRDFSReasoner(), data); TestUtil.assertIteratorValues(this, im.listStatements(c1, RDFS.subClassOf, null, premise), new Object[] { data.createStatement(c1, RDFS.subClassOf, c2), data.createStatement(c1, RDFS.subClassOf, c3), data.createStatement(c1, RDFS.subClassOf, c1) }); OntModel om = ModelFactory.createOntologyModel(OntModelSpec.RDFS_MEM_RDFS_INF, data); TestUtil.assertIteratorValues(this, om.listStatements(c1, RDFS.subClassOf, null, premise), new Object[] { data.createStatement(c1, RDFS.subClassOf, c2), data.createStatement(c1, RDFS.subClassOf, c3), data.createStatement(c1, RDFS.subClassOf, c1) }); }