Modifying external subjects


Disclaimer: I am somewhat of a newbie with RDF, so not sure if I am in the right place here (this forum).
I have a practical question with some RDF I came across. If that does not fit here, please tell me if there is an other forum, mailing-list or chat where I could go with it.

I am reviewing an open source ontology (here: myont) defined in a turtle file,
and in some places they are redefining rdfs:domain of external properties, for example:

  rdfs:domain [ owl:unionOf (
                  myont:MyClassB) ] .

Redefining the rdfs:domain of skos:note (outside of their own ontology), to include classes inside their ontology. Is this valid/ok?
In my mind, it is not, and they would instead have to subclass skos:note, and define the required rdfs:domain there.

OWL & SHACL - Why two syntaxes?


Nice to get some questions here, that was the idea with this forum :slight_smile:

I have at least mixed feelings when I see things like that. IMO this is not good design because it could lead to unintended side effects when data is combined, especially when it is coming from sources that did not adhere to this over specific domain definition on skos:note.

Most of SKOS does not define rdfs:domain or rdfs:range, on purpose. So it’s very open to use and fits to many use-cases. When you have a look at the RDF definition of skos:note, you see the following comment: This property may be used directly, or as a super-property for more specific note types, which is exactly what you propose. So I agree that this would be the better way to define domain in this context.

If they want to say how things are used they might also consider SHACL. A lot of weird constructs in OWL could (and in my opinion should) be defined in SHACL instead. The benefit that way is that data can be validated against the SHACL shape.


ohhh thank you! that is a very good answer! :slight_smile: