FeedSync для Atom и RSS , ранее называемые расширениями Simple Sharing Extensions , представляют собой расширения для форматов каналов RSS и Atom , предназначенные для обеспечения синхронизации информации с использованием различных источников данных. Первоначально разработанный Рэем Оззи , главным архитектором программного обеспечения в Microsoft , теперь поддерживается Джеком Оззи , Джорджем Моромисато , Мэттом Огастином , Парешом Сутаром и Стивеном Лисом . Дэйв Винер , разработчик вариантов спецификации UserLand Software RSS, внес свой вклад в разработку спецификаций.
Текущая версия FeedSync для Atom и RSS - 1.02, и ее можно найти здесь . FeedSync для Atom и RSS находится под лицензией Creative Commons Attribution-ShareAlike License (версия 2.5) и Microsoft Open Specification Promise .
Задачей FeedSync для Atom и RSS является определение минимальных расширений, необходимых для того, чтобы позволить слабо взаимодействующим приложениям использовать каналы Atom и RSS в качестве основы для совместного использования элементов, то есть двунаправленную асинхронную синхронизацию новых и измененных элементов между двумя или несколько каналов с перекрестной подпиской.
Обратите внимание, что хотя большая часть FeedSync в настоящее время определяется в терминах каналов Atom и RSS, по сути, FeedSync строго требует, чтобы:
- Плоский набор элементов для синхронизации
- Набор метаданных синхронизации для каждого элемента, который поддерживается на всех конечных точках.
- Набор алгоритмов, за которыми следуют все конечные точки для создания, обновления, слияния и разрешения конфликтов всех элементов
Это означает, что FeedSync может быть реализован практически на любом языке программирования, а его метаданные представлены во многих форматах структурированных данных.
Примеры
Новостная лента
xml version = "1.0" encoding = "utf-8"?> version = "2.0" xmlns: sx = "http://feedsync.org/2007/feedsync" > To Do Список Список дел, которые нужно сделать https://www.2basetechnologies.com/services/mobile-application-development-company Since = "2005-02-13T18: 30: 02Z" until = "2005-05-23T18: 30: 02Z" > link = "[http://example.com/all.xmlpting{{dead link | date = декабрь 2016 | bot = InternetArchiveBot | fix -pting = yes}} " type = " complete " /> link = " [http://example.com/B.xml ] { {dead link | date = Декабрь 2016 | bot = InternetArchiveBot | fix -pting = yes}} " type = " aggregated " title = " To Do List (Jacks Copy) " /> -
Купить продукты Получите молоко, яйца, масло и хлеб id = "item_1_myapp_2005-05-21T11: 43: 33Z" updates = "3" > sequence = "3", когда = "2005-05-21T11: 43: 33Z" by = "JEO2000" /> sequence = "2" when = "2005-05-21T10: 43: 33Z" by = " REO1750 " /> sequence = " 1 " when = " 2005-05-21T09: 43: 33Z " by = " REO1750 " />
Подача атома
xml version = "1.0" encoding = "utf-8"?> xmlns = "http://www.w3.org/2005/Atom" xmlns: sx = "http://feedsync.org/2007 / feedsync " > Список дел Список дел, которые нужно сделать rel = " self " href = " http://example.com/partial.xml " / {{мертвая ссылка | date = декабрь 2016 г. | bot = InternetArchiveBot | fix-trypted = yes }} > Рэй Оззи 2005-05-21T11: 43: 33Z urn: uuid: 60a76c80-d399 -11d9-b93C-0003939e0aaa Since = "2005-02-13T18: 30: 02Z" until = "2005-05-23T18: 30: 02Z" > link = "[http : //example.com/all.xml] {{мертвая ссылка | date = декабрь 2016 | bot = InternetArchiveBot | fix -hibited = yes}} " type = " complete " /> link = " [http: //example.com/B.xml ]{{dead link | date = декабрь 2016 | bot = InternetArchiveBot | fix -hibited = yes}} " type = " aggregated " title = " To Do List (Jacks Copy) " /> Купите продукты Получите молоко, яйца, масло и хлеб urn: uuid: 60a76c80-d399-11d9-b93C-0003939e0aa0 < / id> Рэй Оззи 2005-05-21T11: 43: 33Z id = "item_1_myapp_2005-05-21T11: 43: 33Z " updates = " 3 " > sequence = " 3 " when = " 2005-05-21T11: 43: 33Z " by = " JEO2000 " /> sequence = " 2 " when = " 2005 -05-21T10: 43: 33Z " by = " REO1750 " /> sequence = " 1 " when = " 2005-05-21T09: 43: 33Z " by = " REO1750 " />
Пункт POX
xml version = "1.0" encoding = "utf-8"?> -
Купить продукты Получить молоко и яйца