使用owlapi在eclipse中创建或加载本体
大家好,我在protege中编写了我的本体,并将owlapi添加到我的eclipse项目中。我想用以下代码将我自己的本体添加到eclipse项目中:使用owlapi在eclipse中创建或加载本体,eclipse,protege,owl-api,Eclipse,Protege,Owl Api,大家好,我在protege中编写了我的本体,并将owlapi添加到我的eclipse项目中。我想用以下代码将我自己的本体添加到eclipse项目中: import static org.junit.Assert.*; import static org.semanticweb.owlapi.search.Searcher.annotations; import java.io.ByteArrayOutputStream; import java.io.File; import java.uti
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);
}
}
import static org.junit.Assert.*;
导入静态org.semanticweb.owlapi.search.Searcher.annotations;
导入java.io.ByteArrayOutputStream;
导入java.io.File;
导入java.util.ArrayList;
导入java.util.Collection;
导入java.util.Collections;
导入java.util.HashSet;
导入java.util.List;
导入java.util.Set;
导入javax.annotation.Nonnull;
导入org.junit.*;
导入org.junit.Rule;
导入org.junit.Test;
导入org.junit.rules.temporary文件夹;
导入org.semanticweb.owlapi.apibinding.OWLManager;
导入org.semanticweb.owlapi.formats.OWLXMLDocumentFormat;
导入org.semanticweb.owlapi.io.StreamDocumentTarget;
导入org.semanticweb.owlapi.io.StringDocumentSource;
导入org.semanticweb.owlapi.io.StringDocumentTarget;
导入org.semanticweb.owlapi.model.AddAxiom;
导入org.semanticweb.owlapi.model.AddOntologyAnnotation;
导入org.semanticweb.owlapi.model.IRI;
导入org.semanticweb.owlapi.model.owlanotation;
导入org.semanticweb.owlapi.model.OWLAnnotationProperty;
导入org.semanticweb.owlapi.model.OWLAxiom;
导入org.semanticweb.owlapi.model.OWLClass;
导入org.semanticweb.owlapi.model.owlclassartionaxiom;
导入org.semanticweb.owlapi.model.OWLClassExpression;
导入org.semanticweb.owlapi.model.OWLDataFactory;
导入org.semanticweb.owlapi.model.OWLDataProperty;
导入org.semanticweb.owlapi.model.OWLDataPropertyAssertionAxiom;
导入org.semanticweb.owlapi.model.OWLDataPropertyRangeAxiom;
导入org.semanticweb.owlapi.model.OWLDataRange;
导入org.semanticweb.owlapi.model.OWLDatatype;
导入org.semanticweb.owlapi.model.OWLDatatypeDefinitionAxiom;
导入org.semanticweb.owlapi.model.OWLDatatypeRestriction;
导入org.semanticweb.owlapi.model.owleEntity;
导入org.semanticweb.owlapi.model.OWLException;
导入org.semanticweb.owlapi.model.OWLIndividual;
导入org.semanticweb.owlapi.model.OWLLiteral;
导入org.semanticweb.owlapi.model.OWLNamedIndividual;
导入org.semanticweb.owlapi.model.OWLObjectProperty;
导入org.semanticweb.owlapi.model.owlObjectPropertyServationAXIOM;
导入org.semanticweb.owlapi.model.OWLObjectPropertyExpression;
从导入org.semanticweb.owlapi.model.owlObjectSomeValues;
导入org.semanticweb.owlapi.model.OWLOntology;
导入org.semanticweb.owlapi.model.owletologyCreationException;
导入org.semanticweb.owlapi.model.OWLOntologyIRIMapper;
导入org.semanticweb.owlapi.model.owletologyManager;
导入org.semanticweb.owlapi.model.owlsubassofaxiom;
导入org.semanticweb.owlapi.model.PrefixManager;
导入org.semanticweb.owlapi.model.RemoveAxiom;
导入org.semanticweb.owlapi.model.SWRLAtom;
导入org.semanticweb.owlapi.model.SWRLClassAtom;
导入org.semanticweb.owlapi.model.SWRLObjectPropertyAtom;
导入org.semanticweb.owlapi.model.SWRLRule;
导入org.semanticweb.owlapi.model.SWRLVariable;
导入org.semanticweb.owlapi.profiles.OWL2DLProfile;
导入org.semanticweb.owlapi.profiles.OWLProfileReport;
导入org.semanticweb.owlapi.profiles.OWLProfileViolation;
导入org.semanticweb.owlapi.reasoner.推论类型;
导入org.semanticweb.owlapi.reasoner.Node;
导入org.semanticweb.owlapi.reasoner.NodeSet;
导入org.semanticweb.owlapi.reasoner.OWLReasoner;
导入org.semanticweb.owlapi.reasoner.OWLReasonerConfiguration;
导入org.semanticweb.owlapi.reasoner.OWLReasonerFactory;
导入org.semanticweb.owlapi.reasoner.ReasonerProgressMonitor;
导入org.semanticweb.owlapi.reasoner.SimpleConfiguration;
导入org.semanticweb.owlapi.reasoner.structural.StructuralReasonerFactory;
导入org.semanticweb.owlapi.util.AutoIRIMapper;
导入org.semanticweb.owlapi.util.DefaultPrefixManager;
导入org.semanticweb.owlapi.util.inferredaxiogenerator;
导入org.semanticweb.owlapi.util.InferredOntologyGenerator;
导入org.semanticweb.owlapi.util.inferredSubassaxiomGenerator;
导入org.semanticweb.owlapi.util.OWLClassExpressionVisitorAdapter;
导入org.semanticweb.owlapi.util.owletityRemover;
导入org.semanticweb.owlapi.util.owlonologymerger;
导入org.semanticweb.owlapi.util.OWLOntologyWalker;
导入org.semanticweb.owlapi.util.owlontologyWalkServiceSitorex;
导入org.semanticweb.owlapi.util.PriorityCollection;
导入org.semanticweb.owlapi.util.simplerimapper;
导入org.semanticweb.owlapi.vocab.OWL2Datatype;
导入org.semanticweb.owlapi.vocab.owlefacet;
导入org.semanticweb.owlapi.vocab.owlrdfvaculary;
导入org.slf4j.Logger;
导入org.slf4j.LoggerFactory;
导入uk.ac.manchester.cs.owlapi.modularity.ModuleType;
导入uk.ac.manchester.cs.owlapi.modularity.SyntacticLocalityModuleExtractor;
@SuppressWarnings({“javadoc”,“null”})
公开课考试{
公共静态void main(字符串[]args){
OWLOntologyManager m=OWLManager.createOWLOntologyManager();
PriorityCollection iriMappers=m.getIRIMappers();
添加(新的自动虹膜映射器(新文件(“物化生物学”),
是的);
OWLO=m.loadOntologyFromOntologyDocument(食品);
资产不为空(o);
}
}
我不知道这里出了什么问题,如果您有共享的示例代码,我也尝试创建一个本体。我是新来的学生,也是owlapi。请提供帮助使用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();
}
//加载文件
File File=新文件(“Ontology.owl”);
//加载本体
试一试{
OWLOntologyManager=OWLManager.createOWLOntologyManager();
OWLOntology localOntology=manager.loadOntologyFromOntologyDocument(文件);
//获取所有公理
Set axSet=localOntology.getAxioms();
}捕获(OWLOntologyCreationException e){
e、 printStackTrace();
}
为什么要使用映射器?谢谢,我这样做了,但控制台输出不是真的。这是我的输出,我认为这是错误的,不是它应该是什么样子。您需要