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

[8pt] Add a reasoning step to saturate the ontology before generation #234

Open
NSeydoux opened this issue Feb 4, 2020 · 3 comments
Open

Comments

@NSeydoux
Copy link
Contributor

NSeydoux commented Feb 4, 2020

When saturating the ontology, the implicit predicates are made explicit, which reduces the need for some manual vocabulary extension. For instance, X rdfs:subclassOf Y is not picked up by the generator, while it implies X a rdfs:Class. Y a rdfs:Class..

@edwardsph
Copy link

There is a similar issue with properties. If a vocab has vocab:propertyName rdfs:domain vocab:aClass but doesn't have a rdf:Property then no IRI is generated for it and we have to manually extend the vocab.

https://www.w3.org/TR/rdf-schema/#ch_domain says:

A triple of the form:
P rdfs:domain C
states that P is an instance of the class rdf:Property

If this inference was used the properties would have IRIs automatically.

@pmcb55
Copy link
Contributor

pmcb55 commented Oct 25, 2021

Yeah, for sure - there's lots of things we could do with inference, but in fact the AG does already work with rdfs:subClassOf and rdfs:subPropertyof, see

// We can automatically treat anything marked as a 'sub-class of' as a
and
.match(subject, RDFS.subPropertyOf, null)
.
Again, if specific use-cases pop up, we can address them as needed - do you have any specific example where using rdfs:domain and rdfs:range would help you Pete...?

@edwardsph
Copy link

I was discussing this with @matthieubosquet because of acp:memberAccessControl in https://github.com/solid/authorization-panel/blob/main/proposals/acp-specification/acp.ttl.
Currently the vocab has some uses of rdfProperty alongside rdfs:domain in some places such as acp:accessControl but Matthieu is planning to remove those redundancies.

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