插入Protege以创建/编辑自旋约束和构造函数



是否有插件或其他手段来创建和编辑protege中的sparql/spin约束和构造函数?

我理解,要捕获RDF中的旋转约束,需要对询问或构造查询的SPARQL代码进行解析和编码。它不是作为不透明的字符串存储的。因此,似乎需要一些具有SPARQL和旋转知识的插件。

我已经从Topbraid Composer中加载了RDF,其中包括旋转约束4.3.0,并且似乎将约束视为注释,但我似乎找不到所有细节,包括所有基础SPARQL代码,包括所有细节。我确实在文本编辑RDF文件时看到了。

从广义上讲,我试图找到一种创建/编辑旋转约束和构造函数并将其加载到芝麻中以使它们在我的课程实例化的个人上操作的方法。我发布了另一个有关Topbraid作曲家到芝麻的路径的问题。我试图使我的问题更具体,因为我是堆栈溢出的新手。

顺便说一句,不,我不想使用SWRL。我在表达使用SWRL所需的约束时遇到了困难。我成功使用了sparql。

谢谢。

在某些版本中,Topbraid Composer默认情况下将存储RDF中的旋转约束。鉴于查询存储为RDF三元组,因此将它们存储在任何RDF数据存储中,都应该没有问题。应用自旋约束是一个不同的问题,因为系统将需要知道如何解释不同旋转属性的查询。

您确定您无法在Protégé或芝麻中"看到"它们?约束使用属性spin:constraint在类上定义,应以BNODE的形式出现。确保还导入http://spinrdf.org/spin,或至少定义一个名为 spin:constraint的属性。至少,以下内容应始终工作以找到您的约束:

SELECT ?constraint ?class
WHERE {
   ?class <http://spinrdf.org/spin#constraint> ?constraint
}

...其中 ?constraint被绑定到代表rdf和 ?class中约束的bnode,是定义的限制。

另外,如果您宁愿将约束存储为SPARQL字符串,请参见首选项> Topbraid Composer>旋转,并选中"生成SP:TEXT:TEXT ..."中的一个框。然后,您可以通过以下查询获取查询文本:

SELECT ?query ?class
WHERE {
   ?class <http://spinrdf.org/spin#constraint> ?constraint .
   ?constraint <http://spinrdf.org/sp#text> ?query
}

最新更新