Warning:
This wiki has been archived and is now read-only.

URI Design and Management for Persistence

From Data on the Web Best Practices
Jump to: navigation, search

Intro

This BP Document lists the recommendations to use URI for accessing data on the web.

Human-readable and Machine-readable

The data available should be human-readable and machine-readable.

Content Negotiation

Content Negotiation is an alternative to serve data both human-readable and machine-readable on the same URI. The content that will be returned depends of the information provided by the user agent on HTTP header.

APIs serving data

In the other hand, instead of use the Content negotiation technique, an alternative discussed previously is the use of APIs serving the data. There is a document called URIs versus APIs that shows advantages of each one of these methods.

Persistent URIs

The result from a survey performed by [ISA http://ec.europa.eu/isa/index_en.htm] to explore the good practices on the publication of URIs points to [10 rules for persistent URIs https://joinup.ec.europa.eu/community/semic/document/10-rules-persistent-uris].

The recommendations from the D7.1.3 Study on persistent URIs are reproduced here:

10 Rules for Persistent URIs

Good practices

  • Follow the pattern
   http://{domain}/{type}/{concept}/{reference}
  • Re-use of the existing identifiers
   http://education.data.gov.uk/id/school/123456
  • Link multiple representations
   http://data.example.org/doc/foo/bar.html
   http://data.example.org/doc/foo/bar.rdf
  • Implement 303 redirects for real-world objects
   http://www.example.com/id/alice_brown
  • Use of a dedicated service
   a service independent of the data originator

Bad practices

  • Stating ownership
   http://education.data.gov.br/ministryofeducation/id/school/123456
  • Version numbers
   http://education.data.gov.br/ministryofeducation/doc/school/v01/123456
  • Use of the auto-increment
   http://education.data.gov.br/ministryofeducation/id/school/123456
   http://education.data.gov.br/ministryofeducation/id/school/123457
  • Use of query strings for identifiers
   http://education.data.gov.br/ministryofeducation/doc/school?id=123456
  • File extensions
   http://education.data.gov.br/ministryofeducation/doc/school/12345.css

URI Persistence

{TODO}

Discussion about this references:

Editors and contributors

  • Carlos Iglesias
  • Flavio Yanai
  • Makx Dekkers
  • M. Tomas Carrasco
  • Newton Calegari
  • Phil Archer

Links and references