@Override public ExtendedIterator<Triple> find(final KnowledgeBase kb, final PelletInfGraph openllet, final Node s, final Node p, final Node o) { final ModelExtractor me = new ModelExtractor(kb); me.setSelector(StatementType.ALL_STATEMENTS); final Graph graph = me.extractModel().getGraph(); return graph.find(Triple.ANY); } });
public Model extractModel(final Model model) { extractClassModel(model); extractPropertyModel(model); extractIndividualModel(model); return model; }
/** * Initialize the extractor with a reasoner */ public ModelExtractor(final KnowledgeBase kb) { setKB(kb); }
private void extractInferences() { if (selector.size() == 0) throw new OpenlletCmdException("Selector is empty, provide types to extract"); final ModelExtractor extractor = new ModelExtractor(getKB()); extractor.setSelector(selector); final Model extracted = ModelFactory.createDefaultModel(); if (SetUtils.intersects(selector, ModelExtractor.StatementType.ALL_CLASS_STATEMENTS)) { startTask("Extracting class statements"); extractor.extractClassModel(extracted); finishTask("Extracting class statements"); } if (SetUtils.intersects(selector, ModelExtractor.StatementType.ALL_PROPERTY_STATEMENTS)) { startTask("Extracting property statements"); extractor.extractPropertyModel(extracted); finishTask("Extracting property statements"); } if (SetUtils.intersects(selector, ModelExtractor.StatementType.ALL_INDIVIDUAL_STATEMENTS)) { startTask("Extracting individual statements"); extractor.extractIndividualModel(extracted); finishTask("Extracting individual statements"); } if (_debug) output(extracted); }
private PelletInfGraph(final KnowledgeBase kb, final Graph graph, final PelletReasoner pellet, final GraphLoader loader) { super(graph, pellet); _kb = kb; _loader = loader; _extractor = new ModelExtractor(kb); _extractor.setSelector(StatementType.ALL_PROPERTY_STATEMENTS); _graphListener = new PelletGraphListener(graph, kb, _autoDetectChanges); loader.setKB(kb); if (pellet.isFixedSchema()) { loader.load(Collections.singleton(getSchemaGraph())); loader.setLoadTBox(false); } rebind(); }
makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); addTriple(triples, s, pX, s); for (final ATermAppl a : _kb.getSames(ind)) makeGraphNode(a).ifPresent(node -> addTriple(triples, s, pX, node)); makeGraphNode(a).ifPresent(node -> addTriple(triples, s, pX, node)); makeGraphNode(value).ifPresent(node -> addTriple(triples, s, p, node)); });
@Test public void testExtractor() { final String ns = "urn:test:"; final Model rawModel = ModelFactory.createDefaultModel(); final Resource C = rawModel.createResource(ns + "C"); final Resource D = rawModel.createResource(ns + "C"); final Resource a = rawModel.createResource(ns + "a"); rawModel.add(a, RDF.type, C); rawModel.add(C, RDFS.subClassOf, D); final OntModel model = ModelFactory.createOntologyModel(PelletReasonerFactory.THE_SPEC, rawModel); final ModelExtractor extractor = new ModelExtractor(model); final Model inferences = extractor.extractModel(); assertTrue(inferences.contains(a, RDF.type, D)); }
public Model extractModel() { return extractModel(ModelFactory.createDefaultModel()); }
public Model extractPropertyModel() { return extractPropertyModel(ModelFactory.createDefaultModel()); }
public Model extractClassModel() { return extractClassModel(ModelFactory.createDefaultModel()); }
continue; final Node s = sOpt.get(); addTriple(triples, s, RDF.type.asNode(), OWL.Class.asNode()); makeGraphNode(eq).ifPresent(o -> addTriple(triples, s, p, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, p, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o)); for (final ATermAppl a : comp) if (classes.contains(a)) makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o));
private PelletInfGraph(final KnowledgeBase kb, final Graph graph, final PelletReasoner pellet, final GraphLoader loader) { super(graph, pellet); _kb = kb; _loader = loader; _extractor = new ModelExtractor(kb); _extractor.setSelector(StatementType.ALL_PROPERTY_STATEMENTS); _graphListener = new PelletGraphListener(graph, kb, _autoDetectChanges); loader.setKB(kb); if (pellet.isFixedSchema()) { loader.load(Collections.singleton(getSchemaGraph())); loader.setLoadTBox(false); } rebind(); }
makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); addTriple(triples, s, pX, s); for (final ATermAppl a : _kb.getSames(ind)) makeGraphNode(a).ifPresent(node -> addTriple(triples, s, pX, node)); makeGraphNode(a).ifPresent(node -> addTriple(triples, s, pX, node)); makeGraphNode(value).ifPresent(node -> addTriple(triples, s, p, node)); });
public Model extractModel() { return extractModel(ModelFactory.createDefaultModel()); }
public Model extractPropertyModel() { return extractPropertyModel(ModelFactory.createDefaultModel()); }
public Model extractClassModel() { return extractClassModel(ModelFactory.createDefaultModel()); }
continue; final Node s = sOpt.get(); addTriple(triples, s, RDF.type.asNode(), OWL.Class.asNode()); makeGraphNode(eq).ifPresent(o -> addTriple(triples, s, p, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, p, o)); makeGraphNode(i.next()).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o)); makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o)); for (final ATermAppl a : comp) if (classes.contains(a)) makeGraphNode(a).ifPresent(o -> addTriple(triples, s, pX, o));
@Override public ExtendedIterator<Triple> find(final KnowledgeBase kb, final PelletInfGraph openllet, final Node s, final Node p, final Node o) { final ModelExtractor me = new ModelExtractor(kb); me.setSelector(StatementType.ALL_STATEMENTS); final Graph graph = me.extractModel().getGraph(); return graph.find(Triple.ANY); } });
public Model extractModel(final Model model) { extractClassModel(model); extractPropertyModel(model); extractIndividualModel(model); return model; }
private PelletInfGraph(final KnowledgeBase kb, final Graph graph, final PelletReasoner pellet, final GraphLoader loader) { super(graph, pellet); _kb = kb; _loader = loader; _extractor = new ModelExtractor(kb); _extractor.setSelector(StatementType.ALL_PROPERTY_STATEMENTS); _graphListener = new PelletGraphListener(graph, kb, _autoDetectChanges); loader.setKB(kb); if (pellet.isFixedSchema()) { loader.load(Collections.singleton(getSchemaGraph())); loader.setLoadTBox(false); } rebind(); }