2010-10-26 8 views
1

Я создал свою онтологию от Protege. у моей онтологии есть несколько классов и экземпляров. Теперь я собираюсь добавить другие классы и экземпляры jena, поэтому я пишу приведенный ниже код для создания нового класса и одного экземпляра в этом классе. имя нового класса - «человек», а имя нового экземпляра - «база». когда я запускаю этот код в java, он работает без ошибок и создает класс и экземпляр. но когда я возвращаюсь к протеже, я не вижу нового класса, а также нового экземпляра. у вас есть идея помочь мне. благодаряИзмените предопределенную онтологию с помощью 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(); 
} 

ответ

4

Вам не кажется, сохранили измененную модель:

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