FeedSync for Atom and RSS(旧称:Simple Sharing Extensions)は、さまざまなデータソースを使用して双方向の情報同期を可能にするために設計された、RSSおよびAtomフィード形式の拡張機能です。当初はMicrosoftのチーフソフトウェアアーキテクトであるRay Ozzie氏によって開発され、現在はJack Ozzie氏、George Moromisato氏、Matt Augustine氏、Paresh Suthar氏、Steven Lees氏によってメンテナンスされています。UserLand Software RSS仕様バリアントの設計者であるDave Winer氏が、仕様策定に協力しています。
FeedSync for Atom および RSS 仕様の最新バージョンは 1.02 です。[ 1 ] FeedSync for Atom および RSS は、 Creative Commons Attribution-ShareAlike License (バージョン 2.5) およびMicrosoft Open Specification Promise の下でライセンスされています。
FeedSync for Atom and RSS の目的は、緩やかに連携するアプリケーションが Atom および RSS フィードをアイテム共有の基盤として使用できるようにするために必要な最小限の拡張機能を定義することです。つまり、2 つ以上の相互購読フィード間で、新規アイテムと変更されたアイテムの双方向非同期同期を実現します。
FeedSyncの多くは現在AtomとRSSフィードに基づいて定義されていますが、FeedSyncの中核となる要件は以下のとおりです。
これは、FeedSyncがほぼすべてのプログラミング言語で実装可能であり、そのメタデータを多くの構造化データ形式で表現できることを意味します。
<?xml version="1.0" encoding="utf-8"?> <rss version= "2.0" xmlns:sx= "http://feedsync.org/2007/feedsync" > <channel> <title> To Do List </title> <description>やるべきことのリスト</description> <link> https://www.example.com/something/foo/bar/ </link> < sx :sharing since= " 2005-02-13T18:30:02Z" until= "2005-05-23T18:30:02Z" > <sx:related link= "[http://example.com/all.xml]{{dead link|date=December 2016 |bot=InternetArchiveBot |fix-attempted=yes }}" type= "complete" /> <sx:related link= < sx:sharing> <item> <title>食料品を買う</title> <description> 牛乳、卵、バター、パンを買う </description> <sx:sync id= "item_1_myapp_2005-05-21T11:43:33Z" updates= "3" > < sx : history sequence = "3" when = "2005-05-21T11:43:33Z" by = " JEO2000 " / > < sx : history sequence = " 2 " when = " 2005-05-21T10 :43:33Z" by= < sx :history sequence= "1" when= "2005-05-21T09:43:33Z" by= "REO1750" /> </sx:sync> </item> </channel> </rss><?xml version="1.0" encoding="utf-8"?> < feed xmlns= "http://www.w3.org/2005/Atom" xmlns:sx= "http://feedsync.org/2007/feedsync" > <title> To Doリスト</title> <subtitle>やるべきことのリスト</subtitle> < link rel = "self" href= "http://example.com/partial.xml" /{{dead link| date= December 2016 | bot= InternetArchiveBot | <sx :sharing since = "2005-02-13T18:30:02Z" until= "2005-05-23T18:30:02Z" > < sx : related link= "[http://example.com/all.xml]{{dead link| date = December 2016 | bot= InternetArchiveBot | fix - attempted= yes } } " type= "complete" /> < sx :related link = <sx:sharing> <entry> <title>食料品を買う</title> <content> 牛乳、卵、バター、パンを買う</content> <id> urn : uuid :60a76c80 - d399-11d9-b93C-0003939e0aa0 </id> <author> <name> Ray Ozzie </name> </author> <updated> 2005-05-21T11 :43:33Z </updated> < sx :sync id= <sx: history sequence= "3" when= "2005-05-21T11:43:33Z" updates= "3" > <sx:history sequence= "3" when= "2005-05-21T11:43:33Z" by= "JEO2000" /> <sx:history sequence= "2" when= "2005-05-21T10:43:<sx:history sequence= "1" when = "2005-05-21T09: 43:33Z" by= "REO1750 " /> <sx:history sequence= "1" when= "2005-05-21T09:43:33Z" by= "REO1750" /> </sx:sync> </entry> </feed><?xml version="1.0" encoding="utf-8"?> <item> <subject>食料品を買う</subject> <body>牛乳と卵を買う</body> <sx:sync id= "item_1_myapp_2005-05-21T11:43:33Z" updates= "1" > <sx:history sequence= "1" when= "2005-05-21T09:43:33Z" by= "REO1750" /> </sx:sync> </item>{ "title" : "食料品を買う" , "description" : "牛乳と卵を買う" , "sync" : { "id" : "item_1_myapp_2005-05-21T11:43:33Z" , "updates" : "1" , "history" : [ { "sequence" : "1" , "when" : "2005-05-21T09:43:33Z" , "by" : "REO1750" } ] } }![]()
FeedSyncフィードをアプリケーション間でデータを同期するために「実世界」で使用している例はいくつかあります。
このプロトタイプ開発者向けサービスは、HTTPベースのFeedSyncエンドポイントの実装です。アプリケーションはHTTP GETおよびPOSTコマンドを使用してフィードを同期できます。後者のPOSTコマンドは、FeedSyncサービスによってホストされているフィードに対してFeedSyncマージ操作を実行します。このサービスは現在利用できません。
FeedSyncフィードは、2006年8月に実施されたStrong Angel III演習において、 Microsoft、Google、ESRIなどのアプリケーションをデスクトップおよびモバイルデバイス上で連携させるための軽量ミドルウェアとして広く利用されました。このサービスは現在、提供されていません。
包括的なJava RSSプロジェクトであるROMEは、FeedSync仕様の実装であり、開発者がFeedSyncサービスを利用するアプリケーションを作成するためのJavaレイヤーを提供します。
Mesh4xは、メッシュベースのアプリケーション向けのオープンソースのライブラリ、ツール、アプリケーション、およびサービス群であり、バージョン管理の標準としてFeedSyncを使用し、SMSテキストメッセージを介してデータを同期するためのFeedSyncに着想を得たパケットベースのプロトコルを実装しています。