YAGO知识图中的类的格式为wordnet_XXX_YYY,其中XXX是类的名称,而YYY是wordnet中的同义词集ID。因此,例如,类Airport的URI是http://yago-knowledge.org/resource/wordnet_airport_102692232

因此,由于单词的含义不同,根据含义,YAGO可能具有许多具有相同XXX和不同YYY的类。

给定YYY,如何找到单词的定义?在他们的网站https://www.mpi-inf.mpg.de/departments/databases-and-information-systems/research/yago-naga/yago/faq/上,它说YYY是同义词集ID,但是该工具返回airport.n.01作为同义词集ID。

我想念什么?

最佳答案

您必须使用YAGO准则在计算机中运行SPARQL查询,以从YAGO本体中提取信息。
对于您的问题,我希望以下python代码能为您提供所需的结果。



```
from SPARQLWrapper import SPARQLWrapper, JSON
sparql.setQuery("""
    select  *
where {
        <http://yago-knowledge.org/resource/wordnet_XXX_YYY> <http://yago-knowledge.org/resource/hasGloss> ?GlossValues.
      }
    """)
sparql.setReturnFormat(JSON)
results = sparql.query().convert()
#print(results)

for result in results["results"]["bindings"]:
    print(result)
```

10-08 17:01