- From: Holger Knublauch <holger@topquadrant.com>
- Date: Fri, 29 Jan 2016 14:45:15 +1000
- To: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
- Message-ID: <56AAEE5B.9070408@topquadrant.com>
On 29/01/2016 3:34 AM, Arthur Ryman wrote: > Holger & WG, > > One of the principles of good RDF design is to treat URIs as opaque. > That means applications should not assume that a URI conforms to any > given pattern. In principle the URI of an ontology could be completely > unrelated to the URIs of its terms. We all probably think that is a > terrible thing to do, but RDF seems to strive towards accommodating > any conceivable way of working. Therefore we should always be explicit > about the relation between a term and its defining ontology, hence the > presence of the explicit rdfs:isDefinedBy triples. > > The use of explicit rdfs:isDefinedBy triples also allows you to easily > split up a large vocabulary into multiple graphs. This decouples the > vocabulary from how it is stored in graphs. Furthermore, it > distinguishes vocabulary terms from other resources that might be > present in a given graph. In effect, we are treating all subjects of > rdfs:isDefinedBy as vocabulary terms. This is handy for individual > terms defined by a vocabulary, i.e. terms that are neither classes nor > properties. The latter paragraph has convinced me :) We will have at least two files on the web: the RDFS vocabulary and a SHACL file extending the vocabulary with a more detailed "schema" to validate SHACL files. I suggest that each resource gets two rdfs:isDefinedBy triples, pointing to both files so that tools can discover the SHACL definitions too. > > The use of hash URIs is one of the W3C recommended best practices for > publishing RDF [1]. It is therefore convenient to make the URI of the > ontology end with a hash. This is simply a convention that several > prominent W3C vocabularies use. > > [1] https://www.w3.org/TR/swbp-vocab-pub/ The reference [1] above points at SKOS as the flagship example: https://www.w3.org/TR/swbp-vocab-pub/#hash But SKOS uses the pattern that I also promote: The URI for the SKOS Core Vocabulary itself is: |http://www.w3.org/2004/02/skos/core| and if you look at the Turtle from http://www.w3.org/TR/skos-reference/skos.rdf <owl:Ontology rdf:about="http://www.w3.org/2004/02/skos/core"> <dct:title xml:lang="en">SKOS Vocabulary</dct:title> ... No # at the end. All owl:imports to SKOS also point at the URI without #. Do you have a (normative) reference that owl:Ontologies should end with #? I otherwise suggest removing the # because that practice seems to be more widely used (the RDF namespace itself being the main exception). Thanks, Holger
Received on Friday, 29 January 2016 04:45:56 UTC