Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Changing URI in a coop ecosystem #87

Open
domguard opened this issue Jan 24, 2012 · 1 comment
Open

Changing URI in a coop ecosystem #87

domguard opened this issue Jan 24, 2012 · 1 comment
Labels

Comments

@domguard
Copy link
Member

real world example :

  • an organic farm is listed first by a consumer group on their django-coop-enabled website (site A)
  • the farmer agrees to add his phone number and some other information on their site, so he logs into the site using traditional django auth (email/passwd)
  • django notices he does not have any webID created, and offers hime to create one (one-button)
  • 6 monthes later, the organic federation he's member of sets up its own django-coop instance (site B)
  • the site B Admin starts to pull into his website (via the central regional RDF repository) resources from his farmers members scattered around other coop-sites. He imports also our farmer's record.
  • the Admin can see in the URI of the farm the domain of site A
  • He calls the farmer and say "hey are you officially hosted on the consumer group site ?( = your URI is not organic-federation.org/... !), you should fix that".
  • the farmer agrees again, logs into the consumer group website, because his record is there and he cannot edit it from anywhere else.
  • Farmer sees a select menu with the various websites where his record is listed.
  • Farmer chooses the federation site and click "make this my new home". django updates the URI, and at the next RDF sync, all the other sites will have the new URI for this record.
  • last step, the farmer phone number changes, he logs into the federation site (with its WebID) and updates it there because is the (new) home for his record.
  • on more last step, to get back to webid : he should be able to do the same for his profile , click and say "the federation site is my profile new home now", and here comes the revocation/cancellation and replacement of the WebID cert thing...
@domguard
Copy link
Member Author

Farmer sees a select menu with the various websites where his record is listed.

This is a first problem :

  • it can depend on the aggregator which has to know where the object is hosted on coop servers.

  • it also could be inferred from the subscriptions of the PubSub hub, but again, stored in a central space (aggregator)

    Farmer chooses the federation site and click "make this my new home".
    Django updates the URI, and at the next RDF sync, all the other sites will have the new URI for this record.

Donc on a besoin de reconnaitre que cet objet était anciennement l'URI untel.
Cette info difficile à deviner pourrait être passée par coop à la PES sous forme d'un triplet (coop:wasKnownAs)
Quand on reçoit un nouveau triplet de ce type, on peut déclencher les modifications appropriées en local

Propager la nouvelle URI aux coop qui avaient importé cet objet est un autre probleme : on pourrait leur pousser une mise à jour un peu spéciale, un graphe RDF avec juste un triplet coop:isNowKnownAs qui déclencherait une mise à jour adéquate.

Le site A lui, est déjà mis à jour puisque le changement d'URI est parti de chez lui. il doit par contre s'abonner au flux de l'objet qui ne dépend maintenant plus de son autorité.

on more last step, to get back to webid : he should be able to do the same for his profile , 
click and say "the federation site is my profile new home now", 
and here comes the revocation/cancellation and replacement of the WebID cert thing...

Par rapport au changement de WebID (de profil Personne en fait), c'est identique sauf qu'il faudrait s'assurer avant la mise à jour de l'URI sur le site A que la personne est déjà enregistré en tant que Personne + Django/WebID User sur le site ou il veut être transféré...

Un message RDF spécifique pourrait aussi faire l'affaire (attention ce profil change d'URI) par contre du coté du site B (et de toutes les coop en fait) il faudrait qu'elles écoutent un flux "nouveaux abonnés entrants pour mon site" sur le hub pour importer/mettre à jour le profil, créer le user django si nécessaire, puis renvoyer un triplet spécifique pour indiquer à la PES que le changement d'adresse est fait.

La différence avec le scénario d'avant c'est qu'avec WebID on ne peut pas mettre à jour le profil sur le site A tant qu'on est pas sur que le profil est bien hébergé sur le site B...

@ghost ghost self-assigned this Jul 24, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant