如果以Turtle格式保存的本体(使用OWLAPI)使用一组前缀,则导入的本体的import语句使用声明的前缀。因此使用前缀保存的本体不能被OWLAPI Turtle解析器读回。 import语句被标记为问题的根源。
假设Onto2导入Onto1和Onto3(请参阅下面的声明)。保存Onto2会产生以下结果:
@prefix : <http://example.com/ontology/Onto2#> .
@prefix OT1: <http://example.com/ontology/Onto1> .
@prefix OT2: <http://example.com/ontology/Onto2> .
@prefix OT3: <http://example.com/ontology/Onto3> .
<http://example.com/ontology/Onto2> rdf:type owl:Ontology ;
owl:imports OT1:# ,
OT3:# .
当OWLAPI Turtle解析器回读Onto2时,它会抱怨
org.openrdf.rio.RDFParseException: Expected '.', found 'O' [line 13]
导入声明在第13行。