2015-04-09 1 views
0

привет всем я пишу свою онтологию в протеже, и я добавляю owlapi к моему проекту eclipse. я хочу, чтобы добавить свою собственную онтологию затмить проект с этими кодами:Создайте или загрузите онтологию в eclipse с помощью owlapi

import static org.junit.Assert.*; 
import static org.semanticweb.owlapi.search.Searcher.annotations; 

import java.io.ByteArrayOutputStream; 
import java.io.File; 
import java.util.ArrayList; 
import java.util.Collection; 
import java.util.Collections; 
import java.util.HashSet; 
import java.util.List; 
import java.util.Set; 

import javax.annotation.Nonnull; 
import org.junit.*; 
import org.junit.Rule; 
import org.junit.Test; 
import org.junit.rules.TemporaryFolder; 
import org.semanticweb.owlapi.apibinding.OWLManager; 
import org.semanticweb.owlapi.formats.OWLXMLDocumentFormat; 
import org.semanticweb.owlapi.io.StreamDocumentTarget; 
import org.semanticweb.owlapi.io.StringDocumentSource; 
import org.semanticweb.owlapi.io.StringDocumentTarget; 
import org.semanticweb.owlapi.model.AddAxiom; 
import org.semanticweb.owlapi.model.AddOntologyAnnotation; 
import org.semanticweb.owlapi.model.IRI; 
import org.semanticweb.owlapi.model.OWLAnnotation; 
import org.semanticweb.owlapi.model.OWLAnnotationProperty; 
import org.semanticweb.owlapi.model.OWLAxiom; 
import org.semanticweb.owlapi.model.OWLClass; 
import org.semanticweb.owlapi.model.OWLClassAssertionAxiom; 
import org.semanticweb.owlapi.model.OWLClassExpression; 
import org.semanticweb.owlapi.model.OWLDataFactory; 
import org.semanticweb.owlapi.model.OWLDataProperty; 
import org.semanticweb.owlapi.model.OWLDataPropertyAssertionAxiom; 
import org.semanticweb.owlapi.model.OWLDataPropertyRangeAxiom; 
import org.semanticweb.owlapi.model.OWLDataRange; 
import org.semanticweb.owlapi.model.OWLDatatype; 
import org.semanticweb.owlapi.model.OWLDatatypeDefinitionAxiom; 
import org.semanticweb.owlapi.model.OWLDatatypeRestriction; 
import org.semanticweb.owlapi.model.OWLEntity; 
import org.semanticweb.owlapi.model.OWLException; 
import org.semanticweb.owlapi.model.OWLIndividual; 
import org.semanticweb.owlapi.model.OWLLiteral; 
import org.semanticweb.owlapi.model.OWLNamedIndividual; 
import org.semanticweb.owlapi.model.OWLObjectProperty; 
import org.semanticweb.owlapi.model.OWLObjectPropertyAssertionAxiom; 
import org.semanticweb.owlapi.model.OWLObjectPropertyExpression; 
import org.semanticweb.owlapi.model.OWLObjectSomeValuesFrom; 
import org.semanticweb.owlapi.model.OWLOntology; 
import org.semanticweb.owlapi.model.OWLOntologyCreationException; 
import org.semanticweb.owlapi.model.OWLOntologyIRIMapper; 
import org.semanticweb.owlapi.model.OWLOntologyManager; 
import org.semanticweb.owlapi.model.OWLSubClassOfAxiom; 
import org.semanticweb.owlapi.model.PrefixManager; 
import org.semanticweb.owlapi.model.RemoveAxiom; 
import org.semanticweb.owlapi.model.SWRLAtom; 
import org.semanticweb.owlapi.model.SWRLClassAtom; 
import org.semanticweb.owlapi.model.SWRLObjectPropertyAtom; 
import org.semanticweb.owlapi.model.SWRLRule; 
import org.semanticweb.owlapi.model.SWRLVariable; 
import org.semanticweb.owlapi.profiles.OWL2DLProfile; 
import org.semanticweb.owlapi.profiles.OWLProfileReport; 
import org.semanticweb.owlapi.profiles.OWLProfileViolation; 
import org.semanticweb.owlapi.reasoner.InferenceType; 
import org.semanticweb.owlapi.reasoner.Node; 
import org.semanticweb.owlapi.reasoner.NodeSet; 
import org.semanticweb.owlapi.reasoner.OWLReasoner; 
import org.semanticweb.owlapi.reasoner.OWLReasonerConfiguration; 
import org.semanticweb.owlapi.reasoner.OWLReasonerFactory; 
import org.semanticweb.owlapi.reasoner.ReasonerProgressMonitor; 
import org.semanticweb.owlapi.reasoner.SimpleConfiguration; 
import org.semanticweb.owlapi.reasoner.structural.StructuralReasonerFactory; 
import org.semanticweb.owlapi.util.AutoIRIMapper; 
import org.semanticweb.owlapi.util.DefaultPrefixManager; 
import org.semanticweb.owlapi.util.InferredAxiomGenerator; 
import org.semanticweb.owlapi.util.InferredOntologyGenerator; 
import org.semanticweb.owlapi.util.InferredSubClassAxiomGenerator; 
import org.semanticweb.owlapi.util.OWLClassExpressionVisitorAdapter; 
import org.semanticweb.owlapi.util.OWLEntityRemover; 
import org.semanticweb.owlapi.util.OWLOntologyMerger; 
import org.semanticweb.owlapi.util.OWLOntologyWalker; 
import org.semanticweb.owlapi.util.OWLOntologyWalkerVisitorEx; 
import org.semanticweb.owlapi.util.PriorityCollection; 
import org.semanticweb.owlapi.util.SimpleIRIMapper; 
import org.semanticweb.owlapi.vocab.OWL2Datatype; 
import org.semanticweb.owlapi.vocab.OWLFacet; 
import org.semanticweb.owlapi.vocab.OWLRDFVocabulary; 
import org.slf4j.Logger; 
import org.slf4j.LoggerFactory; 

import uk.ac.manchester.cs.owlapi.modularity.ModuleType; 
import uk.ac.manchester.cs.owlapi.modularity.SyntacticLocalityModuleExtractor; 
@SuppressWarnings({ "javadoc", "null" }) 
public class test { 
    public static void main(String[] args) { 
     OWLOntologyManager m = OWLManager.createOWLOntologyManager(); 
     PriorityCollection<OWLOntologyIRIMapper> iriMappers = m.getIRIMappers(); 
     iriMappers.add(new AutoIRIMapper(new File("materializedOntologies"), 
       true)); 
     OWLOntology o = m.loadOntologyFromOntologyDocument(food); 
     assertNotNull(o); 
    } 
} 

я не знаю, что здесь не так, и я пытаюсь создать онтологию, если у вас есть образцы кодов поделиться. Я новичок в протеже, а также owlapi. Помогите пожалуйста

+0

Почему вы используете картограф? – Artemis

ответ

2

Загрузки онтологии с OWL-API:

// load file 
    File file = new File("Ontology.owl); 

    // loading the ontology 
    try { 
     OWLOntologyManager manager = OWLManager.createOWLOntologyManager(); 
     OWLOntology localOntology = manager.loadOntologyFromOntologyDocument(file); 

     //getting all axioms  
     Set<OWLAxiom> axSet= localOntology.getAxioms(); 

    } catch (OWLOntologyCreationException e) { 
     e.printStackTrace(); 
    } 
+0

спасибо я это сделать, но вывод на консоли не Истинный .this моего выхода и я думаю, что это неправильно – zahraTZ

+0

Не то, что он должен выглядеть. Вам нужно начать анализ набора и разбить его на то, что вы хотите. Если вам не нравится видеть IRI, вы можете легко удалить их. Посмотрите на веб-сайт OWL-API. В нем есть примеры, чтобы показать вам, как обращаться с данными. Если у вас есть дополнительные вопросы, напишите более подробный вопрос с тем, что вы ожидаете извлечь, и почему вы потерпели неудачу. Тогда мы можем помочь вам лучше. – Artemis

+0

спасибо, что это работа – zahraTZ