kg-construct / rml-resources

RML resources e.g. shapes, ontology, resource files, etc.
http://w3id.org/rml/portal
Creative Commons Attribution 4.0 International
2 stars 1 forks source link

make the module ontologies dereferencable to use in owl:imports #4

Open pmaria opened 5 months ago

pmaria commented 5 months ago

To be able to make concise ontology descriptions and shapes it would be very helpful to be able to import the ontologies of the modules via owl:import statements using the IRI of the module's owl:Ontology resource.

That would mean that if the modules ontology IRI is dererferenced with an rdf accept header, the whole ontology is returned in the corresponding format.

In developing the rml-lv ontology and shapes we run into this need. Currently we're making use of the github.io hosted ttl files:

<http://w3id.org/rml/lv/> a owl:Ontology ;
    # owl:imports <http://w3id.org/rml/core> ; # not dereferencable
    owl:imports <https://kg-construct.github.io/rml-core/ontology/documentation/ontology.ttl> ;
    # owl:imports <http://w3id.org/rml/io/> ; # not dereferencable
    owl:imports <https://kg-construct.github.io/rml-io/ontology/documentation/ontology.ttl> ;
.
DylanVanAssche commented 5 months ago

Hi!

  1. I wonder why we can't just import by the name prefix http://w3id.org/rml/?
  2. We must not allow confusing by making more 'possible' namespace prefixes, high chances that people will use these ontology ones as @prefix rml <> which will cause incomplete ontologies.

I'm not eager to add content negotiation to the 'main' IRI of each module http://w3id.org/rml/$MODULE.

pmaria commented 5 months ago
  1. I wonder why we can't just import by the name prefix http://w3id.org/rml/?

I'm not so sure how that would work, with the module set up. If an engine supports only specific modules it would be nice to only be able to select those module ontologies. I thought that was the whole idea.

  1. We must not allow confusing by making more 'possible' namespace prefixes, high chances that people will use these ontology ones as @prefix rml <> which will cause incomplete ontologies.

I am not talking about namespace prefixes, just about ontology resources. These wouldn't have to be shown anywhere except in the ontologies themselves and they are already defined there. So I don't see a problem of misuse.

In any case as a consumer of a certain module I would like to be able to dereference it as a whole via it's ontology URI, instead of having to go look for a link in the specification.