One part of issue #4 is to be able to declare that the combination of predicate/language tag must be unique.
For example, to declare that the values of rdfs:label must be any language tagged string but that there must be only one per language.
The mechanism to solve this feature can be the same as the mechanism to declare uniqueness. So, once we solve issue #2, we will probably solve this issue too.
Anyway, I think it is better to keep the issues separate in case we want to have a specific solution for this use case as is the case for SHACL and their sh:uniquelang constraint component.
One part of issue #4 is to be able to declare that the combination of predicate/language tag must be unique.
For example, to declare that the values of
rdfs:label
must be any language tagged string but that there must be only one per language.The mechanism to solve this feature can be the same as the mechanism to declare uniqueness. So, once we solve issue #2, we will probably solve this issue too.
Anyway, I think it is better to keep the issues separate in case we want to have a specific solution for this use case as is the case for SHACL and their
sh:uniquelang
constraint component.