2013-05-19 3 views
1

DBpedia에서 가져온 RDF 파일 세트를 Sesame 리포지토리에 업로드하려고합니다. 문제는 : 거의 모든 RDF 파일, 참깨 다음과 같은 오류 제공 : 몇 가지 조사 후DBpedia에서 RDF 파일을 업로드 할 때 Sesame 2.7에서 ParserConfig 오류가 발생했습니다.

'whatever_file_is': 'some_value' was not recognised, and could not be verified, with datatype http://dbpedia.org/datatype/rod [line 30121, column 123] 

을, 나는 울부 짖는 소리 (http://mappings.dbpedia.org/index.php/Datatype:Rod에서 발췌) 말하는대로 DBpedia에서, DBpedia 온톨로지의 데이터 유형을 게시하지 않습니다 발견 :

Please note: datatypes are not (yet) copied from the DBpedia Mappings Wiki to the DBpedia ontology. They are hard-coded in OntologyDatatypes.scala and were added to the wiki for reference. Adding a datatype in the wiki does not change the ontology and leads to an error messsage for properties that use such a datatype.

그래서 내가 맞으면 참깨는 이러한 데이터 유형을 확인하려고 할 때 실패합니다. 하지만 RDF 파일을 업로드해야합니다.

내가 자바를 사용하고 따라

, 나는 참깨 검증 무시하도록하려면 다음 코드를 시도 :

RepositoryConnection con = repository.getConnection(); 

Set<RioSetting<?>> set = new HashSet<>(); 
set.add(BasicParserSettings.VERIFY_DATATYPE_VALUES); 
con.getParserConfig().setNonFatalErrors(set); 

을하지만 오류가 계속 나타납니다.

Exception in thread "main" java.lang.UnsupportedOperationException 
    at java.util.AbstractCollection.add(AbstractCollection.java:252) 
    at org.openrdf.rio.ParserConfig.addNonFatalError(ParserConfig.java:134) 
    at control.RepositoryControl.loadIntoRepository(RepositoryControl.java:177) 

누군가 내가 DBpedia는 참깨에 업로드에서 RDF 파일을 얻기 위해 무엇을해야하는지 어떤 생각을 가지고 이상하게하는 java.lang.UnsupportedOperationException주는,

RepositoryConnection con = repository.getConnection(); 
con.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_DATATYPE_VALUES); 

그러나이 마지막 : 나는 또한 다음 코드를 시도 ?

감사합니다.

답변

3

세서미 2.7.1로 업그레이드 해보세요. 그것은 방금 built-in support for DBPedia datatypes와 함께 발표되었습니다.

또는이 2.7.0에 부착하는 경우, 대신이 작업을 수행 할 수 있어야한다 :

con.getParserConfig().setNonFatalErrors(new HashSet<RioSetting<?> 
     (Arrays.asList(BasicParserSettings.VERIFY_DATATYPE_VALUES, 
     BasicParserSettings.FAIL_ON_UNKNOWN_DATATYPES))); 

당신은 여전히 ​​알 수없는 데이터 유형에 대한 메시지가 표시 될 수 있습니다,하지만이 아닌 것 오류 대신 치명적인 경고.

출처 :

+0

감사합니다! 나는 그들이 참깨 2.7.1을 발표했다는 것을 몰랐다! 이 코드로 오류를 먼저 처리하고 작동하지 않으면 참깨를 업데이트합니다. 다시 한번 고마워! – Rick