Designez vos URIs en RDF (2)

by Christian on 22 février, 2008

Suite à une petite discussion de couloir avec Got, je m’aperçois qu’une courte note sur le design des URIs en RDF ne suffira pas. De plus, je l’ai certainement mal exprimé.

Je reprends donc différemment mon explication.

Quand vous appelez une ressource, vous ne savez pas quels liens cette ressource peut avoir avec d’autres ressources.
Il faut soit parcourir une représentation de la ressource elle même, soit aller consulter l’existence d’un lien dans dans une ressource créé spécialement pour gérer les liens. Or on pourrait vouloir (et il faudrait expliciter des usages) connaître au moins certains liens de la ressource, uniquement en connaissant son URI.

Comment faire ?

  • Quand on écrit une URI comme

    /parent/enfant

    on indique une relation de filiation entre des ressources

  • Quand on écrit des caractères de ponctuation dans les variables de chemin c’est généralement pour indiquer qu’il n’y a pas de relation hiérarchique entre les ressources :

    /parent/enfant1;enfant2

  • On peut également utiliser les variables de requêtes pour passer des paramètres à un programme :

    /chercher/?q=%duseh&d%E9ut=20

Mais toujours rien, dans ces exemples (tirés de RESTful Web Services p.125 ed. française), qui me permette de connaître les liens vers d’autres URIs (mise à part la relation hiérarchique) et toujours simplement en lisant l’URI.

Ainsi je pourrais avoir une URI sur ma personne qui soit :

/organisation/people/Christian Fauré[foaf:homepage rdf:resource="http://www.christian-faure.net"/]

Avec cet exemple (bidon dans sa syntaxe), je peux donc connaître, à la simple lecture de l’URI, un lien typé vers une autre ressource.
Je peux donc exprimer des liens entre des ressources, autrement que par un lien dans la représentation de la ressource (lien html par exemple) ou par la consultation d’un référentiel extérieur (un fichier RDF ou un end point RDF).

Il y a peut-être une économie de ces liens passés en variable de chemin qu’il faut trouver car, même si la norme HTTP n’impose aucune limite de longueur des URIs, les serveurs et client web imposent d’autres contraintes (2083 caractères pour IE par exemple).

Print Friendly
Signaler sur Twitter
Autres notes similaires :
  • Designez vos URIs en RDF
    Mon hypothèse : plutôt que d’encoder les données en RDF, mieux vaut encoder les URIs en RDF. Dans la phase de design d’une architecture RESTful, les ressources clés sont identifiées puis on donne à chacune une URI. Par défaut, quand on pense URI ou URL, c’est la représentation de l’arborescence d’un site web qui nous [...]......
  • Le vocabulaire HTTP en RDF
    Un groupe de travail du W3C a produit un Working Draft afin d’avoir le vocabulaire HTTP en RDF. Quel intérêt ? Quand les mécanismes de négociation entre un client et un serveur Web deviennent critiques – et pour des questions de qualité et de conformité – il vaut mieux stocker les échanges entre le client [...]......
  • La première ressource
    La première ressource d’une entrerprise est devenue une URI. Le Web n’est plus une vitrine, il devient une vraie ressource. Et une ressource, çà s’exploite. Aussi, quand la représentation du web passe de la vitrine à la mine, faut-il parfois se relever les manches pour trouver des pépites. Signaler sur Twitter......
  • { 4 comments… read them below or add one }

    Eric van der Vlist février 22, 2008 à 1:28

    Bonsoir Christian,

    C’est un sujet passionnant que nous avons cherché à aborder dans notre livre sur le Web 2.0 et, par chance, la section qui couvre ce problème est disponible sur le web…

    Je pense que la principale limitation à mettre des informations dans les URIs est que ces informations ne doivent pas limiter leur stabilité.

    Il faut donc éviter de coder sous forme de hiérarchie les organisations qui peuvent changer (ce serait par exemple une mauvaise idée de placer un employé sous son service puisqu’il peut changer de service sauf si au contraire, on veut identifier la fonction qu’il a dans ce service à un moment donné).

    Eric

    Répondre

    David, biologeek février 22, 2008 à 2:45

    Je ne vois pas vraiment le rapport avec RDF, à moins que tu parles d’une syntaxe de ce style là ?

    Répondre

    Christian février 22, 2008 à 9:21

    @Eric : oui je vois. A la lecture du document je réalise qu’il s’agit de « mettre des URI dans des URI ».
    @ David : tu as raison (j’irai voir le blog de Danny plus tard, là il est down).

    ps. C’est quoi ces heures pour poster des commentaires ? :-) Vous en êtes où avec l’alcool ? ;-)

    Répondre

    David, biologeek février 27, 2008 à 3:03

    Il a fallu passer à quelque chose d’un peu plus fort… les clients ;)

    Répondre

    Leave a Comment

    Previous post:

    Next post: