我正在使用规则集OWL-RL优化,并使用elasticsearch连接器进行搜索。
我想要的是识别实体具有相同的值,并将所有值合并到es中的一个文档中。我通过以下方式完成此操作:
Person - hasPhone - Phone和have InverseFunctionalProperty on relation hasPhone
示例:
http://example.com#1 http://example.com#hasPhone http://example.com#111.
http://example.com#2 http://example.com#hasPhone http://example.com#111.
=> #1猫头鹰:和#2一样
当我按ES进行搜索时,我得到两个结果,分别是#1和#2。但是当我修复连接器时,我只得到一个结果(这就是我想要的)。
1./我想问一下,有没有办法让ES连接器自动合并文档并删除之前的文档?,因为我不想一直修复连接器。当我设置manageIndex:false时,它总是在搜索时得到两个结果。
2./如何只接收一条记录,排除其他记录与SPARQL的记录相同。
3./ owl有没有更好的规则集:和InverseFunctionalProperty一样可供参考?
发布于 2020-09-16 23:32:23
sameAs引起的合并(smushing),这就是您需要重新构建的原因。如果这是一个重要案例,我可以为您发布改进问题,但请向graphdb-support和vladimir.alexiev发送电子邮件,说明您的业务案例(并链接到此问题)对于?x <http://example.com#hasPhone> <http://example.com#111>这样的查询,如果您为存储库(默认情况下)启用了"sameAs
InverseFunctionalProperty的规则集有OWL-RL、OWL-QL、rdfsPlus和它们的优化变体。)https://stackoverflow.com/questions/61483653
复制相似问题