Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 调用sync_reasoner时出现Owlready2分析错误_Python_Ontology_Protege_Rdflib_Owlready - Fatal编程技术网

Python 调用sync_reasoner时出现Owlready2分析错误

Python 调用sync_reasoner时出现Owlready2分析错误,python,ontology,protege,rdflib,owlready,Python,Ontology,Protege,Rdflib,Owlready,本体是使用protege创建的,并使用owlready2库从数据库填充数据。现在这一行给出了以下错误: 同步推理器(我的世界) 这是我遇到的错误: 无法分析本体。找不到合适的解析器,或者解析失败。有关解释,请参见下面的解析器日志。 尝试了以下解析器: 1) RDFXMLParser 2) OWLXMLParser 3) OWLFunctionalSyntaxOWLParser 4) 斑鸠 5) OWLOBOParser 6) krss2owl语法分析器 7) 曼彻斯特综合分类法 详细日志: Pa

本体是使用protege创建的,并使用owlready2库从数据库填充数据。现在这一行给出了以下错误:

同步推理器(我的世界)

这是我遇到的错误:

无法分析本体。找不到合适的解析器,或者解析失败。有关解释,请参见下面的解析器日志。 尝试了以下解析器: 1) RDFXMLParser 2) OWLXMLParser 3) OWLFunctionalSyntaxOWLParser 4) 斑鸠 5) OWLOBOParser 6) krss2owl语法分析器 7) 曼彻斯特综合分类法

详细日志:
Parser:RDFXMLParser
org.xml.sax.SAXParseException;系统ID:file:///C:/Users/THARIN~2/AppData/Local/Temp/tmpin0r193y;行号:1;列数:8;元素类型“http:”后面必须跟属性规范“>”或“/>”。
-------------------------------------------------------------------------------- 
解析器:OWLXMLParser
org.xml.sax.SAXParseException;系统ID:file:///C:/Users/THARIN~2/AppData/Local/Temp/tmpin0r193y;行号:1;列数:8;元素类型“http:”后面必须跟属性规范“>”或“/>”。
-------------------------------------------------------------------------------- 
解析器:OWLFunctionalSyntaxOWLParser
在第1行第1列遇到“”。
他期望:
“本体论”。。。
(第0行)
-------------------------------------------------------------------------------- 
解析器:TurtleOntologyParser
uk.ac.manchester.cs.owl.owlapi.turtle.parser.ParseException:在第64行第1列遇到“<”。
他期望:
-------------------------------------------------------------------------------- 
解析器:OWLOBOParser
org.coode.owlapi.obo.parser.ParseException:在第941行第114列遇到“”。
我期待的是:
"[" ... 
... 
... 
... 
... 
... 
(第941行)
-------------------------------------------------------------------------------- 
解析器:KRSS2OWLParser
de.uulm.ecs.ai.owlapi.krssparser.ParseException:在第1行第1列遇到“>”。
他期望:
-------------------------------------------------------------------------------- 
解析器:ManchesterOWLSyntaxOntologyParser
在第1行第1列遇到。应为以下之一:
个人:
注释属性:
数据类型:
数据属性:
对象属性:
不相交属性:
ValuePartition:
等效等级:
进口:
前缀:
分离类:
类别:
同一个人:
不同的个人:
(第1行)
据我所知(我不是Python程序员),Owlready2使用的是HermiT reasoner 1.3.8版和嵌入式OWLAPI版本。这个版本非常古老,HermiT 1.3.8使用的是OWLAPI 3,它已经不受支持好几年了

本体中此部分的解析器错误:

<Movie rdf:about="#Wonder_Woman_">
  <isMadeIn rdf:resource="#Hong Kong"/>
</Movie>

<Country rdf:about="#Hong Kong">
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#NamedIndividual"/>
</Country>

允许解析器处理。长期来看,Owlready2应该更新到更新的HermiT版本。OWLAPI处理版本4中的文件,HermiT 1.3.8.413是Protege中使用的版本。

您可以发布文件的前十行吗?这些是OWLAPI解析中的错误,看起来本体文件或格式中存在错误是不受支持的。@Ignazio我用本体文件的一些行编辑了这个问题。我认为这就是正在分析的文件。许多解析器说第1行有一个“http”片段,这意味着文件应该以该片段开头。代码中还有什么可以更改该文件的吗?当我填充本体与mongodb数据。在此之前,当我手动放置实例时,它没有给出异常。本体与电影细节有关。在这种情况下,我们需要本体与mongodb数据的前十行
<Movie rdf:about="#Wonder_Woman_">
  <isMadeIn rdf:resource="#Hong Kong"/>
</Movie>

<Country rdf:about="#Hong Kong">
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#NamedIndividual"/>
</Country>
<Movie rdf:about="#Wonder_Woman_">
  <isMadeIn rdf:resource="#Hong_Kong"/>
</Movie>

<Country rdf:about="#Hong_Kong">
  <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#NamedIndividual"/>
</Country>