2010-06-12 2 views
2

Jena를 사용하여 Java에서 OWL/XML 파일을 읽는 데 문제가 있습니다.OWL/XML 읽기 문제

나는 RDF/XML 파일을 읽을 아무 문제가 없지만, 내가 Protege는에서 OWL/XML 파일을 생성하고 읽으려고 할 때마다, 자바에서는이 오류 제공 : 는 [주] (RDFDefaultErrorHandler.java:36) 경고를 스레드에서 예외 com.hp.hpl.jena.rdf.arp.impl.XMLHandler.endElement에서 "주요"java.lang.NullPointerException이 (XMLHandler.java:143)

내가 RDF를 검색하는 데 사용하는 코드/XML은 아래와 같습니다.

OntModel ontModel = ModelFactory.createOntologyModel(); 
InputStream in = FileManager.get().open(inputFileName); 
    if (in == null) { 
     throw new IllegalArgumentException("File: " + inputFileName + " not found"); 
    } 
    ontModel.read(in, ""); 

이 코드는 RDF/XML과 완벽하게 작동합니다. 그러나 OWL/XML을 읽을 수는 없습니다. 나는 인터넷을 보았고 아무것도 찾을 수 없었다. 누군가가 나를 보여 주면 나는 정말로 감사 할 것입니다. 많은 감사

답변

2

Jena는 OWL/XML을 지원하지 않습니다. RDF/XML, 거북 (a.k.a. N3) 및 N-Triples에 대한 독자와 함께 제공됩니다. 지원되는 형식 목록은 예를 들어 here을 참조하십시오.

+0

OWL/XML 파일을 읽으려면 어떻게해야합니까? 이런 종류의 파일을 읽을 수있는 예나와 같은 도서관이 있습니까? 아니면, OWL/XML을 RDF/XML로 변환하는 것이 의미가 있나? – Mikae

+0

RDF/XML 만 사용하십시오. OWL/XML이 표현할 수있는 모든 것을 표현할 수 있다고 확신합니다. – cygri

3

OWL/XML의 경우 OWL-API을 사용하십시오.

+0

예, 저는 OWL-API를 사용했으며 완벽하게 작동합니다. 귀중한 조언, Kaarel 및 cygi에 감사드립니다. – Mikae

0

여기에서 좋은 답변을 찾을 수 있습니다. http://answers.semanticweb.com/questions/15004/using-jena-to-access-an-owlxml-file-made-from-protege

  • 나는 4 대답에서 제공하는 코드를 테스트하고 그것은 나를 100 % 작동합니다. 나는 당신을 위해 대답을 여기에 복사했습니다.

    String inputFileName = "D:\Ontologia\OntoSME_V7.owl"; 
    
    OntModel onto = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM, null); 
    
    try { 
        InputStream in = FileManager.get().open(inputFileName); 
        onto.read(in, "RDF/XML"); 
    } catch (JenaException je) { 
        System.out.println("ERROR" + je.getMessage()); 
        je.printStackTrace(); 
        System.exit(0); 
    } 
    

    당신은 RDF/XML 형식으로 파일을 저장하고 위의 기술로 파일을 읽으려면 protege를 사용할 수 있습니다.