2016-08-14 1 views
0

J'ai téléchargé le projet OWL API maven et j'ai ouvert l'implémentation par défaut de l'API OWL. Je veux juste charger une ontologie mais ça me donne une erreur.J'ai chargé l'ontologie d'un document d'ontologie à l'aide de l'API OWL

public static final IRI example_iri2 = IRI.create("http://mged.sourceforge.net/ontologies/MGEDOntology.owl"); 

public static void main(String[] arg) throws OWLOntologyCreationException { 
    OWLDataFactoryImpl factoryImpl = new OWLDataFactoryImpl(); 
    ReadWriteLock readWriteLock = new NoOpReadWriteLock(); 
    OWLOntologyManagerImpl managerImpl = new OWLOntologyManagerImpl(factoryImpl, readWriteLock); 
    OWLOntology ontology = managerImpl.loadOntology(example_iri2); 
} 

La sortie est:

 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". 
    SLF4J: Defaulting to no-operation (NOP) logger implementation 
    SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. 
    Exception in thread "main" org.semanticweb.owlapi.model.OWLOntologyFactoryNotFoundException: Could not find an appropriate factory to load ontology from ontology document: <http://mged.sourceforge.net/ontologies/MGEDOntology.owl> 
     at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:1048) 
     at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:935) 
     at uk.ac.manchester.cs.owl.owlapi.OWLOntologyManagerImpl.loadOntology(OWLOntologyManagerImpl.java:891) 
     at com.main.main.main(main.java:33) 
    ------------------------------------------------------------------------ 
    BUILD FAILURE 

Comment puis-je résoudre ce problème? J'ai essayé et ça ne marche pas.

File file = new File("pizza3.owl"); 
OWLOntology ontology = managerImpl.loadOntologyFromOntologyDocument(file); 
+1

Que signifie téléchargé? C'est un projet Maven, il est donc recommandé de l'utiliser via une dépendance Maven. L'ontologie a l'air correcte, donc je suppose que certaines bibliothèques vous manquent. Si vous n'utilisez pas Maven, vous devez ajouter tous les fichiers Jar API OWL à votre chemin de classe. – AKSW

+1

Et je vous suggère de suivre les exemples de l'API OWL: Un 'OWLOntologyManager' sera créé via' OWLOntologyManager manager = OWLManager.createOWLOntologyManager(); ' – AKSW

+0

@AKSW non j'ai ajouté toutes les dépendances – NASRIN

Répondre

0

Le gestionnaire que vous avez créé doit être configuré.

La méthode recommandée est OWLManager, dans le module d'étalonnage.

Les dépendances recommandées à utiliser sont les modules de distribution ou d'osgidistribution.