我刚进入知识图/本体区域,并对其进行查询提问。
知识图/本体是在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
我想在本例中的最终应用程序中,用户将进行查询&#34;谁在IBM工作?#34;?我如何将这样的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数据,而不是系统开发人员?