在Web应用程序中,JavaScript客户端可以使用GraphQL查询服务器中的数据库。我想使用SPARQL查询执行相同的操作。但是,为了避免客户端可以访问属于另一个客户端的数据,必须将所有权信息添加到每个三元组中。这可以使用两种方法来完成:
命名图:每个用户都有自己的图,该图由其唯一的URI标识。当前的RDF和SPARQL标准支持命名图,但不支持support inference(包含)。
完成正确的权限(RDR):每个三元组都有第四个字段,可以在其中添加所有权信息(每个用户可以拥有自己的URI / id)。 RDR支持推理(蕴含),但是很少有三元组存储支持(例如:Blazegraph),并且它需要RDF* and SPARQL* models(尚无W3C标准)。
哪个选项最好?或者,换句话说,我没有列出主要的缺点/优势吗?我在三重店的经验有限。
我更喜欢基于标准的解决方案,但是推理支持是一个重要功能。是否有关于数据所有权的最佳实践规则?