2010-10-26 24 views
1

J'ai créé mon ontologie par Protege. mon ontologie a quelques classes et instances. Maintenant, je vais ajouter d'autres classes et instances par Jena c'est pourquoi j'écris le code ci-dessous pour créer une nouvelle classe et une instance dans cette classe. le nom de la nouvelle classe est "person" et le nom de la nouvelle instance est "base". quand je lance ce code en java cela fonctionne sans aucune erreur et crée la classe et l'instance. mais quand je reviens à protéger je ne peux pas voir la nouvelle classe et aussi la nouvelle instance. As-tu une idée pour m'aider? grâceModifier l'ontologie prédéfinie en utilisant jena

public void create_model(){     
    modelMem = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM); 
    ModelMaker modelMaker = ModelFactory.createFileModelMaker("Ontologies/VBnet.owl"); 
    Model modeltmp = modelMaker.createDefaultModel(); 
    modelMem = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM, modeltmp); 
    System.out.println("Model has been Successfully Built"); 

} 
public void addFile() { 
    System.out.println("Loading from FOAF instance File"); 
    InputStream inFoafInstance =FileManager.get().open("Ontologies/VBnet.owl"); 
    modelMem.read(inFoafInstance, defaultNameSpace); 
    //inFoafInstance.close(); 
    System.out.println(modelMem.toString()); 

} 
public void adddata() { 
    OntClass person = modelMem.createClass(defaultNameSpace + "Person"); 
    Individual l1 = modelMem.createIndividual(defaultNameSpace + "base", person); 
    for (Iterator i = l1.listRDFTypes(true); i.hasNext();) 
     System.out.println(l1.getURI() + " is asserted in class " + i.next()); 
} 

public static void main(String[] args) { 
    AddInfo add=new AddInfo(); 
    add.create_model(); 
    add.addFile(); 
    add.adddata(); 
} 

Répondre

4

Vous ne semblez pas avoir sauvé le modèle modifié:

OutputStream out = new FileOutputStream("altered.rdf"); 
modelMem.write(out, "RDF/XML-ABBREV"); // readable rdf/xml 
out.close();