fixedSchemaSpec.setReasoner(PelletReasonerFactory.theInstance().create().bindFixedSchema(schema));
// create a new model whihc will have the schema loaded automatically
OntModel model = ModelFactory.createOntologyModel(fixedSchemaSpec);
PelletInfGraph graph = (PelletInfGraph) model.getGraph();
assertFalse(graph.isClassified());
assertIteratorValues(model.listObjectsOfProperty(A, RDFS.subClassOf), B, C, OWL.Thing);
assertTrue(graph.isClassified());
model.add(a, RDF.type, A);
graph.prepare();
assertTrue(graph.isClassified());
assertTrue(model.contains(a, RDF.type, C));
assertIteratorValues(model.listObjectsOfProperty(A, RDFS.subClassOf), B, C, OWL.Thing);
assertTrue(graph.isClassified());
Model subModel = ModelFactory.createDefaultModel();
subModel.add(b, RDF.type, B);
model.addSubModel(subModel);
graph.prepare();
assertTrue(graph.isClassified());
assertTrue(model.contains(a, RDF.type, C));
assertTrue(model.contains(b, RDF.type, C));
assertIteratorValues(model.listObjectsOfProperty(A, RDFS.subClassOf), B, C, OWL.Thing);
assertTrue(graph.isClassified());
model.remove(a, RDF.type, A);
graph.prepare();
assertTrue(graph.isClassified());
assertFalse(model.contains(a, RDF.type, C));
assertTrue(model.contains(b, RDF.type, C));
assertIteratorValues(model.listObjectsOfProperty(A, RDFS.subClassOf), B, C, OWL.Thing);
assertTrue(graph.isClassified());
model.removeSubModel(subModel);
graph.prepare();
assertTrue(graph.isClassified());
assertFalse(model.contains(a, RDF.type, C));
assertFalse(model.contains(b, RDF.type, C));
assertIteratorValues(model.listObjectsOfProperty(A, RDFS.subClassOf), B, C, OWL.Thing);
assertTrue(graph.isClassified());
}