KR101485613B1 - 웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체 - Google Patents

웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR101485613B1
KR101485613B1 KR20097001305A KR20097001305A KR101485613B1 KR 101485613 B1 KR101485613 B1 KR 101485613B1 KR 20097001305 A KR20097001305 A KR 20097001305A KR 20097001305 A KR20097001305 A KR 20097001305A KR 101485613 B1 KR101485613 B1 KR 101485613B1
Authority
KR
South Korea
Prior art keywords
web
web syndication
item
synchronization
syndication
Prior art date
Application number
KR20097001305A
Other languages
English (en)
Other versions
KR20090034898A (ko
Inventor
모에 코스라비
마이클 알. 클라크
올리버 리
레브 노빅
토마스 페닝
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20090034898A publication Critical patent/KR20090034898A/ko
Application granted granted Critical
Publication of KR101485613B1 publication Critical patent/KR101485613B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

게시자와 구독자 간의 RSS(Really Simple Syndication) 형식을 통한 웹 신디케이션 항목(web syndication item)의 동기화. 게시자는 자신과 연관된 미디어 컨텐츠를 포함시킴으로써 웹 신디케이션 항목을 생성한다. 생성된 웹 신디케이션 항목과 연관된 제1 가상 클럭값을 포함하도록 신디케이션 메타데이터가 정의된다. 제1 가상 클럭값은 웹 신디케이션 항목이 마지막으로 갱신된 때가 언제인지를 나타낸다. 게시된 웹 신디케이션 항목을 구독하기 위한 요청이 구독자로부터 수신된다. 수신된 요청에 응답하여, 게시된 웹 신디케이션 항목이 게시자로부터 원격지에 있고 구독자에 의해 액세스가능한 장소로 전송된다. 제1 가상 클럭값은 구독자에게 제공되어, 구독자가 웹 신디케이션 항목과 연관된 미디어 컨텐츠를 수정할 때 제1 가상 클럭값을 수정하는 데 사용된다.
웹 신디케이션, 게시자, 구독자, RSS, 동기화 메타데이터

Description

웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체{TWO-WAY AND MULTI-MASTER SYNCHRONIZATION OVER WEB SYNDICATIONS}
RSS(Really Simple Syndication) 프로토콜, Atom 프로토콜, 또는 RSS 프롤토콜의 기타 파생 프로토콜 등의 웹 신디케이션 형식은 미디어 컨텐츠가 다른 사람들이 소비할 데이터를 기술하는 아주 간단한 규격을 사용하여 서로 다른 종단점들로부터 전송될 수 있게 해준다. 아주 간단한 예에서, 사용자-A가 그의 사진 모음을 다른 사용자들과 공유하기를 원하는 것으로 가정하자. 사용자-A는 RSS 채널을 통해 그의 사진을 게시할 것이다. 사용자-B가 사용자-A로부터 사진을 받기 위해 RSS 채널을 구독할지도 모른다.
빈번하게, 웹 신디케이션 항목의 사용자(최초의 게시자이거나 구독자임)가 피드 항목(들)을 갱신하고 그 갱신된 버전(들)을 게시하기를 원할지도 모른다. 예를 들어, 사용자-A의 상황에서, 하나 이상의 사진이 잘못되어 있거나 일부 사진들을 설명하는 데 인쇄 오류가 있을지도 모른다. 갱신된 사진을 새로운 항목 또는 "에피소드"로서 전송하는 대신에, 게시자가 기존의 신디케이션 항목을 갱신하고자 할지도 모른다. 마찬가지로, 구독자가 기존의 항목에 대한 갱신을 제공하고자 할지도 모른다.
현재, 게시자는 갱신을 제공할 수 없다. 또한, 갱신이 가능한 경우조차도, 구독자(예를 들어, 사용자-B)는 자신이 갱신된 신디케이션 항목을 이미 수신했는지를 판정할 수 없다. 그에 부가하여, 현재의 RSS 프로토콜은 웹 신디케이션 항목의 동기 갱신을 제공할 수 없는데, 그 이유는 웹 신디케이션 항목과 연관된 현재의 RSS 메타데이터가 이러한 동기화를 고려하지 않고 있기 때문이다. 게다가, 기존의 RSS 프로토콜은 게시자 또는 구독자에게 특정의 웹 신디케이션 항목이 얼마나 최신의 것인지를 알려주는 균일한 또는 범용 클럭을 제공하지 않는다.
본 발명의 실시예들은 각각의 웹 신디케이션 항목에 대한 동기화 메타데이터를 정의함으로써 기존의 실무 및 웹 신디케이션 방식을 향상시킨다. 각각의 웹 신디케이션 항목이 동기화 메타데이터를 포함하게 함으로써, 사용자(게시자 및 구독자 둘다)는 편의에 따라 효율적으로 웹 신디케이션 항목을 게시, 갱신, 구독, 또는 관리할 수 있다. 본 발명의 측면들은 또한 웹 신디케이션 항목의 여러 버전들 간의 충돌을 검출 및 해결하도록 동기화 메타데이터를 구성한다. 그에 부가하여, 본 발명의 대안의 실시예들은 신디케이션 채널과 연관된 하나 이상의 웹 신디케이션 항목들의 갱신의 이력을 제공하기 위해 신디케이션 채널에 대한 동기화 요약을 제공한다.
이 요약은 이하의 상세한 설명에서 더 기술되는 일련의 개념들을 간략화된 형태로 소개하기 위해 제공된 것이다. 이 요약은 청구된 발명 대상의 주요 특징들 또는 필수적인 특징들을 확인하기 위한 것이 아니며, 청구된 발명 대상의 범위를 정하는 데 보조 수단으로 사용되기 위한 것도 아니다.
다른 특징들이 일부는 자명하게 될 것이며 일부는 이후에 설명될 것이다.
도 1은 본 발명의 일 실시예에 따라 게시자와 구독자 간에 웹 신디케이션 채널을 통해 웹 신디케이션 항목을 갱신하는 것을 나타낸 도면.
도 2a 내지 도 2c는 본 발명의 일 실시예에 따른 동기화 메타데이터 및 갱신 메타데이터의 예시적인 구현을 나타낸 블록도.
도 3은 본 발명의 일 실시예에 따라 웹 신디케이션 채널의 동기화 요약(synchronization summary)을 갱신하는 시스템을 나타낸 블록도.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따라 웹 신디케이션 항목과 웹 신디케이션 채널을 동기화하는 것을 나타낸 플로우차트.
도 5는 본 발명의 일 실시예에 따른, 웹 신디케이션 항목의 동기화를 가능하게 해주는 데이터 구조를 나타낸 블록도.
도 6 및 도 7은 본 발명의 측면들이 저장될 수 있는 예시적인 컴퓨터-판독가능 매체를 나타낸 블록도.
도면 전체에 걸쳐, 대응하는 참조 번호는 대응하는 부분을 나타낸다.
먼저 도 1을 참조하면, 블록도는 본 발명의 일 실시예에 따라 게시자와 구독자 간에 웹 신디케이션 채널을 통해 웹 신디케이션 항목을 갱신하는 시스템(100)을 나타낸 것이다. 예시적인 일례에서, 시스템(100)은 게시자 A에 의해 작동되는 제1 장치(102) 및 구독자 B에 의해 작동되는 제2 장치(104)를 보여주고 있다. 제1 장치(102) 및 제2 장치(104)는 컴퓨터, 모바일 컴퓨팅 장치(예를 들어, PDA, 셀룰러 전화, 휴대용 게임 콘솔, 기타), 또는 이들의 조합 등의 범용 컴퓨팅 장치일 수 있다. 예를 들어, 제1 장치(102)는 컴퓨터-실행가능 명령어, 코드, 루틴, 애플리케이션, 소프트웨어, 기타 등등을 처리할 수 있는 프로세서(112)를 포함할 수 있다. 제1 장치(102)는 또한 컴퓨터 저장 매체(116), 및 사용자 인터페이스(UI)(114)도 포함하고 있다.
예를 들어, 컴퓨터 저장 매체(116)로는 RAM, ROM, EEPROM, 플래쉬 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광 디스크 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용될 수 있고 범용 컴퓨터(예를 들어, 서버 컴퓨터(104) 또는 클라이언트 장치(102))에 의해 액세스될 수 있는 임의의 다른 매체가 있다. 또한, 제1 장치(102)는 통신 매체를 포함할 수 있으며, 이 통신 매체는 통상적으로 반송파 또는 기타 전송 메카니즘 등의 피변조 데이터 신호에 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 기타 데이터를 구현하고 모든 정보 전달 매체를 포함한다. 당업자라면 피변조 데이터 신호가 신호에 정보를 인코딩하도록 그 신호의 특성들 중 하나 이상이 설정 또는 변경된 것임을 잘 알 것이다. 유선 네트워크 또는 직접 배선 접속 등의 유선 매체, 및 음향, RF, 적외선 및 기타 무선 매체 등의 무선 매체는 통신 매체의 예들이다. 상기한 것들 중 임의의 것의 조합도 컴퓨터 판독가능 매체의 범위 내에 포함된다.
계속하여 도 1을 참조하면, 게시자 A는 다른 구독자 B에게 제공될 수 있는 미디어 컨텐츠를 가지고 있을 수 있다. 예를 들어, 게시자 A는 그 기사에 관심이 있을지도 모를 다른 사람들과 공유할 기사를 가지고 있을 수 있다. 그 자체로서, 게시자 A는 신디케이션 채널(예를 들어, RSS 피드)(106)을 통해 구독자 B가 신디케이션 항목(예를 들어, 기사)(110)을 이용할 수 있도록 신디케이션 채널(106)을 설정한다. 이번에는, 구독자 B가 신디케이션 항목(110)을 받기 위해 신디케이션 채널(106)을 구독한다. 다른 예에서, 게시자 A는 동일한 신디케이션 채널(106)을 통해 하나 이상의 항목(예를 들어, SYNC 항목(110-2) 및 SYNC 항목(110-3))을 게시 또는 포스팅할 수 있다. 신디케이션 항목(110)이 공용 통신 네트워크(108)(예를 들어, 인터넷, 인트라넷, 기타)를 통해 제1 장치(102)로부터 제2 장치(104)로 전송되는 경우, 구독자 B는 게시자 A에 의해 게시된 신디케이션 항목(110)의 사본을 수신할 수 있다.
예를 들어, 게시자 A는 구독자 B가 직접 구독할 수 있는 구독용 신디케이션 채널(예를 들어, RSS 피드)을 제공하는 웹 사이트를 운영하고 있을지도 모른다. 다른 예에서, 게시자 A는 구독자 B 등의 다른 사용자가 신디케이션 채널(106)을 구독할 수 있도록 웹 신디케이션 수집(web syndication aggregation) 웹 사이트 또는 서비스에 신디케이션 항목(110)을 제공/게시할 수 있다. 본 발명의 실시예들이 RSS 프로토콜을 사용하여 기술되어 있지만, 본 발명의 범위를 벗어나지 않고 다른 웹 신디케이션 형식 또는 프로토콜이 사용될 수 있다는 것을 잘 알 것이다.
이제 도 2a 내지 도 2c를 참조하면, 블록도들은 본 발명의 일 실시예에 따른 동기화 메타데이터(202), 갱신 메타데이터(228), 및 동기화 요약(230)의 예시적인 구현을 나타낸 것이다. 예를 들어, 도 1에 나타낸 바와 같이, 구독자 B는 게시자 A에 의해 게시 또는 포스팅된 신디케이션 항목(110)을 받는다. 그렇지만, 구독자 B가 게시자 A가 게시한 기사 내에 인쇄 오류가 있는 것을 발견하고 그 기사를 갱신 또는 수정하고자 하는 것으로 가정한다. 현재의 프로토콜 또는 실무에서는 구독자 B가 게시자 A에게 인쇄 오류가 있음을 알려주는 코멘트를 신디케이션 채널(106)로 포스팅할 수 있을 뿐이다. 그 자체로서, 기존의 프로토콜은 게시자 A가 웹 신디케이션 항목(110)에 포함된 미디어 컨텐츠를 수정 또는 갱신할 수 있는 유일한 사람으로 되어 있는 단일-마스터 단방향 시스템(one-master and one-way system)을 가능하게 해준다. 구독자 B가 기사를 수신하여 제2 장치(104)에 저장하고 있을 때 그 기사를 수정하고자 하는 경우, 기존의 웹 신디케이션 프로토콜은 게시자 A에게로 갱신 또는 수정된 기사를 동기 전송하는 것을 가능하게 해주지 않는다.
이제 도 2a를 참조하면, 각각의 신디케이션 항목(예를 들어, 신디케이션 항목(110-1))에 동기화 메타데이터(202)를 설정 또는 정의하는 구현예가 나타내어져 있다. 본 발명의 측면들은 신디케이션 항목에 대한 효율적이고 동기적인 갱신을 달성하기 위해 각각의 신디케이션 항목(110)에 동기화 메타데이터(202)를 적용한다. 이 예에서, 동기화 메타데이터(202)는 표 1에 있는 필드 및 그에 대응하는 설명을 포함한다.
<표 1> 동기화 메타데이터 필드
필드 유형 설명 필요 여부
itemID 문자열 항목에 대한 전역적으로 고유한 ID. 16 바이트 UUID의 표현일 수 있음.
lastUpdater 문자열 itemID로 식별되는 항목을 마지막으로 갱신하는 사람의 전역적으로 고유한 ID. 16 바이트 UUID의 표현일 수 있음
deleted 부울 항목의 삭제를 신호하고 비석을 표시함. 아니오
일 실시예에서, 동기화 메타데이터(202)는 RSS 형식에서 XML(extensible markup language)의 "<history>" 태그를 사용하여 구현될 수 있다. 일 실시예에서, 웹 신디케이션 항목은 그와 연관된 미디어 컨텐츠를 설명하는 데이터(226) 등의 기타 데이터 또는 메타데이터를 포함한다. 예를 들어, RSS 프로토콜에서 각각의 웹 신디케이션 항목은 "<item>" 엘리먼트를 사용하고, 동기화 메타데이터(202)는 "<history>" 자식 엘리먼트 내에 포함되게 된다. 각각의 <history> 자식 엘리먼트는 적어도 itemID 필드(204), "lastUpdater" 필드(206), 및 "deleted" 필드(208)(선택적임)를 포함한다. 일 실시예에서, 각각의 웹 신디케이션 항목(110)은 그와 연관된 <history> 자식 엘리먼트를 정확히 한개만 포함한다.
이전의 기사를 예로 사용하면, 게시자 A는 그 기사를 itemID 필드(204)에서 "0000000000000001"로서 식별하고 "lastUpdater" 필드(206)는 게시자 A를 식별해준다. 게시자 A는 "deleted" 필드(208)가 선택적인 필드이기 때문에 이를 공백으로 두고자 할 수 있다.
각각의 <history> 자식 엘리먼트 내에서, 갱신 메타데이터(228)의 하나 이상의 인스턴스는 웹 신디케이션 항목(110)을 변경 또는 수정한 고유의 종단점들(예를 들어, 게시자 A 또는 구독자 B)의 수와 같다. 일련의 갱신 메타데이터(228) 각각은 "by" 필드(210) 및 "sn" 시간 필드(212)를 포함한다. 예를 들어, 표 2는 갱신 메타데이터(228)를 더 상세히 기술하고 있다.
<표 2> 갱신 메타데이터
필드 유형 설명 필요 여부
by 문자열 itemID로 식별되는 항목을 마지막으로 갱신하는 사람의 전역적으로 고유한 ID. 16 바이트 UUID의 표현이어야 함.
sn 64-비트 이상의 정수값 by 종단점이 변경을 행한 "때"를 나타내는 정수. (by가 RSS 피드에 계속되는 갱신 또는 일련의 변경을 행할 때마다, "by" 필드에 대한 틱 카운트(tick count)가 증가됨)
예를 들어, 맨처음에, 게시자 A가 웹 신디케이션 항목(110)을 처음으로 게시할 때, "by" 필드(210)는 "게시자 A"를 포함할 수 있고, "sn" 시간 필드(212)는 갱신 또는 변경이 기록된 때를 나타내는 시간값을 포함할 수 있다. 일 실시예에서, "sn" 시간 필드(212)는 분산 시스템에서 이벤트에 대한 논리적 클럭을 사용하여 이벤트를 정렬하는 데 사용되는 데이터 구조인 클럭 벡터(clock vector)(또는 벡터 클럭(vector clock)이라고도 함)로부터의 값일 수 있다. 환언하면, "sn" 시간 필드(212)는 게시자 A가 웹 신디케이션 항목(110)을 갱신할 때의 제1 장치(102) 내의 클럭(예를 들어, 5:05 PM GMT, Wednesday, July 12, 2006)과 직접 연관되어 있지 않을 수 있다. 또다른 실시예에서, "sn" 시간 필드(212)는 가상적 또는 논리적 클럭값일 수 있다. 본 발명의 범위를 벗어나지 않고 가상적 또는 논리적 클럭값의 다른 표현이 사용될 수 있다.
동기화 메타데이터(202) 및 갱신 메타데이터(228)를 정의함으로써, 본 발명의 실시예들은 사용자 또는 종단점(예를 들어, 게시자 A 및 구독자 B)이 RSS를 통해 임의의 데이터를 효율적으로 동기화할 수 있게 해준다. 그에 부가하여, 본 발 명의 측면들은 사용자가 도 2b에 도시된 사용자 인터페이스(UI) 등의 웹 신디케이션 항목(110) 내의 미디어 컨텐츠를 수정할 때 사용자에게 동기화 메타데이터(202) 및 갱신 메타데이터(228)(즉, "sn" 시간 필드(212)를 포함함)를 제공한다. 이 대안의 실시예에서, 대화상자 창(214)은 웹 신디케이션 항목이 갱신된 경우(또는 처음으로 생성된 경우), 사용자가 동기화 메타데이터(202) 및 갱신 메타데이터(228)를 갱신하기 위한 대화상자 창을 제공받을 수 있음을 보여준다. 예를 들어, 사용자는 게시될 웹 신디케이션 항목(110)에 대응하는 itemID 필드(204)를 확인 또는 수정할 수 있다. 이와 유사하게, 사용자는 "lastUpdater" 필드(206)에 사용자를 식별해주는 ID(identification) 값을 입력한다. 사용자는 또한 선택적으로 "deleted" 필드(208)에 적절한 정보를 입력할 수 있다. 갱신 메타데이터(228)에서, 사용자는 적절히 "by" 필드(210)를 입력하고 "sn" 필드(212)를 증가시킬 수 있다.
동작을 설명하면, 게시자 A는 제1 장치(102)에서 미디어 컨텐츠(예를 들어, 문서 기사)를 웹 신디케이션 항목(110)에 연관시킴으로써 웹 신디케이션 항목(110)을 생성한다. 웹 신디케이션 항목(110)을 생성할 시에, 게시자 A는 itemID, "lastUpdater", 및/또는 "deleted" 등의 값을 포함하도록 동기화 메타데이터(202)를 정의한다. 게시자 A는 다른 사용자들(예를 들어, 구독자 B)이 웹 신디케이션 채널(106)을 구독하도록 웹 신디케이션 채널(예를 들어, 웹 신디케이션 채널(106))을 통해 웹 신디케이션 항목(110)을 게시한다.
그 자체로서, 게시자 A는 구독자 B로부터 구독 요청을 받고 게시된 웹 신디 케이션 항목(110)을 구독자 B로 전송한다. 구독자 B가 웹 신디케이션 항목(110)을 수정 또는 갱신할 때, 동기화 메타데이터(202) 및 갱신 메타데이터(228)(처음에 비어 있을 수 있음)가 구독자 B에게 제공된다. 구독자 B 및 기타 구독자들이 웹 신디케이션 항목(110)의 미디어 컨텐츠의 수정에 기여할 때, 본 발명의 실시예들은 웹 신디케이션 채널을 사용하여 양방향 멀티-마스터(예를 들어, 컨텐츠 수정 권한을 갖는 다중-사용자) 통신을 제공한다. 또한, 웹 신디케이션의 게시자 또는 구독자가 웹 신디케이션 항목과 연관된 불필요한 메타데이터로 넘쳐나게 하지 않고, 본 발명의 측면들은 이 방식을 단순화하고 원하는 결과를 달성하는 데 가장 관련있는 정보를 제공한다.
동기화 메타데이터(202) 및 갱신 메타데이터(228) 내의 필드가 어떤 문자 길이 또는 데이터 유형(예를 들어, 16 바이트 또는 "문자열" 데이터 유형)을 필요로 하지만, 본 발명의 범위를 벗어나지 않고 다른 데이터 유형, 요건, 또는 데이터 표현이 사용 또는 구현될 수 있다.
일 실시예에서, 실시예들은 웹 신디케이션 항목의 충돌 검출 및 충돌 해결을 가능하게 해준다. 예를 들어, 구독자 B가 게시자 A로부터 웹 신디케이션 항목(110)을 수신한 후에, 구독자 B가 미디어 컨텐츠를 수정함으로써(예를 들어, 인쇄 오류를 정정함으로써) 웹 신디케이션 항목을 갱신하고자 하는 것으로 가정하자. 구독자 B는 계속하여 미디어 컨텐츠에 변경을 하고 동기화 메타데이터(202)(예를 들어, "lastUpdater" = 구독자 B) 및 갱신 메타데이터(228)(예를 들어, "by" = 구독자 B, 및 "sn" = 50)에 적절한 정보를 입력할 수 있다. 이 정보/변경을 다시 게 시자 A 또는 동일한 웹 신디케이션 채널(106)을 역시 구독하고 있는 다른 사용자들에게 전달하기 위해, 구독자 B는 계속하여 갱신된 웹 신디케이션 항목을 게시할 수 있다.
이제 도 2c를 참조하면, 블록도는 웹 신디케이션 채널(106)에 대한 동기화 요약(230)의 예시적인 구현을 나타낸 것이다. 일 실시예에서, 동기화 요약(230)은 주어진 피드의 모든 항목에 대한 데이터, 메타데이터, 및/또는 기타 정보를 포함하고 있다. 다른 실시예에서, 동기화 요약(230)은 또한 웹 신디케이션 채널(106)과 연관된 모든 웹 신디케이션 항목에 대해 행해진 모든 갱신을 포함하고 있다. 대안의 실시예의 예외적인 경우에, 동기화 요약(230)은 벡터 정보를 가질 수 있는 항목과 연관된 데이터, 메타데이터, 및/또는 정보를 포함하지 않을 수도 있다. 환언하면, 각각의 신디케이션 항목은 각각의 신디케이션 항목에 대해 행해질 갱신 및 그와 연관된 다른 정보를 열거하는 동기화 요약을 가지게 된다.
제한이 아닌 예로서, 도 2c의 동기화 요약(230)은 도 2a에 나타낸 갱신 메타데이터와 일치하는데, 그 이유는 신디케이션 채널(106)이 신디케이션 항목을 단 하나만 포함하고 있기 때문이다. 동기화 요약(230)을 사용하여, 게시자 A 및 구독자 B를 비롯한 사용자는 웹 신디케이션 채널(106)에 속하는 웹 신디케이션 항목의 갱신 이력을 검토할 수 있다.
일 실시예에서, 웹 신디케이션 항목이 구독자 B에 의해 갱신되면, 갱신된 정보가 전송되고 동기화 요약(230)에서 자동적으로 갱신된다. 예를 들어, 구독자 B가 게시자 A에 의해 게시된 기사에 대한 변경을 완료한 후에, 갱신 정보(예를 들 어, "lasfUpdater" = 구독자 B 및 "sn" = 50)가 웹 신디케이션 채널의 동기화 요약(230)과 동기화된다. 일 실시예에서, 동일한 요약 내용이 웹 신디케이션 항목의 갱신 메타데이터(228)에 이미 포함되어 있는지를 판정하기 위해 웹 신디케이션 채널에 대한 동기화 요약(230)이 먼저 분석된다. 포함되어 있지 않은 경우, 동기화 요약(230)이 갱신 메타데이터(228) 내의 정보로 갱신된다.
대안의 실시예에서, 게시자 A가 구독자 B로부터 갱신된 미디어 컨텐츠를 수신할 때, 본 발명의 실시예들은 갱신 메타데이터(228) 및 동기화 메타데이터(202)의 함수로서 미디어 컨텐츠의 2개의 버전 사이에 충돌이 있는지를 게시자 A가 판정할 수 있게 해준다. 이 예에서, 구독자 B로부터 갱신된 미디어 컨텐츠를 수신할 시에, 게시자 A는 구독자 B로부터의 갱신된 미디어 컨텐츠에서의 "lastUpdater" 내의 값을 그 자신이 웹 신디케이션 항목에 포함시킨 원래의 미디어 컨텐츠 내의 "lastUpdater" 값과 비교한다. 이들 값이 서로 동일한 경우, 게시자 A는 그 다음에 어느 버전이 나중에 갱신된 것인지를 판정하기 위해 가상 클럭값(예를 들어, "sn" 값)을 비교한다. 갱신된 미디어 컨텐츠의 "sn" 값이 원래의 미디어 컨텐츠의 "sn" 값보다 큰 경우, 갱신된 미디어 컨텐츠가 미디어 컨텐츠의 갱신된 버전이다. 갱신된 미디어 컨텐츠의 "sn" 값이 원래의 미디어 컨텐츠의 "sn" 값보다 작거나 같은 경우, 원래의 미디어 컨텐츠가 구독자 B로부터의 버전보다 최신의 것이다.
다른 대안으로서, "lastUpdater" 값이 서로 다른 경우, 게시자 A는 계속하여 갱신 메타데이터(228)가 갱신된 미디어 컨텐츠로부터의 버전 내의 "lastUpdater" 정보와 일치하는 정보(예를 들어, "by" 값)를 포함하는지를 평가할 수 있으며, 그 반대의 경우도 마찬가지이다. 포함되어 있는 경우, 어느 버전이 보다 최신의 것인지에 관하여 충돌이 없다. 그렇지 않은 경우, 어느 버전이 가장 최신의 것인지에 관하여 충돌이 있다.
게시자 A에 의해 생성된 기사의 예에서, "lastUpdater"가 서로 다른데, 그 이유는 구독자 B가 원래의 미디어 컨텐츠를 변경했기 때문이다. 게시자 A는 갱신된 미디어 컨텐츠의 갱신 메타데이터(228)를 검사할 때, 구독자 B가 그 미디어 컨텐츠를 갱신하기 전에 그 자신이 그 미디어 컨텐츠를 생성했다는 것을 알게 된다. 그 자체로는, 충돌이 없고, 동기화 요약(230)은 당연히 미디어 컨텐츠의 갱신 이력 전부를 포함하며, 원래의 미디어 컨텐츠가 갱신된 미디어 컨텐츠로 대체된다.
충돌이 있는 경우, 일 실시예에서, 게시자는 UI(예를 들어, UI(310))를 통해 충돌을 해결하기 위한 임의의 선택 사항들의 목록을 제공받을 수 있다. 일례에서, 2개의 종단점 또는 사용자가 상대방의 변경을 모른 채 웹 신디케이션 항목에 독립적인 변경을 할 때 충돌이 일어난다. 충돌을 검출하는 일례는 동기화 메타데이터(202) 내의 "lastUpdater" 필드(도 4c에서 상세히 설명함) 및 갱신 메타데이터(228)의 "by" 필드를 검사하는 것일 수 있다. 본 발명의 범위를 벗어나지 않고 다른 충돌 검출 메카니즘 또는 방법이 이용될 수 있다. 본 발명의 다른 측면에서, 충돌 검출 메카니즘이 디스에이블될 수 있다. 또다른 대안의 실시예에서, 충돌 검출 메카니즘은 웹 신디케이션 항목, 웹 신디케이션 채널, 또는 둘다와 연관된 다른 부가적인 메타데이터 또는 정보를 평가할 수 있다. 본 발명의 범위를 벗어나지 않고 다른 충돌 검출 및/또는 해결 메카니즘 및 방식이 사용될 수 있다.
충돌이 검출되면, 사용자는 미디어 컨텐츠의 어느 버전이 웹 신디케이션 항목의 우세한 버전으로서 사용되어야 하는지를 선택하는 옵션의 목록을 제공받을 수 있다. 예를 들어, 옵션으로는 다음과 같은 것들이 있을 수 있다.
1. 로컬 버전이 항상 우세하다.
2. 원격 버전이 항상 우세하다.
3. 원격 버전의 "lastUpdater" 값이 원래의 게시자와 같은 경우, 원격 버전이 우세하다. 그렇지 않은 경우, 로컬 버전이 우세하다. 본 발명의 범위를 벗어나지 않고 사용자에 의해 다른 충돌 해결이 구성 및 커스터마이즈될 수 있다.
충돌이 해결되면, 갱신 메타데이터(228), 동기화 메타데이터(202), 및 동기화 요약(230)에서 우세한 버전이 갱신된다. 대안의 실시예에서, 충돌 해결 기법으로 인해 특정의 버전이 선택되거나 선택되지 않았음을 나타내기 위해 선택적인 충돌 메타데이터가 제공된다.
다른 대안의 실시예에서, 게시자 A가 웹 신디케이션 항목의 미디어 컨텐츠를 삭제하고자 하는 경우, 게시자 A는 선택적으로 "deleted" 필드(208)에 정보를 입력할 수 있고, 동기화 메타데이터(202)는 이러한 삭제 정보도 역시 포함하게 된다.
이제 도 3을 참조하면, 블록도는 본 발명의 일 실시예에 따라 웹 신디케이션 채널의 동기화 요약을 갱신하는 시스템(300)을 나타낸 것이다. 이 예에서, 하나 이상의 웹 신디케이션 사용자(302)는 웹 신디케이션 채널(예를 들어, RSS 피드)(304)을 구독하거나 그에 기고한다. 예를 들어, 웹 신디케이션 사용자(302)는 게시자 및 구독자 둘다일 수 있는데, 그 이유는 웹 신디케이션 사용자가 웹 신디케 이션 항목(110)을 갱신할 수 있기 때문이다. 웹 신디케이션 항목(110)은 데이터 저장소(306)에 저장될 수 있고 처음으로 게시된 후에는 서버 컴퓨터(312)에서 이용할 수 있다. 예를 들어, 웹 신디케이션 항목(110)은 게시자에 의해 유지되는 웹 사이트에서 이용가능할 수 있으며, 프로세서(308)는 웹 신디케이션 사용자(302)와 웹 신디케이션 항목(110) 간의 상호작용을 처리하는 컴퓨터-실행가능 명령어를 실행한다.
다른 실시예에서, 프로세서(308)는 웹 신디케이션 사용자(302)와 웹 신디케이션 항목(110) 간의 상호작용을 제공하는 사용자 인터페이스(UI)(310)를 관리하도록 구성되어 있다. 예를 들어, UI(310)는 웹 신디케이션 사용자(302)에게 도 2b의 창(214) 등의 대화상자 창을 제공하거나 트리거할 수 있다. 다른 실시예에서, UI(310)는 웹 신디케이션 항목(110)에 대한 동기적 갱신에 영향을 주기 위해 갱신 메타데이터(228) 또는 동기화 메타데이터(202)의 일부를 웹 신디케이션 사용자(302)에게 보여줄 수 있다. 또한, 웹 신디케이션 사용자(302) 각각이 물리적으로 서버 컴퓨터(312) 또는 다른 웹 신디케이션 사용자(302)로부터 멀리 떨어진 장소에 있을 수 있다는 것을 잘 알 것이다.
웹 신디케이션 항목(110)의 여러가지 버전이 있는 경우, 동기화 요약(230)은 당연히 웹 신디케이션 항목(110)의 각각의 버전의 갱신 메타데이터(228) 및 동기화 메타데이터(202)에 표시된 정보를 포함한다. 예를 들어, 웹 신디케이션 항목의 제1 버전 및 웹 신디케이션 항목의 제2 버전이 (예를 들어, 제1 장치(102), 제2 장치(104), 또는 서버 컴퓨터(312)에서) 수신되는 것으로 가정하자. 웹 신디케이션 항목의 제1 버전은 웹 신디케이션 항목에 대한 제1 갱신을 나타내고, 웹 신디케이션 항목의 제2 버전은 웹 신디케이션 항목에 대한 제2 갱신을 나타낸다. 웹 신디케이션 채널에 대해 (아직 정의되지 않은 경우) 동기화 요약(230)이 정의되고, 동기화 요약(230)은 주어진 웹 신디케이션 채널에 대한 모든 웹 신디케이션 항목과 연관된 이력을 나타낸다. 웹 신디케이션 항목(110)의 버전들 각각에 대한 동기화 메타데이터(202)가 수집되고, 수집된 동기화 메타데이터의 순서가 결정된다. 이어서, 웹 신디케이션 항목의 여러 버전들로부터의 동기화 메타데이터의 결정된 순서로 동기화 요약(230)이 갱신된다.
일 실시예에서, 동기화 요약(230)은 웹 신디케이션 항목의 모든 버전들로부터의 동기화 메타데이터를 병합한다. 이 예에서, 동기화 요약(230)이 웹 신디케이션 항목(110)의 2개의 버전으로부터의 동기화 메타데이터(202)를 병합하는 것으로 가정하고 (예를 들어, 상기한 하나 이상의 충돌 해결 기법을 사용하여) 이 2개의 버전 중 한 버전이 이미 다른 버전보다 우세한 것으로 판정된 것으로 가정하자. 동기화 요약(230)은 먼저 동기화 요약(230) 내의 "lastUpdater" 값을 우세한 "lastUpdater"와 같도록 설정한다. 그 다음에, 2개의 버전의 갱신 메타데이터(228) 내의 각각의 갱신 엔트리에 대해, 동기화 요약(230)은 양 버전에서의 각각의 갱신 엔트리가 공통의 "by" 속성을 가지며 2개의 버전 중에서 더 큰 "sn" 값이 동기화 요약(230)에 적용된다.
예를 들어, 양 버전이 그의 갱신 메타데이터에서 "by" 필드 중 하나에 게시자 A를 포함하지만 우세한 버전이 250의 "sn" 값을 갖는 반면 비우세 버전이 200의 "sn" 값을 갖는 경우, 동기화 요약은 엔트리 "by" = "게시자 A", "sn" = "250"을 갖게 된다.
또한, 동기화 요약(230)은 양 버전에 공통이 아닌 나머지 갱신 엔트리를 갱신 메타데이터(228)에 추가한다.
또다른 실시예에서, 서버 컴퓨터(312)는 사용자가 웹 신디케이션 항목(110)의 여러가지 버전들을 선택할 수 있도록 동기화 요약(230)에 열거된 웹 신디케이션 항목(110)의 버전들 각각의 사본을 포함하고 있을 수 있다.
이제 도 4a 내지 도 4c를 참조하면, 플로우차트들은 본 발명의 일 실시예에 따라 웹 신디케이션 항목과 웹 신디케이션 채널을 동기화하는 동작들을 나타낸 것이다. 도 4a는 동기화 메타데이터가 내포되어 있는 웹 신디케이션 항목을 생성하는 플로우차트를 나타낸 것이다. 사용자(예를 들어, 게시자 A)는 미디어 컨텐츠(예를 들어, 문서 기사)를 웹 신디케이션 항목과 연관시키거나 그에 포함시킴으로써 웹 신디케이션 항목(예를 들어, RSS 피드 항목)을 준비한다(402). 사용자는 웹 신디케이션 항목과 연관된 적절한 메타데이터를 생성 또는 발생한다(404). 예를 들어, 사용자는 동기화 메타데이터 내에 필드들(예를 들어, <history> 자식 엘리먼트 내에 필드들)을 입력할 수 있다. 웹 신디케이션 항목의 갱신 메타데이터를 검사함으로써 웹 신디케이션 항목이 처음으로 생성되었는지가 판정된다(406). 웹 신디케이션 항목이 처음으로 생성된 경우, 갱신 메타데이터가 생성된다(410). 사용자는 "by" 필드 및 "sn" 값 등의 적절한 정보를 갱신 메타데이터에 입력한다(412). 이어서, 사용자는 웹 신디케이션 항목을 게시한다(414).
웹 신디케이션 항목이 새로 생성된 항목이 아닌 것으로 판정되는 경우, 도 4b는 사용자가 408로 진행하여 웹 신디케이션 항목과 연관된 메타데이터를 갱신하는 동작들을 더 수행하는 방법을 나타낸 것이다. 예를 들어, 사용자(게시자 A 또는 구독자 B일 수 있음)가 웹 신디케이션 항목의 기존의 미디어 컨텐츠를 갱신했을지도 모른다. 갱신이 필요하지 않은 경우, 418에서, 사용자는 도 4a의 414로 되돌아간다. 웹 신디케이션 항목이 갱신된 경우, 동기화 메타데이터가 식별된다(420).
예를 들어, 본 발명의 실시예들에 따른 동기화 메타데이터는 적어도 <history> 자식 엘리먼트, 및 <update> 엘리먼트들의 목록을 포함한다(추가 상세에 대해서는 상기 도 2a를 참조할 것). 식별된 경우, 사용자는 웹 신디케이션 항목의 갱신 메타데이터 및 동기화 메타데이터를 갱신할 수 있다(422). 예를 들어, 사용자는 "by" 값, "sn" 값, 및 "lastUpdater" 값 등의 정보를 입력하게 된다. 선택적으로, 사용자는 웹 신디케이션 항목이 삭제되어야 하는지를 나타내기 위해 정보를 입력할 수 있다.
이제 도 4c를 참조하면, 플로우차트는 본 발명의 일 실시예에 따라 동기화 메타데이터 및 갱신 메타데이터의 함수로서 웹 신디케이션 항목의 하나 이상의 버전들을 동기화하는 동작들을 나타낸 것이다. 제한이 아닌 예시로서, 로컬 동기 항목(446)은 웹 신디케이션 항목의 한 버전을 나타내는 반면, 원격 동기 항목은 웹 신디케이션 항목의 다른 버전을 나타낸다. 사용자(예를 들어, 게시자 A, 구독자 B, 또는 서버 컴퓨터(312))는 원격 동기 항목을 수신한다(424). 로컬 동기 항목(446)의 동기화 메타데이터가 원격 동기 항목의 동기화 메타데이터와 비교된 다(426). 원격 동기 항목의 "lastUpdater" 값이 로컬 동기 항목의 "lastUpdater" 값과 같은지가 판정된다(428). 이들 값이 동일한 경우, 충돌이 없는지가 판정된다. 그 다음 단계(432)는 어느 버전이 우세한 버전으로서 사용되는지를 판정하는 것이다. 한 기법에 따르면, 로컬 동기 항목의 "sn" 값이 원격 동기 항목의 "sn" 값보다 작거나 같은 경우, 원격 동기 항목이 우세한 버전이다(434). 원격 동기 항목의 "sn" 값이 로컬 동기 항목의 "sn" 값보다 작거나 같은 경우, 로컬 동기 항목이 우세한 버전이다(436).
반면에, 로컬 및 원격 동기 항목의 "lastUpdater" 값들이 동일하지 않은 경우, 로컬 동기 항목의 "lastUpdater"가 원격 동기 항목의 갱신 메타데이터에 있는지가 판정된다(430). 예를 들어, 로컬 동기 항목의 "lastUpdater"가 원격 동기 항목의 갱신 메타데이터에 있는지를 판정할 시에, 로컬 동기 항목의 "sn" 필드(예를 들어, 가상 클럭값)이 원격 동기 항목의 "sn" 필드와 비교된다. 다른 예에서, 가상적 또는 논리적 클럭값이 어느 버전(즉, 로컬 동기 항목 또는 원격 동기 항목)이 우세한지를 판정하기 위한 클럭 벡터 포함 검사(clock vector containment check)로서 사용될 수 있도록 다른 가상적 또는 논리적 클럭값 또는 표현이 사용될 수 있다.
이 판정이 '예'인 경우, 원격 동기 항목이 우세한 버전이다(440). 반면에, 원격 동기 항목의 "lastUpdater"가 로컬 동기 항목의 갱신 메타데이터에 있는 경우, 로컬 동기 항목이 우세한 버전이다. "lastUpdater" 값이 웹 신디케이션 항목의 어느 한 버전의 갱신 메타데이터에서 발견되지 않는 경우, 충돌이 있고 사용자 는 이 충돌을 해결하기 위한 여러가지 옵션들을 제공받는다(438). 우세한 버전이 결정되거나 충돌이 해결되는 경우, 동기화 메타데이터 및 갱신 메타데이터가 우세한 버전으로부터의 적절한 정보를 포함하도록 갱신된다(444).
도 5는 본 발명의 일 실시예에 따른 웹 신디케이션 항목의 동기화를 가능하게 해주는 데이터 구조(500)를 나타낸 것이다. 일례에서, 신디케이션 채널(530)은 신디케이션 항목(502) 등의 하나 이상의 신디케이션 항목을 포함할 수 있다. 신디케이션 항목(502)은 미디어 컨텐츠(532) 및 미디어 컨텐츠(532)와 연관된 관련 데이터 또는 메타데이터를 포함한다. 데이터 구조(500)는 또한 XML 태그 등의 형태로 된 일련의 표준 메타데이터(504)도 포함한다. 데이터 구조(500)는 미디어 컨텐츠(532)의 여러 버전들을 동기화시키기 위한 동기화 메타데이터(506)를 포함한다. 예를 들어, 동기화 메타데이터(506)는 XML 형식으로 <history> 자식 엘리먼트로서 표현되고, 이하의 필드, 즉 itemID 필드(510), lastUpdater 필드(512), 및 선택적인 deleted 필드(514)를 포함한다. 동기화 메타데이터(506)는 또한 하나 이상의 update 필드(516)를 포함하는 갱신 메타데이터(508)도 포함한다. 각각의 update 필드(516)는 이하의 서브필드, "by" 및 "sn"을 포함한다.
신디케이션 채널(530)은 또한 하나 이상의 update 필드(524)를 더 포함하는 동기화 요약(522)(및 도 2c에 도시된 표준 메타데이터(230))도 포함한다. 각각의 신디케이션 항목(502)는 신디케이션 항목(502)에 대해 행해진 모든 갱신을 포함하는 동기화 요약을 포함한다. update 필드(524) 각각은 또한 이하의 서브필드, "by" 및 "sn"을 포함한다.
도 6은 본 발명의 측면들이 저장될 수 있는 예시적인 컴퓨터-판독가능 매체(602)를 나타낸 블록도이다. 예를 들어, 컴퓨터-판독가능 매체(602)는 웹 신디케이션 항목과 연관된 미디어 컨텐츠를 포함하는 웹 신디케이션 항목을 게시하는 게시자 컴포넌트(604)를 포함한다. 정의 컴포넌트(606)는 게시된 웹 신디케이션 항목과 연관된 제1 가상 클럭값을 포함하는 동기화 메타데이터를 정의하며, 상기 제1 가상 클럭값은 웹 신디케이션이 마지막으로 갱신된 때를 나타낸다. 컴퓨터-판독가능 매체(602)는 또한 게시된 웹 신디케이션 항목을 구독하기 위한 요청을 구독자로부터 수신하는 인터페이스 컴포넌트(608)를 포함한다. 통신 컴포넌트(610)는 수신된 요청에 응답하여 게시된 웹 신디케이션 항목을, 게시자로부터 멀리 떨어져 있고 구독자에 의해 액세스가능한 장소로 전송한다. 인터페이스 컴포넌트(608)는 제1 가상 클럭값을 포함하는 신디케이션 메타데이터를 구독자에게 제공하고, 동기화 컴포넌트(612)는 구독자가 게시자로부터 멀리 떨어진 장소에 있는 미디어 컨텐츠를 수정할 때 제1 가상 클럭값을 수정(예를 들어, 증가)할 수 있게 해준다.
일 실시예에서, 동기화 컴포넌트(612)는 구독자가 수정 대신에 새로운 가상 클럭값을 추가할 수 있게 해준다. 또다른 실시예에서, 충돌 컴포넌트(614)는, 게시된 웹 신디케이션 항목이 게시자로부터 멀리 떨어진 장소로 전송될 때, 그 장소에서 웹 신디케이션 항목의 한 버전을 검출할 수 있다. 대안의 실시예에서, 충돌 컴포넌트(614)는 게시된 웹 신디케이션 항목이 충돌 컴포넌트(614)에 의해 검출된 게시자로부터 멀리 떨어진 장소에 있는 웹 신디케이션 항목의 버전과 충돌을 일으키는지를 판정할 수 있다. 충돌 컴포넌트(614)는 충돌을 해결하기 위해 구독자에 게 하나 이상의 선택 사항을 제공할 수 있거나 자동화된 또는 사전 설정된 환경 설정을 통해 판정된 충돌을 해결할 수 있다. 또다른 대안의 실시예에서, 버전 컴포넌트(616)는 동기화 메타데이터에 포함된 수정 이력의 목록에 따라 구독자에게 하나 이상의 버전을 제공할 수 있다.
도 7은 본 발명의 대안의 측면들이 저장될 수 있는 예시적인 컴퓨터-판독가능 매체(702)를 나타낸 블록도이다. 예를 들어, 컴퓨터-판독가능 매체(702)는 웹 신디케이션 구독에 대한 신디케이션 요약 및 웹 신디케이션 채널을 통한 웹 신디케이션 항목의 하나 이상의 버전들에 대한 웹 동기화 메타데이터를 정의하는 메모리 컴포넌트(704)를 포함한다. 수집 컴포넌트(706)는 웹 신디케이션 요약 내의 사용자들로부터 웹 신디케이션 항목의 하나 이상의 버전들의 웹 동기화 메타데이터를 수집한다. 예를 들어, 웹 신디케이션 항목의 하나 이상의 버전은 사용자에 의한 하나 이상의 갱신 및 갱신과 연관된 다양한 시기(웹 신디케이션 메타데이터에 포함될 수 있음)를 포함한다.
컴퓨터-판독가능 매체(702)는 또한 표시된 갱신 및 다양한 시기의 함수로서 신디케이션 요약 내의 버전들의 하나 이상의 수집된 웹 동기화 메타데이터의 순서를 결정하는 결정 컴포넌트(708)를 포함한다. 갱신 컴포넌트(710)는 하나 이상의 수집된 버전이 사용자에게 제공되도록 결정된 순서에 따라 웹 신디케이션 요약을 갱신한다. 대안의 실시예에서, UI 컴포넌트(712)는 하나 이상의 수집된 버전을 결정된 순서로 사용자에게 제공한다.
본 명세서에 예시되고 기술된 본 발명의 실시예들에서의 동작의 실행 또는 수행 순서는 달리 언급하지 않는 한 필수적인 것이 아니다. 즉, 달리 언급하지 않는 한, 동작들이 임의의 순서로 수행될 수 있고, 본 발명의 실시예들은 본 명세서에 개시된 것보다 많은 또는 그보다 적은 동작들을 포함할 수 있다. 예를 들어, 다른 동작보다 먼저, 그와 동시에, 또는 그 후에 특정의 동작을 실행 또는 수행하는 것이 본 발명의 측면들의 범위 내에 속하는 것으로 보아야 한다.
본 발명의 실시예들은 컴퓨터-실행가능 명령어들로 구현될 수 있다. 컴퓨터-실행가능 명령어들은 하나 이상의 컴퓨터-실행가능 컴포넌트 또는 모듈로 구성되어 있을 수 있다. 본 발명의 측면들은 임의의 수 및 임의의 구성의 이러한 컴포넌트 또는 모듈로 구현될 수 있다. 예를 들어, 본 발명의 측면들은 도면에 예시되고 본 명세서에 기술된 특정의 컴퓨터-실행가능 명령어 또는 특정의 컴포넌트 또는 모듈에 한정되지 않는다. 본 발명의 다른 실시예들은 본 명세서에 예시되고 기술된 것보다 더 많은 또는 더 적은 기능을 갖는 다른 컴퓨터-실행가능 명령어 또는 컴포넌트를 포함할 수 있다.
본 발명 또는 그의 실시예들의 측면들의 구성요소를 소개할 때, 관형사 "어떤", "이", "그" 및 "상기"는 하나 이상의 구성요소가 있다는 것을 의미하기 위한 것이다. 용어 "포함하는", "구비하는", 및 "갖는"은 포함적인 것으로 보아야 하며, 열거된 구성요소 이외의 부가의 구성요소가 있을 수 있음을 의미한다.
본 발명의 측면들을 상세히 기술하였지만, 첨부된 청구항들에 정의된 본 발명의 측면들의 범위를 벗어나지 않고 여러 수정 및 변형이 가능하다는 것을 명백할 것이다. 본 발명의 측면들의 범위를 벗어나지 않고 상기 구조, 제품, 및 방법에 다양한 변경이 행해질 수 있기 때문에, 상기 설명에 포함되고 첨부 도면에 도시된 모든 내용이 제한적인 의미가 아니라 예시적인 것으로 해석되어야 한다.

Claims (20)

  1. RSS(Really Simple Syndication) 형식을 통해 웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법으로서,
    웹 신디케이션 항목의 웹 구독(web subscription)에 근거하여 상기 웹 신디케이션 항목을 상기 웹 신디케이션 채널을 통해 컴퓨팅 장치로부터 제1 사용자에 송신하는 단계 - 상기 웹 신디케이션 항목은 원 갱신 메타데이터(original update metadata)와 함께 웹 동기화 메타데이터를 포함하고, 상기 웹 동기화 메타데이터는 상기 웹 신디케이션 항목을 상기 웹 신디케이션 항목의 제1 버전으로 갱신하는 경우에 변경을 위해 상기 제1 사용자에게 제공됨 - ;
    상기 웹 신디케이션 항목의 웹 구독에 근거하여 상기 웹 신디케이션 항목을 상기 웹 신디케이션 채널을 통해 상기 컴퓨팅 장치로부터 제2 사용자에게 송신하는 단계 - 상기 웹 신디케이션 항목은 상기 원 갱신 메타데이터와 함께 상기 웹 동기화 메타데이터를 포함하고, 상기 웹 동기화 메타데이터는 상기 웹 신디케이션 항목을 상기 웹 신디케이션 항목의 제2 버전으로 갱신하는 경우에 변경을 위해 상기 제2 사용자에게 제공됨 - ;
    상기 컴퓨팅 장치에서, 상기 제1 사용자로부터 상기 웹 신디케이션 항목의 제1 버전을 수신하고 상기 제2 사용자로부터 상기 웹 신디케이션 항목의 제2 버전을 수신하는 단계 - 상기 컴퓨팅 장치는 상기 컴퓨터화된 방법을 실행하는 프로세서를 가지고, 상기 웹 신디케이션 항목의 제1 버전은 상기 웹 신디케이션 항목에 대한 제1 갱신을 표시하고 상기 웹 신티케이션 항목의 제2 버전은 상기 웹 신디케이션 항목에 대한 제2 갱신을 표시하며, 상기 제1 버전은 상기 제2 버전과 상이하고, 상기 제1 버전은 상기 제2 버전이 수신될 때 동시에 수신되며, 상기 웹 신디케이션 채널은 RSS 신디케이션 채널이고, 상기 웹 신디케이션 항목은 RSS 신디케이션 항목임 - ;
    상기 웹 신디케이션 채널에 대한 동기화 요약(synchronization summary)이 상기 컴퓨팅 장치에 존재하는지를 판정하는 단계 - 상기 웹 신디케이션 채널에 대한 동기화 요약은 RSS 동기화 요약이고 상기 웹 신디케이션 항목과 연관된 동기화 정보를 기술함 - ;
    상기 동기화 요약이 존재하지 않는 경우에, 상기 웹 신디케이션 채널에 대한 동기화 요약을 정의하는 단계 - 상기 정의된 동기화 요약은 상기 웹 신디케이션 항목과 연관된 정보를 기술하고, 상기 정의된 동기화 요약은 적어도 웹 신디케이션 항목 넘버 및 상기 웹 신디케이션 항목을 마지막으로 갱신한 사용자의 식별자를 포함하며, 상기 갱신 메타데이터는 적어도 상기 갱신의 사용자 및 상기 갱신이 기록되는 시점을 나타내는 시간 값을 가지는 갱신 목록을 포함함 -;
    상기 동기화 요약이 존재하는 경우에, 상기 웹 신디케이션 채널에 대한 동기화 요약을 식별하는 단계;
    상기 동기화 요약에 저장될 상기 제1 사용자로부터의 제1 버전 및 상기 제2 사용자로부터의 상기 웹 신디케이션 항목의 제2 버전에 대한 웹 동기화 메타데이터를 수집하는(aggregating) 단계;
    표시되는 제1 갱신 및 표시되는 제2 갱신의 함수로서 상기 동기화 요약 내 버전들의 수집된 웹 동기화 메타데이터의 순서를 결정하는 단계; 및
    하나 이상의 수집된 버전들이 사용자에게 제공되도록 상기 결정된 순서에 따라 상기 동기화 요약을 갱신하는 단계를 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  2. 제1항에 있어서,
    상기 결정하는 단계는 상기 웹 신디케이션 항목의 제1 버전 및 제2 버전과 연관된 동기화 메타데이터를 분석하는 단계를 포함하고, 상기 동기화 메타데이터는 상기 웹 신디케이션 항목의 버전들에 대응하는 가상 클록 값을 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  3. 제2항에 있어서,
    상기 분석하는 단계는 상기 웹 신티케이션 항목의 버전들 각각의 가상 클록 값의 각각을 비교하여 상기 동기화 요약 내의 하나 이상의 수집된 버전들의 순서를 결정하는 단계를 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  4. 제1항에 있어서,
    상기 웹 신디케이션 항목의 제1 버전 및 제2 버전 사이의 충돌을 탐지하는 단계를 더 포함하고,
    상기 충돌은 상기 제1 버전, 상기 제2 버전, 제1 가상 클록 값, 제2 가상 클록 값 및 상기 웹 신디케이션 항목을 마지막으로 갱신한 사용자의 함수로서 상기 웹 신디케이션 항목의 버전이 상이하다는 것을 표시하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  5. 제4항에 있어서,
    상기 갱신하는 단계는 충돌이 없는 경우에 상기 제1 버전의 웹 동기화 메타데이터를 상기 웹 신디케이션 요약 내 상기 제2 버전의 상기 웹 동기화 메타데이터와 병합하는 단계를 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  6. 제4항에 있어서,
    상기 사용자에 의해 수행되는 충돌 해결(conflict resolution)의 결과를 상기 사용자에게 제공하는 단계를 더 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  7. 제1항에 있어서,
    상기 사용자가 상기 갱신 메타데이터를 입력하도록 사용자 인터페이스(UI)를제시하는 단계를 더 포함하는
    웹 신디케이션 채널을 갱신하는 컴퓨터화된 방법.
  8. RSS 형식을 통해 웹 신디케이션 구독에 근거하여 송신되는 웹 신디케이션 항목을 동기화하는 시스템으로서,
    상기 웹 신디케이션 구독에 대한 웹 동기화 요약 및 상기 웹 신디케이션 항목의 하나 이상의 버전들에 대한 웹 동기화 메타데이터를 저장하는 데이터 저장소 - 상기 웹 신디케이션 구독은 RSS 신디케이션 구독이고, 상기 웹 신디케이션 항목은 RSS 신디케이션 항목이며, 웹 신디케이션 채널에 대한 상기 동기화 요약은 RSS 동기화 요약이며 상기 웹 신디케이션 항목과 연관된 동기화 정보를 기술하고, 상기 웹 신디케이션 항목은 텍스트 파일, 이미지 파일 및 멀티미디어 파일 중 적어도 하나를 포함함 - ; 및
    컴퓨터-실행가능 명령어를 실행하도록 구성되는 프로세서를 포함하되,
    상기 컴퓨터-실행가능 명령어는,
    상기 웹 신디케이션 항목의 웹 구독에 근거하여 상기 웹 신디케이션 항목을 상기 웹 신디케이션 채널을 통해 컴퓨팅 장치로부터 하나 이상의 사용자에게 송신하는 단계 - 상기 웹 신디케이션 항목은 원 갱신 메타데이터와 함께 웹 동기화 메타데이터를 포함함 - ;
    상기 웹 신디케이션 항목을 상기 웹 신디케이션 항목의 하나 이상의 버전으로 갱신하는 경우에 상기 웹 동기화 메타데이터를 변경을 위해 사용자에게 제공하는 단계;
    상기 웹 신디케이션 항목과 연관된 정보를 포함하도록 상기 웹 신디케이션 구독에 대한 상기 동기화 요약을 정의하는 단계 - 상기 정의된 동기화 요약은 적어도, 웹 신디케이션 항목 넘버 및 상기 웹 신디케이션 항목을 마지막에 갱신한 사용자의 식별자를 포함하고, 상기 갱신 메타데이터는 적어도, 상기 갱신의 사용자 및 상기 갱신이 기록되는 시점을 나타내는 시간 값을 가지는 갱신 목록을 포함함 - ;
    상기 웹 동기화 요약 내의 사용자로부터의 상기 웹 신디케이션 항목의 하나 이상의 버전들에 대한 웹 동기화 메타데이터를 수집하는 단계 - 상기 웹 신디케이션 항목의 상기 하나 이상의 버전들은 다양한 시간 구간에서 상기 사용자에 의한 하나 이상의 갱신을 표시함 - ;
    표시되는 제1 갱신, 표시되는 제2 갱신 및 상기 다양한 시간 구간의 함수로서 상기 동기화 요약 내 버전들의 하나 이상의 수집된 웹 동기화 메타데이터의 순서를 결정하는 단계; 및
    하나 이상의 수집된 버전들이 상기 사용자에게 제공되도록 상기 결정된 순서에 따라 상기 웹 동기화 요약을 갱신하는 단계를 수행하는
    웹 신디케이션 항목을 동기화하는 시스템.
  9. 제8항에 있어서,
    상기 하나 이상의 수집된 버전들을 상기 결정된 순서로 상기 사용자에게 제공하기 위한 사용자 인터페이스(UI)를 더 포함하는
    웹 신디케이션 항목을 동기화하는 시스템.
  10. 제8항에 있어서,
    상기 웹 신디케이션 항목의 버전들은 각각 상기 사용자에 의한 상기 웹 신디케이션 항목에 대한 갱신의 이력을 기술하는 웹 동기화 메타데이터를 포함하는
    웹 신디케이션 항목을 동기화하는 시스템.
  11. 제8항에 있어서,
    상기 웹 동기화 메타데이터는 상기 웹 신디케이션 항목을 마지막으로 갱신하는 사용자를 식별하는 메타데이터 및 상기 마지막 갱신이 수행되는 시간 구간을 기술하는 메타데이터를 포함하는
    웹 신디케이션 항목을 동기화하는 시스템.
  12. 제8항에 있어서,
    상기 프로세서는 상기 하나 이상의 버전들의 웹 동기화 메타데이터를 상기 웹 신디케이션 요약 내의 웹 신디케이션 항목과 병합하도록 구성되는
    웹 신디케이션 항목을 동기화하는 시스템.
  13. 제9항에 있어서,
    상기 UI는 상기 사용자가 상기 갱신 메타데이터를 입력하도록 엔트리 폼을 제공하는
    웹 신디케이션 항목을 동기화하는 시스템.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR20097001305A 2006-07-31 2007-07-26 웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체 KR101485613B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/461,351 US7653640B2 (en) 2006-07-31 2006-07-31 Two-way and multi-master synchronization over web syndications
US11/461,351 2006-07-31
PCT/US2007/017006 WO2008016560A1 (en) 2006-07-31 2007-07-26 Two-way and multi-master synchronization over web syndications

Publications (2)

Publication Number Publication Date
KR20090034898A KR20090034898A (ko) 2009-04-08
KR101485613B1 true KR101485613B1 (ko) 2015-01-23

Family

ID=38997471

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20097001305A KR101485613B1 (ko) 2006-07-31 2007-07-26 웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체

Country Status (7)

Country Link
US (1) US7653640B2 (ko)
EP (1) EP2047382B1 (ko)
JP (1) JP5007339B2 (ko)
KR (1) KR101485613B1 (ko)
CN (1) CN101496000B (ko)
TW (1) TWI363996B (ko)
WO (1) WO2008016560A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8370423B2 (en) * 2006-06-16 2013-02-05 Microsoft Corporation Data synchronization and sharing relationships
JP2007334723A (ja) * 2006-06-16 2007-12-27 Yokogawa Electric Corp 情報配信システム
JP5106943B2 (ja) * 2006-08-21 2012-12-26 株式会社リコー 電子装置、システムおよび制御方法
US8453066B2 (en) 2006-11-06 2013-05-28 Microsoft Corporation Clipboard augmentation with references
US8751442B2 (en) 2007-02-12 2014-06-10 Microsoft Corporation Synchronization associated duplicate data resolution
US7933296B2 (en) * 2007-03-02 2011-04-26 Microsoft Corporation Services for data sharing and synchronization
US7900203B2 (en) * 2007-04-24 2011-03-01 Microsoft Corporation Data sharing and synchronization with relay endpoint and sync data element
US7725456B2 (en) * 2007-04-27 2010-05-25 Microsoft Corporation Item management with data sharing and synchronization
US20080288983A1 (en) 2007-05-18 2008-11-20 Johnson Bradley G System and Method for Providing Sequential Video and Interactive Content
US8302013B2 (en) * 2007-08-16 2012-10-30 Yahoo! Inc. Personalized page modules
US20090049380A1 (en) * 2007-08-16 2009-02-19 Joshua Allen Rehling Page Modules and States
US9401957B2 (en) * 2007-09-14 2016-07-26 International Business Machines Corporation System and method for synchronization between servers
US8386387B2 (en) * 2007-12-21 2013-02-26 Utrom Processing Co. L.L.C. System and method for tracking syndication of internet content
US8185495B2 (en) * 2008-02-01 2012-05-22 Microsoft Corporation Representation of qualitative object changes in a knowledge based framework for a multi-master synchronization environment
US20090199242A1 (en) * 2008-02-05 2009-08-06 Johnson Bradley G System and Method for Distributing Video Content via a Packet Based Network
US8296671B2 (en) 2008-05-01 2012-10-23 Microsoft Corporation Enabling access to rich data by intercepting paste operations
US20090282100A1 (en) * 2008-05-12 2009-11-12 Kim Sang J Method for syndicating blogs and communities across the web
US8265990B2 (en) 2008-05-15 2012-09-11 Utrom Processing Co. L.L.C. Method and system for selecting and delivering media content via the internet
US20100131940A1 (en) * 2008-11-26 2010-05-27 Microsoft Corporation Cloud based source code version control
US8341099B2 (en) * 2010-03-12 2012-12-25 Microsoft Corporation Semantics update and adaptive interfaces in connection with information as a service
CN101867605A (zh) * 2010-05-21 2010-10-20 中兴通讯股份有限公司 提高rss业务同步效率的方法、装置和系统
CN101931624B (zh) * 2010-08-06 2014-09-10 中兴通讯股份有限公司 一种rss订阅方法、rss移动终端及订阅服务器
CN101977217A (zh) * 2010-10-15 2011-02-16 中兴通讯股份有限公司 Widget更新方法、系统、Widget客户端及Widget服务器
US9058333B2 (en) * 2011-03-02 2015-06-16 Microsoft Technology Licensing, Llc Publishable metadata for content management and component testing
US9247272B2 (en) * 2011-10-05 2016-01-26 Timothy Murphy Network of collaborative online shows
CN103220336B (zh) * 2013-03-21 2016-01-27 中国科学院计算技术研究所 一种文件同步中向量时钟的实现方法及系统
CN103634410B (zh) * 2013-12-12 2017-01-11 北京奇安信科技有限公司 基于内容分发网络cdn的数据同步方法,客户端及服务器
US9953033B2 (en) * 2014-05-29 2018-04-24 Apple Inc. Wireless content synchronization
US10051020B2 (en) * 2015-06-26 2018-08-14 Microsoft Technology Licensing, Llc Real-time distributed coauthoring via vector clock translations
CN113778329B (zh) * 2021-06-30 2023-12-22 济南浪潮数据技术有限公司 一种数据聚合方法、装置、设备及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050012881A (ko) * 2005-01-13 2005-02-02 (주)씽크비즈 웹 브라우저 기반 알에스에스/에이티오엠 규격 문서실시간 구독 시스템 및 그 방법
KR20060069369A (ko) * 2006-02-16 2006-06-21 (주)오픈데이타컨설팅 알에스에스를 이용한 다자간 통신시스템 및 그 방법
KR20060069361A (ko) * 2003-06-23 2006-06-21 레드 밴드 리미티드 저장기기에 저장된 콘텐츠의 버전을 갱신하는 방법 및시스템

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098078A (en) 1995-12-29 2000-08-01 Lucent Technologies Inc. Maintaining consistency of database replicas
US6023708A (en) 1997-05-29 2000-02-08 Visto Corporation System and method for using a global translator to synchronize workspace elements across a network
CA2311353A1 (en) 1997-11-26 1999-06-03 The Taylor Trust As A system and method for implementing an auction on a computer network
US6324587B1 (en) 1997-12-23 2001-11-27 Microsoft Corporation Method, computer program product, and data structure for publishing a data object over a store and forward transport
US6493720B1 (en) * 1998-01-26 2002-12-10 International Business Machines Corporation Method and system for synchronization of metadata in an information catalog
US6185608B1 (en) 1998-06-12 2001-02-06 International Business Machines Corporation Caching dynamic web pages
US7024430B1 (en) * 1998-12-08 2006-04-04 Starfish Software, Inc. Method and system for implementing a filter in a data synchronization system
US20010053996A1 (en) 2000-01-06 2001-12-20 Atkinson Paul D. System and method for distributing and controlling the output of media in public spaces
US20010027472A1 (en) 2000-03-27 2001-10-04 Feng Guan Dynamic information sharing based on unique individual ID
US7013316B1 (en) * 2000-07-13 2006-03-14 Microsoft Corporation System and method for synchronizing multiple database files
US6917950B2 (en) * 2001-01-10 2005-07-12 Intel Corporation Modifying a shared resource
US6643670B2 (en) 2001-02-27 2003-11-04 Microsoft Corporation Efficient replication of an expanded partial database
JP2002259676A (ja) 2001-03-06 2002-09-13 Hitachi Ltd 文書管理・ediシステム連携装置、文書管理・ediシステム連携方法、情報記録媒体及び文書処理プログラム
TW579463B (en) * 2001-06-30 2004-03-11 Ibm System and method for a caching mechanism for a central synchronization server
US20040153473A1 (en) 2002-11-21 2004-08-05 Norman Hutchinson Method and system for synchronizing data in peer to peer networking environments
US20040193952A1 (en) * 2003-03-27 2004-09-30 Charumathy Narayanan Consistency unit replication in application-defined systems
US7251669B1 (en) * 2003-03-31 2007-07-31 Microsoft Corporation System and method for database versioning
US7177881B2 (en) 2003-06-23 2007-02-13 Sony Corporation Network media channels
US8200775B2 (en) * 2005-02-01 2012-06-12 Newsilike Media Group, Inc Enhanced syndication
US8825502B2 (en) * 2003-09-30 2014-09-02 Epic Systems Corporation System and method for providing patient record synchronization in a healthcare setting
GB2407176A (en) * 2003-10-14 2005-04-20 Boc Group Plc Remote monitoring of equipment
US8020106B2 (en) * 2004-03-15 2011-09-13 Yahoo! Inc. Integration of personalized portals with web content syndication
WO2005098675A1 (en) * 2004-03-26 2005-10-20 Alex Mashinski Exchange of newly-added information over the internet
JP2005284334A (ja) * 2004-03-26 2005-10-13 Oki Electric Ind Co Ltd Webページ更新通知方法及び装置
JP2006059032A (ja) * 2004-08-18 2006-03-02 Business Online:Kk 商品情報の提供装置、提供方法、提供プログラム及びそのプログラムを記録した記録媒体
US20060064470A1 (en) 2004-09-23 2006-03-23 Sargent Antony J Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
JP2006099341A (ja) * 2004-09-29 2006-04-13 Bank Of Tokyo-Mitsubishi Ufj Ltd 更新履歴生成装置及びプログラム
US7530077B2 (en) 2004-10-07 2009-05-05 International Business Machines Corporation Dynamic update of changing data in user application via mapping to broker topic
US20060282822A1 (en) * 2005-04-06 2006-12-14 Guoqing Weng System and method for processing RSS data using rules and software agents
KR100573037B1 (ko) 2005-10-20 2006-05-03 (주)인트로모바일 알에스에스 기반의 컨텐츠 추출 서버와 방법 및 그 서버관리 장치, 이를 이용하는 이동통신 단말장치의 대기화면 제공 시스템
US20070219908A1 (en) * 2006-03-02 2007-09-20 Yahoo! Inc. Providing syndicated media to authorized users

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060069361A (ko) * 2003-06-23 2006-06-21 레드 밴드 리미티드 저장기기에 저장된 콘텐츠의 버전을 갱신하는 방법 및시스템
KR20050012881A (ko) * 2005-01-13 2005-02-02 (주)씽크비즈 웹 브라우저 기반 알에스에스/에이티오엠 규격 문서실시간 구독 시스템 및 그 방법
KR20060069369A (ko) * 2006-02-16 2006-06-21 (주)오픈데이타컨설팅 알에스에스를 이용한 다자간 통신시스템 및 그 방법

Also Published As

Publication number Publication date
WO2008016560A1 (en) 2008-02-07
EP2047382A1 (en) 2009-04-15
CN101496000B (zh) 2011-05-25
CN101496000A (zh) 2009-07-29
KR20090034898A (ko) 2009-04-08
JP5007339B2 (ja) 2012-08-22
JP2009545815A (ja) 2009-12-24
EP2047382B1 (en) 2016-04-27
TWI363996B (en) 2012-05-11
US20080126364A1 (en) 2008-05-29
TW200813870A (en) 2008-03-16
EP2047382A4 (en) 2011-04-20
US7653640B2 (en) 2010-01-26

Similar Documents

Publication Publication Date Title
KR101485613B1 (ko) 웹 신디케이션 항목을 동기화하는 방법 및 시스템, 웹 신디케이션 채널을 갱신하는 방법, 및 컴퓨터 판독가능 매체
US11233851B2 (en) System, method, and computer program for enabling a user to access and edit via a virtual drive objects synchronized to a plurality of synchronization clients
EP3111406B1 (en) Systems and methods for ephemeral eventing
EP2122561B1 (en) Web data usage platform
US20080141136A1 (en) Clipping Synchronization and Sharing
US20120079419A1 (en) Gui processing apparatus, gui processing method and gui processing program
US20100131529A1 (en) Open entity extraction system
AU2014369911A1 (en) Providing access to a cloud based content management system on a mobile device
JP2010518533A (ja) 構造化データを使用するウェブページのリンクの管理
US20070177571A1 (en) Mobile data distribution
US20100076937A1 (en) Feed processing
JP2007317031A (ja) 電子文書更新通知装置及び電子文書更新通知方法
US20100131562A1 (en) Method of dynamically managing and sharing databases in a mobile communication terminal and a mobile communication server system
US20120221947A1 (en) Information processing apparatus and method
JP6306484B2 (ja) ファイル管理サーバ装置およびメッセージ・ファイル統合サーバ装置
US20140244698A1 (en) Method for Skipping Empty Folders when Navigating a File System
CN101340463A (zh) 一种确定网络资源类型的方法和装置
CN111104409A (zh) 一种数据库处理方法、装置、存储介质及电子设备
JP4076152B2 (ja) コンテンツ自動連携システム及びコンテンツ連携方法
JP2009087174A (ja) リソース操作履歴管理システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee