Re: shapes-ISSUE-91 (hsolbrig): Default Cardinality [SHACL Spec]

* Dimitris Kontokostas <> [2015-09-28 10:02+0300]
> On Mon, Sep 28, 2015 at 1:17 AM, Arthur Ryman <>
> wrote:
> > I vote -1 to defining optional values for any constraint.
> >
> > The current design is consistent in its treatment of absent
> > constraints, namely that they do not lead to any checks. It is
> > therefore inconsistent to say that if minCount or maxCount are absent
> > then they are in effect present with some default value. If is
> > especially inconsistent to assign default values that give a result
> > different than if the constraints were absent.
> >
> I agree with Arthur here, all constraints should be explicitly stated in
> the SHACL graph.

The usual motivation for no-defaults is that what you learn from
inferencing can contradict what you understood with less or no
inferencing. A screw case in our example would be:

  my:minCard owl:samePropertyAs sh:minCount .
  my:FooShape sh:property [
      sh:predicate foaf: name ;
      my:minCard 2       # ooo, sneaky
    ] .

You'll note, however, that this screw case arises regardless of
whether the default min cardinality is 0 or 1. I think we should just
say "a SHACL engine is not expected to perform any inferencing" and
pick defaults that are attractive to folks working in e.g. JSON-LD.

I maintain my support for default [1..1] cardinality. Regardless, we
need a way to express an unlimited max cardinality.

> - Dimitris
> -- 
> Dimitris Kontokostas
> Department of Computer Science, University of Leipzig & DBpedia Association
> Projects:, http://,
> Homepage:
> Research Group:


office: +1.617.599.3509
mobile: +

Feel free to forward this message to any list for any purpose other than
email address distribution.

There are subtle nuances encoded in font variation and clever layout
which can only be seen by printing this message on high-clay paper.

Received on Monday, 28 September 2015 08:26:15 UTC