If you are using hasValue restriction on a datatype property, then the value in the restriction must be a literal. Nothing else would make sense - irrespective of the species of OWL. If you want to use a resource in this restriction, then it should be an object property. This would also be true if you were using one of the built-in types as a value e.g., xsd:string in owl:hasValue restrictionbecause this restriction says that the value of the property = xsd:string, not that the type of the value is xsd:string.
If you were to use allValuesFrom, then would be saying that the type of values must meet the constraint, so in this case, you can set the restriction to your new datatype even if the restricted property was a datatype property. I read your explanations and I continue to find the modeling approach you are describing confusing and obscure. You are not using the standard according to its entailed semantics or the typical practices. The meaning of OWL statements are defined by the inferences they produce. Anyone who would try to interpret your model using normal expectation would come to the wrong assumptions about what it is trying to say and how to use it. Whether in the end, what you produces passes the criteria of being in DL or not, it is irrelevant. It would largely depend on the data. If you use allValuesFrom, but never have any actual values for bs:quantityKind, then there isn’t anything for the validation to be concerned about. In the end, it is all RDF and one can say anything they want in RDF. You could decide to treat OWL simply as a vocabulary that gives you some language elements that you are using in a way you decide, not following any standard semantics. However, my advise would be to not do this. If, for whatever reason, the standard use does not work for you, I would advise to create your own language and not use OWL namespace. You could define your own my:hasValue and use it to mean anything you want. Then, everyone would be clear that they should not assume OWL semantic, but need to read and follow the definitions you supply for this property. > On Jul 10, 2019, at 11:36 AM, 'Bohms, H.M. (Michel)' via TopBraid Suite Users > <[email protected]> wrote: > > > please reconsider.... > > it is exactly related with the issue I had earlier with the quotes when > > doing a hasValue constraint...I wanted without quotes (meta) but then I > > needed an allvaluesfrom constraint...) -- 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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/topbraid-users/2B0CD85D-19B6-476A-AB8C-E736060D5D92%40topquadrant.com. For more options, visit https://groups.google.com/d/optout.
