Skip to content
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

Merged
merged 4 commits into from
Nov 29, 2022
Merged

Add owner to solid terms #52

merged 4 commits into from
Nov 29, 2022

Conversation

matthieubosquet
Copy link
Member

Add the notion of owner to the Solid terms ontology as per solid/specification#264.

solid-terms.ttl Outdated Show resolved Hide resolved
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Copy link
Member

@kjetilk kjetilk left a 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.

@matthieubosquet
Copy link
Member Author

@kjetilk, following @TallTed's suggestion, I changed the domain of solid:owner to rdfs:Resource, which I would deem good practice.

Copy link
Member

@csarven csarven left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I've mentioned in PR 254 , I don't find rdfs:Resource necessary but having it there is a non-blocker.

@timbl , can you please review?

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 ;
Copy link
Contributor

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)

Copy link
Contributor

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?

Copy link
Member Author

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.

Copy link
Member

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.

Copy link
Member Author

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.

Copy link
Contributor

@TallTed TallTed Mar 4, 2022

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.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@timbl I applied your suggestion of removing the information-free rdfs:domain triple.

This should satisfied both changes requested cc @kjetilk.

solid-terms.ttl Outdated Show resolved Hide resolved
Copy link
Member

@kjetilk kjetilk left a 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.

@csarven csarven merged commit 6f8544f into main Nov 29, 2022
@csarven csarven deleted the solid-owner branch November 29, 2022 09:48
@csarven csarven self-assigned this Nov 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants