Введение
Набор расширений для форматов RSS и Atom. FeedSync для Atom и RSS, ранее известные как Simple Sharing Extensions, — это расширения для форматов RSS и Atom, предназначенные для обеспечения двунаправленной синхронизации информации с использованием различных источников данных. Первоначально разработанный Рэем Оззи, главным архитектором программного обеспечения в Microsoft, в настоящее время поддерживается Джеком Оззи, Джорджем Моромисато, Мэттом Августином, Парешем Сутаром и Стивеном Лисом. Дэйв Уайнер, разработчик вариантов спецификации RSS для UserLand Software, принимал участие в разработке спецификаций. Последняя версия спецификации FeedSync для Atom и RSS — 1.02. FeedSync для Atom и RSS лицензируется в соответствии с лицензией Creative Commons Attribution ShareAlike (версия 2.5) и Microsoft Open Specification Promise. Цель FeedSync для Atom и RSS — определить минимальные расширения, необходимые для обеспечения взаимодействия приложений на основе Atom и RSS-каналов для обмена данными, то есть двунаправленной, асинхронной синхронизации новых и измененных элементов между двумя или более каналами, на которые подписаны обе стороны. Важно отметить, что хотя большая часть FeedSync в настоящее время определяется в терминах Atom и RSS-каналов, в своей основе FeedSync строго требует: плоской коллекции элементов для синхронизации; набора метаданных синхронизации для каждого элемента, поддерживаемых во всех конечных точках; набора алгоритмов, используемых всеми конечными точками для создания, обновления, объединения и разрешения конфликтов элементов. Это означает, что FeedSync может быть реализован практически на любом языке программирования, а его метаданные могут быть представлены во многих структурированных форматах данных.
FeedSync for Atom and RSS, previously Simple Sharing Extensions, are extensions to RSS and Atom feed formats designed to enable the bi directional synchronization of information by using a variety of data sources. Initially developed by Ray Ozzie, Chief Software Architect at Microsoft, it is now maintained by Jack Ozzie, George Moromisato, Matt Augustine, Paresh Suthar and Steven Lees. Dave Winer, the designer of the UserLand Software RSS specification variants, has given input for the specifications. The last version of FeedSync for Atom and RSS specification is 1.02. FeedSync for Atom and RSS is licensed under the Creative Commons Attribution ShareAlike License (version 2.5) and the Microsoft Open Specification Promise. The scope of FeedSync for Atom and RSS is to define the minimum extensions necessary to enable loosely cooperating applications to use Atom and RSS feeds as the basis for item sharing – that is, the bi directional, asynchronous synchronization of new and changed items amongst two or more cross subscribed feeds. Note that while much of FeedSync is currently defined in terms of Atom and RSS feeds, at its core what FeedSync strictly requires is:
A flat collection of items to be synchronized
A set of per item sync metadata that is maintained at all endpoints
A set of algorithms followed by all endpoints to create, update, merge, and conflict resolve all items
This means that FeedSync can be implemented by almost any programming language have its metadata represented in many structured data formats.
Примеры использования в реальном мире
Существует несколько примеров практического применения каналов FeedSync для синхронизации данных между приложениями.
Служба FeedSync
Эта служба для разработчиков прототипа представляет собой реализацию конечной точки FeedSync на основе HTTP. Приложения могут использовать HTTP GET и POST запросы для синхронизации каналов, при этом последний выполняет операцию слияния FeedSync для канала, размещенного в службе FeedSync. Сервис больше не функционирует.
Сильный Ангел III
Каналы FeedSync широко использовались в ходе учений Strong Angel III в августе 2006 года как легковесное промежуточное программное обеспечение для связи приложений от Microsoft, Google, ESRI и других компаний на настольных и мобильных устройствах. В настоящее время сервис не функционирует.
Проект ROME
Комплексный Java RSS-проект ROME представляет собой реализацию спецификации FeedSync, поскольку он предоставляет Java-уровень для разработчиков, позволяющий создавать приложения, использующие сервис FeedSync.
Сетка 4x
Mesh4x — это набор библиотек с открытым исходным кодом, инструментов, приложений и сервисов для приложений, работающих в сетях mesh. Он использует FeedSync в качестве стандарта управления версиями и реализует протокол обмена данными на основе пакетов, вдохновленный FeedSync, для синхронизации данных через SMS-сообщения.
Статьи
Устаревшая статья в блоге Рэя Оззи на Really Simple Sharing. Визуализация: как расширения для простого обмена изменят веб.