Open beaudet opened 2 years ago
potential solution: turn off inferencing for validation - we don't rely on it in the model anyway. Or remove the statement from the model after loading the model. Either way, the validation should fail if assigning language to a place.
We would need the triple: primary term is a member of the primary term classification set and likewise primary name classification set. Related to #460 and should be resolved by the approach to types - the same term can be in multiple sets.
Yeah, I would turn off inferencing for this sort of thing ... but that might also break other domain/range uses? Agree that the validation should fail, of course :)
The linked art ontology file cidoc.xml contains the following property definition for "language".
When the JSON-LD data below is loaded into a graph, the rdfs:domain statement above seems to add the class E33_Linguistic_Object to the "Place" subject having the "language" predicate.
This makes it impossible to write a SHACL validator that checks the classes that are objects of the P72_has_language predicate since all of them are automatically assigned E33_Linguistic_Object when that predicate is present. Removing the rdfs:domain prevents this behavior. Are there any downsides to removing rdfs:domain in such cases? Shall we do that in the interest of proceeding with more robust data validation or will it have worse unintended consequences?