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

RDF types for ecosystem registries #45

Closed
justinwb opened this issue Jun 8, 2020 · 4 comments
Closed

RDF types for ecosystem registries #45

justinwb opened this issue Jun 8, 2020 · 4 comments

Comments

@justinwb
Copy link
Member

justinwb commented Jun 8, 2020

Pulling this thread out into its own issue. Per this discussion we're going to merge the ecosystem proposal into master and iterate on it through subsequent pull requests and issues.

<#set>
  a solid-ecosystem:registrySet ;
  solid-ecosystem:registryType solid-ecosystem:ApplicationRegistry ;

TLDR;
@RubenVerborgh asked why the registries are not using RDF types
@joshdcollins pointed out that we debated this
@acoburn suggested the following using RDF Types:

ecosystem:Registry a rdfs:Class .
ecosystem:ApplicationRegistry a ecosystem:Registry .

<#set> a ecosystem:ApplicationRegistry .
@elf-pavlik
Copy link
Member

ecosystem:ApplicationRegistry a ecosystem:Registry .

@acoburn why not instead define it as a subclass?

ecosystem:ApplicationRegistry rdfs:subClassOf ecosystem:Registry .

I think your first two statements do not entail ecosystem:ApplicationRegistry a rdfs:Class . but my understanding of RDF reasoning may be failing me here.
Once we introduce statement <#set> a ecosystem:ApplicationRegistry . we definitely do get that entailment, but possibly not from just first two statements.

I think we would also want to clarify range of ecosystem:applicationRegistrySet which name suggests that we expect some kind of ecosystem:ApplicationRegistrySet and not more general ecosystem:RegistrySet. @justinwb do you intend to have different types of registries in one set or only one type in one set?

@acoburn
Copy link
Member

acoburn commented Jun 9, 2020

@acoburn why not instead define it as a subclass?

because I spent exactly 5 seconds thinking about this. You are correct, this should be rdfs:subClassOf rather than defining this as an Individual.

My main point, though, was that RDF has an entire type system that is already well defined and well established. This proposal should use that rather than inventing its own set of predicates that seem to mirror a type system.

@justinwb
Copy link
Member Author

justinwb commented Jun 9, 2020

I think we would also want to clarify range of ecosystem:applicationRegistrySet which name suggests that we expect some kind of ecosystem:ApplicationRegistrySet and not more general ecosystem:RegistrySet. @justinwb do you intend to have different types of registries in one set or only one type in one set?

Only one type of registry in a given set. For example, an application registry set would only contain application registries. Here's the validation used in the proposal to enforce it.

My main point, though, was that RDF has an entire type system that is already well defined and well established. This proposal should use that rather than inventing its own set of predicates that seem to mirror a type system.

Completely fair point. As @joshdcollins pointed out we debated this a bit and weren't convinced it was necessary in this case given the similarity of the different types of registries. Going to revisit that decision based on the feedback though 🙂

@justinwb
Copy link
Member Author

@acoburn @elf-pavlik @RubenVerborgh A whole bunch of updates in this merge that I believe should resolve this issue (though i'm sure we could continue to iterate on the data model in new/successive ones as needed). Rendered version here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants