json-ld / json-ld.org

JSON for Linked Data's documentation and playground site
https://json-ld.org/
Other
853 stars 152 forks source link

http://xmlns.com/foaf/0.1/name redirects to http://xmlns.com/foaf/spec/ #751

Closed mgifford closed 2 years ago

mgifford commented 3 years ago

The https://json-ld.org/contexts/person.jsonld. example links to a foaf specification that seems to no longer be supported.

I am trying to learn more about JSON-LD but don't think this is right. Not sure if it should link to http://xmlns.com/foaf/spec/ or http://xmlns.com/foaf/spec/#term_name

Not sure how this all fits together and if this is "name": "http://xmlns.com/foaf/0.1/name", is essentially documentation or function.

gkellogg commented 3 years ago

If you look at the FOAF spec, you'll find the following sentence:

The FOAF vocabulary is identified by the namespace URI 'http://xmlns.com/foaf/0.1/'

Thus, http://xmlns.com/foaf/0.1/Person is the proper IRI.

The reason it is foaf/0.1/, and not something else, goes way back to the beginning of RDF. DanBri talks more about it here. But, basically, once a namespace IRI is created, it ends up that you can't really replace it as you then make all previous data invalid. (Although, they're essentially doing this at schema.org now, changing from http://schema.org/ to https://schema.org).

pchampin commented 3 years ago

What @gkellogg just said. In addition:

Not sure how this all fits together and if this is "name": "http://xmlns.com/foaf/0.1/name", is essentially documentation or function.

Not sure what you mean by "documentation" vs "function"... But the important point is that JSON-LD (Linked Data in general, for that matter) uses IRIs primarily as identifiers (and only secondarily as links). Two different IRIs are considered as different identifiers, even if they happen to link to the same content.

Actually, this decoupling of identification and linking is a key enabler in linked data:

Following the principles of linked data, looking up an IRI (i.e. using it as a link) should provide useful information about the thing identified by that IRI. The documentation of the FOAF vocabulary happens to provide useful information about itself and about the concept of Person as defined in FOAF. So it makes sense that these two different identifiers link to the same content.