Partager via


Simple Sharing Extensions for RSS and OPML

It’s nice to connect. I’m Jack Ozzie, development manager for Ray Ozzie’s concept development group. Besides being brothers, Ray and I have worked together for several years now developing and shipping software products with some amazingly talented development teams.  I joined Ray’s dev team at Iris Associates in 1987, contributing to the development of Lotus Notes. In 1997, I moved on with him as co-founder of Groove Networks.  After Microsoft acquired Groove Networks last April, I transitioned to Ray’s CTO staff, running a small development team here in Redmond.

As Ray mentioned in his blog posting on Nov 20, my team has been working with various Microsoft product groups and collaborating with Dave Winer, building proof-of-concept prototypes around the Simple Sharing Extensions for RSS, and refining the spec in the process.  One of the key members of our team who helped to advance the spec and get it to the point where we were comfortable publishing the draft is George Moromisato. George is another member of the Iris/Groove alumni; his knowledge of Notes replication and Groove synchronization are incredibly valuable to this initiative.  Since Dave and Ray’s initial blog postings, I’ve been very encouraged by the development community’s initial reaction; it has definitely generated some interesting conversation, as evidenced by this post. Our team is looking forward to working with the community to complete the SSE spec so we can all get to work building this into our products and services, enabling new seamless sharing experiences for customers, and creating new opportunities for partners.  Here’s some additional context for why we are so excited about the potential for SSE.

Why SSE?

The marketing wonks told us to follow the “Rule of Threes.”  So we’ve come up with three words – all beginning in S - to answer the “Why?” question.

Simple.  Like RSS, SSE was designed with simplicity in mind, and developers will find that implementing SSE replication is easy, especially for an application that already supports RSS. SSE defines the minimum extensions necessary to enable loosely cooperating applications to use RSS as the basis for item sharing.  We view this as a means by which disparate products can work together without hard-coded dependencies. We also wanted to make it simple enough to encourage widespread adoption. We hope you’ll take the time to review our draft specification and give us your feedback on whether we accomplished our goal in relation to simplicity.

Seamless.  The SSE draft specification is just one initiative in our overall objective to provide “seamless experiences” for our customers as they migrate back-and-forth throughout the day from work persona, to family persona, to community volunteer persona, etc. SSE allows you to replicate any set of independent items (calendar entries, lists of contacts, lists of favorites, blogrolls, etc.) using simple RSS semantics.  It also supports asynchronous replication of new and changed items, meaning it can work even when you’re offline.  It also works across firewalls, and across different company infrastructures.  This is but one initiative in our overall plan to provide our customers with the kind of “just works” experiences they’ve come to expect in other aspects of their lives.

Sharing.  The “so what?” of SSE is that it extends RSS and OPML from unidirectional to bidirectional information flows.  Let’s just focus on calendaring for now.  There are three layers of calendar today: 1) Private/personal, 2) A group, and 3) A public calendar for events and schedules to which individuals or groups can subscribe.  The ability to subscribe to a public event calendar is certainly useful, and a step forward.  But it’s still just a one-way exchange of data.  We believe SSE addresses a larger problem that our customers have today.  For example, why do your work and family calendars have to be separate?  With SSE you could share your work calendar with your spouse.  If your calendar were published as an SSE feed, changes to your work calendar could be replicated to your spouse’s calendar, and vice versa.  As a result, your spouse could see your work calendar and add new appointments, such as a parent-teacher meeting, or a doctor’s appointment. Moreover, SSE could be used to replicate a set of calendar entries among a group of people, each working in a different company and using different infrastructure.

Answers to the other two most important questions: “What?” and “How?” are addressed in the draft spec and FAQ.

We would love to get your feedback on this spec. We don’t have a definitive deadline, but we look forward to getting your ideas and comments so we can incorporate them into a 1.0 specification that will be published in the coming months.

In addition to this blog, where you can provide comments, we’ve set up a mailing list at feed-tech@discuss.microsoft.com for discussion of the SSE spec (as well as the SLX spec and any other RSS topic of interest to subscribers). Please join us if you want to contribute to the SSE spec.The archive of the mailing list discussion will be available for those who want to follow without subscribing. Major changes to the spec or major issues will be posted for discussion here on the blog as well.

To subscribe to the list: Send email to: listserv@discuss.microsoft.com with the message body “subscribe feed-tech” or use the web-based subscription form.

-Jack

Comments

  • Anonymous
    November 30, 2005
    What's difference between SSE and SyncML?
  • Anonymous
    November 30, 2005
    The comment has been removed
  • Anonymous
    November 30, 2005
    Jack,
    This seems really exciting but to help me get my (not so technical) brain round the potential for SSE could you give some practical examples of how you could see it working, for example, in the travel business?
    Your calendar example above suggests itineraries for a group of passengers could be updated to take account of delays or cancellations on the fly and to keep everybody in sync.
    Can you think of any other examples for the travel space?
    Thanks very much
  • Anonymous
    December 01, 2005
    The comment has been removed
  • Anonymous
    December 01, 2005
    The comment has been removed
  • Anonymous
    December 02, 2005
    I really like the SSE idea and prepare to apply it to our bookmark collection synchronization. The collection is a list/tree of bookmarks/or favorites in XML format. Unlike current browser such as IE or FireFox which only has one Favorites or Bookmark tree, you can have many collections in the browser, i.e. many bookmark trees. You can create a collection of all the bookmarks related to your holiday, create a bookmark collection related with a project. If the PC is shared in the family, Dad’s bookmark collection will not interfere with Daughter’s bookmark collection on the same browser. You can download Tablane browser to see how this concept works (www.tablane.com).

    In the coming months, we will start online trial. You can put your collection online in RSS and Web forma. The collection are divided in three categories: Private, Private shared(group) and Public. You can use any device to access your collections and update them. The SSE seems perfect for our synchronization purpose.