从SHACL生成SPARQL查询

从SHACL生成SPARQL查询,sparql,rdf,jena,rdf4j,shacl,Sparql,Rdf,Jena,Rdf4j,Shacl,我有一种特殊情况,需要根据传入数据的SHACL模式自动生成SPARQL查询。我想知道Jena或任何其他语义工具/库是否可以帮助做到这一点 我在Jena代码上看到了一些东西,但从文档中看不到任何官方信息 在我开始尝试开发自己的解决方案之前,我想知道是否已经有一些现有的库在进行这项工作,或者是否正在进行这项工作 顺便说一句,耶拿没有这样的内置转换器。您可以在的上询问是否有这样一种实用方法。您能详细说明一下您的用例吗?生成的SPARQL查询应该做什么?验证以前上传的数据,识别与给定SHACL形状匹配的

我有一种特殊情况,需要根据传入数据的SHACL模式自动生成SPARQL查询。我想知道Jena或任何其他语义工具/库是否可以帮助做到这一点

我在Jena代码上看到了一些东西,但从文档中看不到任何官方信息


在我开始尝试开发自己的解决方案之前,我想知道是否已经有一些现有的库在进行这项工作,或者是否正在进行这项工作

顺便说一句,耶拿没有这样的内置转换器。您可以在的上询问是否有这样一种实用方法。您能详细说明一下您的用例吗?生成的SPARQL查询应该做什么?验证以前上传的数据,识别与给定SHACL形状匹配的资源,…?我们正在尝试构建一个通用数据提取器。我们获取数据,而不是为特定数据编写硬查询,我们希望使用该数据的shacl模型来构建该数据的查询。这样,我们的流程将完全由模型驱动。另一种选择是,我们查看shacl模型,然后为我们得到的每个模型中的每个实体编写特定的查询。因此,在某种意义上,我们希望与验证器一样深入,但目的是获取实际数据,而不是进行验证valaidation@MaatDeamon我只考虑了5秒钟,但是考虑到SHACL是RDF,您可以将它加载到存储中并查询它。然后,这些查询的结果可以驱动编写您想要执行的实际数据查询。在RDF4J、Jena或任何rdf框架/数据库中都应该是可能的。需要探索的东西,但考虑到shacl的复杂性,现在可能总是很容易,但如果我保持shacl本体的简单,这可能确实可行。