- From: Nicolas Chauvat <nicolas.chauvat@logilab.fr>
- Date: Tue, 15 Feb 2022 11:45:00 +0100
- To: Melvin Carvalho <melvincarvalho@gmail.com>
- Cc: hans.teijgeler@quicknet.nl, Frederik Byl <frederik.byl@gmail.com>, Semantic Web <semantic-web@w3.org>, David Booth <david@dbooth.org>
Hi List, Le Tue, Feb 15, 2022 at 02:32:46AM +0100, Melvin Carvalho a écrit : > Nobody denies that URIs as predicates can be useful. Why is there an > insistence on EVERY predicate being a URI? What is the logic behind it? Here is my understanding of it. URIs are extending DNS names. Once you have registered a DNS domain, you are sure that you can create unique identifiers that extend this DNS name. I own logilab.fr therefore I can create the unique identifier https://data.logilab.fr/person/nchauvat The logic behind it is that it allows the whole of us to create unique identifiers on our own and share them in the global forum that is the web, while making sure that what we each state stays precise instead of being mixed-up with something else. In my opinion, this ability to create unique identifiers in a decentralized manner is key to allowing the web to scale. If we had a central system where we would have to request a new unique identifier for each new object we wanted to share on the web, it would not work. Since the identifiers are unique, you can define that https://data.melvin.org/vocab/name must be formatted "Firstname Lastname" and I can define that https://data.logilab.fr/vocab/name must be formatted "LASTNAME Firstname" we both use "name" but they don't collide (and in this example, we are lucky that the both mean more or less the same thing, but that's not given). Of course, for interoperability, it is much better for us to both agree on a standard like https://data.example.org/vocab/name that would be formatted "Firstname LASTNAME" and both use it. If your predicate is not an URI, it is "local" to your system/API, not "global" to the Web. Hence, I guess the question is wether you want your data to belong to the Web or not. When your need is to offer an API over HTTP, maybe you don't need the Web as an hypertext system in which objects are named with URIs and in this case RDF is a burden. For many use cases, a key to success is that the participants agree to share the same global space of URIs to name the things they bring to the table, so that data integrates easily and agents follow the links from one piece to the next regardless of who published it. That's the case of the Web of documents for example. RDF is meant for people who want to do the same for data. At the scale of the whole Web or at the scale of a group of actors, like multiple companies part of the same supply chain. These where my 2 eurocents, -- Nicolas Chauvat logilab.fr - services en informatique scientifique et gestion de connaissances
Received on Tuesday, 15 February 2022 10:45:17 UTC