我刚刚进入知识图/本体领域并有一个问题要查询。
知识图/本体构建在 RDF 中,对 RDF 的查询由 SPARQL 语言完成。例如,“查找具有给定对象属性的所有主题”
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX bc: <http://www.base22.com/ontologies/2010/5/bc.owl#>
SELECT ?subject
WHERE { ?subject bc:hasEmployer <http://www.base22.com/ontologies/2010/5/my-contacts.owl#IBM> } LIMIT 100
我想在这个例子中的最终应用程序中,用户会查询“谁在 IBM 工作”?如何将这样的 NL 查询转换为 SPARQL 查询?
在 Google 的知识图查询 API 中,举了一个例子:
https://kgsearch.googleapis.com/v1/entities:search?query=taylor+swift&key=API_KEY&limit=1&indent=True
此查询返回 Swift Taylor 的详细信息。我不确定 Google Knowledge 是否也存储为 RDF 三元组,因此需要 SPARQL 转换。另外,它没有给出如何查询属性限制(关系)的示例,这似乎是 RDF 数据的更典型的查询类型。
通常,最终用户而不是系统开发人员如何使用自然语言查询 RDF 数据?