Yes, agree. The actual meaning of OWL cardinality restrictions (given the Open World and Non Unique Name assumptions) and what would happen once you have data is yet another topic.
I intentionally did not say anything about this because I think I already said in the past something like “it does not really mean what you expect it does + you would need a DL reasoner which are not commercially available + you will likely to be surprised by results, anyhow -> use SHACL instead”. I did not want to continue to sound like a broken record :) > On Mar 25, 2020, at 11:03 AM, Michael DeBellis <mdebelli...@gmail.com> wrote: > > "Also, in OWL, constraints are constraints on classification, not constraints > on specifying values of properties. It is often precisely the people who are > slow in starting with SHACL that are not fully aware of this. " > > I just want to say how strongly I agree with what Jan said. I've used OWL > much more than SHACL and until recently I was one of those people who was > "slow in starting with SHACL" and didn't really understand why it was so > essential to use SHACL rather than OWL to express sata integrity constraints. > It was only when I started using knowledge graphs and OWL on a really large > scale project that I saw why SHACL makes so much more sense for such > constraints. As Jan pointed out for one thing OWL has the Open World > Assumption (OWA) so some constraints such as "ssnNumber must have a value" > are impossible to even define in OWL. But perhaps even more important is that > if an OWL reasoner finds a contradiction (e.g., a data property is typed for > xsd:integer and has a literal value) that is a contradiction and the reasoner > is useless until that contradiction is resolved. For very large data this is > a big problem because it is almost inevitable that some of your data is going > to violate some of your constraints and you don't want to have the reasoner > be useless until every contradiction is resolved. You need something like > SHACL that reports on the violations rather than a reasoner which creates an > inconsistent (and hence useless for reasoning) ontology. > > Michael > > On Wed, Mar 25, 2020 at 7:01 AM Jan Voskuil <jan.vosk...@taxonic.com > <mailto:jan.vosk...@taxonic.com>> wrote: > Also, in OWL, constraints are constraints on classification, not constraints > on specifying values of properties. It is often precisely the people who are > slow in starting with SHACL that are not fully aware of this. > > > > Even with simple cardinality specified to exactly 1, a resource can have none > or many values for the property. It just falls outside the definition of the > class. Violations are not violations of a constraint, but contradictions > between two or more propositions, neither of which is contested. Therefore, > in standards that intend to express data constraints, SHACL should be used > and not OWL. -j > > > > From: topbraid-users@googlegroups.com > <mailto:topbraid-users@googlegroups.com> <topbraid-users@googlegroups.com > <mailto:topbraid-users@googlegroups.com>> On Behalf Of Irene Polikoff > Sent: 25 March 2020 14:41 > To: topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com> > Subject: Re: [topbraid-users] question on restriction > > > > Can you use cardinality instead of qualified cardinality? Depends on what you > want to say. > > > > Qualified cardinality 1, as you probably know, means that exactly 1 value has > to be decimal, other values can be of another data type. While simple > cardinality says that the total number of values, irrespective of what kind, > has to be 1. > > > > > On Mar 25, 2020, at 4:21 AM, 'Bohms, H.M. (Michel)' via TopBraid Suite Users > <topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com>> > wrote: > > > > I know, the question was specifically for OWL. > > Some of the involved parties have tools that do not support SHACL. > > > > We cannot force them (now) to SHACL-only mode. > > > > Can I do: > > bs:QuantityValue > > rdf:type owl:Class ; > > rdfs:subClassOf owl:Thing ; > > rdfs:subClassOf [ > > rdf:type owl:Restriction ; > > owl:allValuesFrom xsd:decimal ; > > owl:onProperty rdf:value ; > > ] ; > > rdfs:subClassOf [ > > rdf:type owl:Restriction ; > > owl:cardinality "1"^^xsd:nonNegativeInteger ; > > owl:onProperty rdf:value ; > > ] ; > > skos:prefLabel "kwantiteitwaarde"@nl ; > > skos:prefLabel "quantity value"@en ; > > . > > > > With same effect? > > > > > > > > > > > > Dr. ir. H.M. (Michel) Böhms > Senior Data Scientist > > > > T +31888663107 > M +31630381220 > E michel.bo...@tno.nl <mailto:michel.bo...@tno.nl> > Location > <https://www.google.com/maps/place/TNO+-+Locatie+Delft+-+Stieltjesweg/@52.000788,4.3745183,17z/data=!3m1!4b1!4m5!3m4!1s0x47c5b58c52869997:0x56681566be3b8c88!8m2!3d52.000788!4d4.376707> > > > > <image001.gif> <http://www.tno.nl/> > This message may contain information that is not intended for you. If you are > not the addressee or if this message was sent to you by mistake, you are > requested to inform the sender and delete the message. TNO accepts no > liability for the content of this e-mail, for the manner in which you use it > and for damage of any kind resulting from the risks inherent to the > electronic transmission of messages. > > > > > > > > > > Van: topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com> > <topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com>> > Namens Holger Knublauch > Verzonden: Wednesday, March 25, 2020 8:47 AM > Aan: topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com> > Onderwerp: Re: [topbraid-users] question on restriction > > > > Hi Michel, > > we have (long) moved away from OWL 2 and suggest to use SHACL for these use > cases. The example with rdf:value looks like sh:minCount 1; sh:maxCount 1; > sh:datatype xsd:decimal. > > Holger > > > > On 25/03/2020 17:25, 'Bohms, H.M. (Michel)' via TopBraid Suite Users wrote: > > Ahhhh, ok! > > > > The next question would than be: why is that? > > Isn’t the example a valid case? > > > > In the primer I see only qualifiedCardinality examples with > “onClass”.....maybe this simply should not work for qualified datatype > properties? > > > > Any other way to say that my class has exactly one attribute with type > xsd:decimal? > > Like normal cardinality + some or all valuesfrom? > > > > Thx a lot, > > Michel > > > > > > > > > > > > Dr. ir. H.M. (Michel) Böhms > Senior Data Scientist > > > > > T +31888663107 > M +31630381220 > E michel.bo...@tno.nl <mailto:michel.bo...@tno.nl> > Location > <https://www.google.com/maps/place/TNO+-+Locatie+Delft+-+Stieltjesweg/@52.000788,4.3745183,17z/data=!3m1!4b1!4m5!3m4!1s0x47c5b58c52869997:0x56681566be3b8c88!8m2!3d52.000788!4d4.376707> > > > > <image001.gif> <http://www.tno.nl/> > This message may contain information that is not intended for you. If you are > not the addressee or if this message was sent to you by mistake, you are > requested to inform the sender and delete the message. TNO accepts no > liability for the content of this e-mail, for the manner in which you use it > and for damage of any kind resulting from the risks inherent to the > electronic transmission of messages. > > > > > > > > > > Van: topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com> > <topbraid-users@googlegroups.com> <mailto:topbraid-users@googlegroups.com> > Namens Holger Knublauch > Verzonden: Tuesday, March 24, 2020 11:09 PM > Aan: topbraid-users@googlegroups.com <mailto:topbraid-users@googlegroups.com> > Onderwerp: Re: [topbraid-users] question on restriction > > > > This OWL 2 feature is only superficially supported by TopBraid and will not > be supported in the future. > > Holger > > > > On 25/03/2020 05:07, 'Bohms, H.M. (Michel)' via TopBraid Suite Users wrote: > > bs:QuantityValue > > rdf:type owl:Class ; > > rdfs:subClassOf owl:Thing ; > > rdfs:subClassOf [ > > rdf:type owl:Restriction ; > > owl:onClass xsd:decimal ; > > owl:onProperty rdf:value ; > > owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; > > ] ; > > skos:prefLabel "kwantiteitwaarde"@nl ; > > skos:prefLabel "quantity value"@en ; > > . > > > > Someone said: red should be owl:onDatatype but when I do that I get error > missing class: > > <image002.png> > > ??? > > > > > > > > > > > > Dr. ir. H.M. (Michel) Böhms > Senior Data Scientist > > > > > > T +31888663107 > M +31630381220 > E michel.bo...@tno.nl <mailto:michel.bo...@tno.nl> > Location > <https://www.google.com/maps/place/TNO+-+Locatie+Delft+-+Stieltjesweg/@52.000788,4.3745183,17z/data=!3m1!4b1!4m5!3m4!1s0x47c5b58c52869997:0x56681566be3b8c88!8m2!3d52.000788!4d4.376707> > > > > <image001.gif> <http://www.tno.nl/> > This message may contain information that is not intended for you. If you are > not the addressee or if this message was sent to you by mistake, you are > requested to inform the sender and delete the message. TNO accepts no > liability for the content of this e-mail, for the manner in which you use it > and for damage of any kind resulting from the risks inherent to the > electronic transmission of messages. > > > > > > > > > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/f7c585569482452db12ab76a4ed8614d%40tno.nl > > <https://groups.google.com/d/msgid/topbraid-users/f7c585569482452db12ab76a4ed8614d%40tno.nl?utm_medium=email&utm_source=footer>. > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/967752e4-a1d4-10b0-cb98-be91a3486c7c%40topquadrant.com > > <https://groups.google.com/d/msgid/topbraid-users/967752e4-a1d4-10b0-cb98-be91a3486c7c%40topquadrant.com?utm_medium=email&utm_source=footer>. > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/e971ce4c42f84094a0ecda6e9d8338f4%40tno.nl > > <https://groups.google.com/d/msgid/topbraid-users/e971ce4c42f84094a0ecda6e9d8338f4%40tno.nl?utm_medium=email&utm_source=footer>. > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/4fd71ad0-a41c-2019-4139-d15751837963%40topquadrant.com > > <https://groups.google.com/d/msgid/topbraid-users/4fd71ad0-a41c-2019-4139-d15751837963%40topquadrant.com?utm_medium=email&utm_source=footer>. > > > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/959124700eab4a68bd0ad350e973965e%40tno.nl > > <https://groups.google.com/d/msgid/topbraid-users/959124700eab4a68bd0ad350e973965e%40tno.nl?utm_medium=email&utm_source=footer>. > > > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/11A9C901-19FB-4E7D-A6B5-359ACF1ADA97%40topquadrant.com > > <https://groups.google.com/d/msgid/topbraid-users/11A9C901-19FB-4E7D-A6B5-359ACF1ADA97%40topquadrant.com?utm_medium=email&utm_source=footer>. > > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/DB8PR03MB597715C34CDC0337546F3EC2E9CE0%40DB8PR03MB5977.eurprd03.prod.outlook.com > > <https://groups.google.com/d/msgid/topbraid-users/DB8PR03MB597715C34CDC0337546F3EC2E9CE0%40DB8PR03MB5977.eurprd03.prod.outlook.com?utm_medium=email&utm_source=footer>. > > -- > You received this message because you are subscribed to the Google Groups > "TopBraid Suite Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to topbraid-users+unsubscr...@googlegroups.com > <mailto:topbraid-users+unsubscr...@googlegroups.com>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/topbraid-users/CALGFikevYAVMQUMmL%3D_czZoYmgC06LpUgpnSgMwCPixxYa9utg%40mail.gmail.com > > <https://groups.google.com/d/msgid/topbraid-users/CALGFikevYAVMQUMmL%3D_czZoYmgC06LpUgpnSgMwCPixxYa9utg%40mail.gmail.com?utm_medium=email&utm_source=footer>. -- You received this message because you are subscribed to the Google Groups "TopBraid Suite Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to topbraid-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/ABE47EBB-9FE9-4E9A-BA79-0E373EE1D085%40topquadrant.com.