SHACL is a W3C-proposed schema language for expressing structural constraints on RDF graphs. Recent work on formalizing this language has revealed a striking relationship to description logics. SHACL expressions can use three fundamental features that are not so common in description logics. These features are equality tests; disjointness tests; and closure constraints. Moreover, SHACL is peculiar in allowing only a restricted form of expressions (so-called targets) on the left-hand side of inclusion constraints. The goal of this paper is to obtain a clear picture of the impact and expressiveness of these features and restrictions. We show that each of the four features is primitive: using the feature, one can express boolean queries that are not expressible without using the feature. We also show that the restriction that SHACL imposes on allowed targets is inessential, as long as closure constraints are not used. In addition, we show that enriching SHACL with "full" versions of equality tests, or disjointness tests, results in a strictly more powerful language.
翻译:SHACL是W3C提出的一种用于表达RDF图结构约束的模式语言。近期对该语言形式化的研究揭示了其与描述逻辑之间的显著关系。SHACL表达式可使用三类在描述逻辑中不常见的核心特征:相等性测试、不相交性测试以及闭包约束。此外,SHACL的特殊之处在于仅允许在包含约束左侧使用受限形式的表达式(即所谓的目标约束)。本文旨在清晰认识这些特征与限制的影响及表达能力。我们证明每个特征都具有原始性:使用该特征可表达那些不使用该特征则无法表达的布尔查询。同时表明,只要不使用闭包约束,SHACL对允许目标的限制并非本质性的。此外,我们还证明,将SHACL扩展为包含"完全"版本的相等性测试或不相交性测试,会显著增强语言的表达能力。