SlideShare a Scribd company logo
1 of 26
Version 0.0.7
             2008-2-10
      http://opsn.net/

           Robert Mao
(robmao@microsoft.com)
Social network portability:
http://microformats.org/wiki/social-
network-portability
Social network portability is all about
breaking the garden wall!
What is OPSN?
Demo, show me something real!
OPSN explained
Discussions
OPSN stands for “Open Portable Social Network”
   Open
   Portable
   Decentralized
Does NOT re-invent the wheel
Turn your blog (or any site) into a decentralized
social network with very little effort!
What OPSN is NOT:
   It is NOT related to user authentication
   It is NOT a social aggregator or other social
   application
Linkedin
                        Flickr




Facebook
                                 …
              twitter


                             …
Service B
Service A                       …
                                    …




                               
                           
                   
We demoed an OPSN server which:
   Can host multiple users
   Allows for easy blog integration (via JavaScript)
   Uses OpenID authentication
Built on the latest C# 3.0, ASP.NET MVC
   OPSN can be implemented with any other language &
   technology
Basic social network / contact
management
     Add contacts
     Edit contacts
     Delete contacts
     List contacts
Import from other social network
     Support import hCard from any
     social network
     Flexible pluggable architecture
     to allow implement import
     from none-microformats social
     networks in the future
OPSN Service endpoint
     APIs
     Delegate support
     Automatic synchronize
Blog widgets
     My widgets
     Friends list
OPSN Endpoint
                                           My
   An URI which contains the             profile
   implementation of OPSN
   APIs
   An URI which contains the
   delegate link to a OPSN               OPSN
   endpoint
Contact in OPSN                   APIs
                                                     My
                                                   contacts

   OPSN contact is a single-
   direction link to the
   contact
   When a new contact is
   added, OPSN service check
   if this contact is an OPSN
   endpoint, if so, a
   notification will be sent to
   that endpoint
Does every user need to “install”              OPSN
their own OPSN?                                 URI
    No
Inspired by the design of OpenID,
OPSN support delegation:
    You can delegate your OPSN
    service point to another OPSN
    service, it could be an OPSN                  My
    server which is designed to host            profile

    many users
    Delegation is simple: just add a
    few lines in your html page                OPSN
<link rel=“OPSN:delegate”                                   My
                                        APIs
type=“application/xml+OPSN”                               contacts

href=http://some_opsn_server/someuser
title=“OPSN delegate”/>
Each user has his/her own                  My


OPSN data, there is no single
                                         profile




shared information between               OPSN
different users                 APIs
                                                       My
                                                     contacts


OPSN maintains user’s                                                      My
                                                                         profile



information as a “master
copy” and publishes it to the                                            OPSN

others                                                            APIs
                                                                                     My
                                                                                   contacts




OPSN maintains all contact                   My


data as a local copy, even if              profile




this data is synchronized
                                         OPSN
from other locations                                     My
                                  APIs


OPSN’s contact data can also
                                                       contacts




be published
User authentication
  OpenID
  LiveID
Data authentication
  oAuth
Data
  RSS, Atom, …
  APML, OPML, …
Social applications
  Social aggregators
  …
Since contact data is a “local copy”, it can be out
of sync
Out of sync data doesn’t really matter too much,
think about real life, your contact data could be
out of sync too
OPSN comes to the rescue:
   OPSN service supports “auto sync” by subscribing to
   another OPSN endpoint
   An endpoint can have access control for the
   subscribing to its changes (The policy can be changed
   at any time)
OPSN adopt oAuth (http://oAuth.net) to
authorize what part of the data allow to be
accessed
You can control the privacy of your own
data, but you can NOT control others, you
can not stop some irresponsible people
publishing your data once you give your
data to them
In the real life, it’s exactly the same.
The way OPSN organizes data is very
similar to real life
  Users own all of their contact data (e.g. in
  an address book, name card holders)
  All contact data is a piece of local data, the
  local data could be out of synch
  Users have full control of their contact data
  (delete it, save it, update it, put in different
  groups, even publish to others, etc)
http://opsn.net
Robert Mao (robmao@microsoft.com)
Robert’s site               Mary’s own site

Mary clicks “add me” and     Mary’s site contains OPSN
   input her OPSN URI          endpoint meta info



  Robert’s site redirects
browser to Mary’s own site

                             Robert’s public profile was
 Robert’s OPSN endpoint       grabbed and displayed,
 provide Robert’s public       Mary adds some of her
          hCard                notes and click “save”




 A notification from Mary
  was send to Robert, so
                             Robert was added as Mary’s
 Robert will know he has
                             contact and redirects back
   been added by Mary
                                  to Robert’s site


Mary continue her surf on
      Robert’s site


                                    Browser flow           Data flow
A new social network site        Mary’s own site

    Mary signs in the new       Mary’s site contain sOPSN
 service and enter her OPSN       endpoint meta info
  to import her social data


 The site discovered Mary's
     OPSN endpoint and
 prepared an oAuth request
  and redirects Mary to her     Mary signs on her own site
          own site


                                   Mary authorizes the
                                  request and select the
 The site requests the social   data she permit for import
  network data from Mary’s
 OPSN endpoint, and import
                                   Mary’s OPSN service
  it into it’s own database.
                                  provides data as Mary
                                        approved



   Mary continue use the
 service, all her friends has
        been added!
Restful simple API
  API Format:
    /API/version_number/method[.data_format]
    .XML (default)
    .JSON
  APIs:
    Me
    Friend
    Friends
    Notify

More Related Content

Similar to Mao Blogtalk 2008

OPSN: Open Portable Social Network
OPSN: Open Portable Social NetworkOPSN: Open Portable Social Network
OPSN: Open Portable Social NetworkRobert Mao
 
WordCamp Wilmington 2017 WP-API Why?
WordCamp Wilmington 2017   WP-API Why?WordCamp Wilmington 2017   WP-API Why?
WordCamp Wilmington 2017 WP-API Why?Evan Mullins
 
SPSUK Apps for Office
SPSUK Apps for OfficeSPSUK Apps for Office
SPSUK Apps for OfficeWes Hackett
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!Evan Mullins
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to findDan Diephouse
 
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdf
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdfHow to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdf
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdfBe Problem Solver
 
Building Your First App with MongoDB
Building Your First App with MongoDBBuilding Your First App with MongoDB
Building Your First App with MongoDBMongoDB
 
Top 7 Skills PHP Developer Must Have
Top 7 Skills PHP Developer Must HaveTop 7 Skills PHP Developer Must Have
Top 7 Skills PHP Developer Must HaveIndumathySK
 
web programming
web programmingweb programming
web programmingshreeuva
 
Best practices and advantages of REST APIs
Best practices and advantages of REST APIsBest practices and advantages of REST APIs
Best practices and advantages of REST APIsAparna Sharma
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to APIrajnishjha29
 
Microservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with KafkaMicroservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with KafkaVMware Tanzu
 
How to create custom connector for Microsoft Flow
How to create custom connector for Microsoft FlowHow to create custom connector for Microsoft Flow
How to create custom connector for Microsoft FlowDragan Panjkov
 
Sup (Semantic User Profiling)
Sup (Semantic User Profiling)Sup (Semantic User Profiling)
Sup (Semantic User Profiling)Emanuela Boroș
 
PeopleSoft: HACK THE Planet^W university
PeopleSoft: HACK THE  Planet^W universityPeopleSoft: HACK THE  Planet^W university
PeopleSoft: HACK THE Planet^W universityDmitry Iudin
 

Similar to Mao Blogtalk 2008 (20)

OPSN: Open Portable Social Network
OPSN: Open Portable Social NetworkOPSN: Open Portable Social Network
OPSN: Open Portable Social Network
 
WordCamp Wilmington 2017 WP-API Why?
WordCamp Wilmington 2017   WP-API Why?WordCamp Wilmington 2017   WP-API Why?
WordCamp Wilmington 2017 WP-API Why?
 
Web Service
Web ServiceWeb Service
Web Service
 
SPSUK Apps for Office
SPSUK Apps for OfficeSPSUK Apps for Office
SPSUK Apps for Office
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
 
A great api is hard to find
A great api is hard to findA great api is hard to find
A great api is hard to find
 
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdf
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdfHow to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdf
How to develop an API with PHP, JSON, and POSTMAN in 9 Steps.pdf
 
Building Your First App with MongoDB
Building Your First App with MongoDBBuilding Your First App with MongoDB
Building Your First App with MongoDB
 
Top 7 Skills PHP Developer Must Have
Top 7 Skills PHP Developer Must HaveTop 7 Skills PHP Developer Must Have
Top 7 Skills PHP Developer Must Have
 
Understanding OpenID
Understanding OpenIDUnderstanding OpenID
Understanding OpenID
 
web programming
web programmingweb programming
web programming
 
Day01 api
Day01   apiDay01   api
Day01 api
 
Best practices and advantages of REST APIs
Best practices and advantages of REST APIsBest practices and advantages of REST APIs
Best practices and advantages of REST APIs
 
Frans Rosén Keynote at BSides Ahmedabad
Frans Rosén Keynote at BSides AhmedabadFrans Rosén Keynote at BSides Ahmedabad
Frans Rosén Keynote at BSides Ahmedabad
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to API
 
Microservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with KafkaMicroservices, Events, and Breaking the Data Monolith with Kafka
Microservices, Events, and Breaking the Data Monolith with Kafka
 
How to create custom connector for Microsoft Flow
How to create custom connector for Microsoft FlowHow to create custom connector for Microsoft Flow
How to create custom connector for Microsoft Flow
 
Sup (Semantic User Profiling)
Sup (Semantic User Profiling)Sup (Semantic User Profiling)
Sup (Semantic User Profiling)
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
 
PeopleSoft: HACK THE Planet^W university
PeopleSoft: HACK THE  Planet^W universityPeopleSoft: HACK THE  Planet^W university
PeopleSoft: HACK THE Planet^W university
 

Recently uploaded

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 

Recently uploaded (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

Mao Blogtalk 2008

  • 1. Version 0.0.7 2008-2-10 http://opsn.net/ Robert Mao (robmao@microsoft.com)
  • 2.
  • 3.
  • 5. What is OPSN? Demo, show me something real! OPSN explained Discussions
  • 6. OPSN stands for “Open Portable Social Network” Open Portable Decentralized Does NOT re-invent the wheel Turn your blog (or any site) into a decentralized social network with very little effort! What OPSN is NOT: It is NOT related to user authentication It is NOT a social aggregator or other social application
  • 7. Linkedin Flickr Facebook … twitter …
  • 8.
  • 9. Service B Service A … …     
  • 10.
  • 11. We demoed an OPSN server which: Can host multiple users Allows for easy blog integration (via JavaScript) Uses OpenID authentication Built on the latest C# 3.0, ASP.NET MVC OPSN can be implemented with any other language & technology
  • 12. Basic social network / contact management Add contacts Edit contacts Delete contacts List contacts Import from other social network Support import hCard from any social network Flexible pluggable architecture to allow implement import from none-microformats social networks in the future OPSN Service endpoint APIs Delegate support Automatic synchronize Blog widgets My widgets Friends list
  • 13.
  • 14. OPSN Endpoint My An URI which contains the profile implementation of OPSN APIs An URI which contains the delegate link to a OPSN OPSN endpoint Contact in OPSN APIs My contacts OPSN contact is a single- direction link to the contact When a new contact is added, OPSN service check if this contact is an OPSN endpoint, if so, a notification will be sent to that endpoint
  • 15. Does every user need to “install” OPSN their own OPSN? URI No Inspired by the design of OpenID, OPSN support delegation: You can delegate your OPSN service point to another OPSN service, it could be an OPSN My server which is designed to host profile many users Delegation is simple: just add a few lines in your html page OPSN <link rel=“OPSN:delegate” My APIs type=“application/xml+OPSN” contacts href=http://some_opsn_server/someuser title=“OPSN delegate”/>
  • 16. Each user has his/her own My OPSN data, there is no single profile shared information between OPSN different users APIs My contacts OPSN maintains user’s My profile information as a “master copy” and publishes it to the OPSN others APIs My contacts OPSN maintains all contact My data as a local copy, even if profile this data is synchronized OPSN from other locations My APIs OPSN’s contact data can also contacts be published
  • 17. User authentication OpenID LiveID Data authentication oAuth Data RSS, Atom, … APML, OPML, … Social applications Social aggregators …
  • 18. Since contact data is a “local copy”, it can be out of sync Out of sync data doesn’t really matter too much, think about real life, your contact data could be out of sync too OPSN comes to the rescue: OPSN service supports “auto sync” by subscribing to another OPSN endpoint An endpoint can have access control for the subscribing to its changes (The policy can be changed at any time)
  • 19. OPSN adopt oAuth (http://oAuth.net) to authorize what part of the data allow to be accessed You can control the privacy of your own data, but you can NOT control others, you can not stop some irresponsible people publishing your data once you give your data to them In the real life, it’s exactly the same.
  • 20. The way OPSN organizes data is very similar to real life Users own all of their contact data (e.g. in an address book, name card holders) All contact data is a piece of local data, the local data could be out of synch Users have full control of their contact data (delete it, save it, update it, put in different groups, even publish to others, etc)
  • 21.
  • 23.
  • 24. Robert’s site Mary’s own site Mary clicks “add me” and Mary’s site contains OPSN input her OPSN URI endpoint meta info Robert’s site redirects browser to Mary’s own site Robert’s public profile was Robert’s OPSN endpoint grabbed and displayed, provide Robert’s public Mary adds some of her hCard notes and click “save” A notification from Mary was send to Robert, so Robert was added as Mary’s Robert will know he has contact and redirects back been added by Mary to Robert’s site Mary continue her surf on Robert’s site Browser flow Data flow
  • 25. A new social network site Mary’s own site Mary signs in the new Mary’s site contain sOPSN service and enter her OPSN endpoint meta info to import her social data The site discovered Mary's OPSN endpoint and prepared an oAuth request and redirects Mary to her Mary signs on her own site own site Mary authorizes the request and select the The site requests the social data she permit for import network data from Mary’s OPSN endpoint, and import Mary’s OPSN service it into it’s own database. provides data as Mary approved Mary continue use the service, all her friends has been added!
  • 26. Restful simple API API Format: /API/version_number/method[.data_format] .XML (default) .JSON APIs: Me Friend Friends Notify