-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add owner to solid terms #52
Conversation
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With @TallTed 's changes, I think this is mostly good, but since there isn't consensus on solid/specification#265 yet, I think the domain should be removed before merging this. Or we might just wait for consensus on that.
@kjetilk, following @TallTed's suggestion, I changed the domain of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
solid-terms.ttl
Outdated
dc:issued "2021-05-19"^^xsd:date ; | ||
rdfs:comment "A person or social entity that is considered to have control, rights, and responsibilities over a data storage."@en ; | ||
rdfs:isDefinedBy <http://www.w3.org/ns/solid/terms#> ; | ||
rdfs:domain rdfs:Resource ; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Setting the domain to rdfs:Resource is an information-free thing to do, as that is true of every property. Please remove the line. (It is like saying A sameAs A, or A a Thing, or A a Resource)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@matthieubosquet I don't adding information-free triples to things to be good practice. Is there a reason you wanted that triple in?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@timbl at first, I was unsure about it and just followed @TallTed’s suggestion who might have specific reasons to express.
For me, explicitly stating that the domain of a property is rdfs:Resource
shows to speakers of the vocabulary that the context in which solid:owner
can be used has been discussed and tells them unequivocally that this property can be used in statements where the subject is any valid RDF subject node.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By definition all classes are subclasses of rdfs:Resource and so that context is always present.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@csarven I understand that stating: ex:propertyX rdfs:domain rdfs:Resource .
is unnecessary to infer that subject nodes of statements where ex:propertyX
is the predicate are instances of the class of everything, namely: rdfs:Resource
.
But does stating ex:propertyX a rdf:Property .
entail ex:propertyX rdfs:domain rdfs:Resource .
?
I can’t really remember reading such axiom (starting from rdf schema).
So for sure it doesn’t entail further inferred triples, but I don’t think that not saying it is exactly the same thing as saying it (😄 I appreciate I might have easily missed something, I learn something new every time I read the RDF specs).
In any case, following that logic: asserting that something is an rdf:Property
when it has an rdfs:range
is redundant, so why assert it? To me, it’s simply nice to assert property type statements for consumers of a vocabulary, just because it makes the term definition more obvious and user friendly. When I read a vocabulary, I scan through it for specific info including type, domain and range statements.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My feeling is that explicitly stating rdfs:domain rdfs:Resource
makes it clear that this is what was intended by the ontology author(s), and that rdfs:domain
was not accidentally left out (for instance, where it would have been something more restricted than rdfs:Resource
, had the author(s) included it).
In other words, I think that setting rdfs:domain
to rdfs:Resource
is NOT an information-free thing to do, though it may seem so to a sophisticated observer (who knows that intentionally leaving the rdfs:domain
declaration out has the same effect as making this explicit declaration) or upon casual observation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alright, I think we're good.
Add the notion of owner to the Solid terms ontology as per solid/specification#264.