KR101011216B1 - 데이터 동기 - Google Patents

데이터 동기 Download PDF

Info

Publication number
KR101011216B1
KR101011216B1 KR1020057007387A KR20057007387A KR101011216B1 KR 101011216 B1 KR101011216 B1 KR 101011216B1 KR 1020057007387 A KR1020057007387 A KR 1020057007387A KR 20057007387 A KR20057007387 A KR 20057007387A KR 101011216 B1 KR101011216 B1 KR 101011216B1
Authority
KR
South Korea
Prior art keywords
synchronization
synchronization device
user data
binding
data unit
Prior art date
Application number
KR1020057007387A
Other languages
English (en)
Other versions
KR20050084886A (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 KR20050084886A publication Critical patent/KR20050084886A/ko
Application granted granted Critical
Publication of KR101011216B1 publication Critical patent/KR101011216B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

본 발명은 적어도 제1동기 장치와 제2동기 장치를 포함하는 동기 시스템에서 데이터 동기를 수행하는 방법 및 장치에 관한 것이다. 동기 시스템은 제1동기 장치의 사용자 데이터 유닛을 제1동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 규정한다. 제1동기화 스텝은 제1동기 장치와 제2동기 장치 사이에서 수행되며, 제1동기 장치로부터 제2동기 장치로 사용자 데이터 유닛을 전송하는 스텝을 포함한다. 제1동기화 스텝이 수행된 다음, 제2동기화 스텝이 수행되고, 이때 바인딩 데이터가 제1동기 장치에서 제2동기 장치로 전송된다. 사용자 데이터 유닛과 제2동기 장치의 적어도 한 기능과의 바인딩은 바인딩 데이터에 따라 제2동기 장치에서 이뤄진다.

Description

데이터 동기{Data synchronization}
본 발명은 전기통신 시스템에서의 데이터 동기에 관한 것으로서, 보다 상세하게는 사용자 데이터를 보충하는 데이터의 동기에 관한 것이다.
휴대형 컴퓨터, PDA(Personal Digital Assistant) 기기들, 모바일 스테이션들 또는 호출기들과 같은 휴대형 단말기들의 데이터는 네트웍 어플리케이션, 데스크탑 어플리케이션들의 데이터 베이스, 또는 기타 통신 시스템의 데이터베이스들과 동기될 수 있다. 보통, 동기되는 데이터는 달력(calendar)과 이메일 어플리케이션의 데이터이다. 이전의 동기는 서로 호환되지 않는 상이한 제조자 고유 프로토콜들의 이용을 토대로 했었다. 이것은 서로 다른 단말들 및 데이터 유형들의 이용을 제한하며, 보통은 사용자가 하기 어렵다. SyncML(Synchronization Markup Language)은 어플리케이션 데이터의 보다 개선된 실제 동기를 위해 XML 언어(Extensible Markup Language, 확장형 마크업 언어)에 기반하여 개발되어 왔다. SyncML 포맷의 메시지들을 사용하는 SyncML 동기 프로토콜은 어떤 어플리케이션의 데이터가 어느 네트웍에 연결된 단말들 사이에서 동기될 수 있도록 한다. 모바일 전화기 환경과 같은 기기 고유의 데이터 동기에 대한 해법들 역시 발전되어 왔다. 장치 관리 규격의 예가 SyncML 장치 관리로서, 이것은 데이터 동기를 가능하게 하 는 SyncML 데이터 동기 규격에 부분적으로 기반하고 있다.
한 사용자가 여러대의 모바일 전화기들과 같은 단말기들을 가지고 있는 상황이 점차 일반화되고 있다. 이 모바일 스테이션들은 매우 다른 특성들을 가질 수도있는데, 즉, 한 모바일 스테이션의 메모리 용량이 상당히 클 수 있는 반면 다른 모바일 스테이션의 장점은 다채로운 기능이나 작은 사이즈일 수 있다. 사용자가 한 모바일 스테이션에서 다른 것으로 바꿀 때, 그는 필요한 사적 정보 모두를 역시 그 다른 모바일 스테이션으로 옮기고 싶어할 것이다. 연락 카드들, 일정 기재 사항, SMS 메시지 및 이미지들과 같은 사용자 데이터를 옮기기 위한 방법들이 고안되어져 왔다. SyncML 동기 또는 단말기 고유의 데이터 전송 프로그램들 등이 사용자 데이터를 옮기는데 사용될 수 있다. 기존의 단말들에는 사용자 데이터 외에, 스피드 다이얼 넘버들, 통화 내역, 사용자 프로필, 또는 사용자 데이터 유닛 관련 일반 데이터와 같은 점점 많은 양의 기기 기능 관련 다양한 부가 데이터가 저장된다. 종래의 기술에서는 이런 종류의 데이터를 한 기기에서 다른 기기로 업데이트하는 것이 가능하지 않았는데, 이는 휴대형 기기들에서 특히 작은 메모리 용량으로 인해 데이터가 서로 매우 다른 방식으로 표시되었기 때문이다. 게다가, 이런 종류의 정보를 한 기기에서 다른 기기로 옮겨야할 필요성이 그다지 크지 않았다.
본 발명의 목적은 일반 사용자 데이터 유닛들을 보충하는 기기 고유의 데이터 유닛들의 동기(일치)를 적어도 부분적으로 가능하게 하기 위한 방법을 구현하는 방법 및 장치를 제공하는 데 있다. 본 발명의 목적들은 본 발명의 독립 청구항들에 개시된 것을 특징으로 하는 방법, 시스템, 동기 장치, 컴퓨터 프로그램 생성물, 및 데이터 구조에 의해 달성된다. 본 발명의 바람직한 실시예들은 본 발명의 종속 청구항들에 개시된다.
본 발명의 동기 시스템에서, 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 제1동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터가 정의된다. 사용자 데이터 식별자로 식별된 제1사용자 데이터 유닛이 제1동기 장치에서 제2동기 장치로 옮겨지는 제1동기화 스텝이 시스템에서 제1동기 장치와 제2동기 장치 사이에 수행된다. 제1동기화 스텝 수행에 응하여, 바인딩 데이터가 제1동기 장치에서 제2동기 장치로 옮겨지는 제2동기화 스텝이 제1동기 장치 및 제2동기 장치 사이에서 수행된다. 제2동기 장치에서, 상기 바인딩 데이터에 의해 사용자 데이터 유닛과 제2동기 장치의 한 기능 사이에 관계가 형성된다, 즉, 제1동기 장치와 사용자 데이터 유닛 사이에 형성된 관계가 제2동기 장치로 옮겨진다. '동기'라는 용어는 적어도 한 데이터 집합(collection)의 데이터가 다른 기기로 전송되고, 그 다른 기기가, 수신된 그 데이터를 이용해, 빠뜨린 데이터 유닛들을 추가하는 등 다른 데이터 집합을 업데이트하는 경우를 말한다. 동기시, 동기될 모든 데이터가 상대편으로 전송될 수도 있고, 아니면 앞의 동기 세션 다음에, 동기될 데이터에 대해 그냥 변경이 이뤄질 수도 있다. 일방(one-way) 또는 쌍방(two-way) 동기가 이용될 수 있다. 후자의 경우 제1데이터 집합 역시 제2데이터 집합에 기초해 갱신된다. 일방 동기 역시 푸쉬(push) 기술이나 풀(pull) 기술을 사용해 다른 장치 안으로 데이터 집합의 복사를 가능하게 한다. 이 출원서에서 말하는 동기의 적어도 일부는 장치 관리 프로토콜들에 의해 수행될 수 있음을 주지해야 한다.
본 발명에 따른 해법의 이점은 사용자 데이터 유닛들 및 장치 기능들과 관련된 연결을 설명하는 정보가 동기될 수 있다는 것이다. 이는 모바일 전화와 같은 여러 단말들의 이용을 촉진시키는데, 그것은 단지 사용자 데이터 유닛들 말고도 다양한 부가 데이터가 단말들로 옮겨질 수 있고 사용자 데이터 유닛들과 장치 기능들 사이에서 그 연결이 수동으로 설정될 필요가 없기 때문이다. 그 경우 서로 다른 어플리케이션들에 의도된 사용자 데이터 유닛들 외에 사용자 데이터 유닛들과 어플리케이션들 사이의 링크와 같은 그들의 사용에 대한 추가 정보를 포함하여, 사용자의 사적인 환경이 한 기기에서 다른 기기로 옮겨질 수 있다.
사용자 데이터 유닛에서 장치 기능으로의, 바인딩 데이터에 의해 규정되는 결부 또는 바인딩은, 장치의 동작과 직간접적으로 관련이 있는 어떤 장치에 대한 임의의 언급을 폭넓게 포괄하는 것이라고 이해되어야 한다. 바인딩은 어플리케이션이나 장치의 식별자 등에 대해 이뤄질 수 있다. 바인딩은 또한 장치의 사용자와도 관련될 수 있는데, 이 경우 가령 어떤 이미지 파일이 상기 장치의 동작에 영향을 미치는 어떤 사용자 프로필과 결부될 수 있다. 그 언급이 반드시 하나의 고유한 장치와 관련된 것은 아니더라도 어떤 어플리케이션을 포함하는 모든 장치들이나 어떤 버전의 장치들에 대한 언급임을 주지해야 한다. 바람직한 실시예에 따르면, 바인딩 데이터는 사용자 데이터 유닛을, 동기 장치의 동작에 영향을 미치는 데이터 유닛인 장치 데이터 유닛과 결부시킨다. 장치 데이터 유닛은 일반적으로 한 장치 어플리케이션으로부터의 입력으로서 장치 동작에 영향을 미친다; 예를 들어, 이것은 그 장치에서 사용 가능한 스피드 다이얼 넘버이거나 (스피드 다이얼 넘버 등의 식별자가 할당될 수 있는) 통화자 그룹 등일 수 있다. 이 경우 스피드 다이얼링들은 그들 안에 정의된 전화 번호들(사용자 데이터 유닛들)이 동기된 다음에 동기될 수 있다. 그리고 나서 새 스피드 다이얼링들을 사용할 수 있게 함으로써 제2동기 장치와의 결부 관계가 이뤄질 수 있다. 다른 실시예에 따르면, 바인딩 데이터가 사용자 데이터 유닛을 적어도 하나의 어플리케이션에 의해 사용되는 자원 식별자와 결부시킨다. 자원 식별자는 어플리케이션이 초기 이미지를 보유하는 디폴트 디렉토리 등일 수 있다. 이 실시예는 한 장치에서 다른 장치로, 모든 위치에 고유한 결부사항들의 전송을 가능하게 한다.
이제부터 본 발명은 첨부된 도면을 참조하는 몇 가지 실시예들을 이용해 보다 상세히 설명될 것이다.
도 1은 동기 시스템을 도시한 것이다.
도 2a는 동기 서버로서 동작하는 서버와 클라이언트 장치로서 동작하는 단말을 도시한 블록도이다.
도 2b는 동기 서버로서 동작하는 단말과 클라이언트 장치로서 동작하는 단말을 도시한 블록도이다.
도 3은 본 발명의 일실시예에 따른 방법을 도시한 흐름도이다.
도 4는 본 발명의 일실시에에 따른 방버을 도시한 흐름도이다.
도 5는 SyncML 시스템에서의 데이터 동기를 나타낸 시그날링 차트이다.
이하에서, 본 발명의 일실시예는 SyncML 규격을 지원하는 시스템 안에서 기술될 것이다. 그러나, 본 발명은 장치 관리 프로토콜을 활용하는 시스템들을 포함하여, 어떠한 동기 시스템에도 적용될 수 있다.
도 1은 서버들 S과 단말들 TE 사이, 단말들(TE) 사이, 또는 서버들(S) 사이에서 데이터베이스 데이터가 동기될 수 있는, 네트워킹된(networked) 시스템을 도시한 것이다. '동기될 데이터베이스'는 임의의 메모리 수단을 폭넓게 언급한 것이라고 이해되어야 한다. 단말들(TE)이나 서버들(S) 사이에서 동기가 수행되어야 한다면, 단말들(TE)이나 서버들(S) 가운데 하나가 동기 서버(SyncML 규격에서 정의된 SyncML 동기 서버, 이하에서 동기 서버로 칭함)로서 동작하고 그 동기 세션 동작에 참여하는 다른 단말들(TE)이나 서버들(S)은 동기 클라이언트들(이하에서 클라이언트 장치로 칭하는 SyncML 클라이언트들)로서 동작한다. 서버(S)는 여러 클라이언트 장치들(TE)에게 종사할 수 있다. 서버(S)는 보통 네트웍 서버 또는 PC이다. TE는 보통 모바일 전화, PC(퍼스널 컴퓨터), 랩탑 컴퓨터 또는 PDA 장치이다.
도 1은 두 가지 예를 도시하며, 그 중에서 첫 번째 예가 로컬 영역 네트웍(LAN)에 연결된 클라이언트 장치들(TE)과 동기 서버들(S)을 보인다. 네트웍(LAN)에 연결된 클라이언트 장치(TE)는 네트웍(LAN)의 장치들과 통신하기 위한, 네트웍 카드 및 소프트웨어 제어 데이터 전송 등의 기능을 구비한다. 로컬 영역 네트웍(LAN)은 어떤 종류의 로컬 영역 네트웍이라도 될 수 있고, TE 역시, 보통 방화벽(FW)을 이용하여 인터넷을 통해 서버(S)로 연결될 수 있다. 단말(TE) 역시 액세스 포인트(AP)를 경유해 무선으로 로컬 영역 네트웍(LAN)에 연결될 수 있다.
두 번째 예에서, 클라이언트 장치(TE)는 모바일 네트웍(MNW)을 통해 서버(S)와 통신한다. 네트웍(MNW)에 연결된 단말(TE)은 무선으로 네트웍(MNW)과 통신하기 위한 모바일 스테이션 기능을 포함한다. 모바일 네트웍(MNW)과 서버(S) 사이에는 로컬 영역 네트웍(LAN)과 같은 다른 네트웍들이 있을 수도 있다. 모바일 네트웍(MNW)은 GSM 서비스를 지원하는 네트웍, GPRS 서비스(General Packet Radio Service, 일반 패킷 무선 서비스)를 지원하는 네트웍, 3GPP(3세대 공동 프로젝트)네트웍 규정에 따른 네트웍과 같은 3세대 모바일 네트웍, 무선 로컬 영역 네트웍(WLAN) 또는 사설 네트웍 등의 임의의 알려진 무선 네트웍일 수 있다. 서버(S)는 그 안에 자신이 동기하는 데이터베이스를 포함할 수 있지만, 서버가 동기하는 데이터베이스가 다른 장치 안에 위치될 수도 있음을 주지해야 한다; 도 1에서 서버(S)와 데이터베이스들(DB)은 예를 들기 위해 서로 분리되어져 있다. 도 1에서 예로 든 것들 외에 동기 설정(configuration) 역시 실현될 수 있다.
도 2a에 도시된 바와 같이 단말(TE) 및 서버(S)는 메모리(MEM, SMEM), 사용자 인터페이스(UI, SUI), 데이터 전송을 준비하는 입출력 수단(I/O, SI/O), 및 하나 이상의 프로세서들을 포함하는 중앙 처리부(CPU, SCPU)를 포함한다. 메모리(MEM, SMEM)는 중앙 처리부(CPU, SCPU)를 제어하는 어플리케이션들 및 저장될 기타 데이터를 저장하기 위한 비휘발성 부분과 일시적 데이터 처리를 위한 휘발성 부분을 포함한다. 동기될 데이터는 TE의 메모리(MEM)(동기와 관련해 동기될 데이터베이스), 서버(S)의 메모리(SMEM)나, 데이터베이스들(DB)의 메모리 안에 저장된다.
SyncML 규격에 따라 클라이언트 장치로 동작하는 TE는 클라이언트 장치에서 동기 세션과 관련된 기능을 책임지는 클라이언트 에이전트(CA)를 포함한다. 동기 서버로 동작하는 장치(S)는 동기 세션을 책임지는 동기 서버 에이전트(SA), 및 동기 블록(SE, Sync Engine)을 포함한다. 본 발명의 바람직한 실시예에 따르면, 클라이언트 에이전트(CA)를 구비한 장치는 클라이언트 장치 안에서 바인딩 데이터를 처리하기 위한 수단(CBDM)을 포함하고 서버로서 동작하는 장치(S)는 클라이언트 장치로부터 수신된 바인딩 데이터를 처리하기 위한 수단(SBDM)을 포함한다.
클라이언트 에이전트(CA)는 프로세싱 유닛(CPU)의 메모리에 저장된 컴퓨터 프로그램 코드를 실행함으로써 구현될 수 있고, SA, SE는 SCPU의 메모리(SMEM)에 저장된 컴퓨터 프로그램 코드를 실행함으로써 구현된다. 수단(CBDM 및 SBDM)도 이에 상응하여 각각 CA 및, SA와 SE를 구현하는 컴퓨터 프로그램 코드들에 부가된 것으로서 CPU 및 SCPU에서 구현될 수 있다. 상술한 바와 같이, TE 및 S는 동기 서버 및/또는 클라이언트 장치로서 동작할 수 있다. 도 2b에 도시된 바와 같이, 클라이언트 기능들 CA, CBDM 외에, 또는 그들을 대신하여 단말(TE)이 서버 에이전트(SA), 동기 블록(SE), 및 서버 바인딩 데이터를 처리하는 수단(SBDM)의 기능들을 포함할 수 있다. 이 경우 단말들 중 하나가 단말들 사이의 동기에 대한 동기 서버로서 동작할 것이다. 이러한 상황은 가령 한 사람이 새로운 모바일 스테이션으로 바꾸거나 두 개의 모바일 스테이션들을 이용할 때 장치 고유의 바인딩 데이터의 이동을 위해 일반적인 상황이다. 따라서 중앙 프로세싱부들(CPU 및 SCPU)에서 실행되는 컴퓨터 프로그램 코드들은 단말(TE)과 동기 서버(S)가 진보적인 기능들- 그 실시예 들이 도 3 및 4에 예시된다-을 수행할 수 있도록 할 수 있다. 그 컴퓨터 프로그램은 예를 들어 PC의 하드 디스크 상이나 CD-ROM 상의 어떤 메모리 수단에 저장될 수 있으며, 그로부터 그 프로그램을 실행하는 장치(TE, S)의 메모리(MEM, SMEM)로 로드할 수 있다. 컴퓨터 프로그램은 가령 TCP/IP 프로토콜 스택을 이용하여 네트웍을 거쳐 로드될 수도 있다. 본 발명의 수단들은 하드웨어 솔루션 또는 하드웨어 및 소프트웨어 솔루션을 조합한 것을 이용해 역시 구현될 수 있다. 일실시예에 따르면, 제1동기 장치에서 규정된 바인딩 데이터를 포함하는 데이터 구조가 제1동기 장치의 바인딩 데이터를 처리하기 위한 수단(CBDM, SBDM)에서 형성된다. 이 데이터 구조는 제2동기 장치로 옮겨지고, 바인딩 데이터를 처리하는 그 장치의 수단들(CBDM, SBDM)은 제2동기 장치로 하여금, 제2동기 장치의 메모리에 저장된 데이터를 업데이트하는 컴퓨터 프로그램의 실행 중에 제1동기 장치로부터 수신된 사용자 데이터 유닛과 제2동기 장치의 기능들 중 적어도 하나 사이에 바인딩을 형성하게 만든다. 이 경우, 예를 들어 새로운 사용자 프로필이 한 장치에서 다른 장치로 옮겨질 수 있다. 한 프로필을 포함하는 데이터 구조 등, 장치의 동작에 영향을 주는 바인딩 데이터가 형성되어 저장되는 장치는, 바인딩 데이터가 제2동기 장치에 동기되어지는 어떤 장치와 꼭 동일할 필요가 없다. 바인딩 데이터의 처리에 대해 이하에서 보다 자세히 설명한다.
동기될 데이터는 두 그룹으로 나눠질 수 있다:
- 이메일 메시지, 이미지, 일정 기재사항, SMS 메시지 또는 연락 카드들과 같은 사용자 데이터 유닛들
- 적어도 한 사용자 데이터 유닛과 연관되고 그것을 한 장치(TE, S)와 결부시키는 바인딩 데이터. 사용자 데이터 유닛과 장치를 결부시키는 바인딩 데이터의 예가, 장치에서 사용 가능한 스피드 다이얼 넘버들을 사용자가 규정한 전화 번호들과 결부시키는 데이터이다. 장치 고유의 바인딩 데이터는 스피드 다이얼 넘버들을 모바일 스테이션 식별자에 따라 어떤 모바일 스테이션과 추가 결부시킬 수 있다. 한 장치로의 결부는 그 장치의 어떤 기능, 가령 어떤 어플리케이션으로의 보다 특정한 결부가 될 수 있다. 특히, 통화나 통신 어플리케이션들에 영향을 미치는 바인딩 데이터는 자주 동기될 필요가 있다. 바인딩 데이터는 여러 어플리케이션들을 위해 일바적으로 규정된 데이터이거나, 어플리케이션 고유의 데이터일 수 있다.
텍스트 파일에서 이미지로의 링크 등, 사용자 데이터 유닛들 사이에서 바인딩 데이터를 적어도 어느 정도까지는 동기시키는 것이 가능하였다. 사용자 데이터 유닛들을 동기시킬 때 이들의 저장 구조, 즉 디렉토리 구조를 보존할 수 있었다. 그러나, 이러한 것은 그 디렉토리 구조(그에 대한 변화)가 먼저 동기되어야 하고, 그런 다음에 그 디렉토리들로 들어갈 사용자 데이터 유닛들이 동기될 수 있다. 본 발명의 바람직한 실시예에 따르면, 조직화된 데이터는 완전히 다른 방식으로 동기된다: 필요한 사용자 데이터 유닛들이 먼저 동기되고 그런 다음에 이미 장치와 동기된 하나 이상의 사용자 데이터 유닛들을 결부시키는 바인딩 데이터가 동기된다. 단지 장치 고유의 바인딩 데이터는 그 안에 참고되는 데이터 유닛들이 없으면 전혀 중요성이 없게 된다. 예를 들어, 통화자에 종속된 기능이 정의되어 있던 빈 통화자 그룹은 그룹이 아니다; 대신, 연락 카드들이 저장된 폴더는 그것이 아무 연락 카드를 포함하지 않더라도 존재할 수 있다. 따라서, 본 발명에 따른 솔루션은 일반적인 사용자 데이터 유닛들을 보충하는 장치 고유의 데이터 유닛들의 기능적 동기의 구현을 가능하게 한다.
사용자 데이터 유닛들에 더하여 바인딩 데이터의 동기 또한 여러 장점들을 제공한다: 예를 들어, 사용자의 텍스트 연락 정보(이름, 전화 번호, 주소 등등)가 동기되었을 때, 바인딩 데이터 동기는 연락 정보로부터, 스피드 다이얼 넘버들 및 통화자 그룹들과 같은 다양한 장치 고유의 장치 데이터 유닛들까지, 관련된 것들의 이전을 가능하게 한다. 실제로, 바인딩 데이터는 사용자 데이터를 식별하는 사용자 데이터 식별자를 장치 데이터 유닛의 하나 이상의 장치 데이터 식별자들, 가령 스피드 다이얼 넘버 식별자 '5' 등과 결부시킨다. 이 경우, 연락 정보, 일정 깅비사항 및 바인딩 데이터가 동기되어 있던 장치는 바인딩 데이터 동기 후에 즉시 필요한 기능들을 설정할 수 있다, 가령, 번호 '5'의 다이얼링에 응하여 전화 번호 '123456'으로 그 장치를 세팅한다. 장치 데이터 유닛 대신, 장치 기능으로의 인터페이스 역시, 자원 식별자에 의해 정의될 수도 있는데, 그 예가 어떤 어플리케이션에 의해 정의된 폴더이고, 이 경우 바인딩 데이터는 사용자 데이터 유닛 외에 URI 식별자(Uniform Resource Identifier)와 같은 자원 식별자를 포함한다.
도 3 및 도 4에서 바인딩 데이터의 형성 및 사용자 데이터와 바인딩 데이터의 동기에 대해 도시한다. 도 3은 바인딩 데이터를 형성하고 그것을 다른 쪽으로 전송하는 장치의 동작을 도시한 것이고, 도 4는 바인딩 데이터를 수신한느 장치의 동작을 도시한 것이다. 도 4에 도시된 기능을 구비하는 장치는 동기 서버일 수도, 아니면 클라이언트 장치일 수도 있음을 주지해야 한다. 장치(TE, S)의 사용자 데이터 유닛들 사이의 관계를 규정하는 바인딩 데이터가 형성된다(301 단계). 바인딩 데이터의 형성(301 단계)은 사용자 유닛들이 사용될 때 어느 때라도, 동기 중에 자동으로 일어나거나, 사용자에 의해 행해질 수 있다. 바인딩 데이터는 새 데이터 유닛이 장치에 부가될 때 보통 형성된다(301 단계). 바인딩 데이터는 가령 스피드 다이얼 넘버가 연락 정보에 대해 정의될 때 만들어진다(301 단계). 이 경우, 동기될 새 데이터 유닛, 즉, 스피드 다이얼 넘버를 연락 정보 내 전화 번호와 결부시키는 바인딩 데이터를 만들 수 있다. 바인딩 데이터 유닛은 사용자 데이터 유닛의 적어도 하나의 사용자 데이터 식별자 및, 장치(TE, S)의 장치 데이터 유닛의 장치 데이터 식별자를 포함한다. 장치 데이터 식별자는 장치의 기능과 관련된 임의의 장치 데이터 유닛의 식별자일 수 있다. 일실시예에 따르면, 바인딩 데이터는, 국제 모바일 기기 식별자(IMEI) 등, 장치 식별자 또는 장치 사용자의 식별자와 결부될 수 있다. 바인딩 데이터 유닛은 또 이러한 식별자들에 대한 인용을 포함하여 사용자 데이터 유닛과 장치 사이에 바인딩이 이뤄질 수 있도록 할 수도 있다. 바인딩 데이터 유닛은 URI 식별자(Uniform Resource Identifier)와 같은 링크를 포함할 수도 있다. 바인딩 데이터 유닛은 단순히 가령 두 데이터 유닛들 중 LUID 식별자를 포함하는 레코드일 수 있다. 바인딩 데이터 유닛은 또한, 어플리케이션 파일과 같이 사용자 데이터 유닛이 결부될 어플리케이션을 직접 조회할 수 있다. 바인딩 데이터 유닛은 또한 실제 바인딩에 의해 요구되는 식별자들이 아닌 정보를 포함할 수 있다. 예를 들면, 바인딩 데이터 유닛 안에 포함되거나 그 안에서 조회되는 연락자들이 결부되는 통화자 그룹 식별자가 정의될 수 있다.
사용자 데이터가 동기될 필요가 있을 때, 동기될 사용자 데이터 유닛들과 관련 바인딩 데이터가 정의된다(302 단계). 동기될 사용자 데이터 유닛들은 장치 환경 설정시 정의될 것이다; 예를 들어, 장치는 이메일 어플리케이션이 종료될 때 모든 이메일 메시지들이 동기되는 환경 설정을 포함할 수 있다. 사용자가 동기 시작시 동기될 사용자 데이터 유닛들을 정의할 수도 있다. 선택된 사용자 데이터 유닛들과 연관된 모든 바인딩 데이터 유닛들은 보통 동기될 유닛들로 정의되지만(302 단계), 사용자 역시 바인딩 데이터 유닛들의 선택을 제한할 수 있다.
사용자 데이터 유닛들이 상대 장치로 전송되고(303 단계), 따라서 일방 또는 쌍방 동기가 사용자 데이터 유닛들에 대해 수행될 수 있다. 사용자 데이터 유닛들이 전송된 다음, 바인딩 데이터가 동기를 위해 전송될 수 있다(304 단계). 만약 사용자 데이터에 대해 일방 동기가 수행되었다면, 바인딩 데이터 역시 일방 동기로 동기될 것이다. 바람직한 실시예에 따르면, 수신 장치가 바인딩 데이터 동기를 지원하는지의 여부가 체크된다. 이 체크는, 가령 동기 세션의 초기화 중이나 별도의 조회에 따라, 교환된 장치 사양에서 지시된 정보에 기반할 것이다. 수신 장치가 동기된 사용자 데이터와 관련된 바인딩 데이터의 동기를 지원하면 그 바인딩 데이터가 전송될 수 있다(304 단계).
도 4에서, 사용자 데이터 유닛들을 수신했던 장치(수신되는 사용자 데이터 유닛들이 보내지는 장치 또는 동기 서버)는 자신이 아직 포함하지 않은 사용자 데이터 유닛들을 수신하여 저장한다(401 단계). 그런 다음, 바인딩 데이터가 수신된 다(402 단계). 수신된 바인딩 데이터 유닛들에 의해, 사용자 데이터 유닛들과 단말 사이에 바인딩이 이뤄진다(403 단계). 바인딩 데이터는 사용자 데이터 유닛들 및 결부될 장치 데이터 유닛들의 필수 식별자들(사용자데이터 식별자들 및 장치 데이터 식별자들 또는 그들에 대한 인용)을 제공하고, 이들을 이용해 수신 장치가 바인딩을 형성할 수 있다. 그런 다음, 바인딩 데이터에 정의된 사용자 데이터 유닛들이 하나 이상의 장치 데이터 유닛들과 결부된다. 이 결부사항은 수신장치의 동작 중 다양한 방식으로 활용될 수 있다: 어플리케이션이 어떤 사용자 데이터 유닛을 서치할 때, 그 사용자 데이터 유닛과 결부된 데이터가 그 어플리케이션에 대해 자동으로 검색된다. 이것은 장치에서도 마찬가지로 수행될 수 있다: 사용자가 한 스피드 다이얼 넘버를 작동시킬 때 어떤 동작을 선택하면, 바인딩 데이터에 기초해 장치 데이터 유닛과 결부된 번호, 즉 그 스피드 다이얼 넘버에 대해 통화가 설정된다. 바인딩 데이터 유닛에 따른 바인딩 데이터, 즉, 사용자 데이터 유닛들 및 장치 데이터 유닛들, 또는 적어도 이들 중 일부는, 예를 들어, 어플리케이션이 작동될 때 검색될 수 있다.
일실시예에 따르면, 바인딩 데이터를 수신하는 장치는 사용자 데이터 유닛들이 이 장치의 메모리에 아직 존재하지 않으면 바인딩 데이터에 정의된 그 사용자 데이터 유닛들을 요청한다(404 단계). 도 3에서, 전송 장치는 바인딩 데이터에 정의된 모든 사용자 데이터 유닛들이 전송되었는지의 여부를 체크할 수 있다(305 단계). 이 체크(305 단계)는 가령 수신 장치로부터 수신된 요청에 따라 수행될 수 있다. 만약 사용자 데이터 유닛들이 없으면, 그 사용자 데이터 유닛들은 전송되어 진다(306 단계). 바인딩 데이터를 수신하는 장치는 그 빠진 데이터 유닛들을 수신하고(405 단계), 이들을 저장하고 수신된 바인딩 데이터에 따라 이들과의 관계를 형성한다. 404, 405, 305, 및 306 단계들에서, 사용자 데이터 유닛들 대신, 누락된 장치 데이터 유닛들을 처리하는 것 역시 가능하다.
도 3에 도시된 것과는 다른 일실시예에 따르면, 바인딩 데이터는, 어느 사용자 데이터 유닛들이 동기될지 결정되기 전에는 만들어 지지 않는다(301 단계). 바인딩 데이터는, 사용자 데이터 유닛들이 바인딩 데이터가 사용될 수 있기 전에 저장되더라도, 가령 동일한 동기 메시지를 이용해, 사용자 데이터 유닛들과 동시에 전송될 수 있다(304 단계). 다른 예는, 바람직하게는 동일한 동기 세션을 이용해, 사용자 데이터 유닛들이 전송된 후에(303 단계) 바인딩 데이터를 정의(302 단계)하고 전송한다(304 단계). 일실시예에서, 클라이언트 장치와 동기 서버 사이에 쌍방 동기가 이용되고, 이 경우, 클라이언트 기기는 적어도 301, 302, 303, 304단계들을 수행하고, 동기 서버로부터 데이터를 수신하면 도 4의 401, 402, 및 403 단계들을 수행한다. 마찬가지로, 동기 서버는 401, 402, 403 단계들을 수행하고, 클라이언트 장치로 변경사항을 전송시 도 3의 303 및 304 단계들을 수행한다.
도 5는 SyncML 시스템에서 사용자 데이터 유닛들과 바인딩 데이터의 동기를 예로 든 시그날링 차트이다. SyncML 규격에 따르면, 동기 세션이 먼저 초기화되고, 그 동안에 동기될 데이터베이스가 선택된다. 이 경우 클라이언트 초기화 패키지 #1 501가 클라이언트 장치(도 5의 TE)에서 서버(도 5의 S)로 전송되고, 서버 초기화 패키지 #2 502가 클라이언트 장치로 전송된다. 초기화 중에, 클라이언트 장 치와 서버 사이에 인증이 수행되고, 동기될 데이터베이스들을 결정하고, 동기에 영향을 주는 장치 사양들과 서비스를 교환할 수 있다.
동기 세션이 초기화된 다음, 클라이언트 장치는 SyncML 서버로 SyncML 패키지(503) (Sync Package #3(클라이언트 변경사항))를 전송할 수 있다. 그 패키지는 이전 메시지 다음에, 클라이언트 장치에서의 사용자 데이터 유닛들 및/또는 장치 데이터 유닛들을 포함하는 선택 데이터 집합에 이뤄진 부가사항 및 변경사항에 대한 정보를 적어도 포함하는데, 가령 그 집합에 부가된 이메일 메시지를 예로 들 수 있다. SyncML 동기시, 선택된 동기 유형에 따라, 동기될 모든 데이터 또는 이전 동기 세션 다음에 동기될 데이터에 이뤄진 변경사항들만이 상대편으로 전송될 수 있다는 것을 알아야 한다. SyncML 서버는 데이터를 동기한다, 즉, 선택 데이터 집합에 이뤄진 변경사항을 분석하고 사용자 데이터 유닛들 및/또는 장치 데이터 유닛들을 일치시킨다(필요한 부가, 대체 및 삭제를 행한다).
그 다음, SyncML 서버(S)는 클라이언트 장치로 서버 확인 메시지(504)(Sync 상태 #4)를 전송한다. 사용자 데이터 유닛들과 장치 데이터 유닛들은 동일한 메시지나 상이한 메시지들을 통해 동기될 수 있음을 알아야 한다.
바람직한 실시예에 있어서, 제2동기화 스텝은 형성된 동기 세션을 이용해 수행된다, 즉 사용자 데이터 유닛들을 결부시키는 바인딩 데이터가 동기된다. ㅇ 경우 클라이언트 장치(TE)가, 앞의 세션 다음에 바인딩 데이터에 대해 이뤄진 변경사항에 대한 정보를 포함하는 SyncML 패키지(505)(Sync Package #3(바인딩 데이터))를 전송한다. 메시지(505)는 가령 추가된 통화자 그룹들에 대한 정보를 포함할 수 있다. SyncML 서버(S)는 데이터를 동기시킨다, 즉, 바인딩 데이터에 이뤄진 변경사항을 분석하고 클라이언트 장치(TE)와 다른 데이터베이스(서버(S) 또는 다른 장치) 사이의 바인딩 데이터를 일치시킨다. SyncML 서버(S)는 클라이언트 장치로 서버 확인 메시지(506)(Sync 상태 #4)를 전송한다. 여러 개의 메시지들(503;504 및 505;506)이 전송될 수 있고 바인딩 데이터와 사용자 데이터 유닛들 및/또는 장치 데이터 유닛들 역시 동일한 패키지를 통해 전송될 수 있음을 주지해야 한다.
클라이언트 장치(TE)의 모든 데이터 유닛들이 이전된 후, SyncML 서버(S)는 동기 메시지(507)(Sync Package #4 (Server mod.))를 전송하는데, 여기에는 앞의 동기 세션 다음에 사용자 데이터 유닛들에 대해 이뤄진 변경사항들에 대한 정보와 함께 동기 명령이 포함된다. TE는 필요한 변경을 수행하고 상태 및 매핑 데이터를 SyncML 서버(S)로 전송한다, 즉 새로운 사용자 데이터 유닛들 및/또는 장치 데이터 유닛들에 할당되었던, 국지적으로 고유한 LUID 식별자들(508)(Sync Status, mapping #5(LUID))을 전송한다. 필요하면, SyncML 서버는 그 메시지(508)에 따라 사용자 데이터 유닛들 및/또는 장치 데이터 유닛들의 매핑 테이블을 업데이트한다. SyncML 서버(S)는 앞서의 바인딩 데이터의 동기 다음에 그 바인딩 데이터에 대해 이뤄진 변경사항들에 대한 서버 동기 패키지(509)(Sync Package #4 (바인딩 데이터))를 전송한다. SyncML 서버가 사용자 데이터 유닛들을 위한, 장치 데이터 유닛들의 LUID 및 GUID 식별자들 사이의 매핑 테이블(또는 테이블들)을 유지하기 때문에, 바인딩 데이터는 바람직한 실시예에 따라 SyncML 서버에게 결부된 사용자 및 장치 데이터 유닛들의 LUID 식별자들을 알림으로써 동기된다(505). 바람직한 실시 예에 따르면, SyncML 서버는 관련된 사용자 및 장치 데이터 유닛들의 LUID 식별자들을 포함하는 바인딩 데이터 테이블을 보관한다. 이와는 달리, 바인딩 데이터 테이블이 사용자 및 장치 데이터 유닛들의 GUID 식별자들을 이용하는 관련사항을 제공할 수도 있다. 사용자 데이터 유닛들의 경우와 같이, 클라이언트 단말(TE)은 (연결이 정의된) 바인딩 데이터의 사용자 데이터 유닛들을 LUID 식별자들과 동일시할 수 있다. TE는 그 바인딩 데이터에 대해 필요한 변경을 행하고 상태 메시지(510)(Sync Status)로 응답한다.
도 5의 예에서, 첫 번째와 두 번째 단계는 오버랩되고, 이때 동기는 하나의 SyncML 세션을 이용해 효율적으로 이뤄진다. 상기 예는 단순하며, 또 사용자 데이터 유닛들과, 사용자 데이터 유닛들을 장치와 결부시키는 바인딩 데이터가 SyncML 프로토콜에 따라 어떻게 동기될 수 있는지를 예시한다. SyncML 규격에서 이미 정의된 메시지들이 바인딩 데이터 동기시 활용될 수 있다. SyncML 프로토콜에 대한 보다 상세한 내용에 관해서는, 2002년 2월 15일, SyncML 선도 그룹에 의한, 62 페이지짜리 SyncML 동기 프로토콜, 버전 1.1의 SyncML 사양을 참조하면 된다.
이미 설명했듯이, 바인딩 데이터는 동기 테이블 및 동기될 다른 데이터베이스에 부가된, 통화자 그룹의 식별자 등과 같은 새로운 데이터 유닛들을 포함할 수도 있다. 이 경우 서버 역시 새 바인딩 데이터를 클라이언트 장치로 전송할 수 있다. 그런 다음, 클라이언트 장치(TE) 및/또는 서버(S) (또는 S가 바인딩 데이터를 동기시키는 다른 장치)에서 바인딩이 이뤄질 수 있다.
일방 동기가 흔히 사용될 수 있음을 알아야 하며, 이 경우 바인딩 데이터는 가령 어떤 사람이 새 모바일 전화기를 사면 한 장치에서 다른 장치 안으로 복사될 수 있다. 이 경우 바인딩 데이터가 메시지(508)를 통해 클라이언트 장치(TE)로 전송되지 않고, 동기 상태에 대한 정보만이 전송된다.
SyncML 세션은, 예를 들어, HTTP 프로토콜(Hyper Text Transfer Protocol), WAP 규격(Wireless Application Protocol)의 WSP 프로토콜(Wireless Session Protocol), USB(Universal Serial Bus)나 RS-232와 같은 케이블 링크나 단거리 무선 주파수 링크(블루투스)나 적외선 접속(IrDA)에 사용되는 OBEX 프로토콜이나, TCP/IP 스택(Transport Control Protocol/Internet Protocol)이나 이메일 프로토콜(SMTP, Simple Mail Transfer Protocol) 상에서 구현될 수 있다.
이하에서는, 바인딩 데이터가 동기되는 몇 가지 상황의 예들을 설명할 것이다. 바인딩 데이터가 동기될 수 있는 한 상황이 스피드 다이얼 넘버들의 동기이다. 한 스피드 다이얼 넘버를 전화 번호 또는 다른 연락 정보(가령, 이메일 어드레스)와 결부시키는 바인딩 데이터가, 모바일 전화기나 가입자 식별 유닛에 저장된 연락 정보가 동기된 후에 위에서 설명한 것과 같이 동기될 수 있다. 스피드 다이얼 넘버들과, 이들과 결부된 번호들 또는 이들에 대한 인용이 이 목적을 위해 만들어진 동기 메시지를 통해 전송될 수 있다(304, 402 단계). 장치가 스피드 다이얼 넘버들의 동기를 지원한다는 사실은 동기 세션의 초기화 중에 교환된 장치 사양에서 나타내짐이 바람직하다. 클라이언트 장치로부터 동기 서버로의 동기 메시지는 스피드 다이얼 넘버 및 그와 관련된 접촉자의 로컬 식별자 LUID를 포함함이 바람직하다.
동기 서버는 그 스피드 다이얼 넘버가 이미 어떤 연락자에 대해 마련되어 있는지의 여부를 체크할 수 있다. 그렇지 않은 경우이면, 그 스피드 다이얼 넘버는, 바인딩 데이터를 수신하여 그 스피드 다이얼 넘버와 연락자 사이에 바인딩을 형성하는(403 단계) 장치에 대해 업데이트될 수 있다. 만일 그 스피드 다이얼 넘버가 이미 마련되어 있으면, 수신된 스피드 다이얼 넘버는 거부됨이 바람직하고 저장된 스피드 다이얼 넘버가 그대로 유지된다. 서버 역시 이 스피드 다이얼 넘버와 결부된 연락자(가령, 전화 번호)가 수신된 스피드 다이얼 넘버와 결부된 연락자와 동일한지의 여부를 체크함이 바람직하다. 이들이 서로 일치하면, 동기 서버는 클라이언트 장치에 저장된 스피드 다이얼 넘버를 전송할 필요가 없다. 스피드 다이얼 번호들은 보통 사용자 고유의 것으로 가령 SIM 또는 USIM 식별 유닛과 같은 가입자 신원 유닛과 결부될 수 있다. 이 경우, 장치 고유이거나 네트웍 고유의 바인딩 데이터 역시 스피드 다이얼 넘버들과 관련될 수 있다. 이 데이터는, 예를 들어 스피드 다이얼 넘버들의 동기 후에 다른 장치에 대해 동기될 수 있다.
바인딩 데이터가 활용될 수 있는 다른 상황의 예는 통화자 그룹들을 한 장치에서 다른 장치로 전송하는 것이다. 통화자 그룹들의 동기 전에, 적어도 이들에 의해 정의된 연락 정보가 동기되어야 한다. 장치가 통화자 그룹들 및, 가령 통화자 그룹과 결부될 벨 소리들을 지원하는 사운드 종류들과 같이 이들과 관련된 컨텐츠 종류들을 지원한다는 사실이 동기 세션의 초기화시 교환된 장치 사양에 표시됨이 바람직하다. 통화자 그룹의 바인딩 데이터가 동기될 때, 그 그룹에 대한 정보가 먼저 전송됨이 바람직하다, 즉, 한 번호에 부합되는 통화자 그룹이 생성된다. 그 그룹은 가령 부가(Add) 명령의 타겟 및 소스 요소들 안에서 정의될 수 있다. 통화자 그룹 식별자라고 식별된 통화자 그룹에 속하는 연락자들이 바람직하게는 LUID 식별자들을 이용해 동기 메시지를 통해 결정된다. 이하의 예는, 5가 통화자 그룹의 LUID 식별자이고 11이 통화자 그룹 멤버의 LUID 식별자인(가령, 연락 데이터베이스의 한 사용자 데이터 유닛 등을 참조) 통화자 그룹의 바인딩 데이터에 대한 동기 메시지 항목을 나타낸 것이다.
<Add>
...
<Item>
<Source>
<LocURI>./5/11</LocURI>
<Source>
...
</Add>
멤버들에 더하여, 통화자 그룹의 이름, 통화자 그룹에 고유한 전화벨 소리, 그림 또는 다양한 부가적 정의들이 통화자 그룹 바인딩 데이터 안에 정의될 수 있다. 바인딩 데이터 및 식별자들의 동기 테이블을 사용해, 동기 서버는 통화자 그룹 정보를 수신 장치 또는 데이터 베이스로 전송하고, 수신 장치나 데이터베이스에서는 통화자 그룹(5)의 연락 정보와 추가된 멤버(11) 사이에 연결관계가 형성된다. 동기 서버가 클라이언트 장치로부터 통화자 그룹 바인딩 데이터를 수신할 때, 서버 는 통화자 그룹이 이미 존재하는지의 여부를 체크한다. 동일한 식별자에 대해 통화자 그룹이 이미 존재하면, 그룹들은 합쳐진다, 즉, 최초 멤버들과 새 멤버들이 그 통화자 그룹에 대해 정의된다. 통화자 그룹은 디폴트 통화자 그룹으로서 정의될 수도 있는데, 이 경우 통화자 그룹은 이전 통화자 그룹들을 대체하거나 이전 통화자 그룹들이 디폴트 통화자 그룹에 부가된다. 서버에 그 통화자 그룹이 존재하지 않으면, 동기 서버는 새 그룹을 생성한다. 통화자 그룹과 관련된 바인딩 데이터에 기초해, 단말은, 예를 들어 다음과 같은 바인딩을 이용하도록 구현될 수 있다(403 단계): 모바일 스테이션이 걸려오는 통화를 수신할 때, 통화자의 번호가 체크되고 그 번호와 어떤 통화자 그룹 식별자가 결부되었는지를 검출한다. 또, 가령 어떤전화 벨소리가 통화자 그룹 식별자에 따른 통화자 그룹과 결부될 수 있고, 이 벨소리는 모바일 스테이션의 통화 관리 어플리케이션에 의해, 걸려오는 통화에 대한 전화벨 소리로서 선택된다. 수신된 메시지는 가령 그 통화자 그룹과 관련된 환경 설정에 기초해, 어떤 디렉토리로 지정될 수 있다.
또 다른 예에 따르면, 바인딩 데이터는 적어도 하나의 사용자 데이터 유닛을 사용자의 환경 설정을 정의하는 어떤 파일과 같은 사용자 프로필과 결부시키는 방식으로, 그 사용자와 관련되기도 한다. 사용자 프로필 파일, 사용자 데이터 유닛및 바인딩 데이터가 수신 장치로 전송된 다음, 수신 장치는 역시, 사용자 프로필 선택과 관련해, 결부된 사용자 데이터 유닛을 자동으로 검색할 수 있다.
가령 일정 기입 사항, 이메일 메시지, 또는 연락 정보에 대해 사용자 데이터 유닛과 결부된 임의의 자원 식별자, 즉 장치의 동작에 영향을 미치는 위치로의 링 크가 바인딩 데이터 안에서 정의될 수 있다. 이런 종류의 바인딩 데이터 동기는 표시된 사용자 데이터 유닛의 동기에 앞서야 하며 그에 따라 자원 식별자가 사용자 데이터 유닛과 결부될 수 있게 된다. 장치 데이터 유닛 대신, 링크가 한 디렉토리를 가리킬 수도 있다. 바인딩 데이터 내에서 참조되고 사용자 데이터 유닛으로부터의 바인딩이 형성되는 파일들이나 디렉토리들이 장치(TE, S)의 운영 시스템에 규정되거나, 실행될 어플리케이션에 의해 내부적으로 정의될 수 있음을 알아야 한다. 링크들의 경우, 그 동작은 상술한 것들과 같다: 링크에 할당된 LUID 또는 GUID 식별자가 바인딩 데이터에서 사용자 데이터 유닛의 LUID 또는 GUID 식별자와 결부된다. LUID 및 GUID 식별자들이 해당 데이터베이스(MEM, SMEM)의 식별자에 의해 참조되는 자원과 결부되는 방법은 본 발명과 별도의 실시 고유의 사항이다. 사용자 데이터와 어떤 장치 기능 사이의 바인딩의 형성은, 동기 장치들의 기능들이 데이터 유닛 또는 바인딩 데이터에 규정된 디렉토리와 관련해 서로 일치할 것을 요구한다.
매우 간단한 한 예에서, 자원 식별자는 통화 관리 어플리케이션에서 어떤 디렉토리 '/벨소리/디폴트 벨소리/'로 정해지고, 그로부터 디폴트 벨소리가 항상 검색된다. 사용자의 벨소리들이 디렉토리 '/벨소리' 등과 동기될 때, 벨소리가 디렉토리 '/벨소리/디폴트 벨소리/'와 결부되는 바인딩 데이터가 동기된다. 이러한 바인딩에 기초해, 바인딩 데이터를 수신하는 장치 안에서 바인딩이 형성될 수 있다, 즉, 벨소리 파일이나 그에 대한 링크가 디렉토리 '/벨소리/디폴트 벨소리/' 안에 저장될 수 있다. 어플리케이션이 이 디렉토리 '/벨소리/디폴트 벨소리/'로부터 벨소리를 검색하기 때문에, 올바른 벨소리는 바인딩 데이터 동기 덕분에 디폴트 벨소 리로 설정되므로 사용자는 그것을 수동으로 설정할 필요가 없게 된다. 다른 예에 따르면, 사용자는 이미지 파일을 한 어플리케이션과 결부시킬 수 있고, 이 경우 그 이미지 파일은 어플리케이션이 작동할 때마다 항상 검색된다.
전송될 바인딩 데이터는 사용자 고유이거나 단말 고유의 데이터일 것이다. 사용자는, 예를 들어, 자신의 단말(TE)의 환경 설정에 대한 바인딩을 새 단말로 전송할 수 있다. 하나 이상의 환경설정을 어떤 사용자 데이터 유닛과 결부시키는 바인딩 데이터 유닛은, 가령 그 사용자 데이터 유닛과 관련된 단말기 종류나 사용자 프로필을 규정할 수 있다. 바인딩이 규정되기 위한 실시 가능한 기타 환경 설정 사항은 프로필, 사용자 인터페이스 세팅, 음성 인식 또는 단어 인식에 사용되는 트레이닝 레코드를 포함한다. 예를 들어, 사용될 단말이 바뀔 때, 새로운 단말로 어떤 설정사항이 전송되고 그에 따라 그 단말 안에서 어떤 개인적 이미지(사용자 데이터 유닛)가 배경 화면으로 사용된다(이미지는 사용자 인터페이스 설정사항 안에 삽입된다). 바인딩 데이터는 또한 통화 레지스터, 에러 로그 또는 게임 결과 등의 다양한 로그들과 같이, 다양한 종류의 히스토리 데이터를 사용자 데이터 유닛과 결부시킬 수도 있다. 이러한 종류의 바인딩 데이터는 이전에 동기된 사용자 데이터 유닛과도 관련될 수 있다; 예를 들어, 통화 레지스터는 연락자들의 전화 번호들을 의미한다. 사용자 데이터 유닛을 어떤 위치, 즉 어떤 메모리 위치 안에 저장함으로써, 사용자 데이터 유닛에서 한 장치로의 바인딩이 생성될 수 있음을 주지해야 한다. 이 경우 바인딩 데이터는 이 메모리 위치의 식별자에 대한 명확하거나 함축된 인용을 포함한다.
두 장치들 사이의 동기에 대해 위에서 기술하였다. 그러나, 바인딩 데이터 동기는 세 장치 이상의 장치들 사이에서도 구현될 수 있다. 클라이언트 장치들은 상술한바와 같이 동작하여 바인딩 데이터에 따른 바인딩을 생성할 것이다. 여러 대의 사용 단말을 가진 사용자는 단말들 모두에게로 필요한 바인딩 데이터를 배포할 수 있다. 예를 들어, 통화자 그룹 바인딩 데이터는 통화 그룹에 규정된 전화 번호들로 표시된 모든 장치들에 대해 동기된다.
이 분야의 당업자라면 기술이 진보함에 따라 본 발명의 개념이 다양한 방식으로 실현될 수 있음이 자명할 것이다. 임의의 사용자 데이터와 관련된 바인딩 데이터가 상술한 예들을 적용함으로써 동기될 수 있다. 따라서 본 발명과 그 실시예들은 상술한 예들에 국한되지 않으며 청구범위들 안에서 가변될 수 있다.

Claims (16)

  1. 적어도 하나의 사용자 데이터 유닛을 포함하는 제1동기 장치 및, 제2동기 장치를 최소한 포함하는 동기 시스템에서 데이터 동기를 수행하는 방법에 있어서,
    상기 동기 시스템에서, 상기 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 상기 제1동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 규정하는 단계;
    상기 제1동기 장치로부터 제2동기 장치로 상기 사용자 데이터 유닛을 전송하는 스텝을 포함하는 제1동기화 스텝을 제1동기 장치와 제2동기 장치 사이에서 수행하는 단계를 포함하고,
    상기 제1동기화 스텝의 수행에 응하여, 제1동기 장치로부터 제2동기 장치로 바인딩 데이터를 전송하는 스텝을 포함하는 제2동기화 스텝을 제1동기 장치와 제2동기 장치 사이에서 수행하는 단계; 및
    상기 제2동기 장치에서, 상기 바인딩 데이터에 따라 상기 사용자 데이터 유닛과 상기 제2동기 장치의 적어도 한 기능 사이에 바인딩을 형성하는 단계를 더 포함함을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 제1동기 장치 안에서, 상기 제2동기 장치가 바인딩 데이터 동기를 지원하는지의 여부를 체크하는 단계; 및
    상기 제2동기 장치가 바인딩 데이터 동기를 지원한다는 사실에 반응하여, 제2동기화 스텝시, 상기 제1동기 장치로부터 제2동기 장치로 바인딩 데이터를 전송하는 단계를 포함함을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 바인딩 데이터는 상기 사용자 데이터 유닛을, 적어도 한 어플리케이션에 의해 사용되는 자원 식별자와 결부시킴을 특징으로 하는 방법.
  4. 제1항 또는 제2항에 있어서, 상기 바인딩 데이터는 상기 사용자 데이터 유닛을, 상기 제2동기 장치의 동작에 영향을 미치는 데이터 유닛인 장치 데이터 유닛과 결부시킴을 특징으로 하는 방법.
  5. 제4항에 있어서, 상기 사용자 데이터 유닛은 전화 번호이거나 전화 번호를 참조하며, 상기 바인딩 데이터는 상기 사용자 데이터 유닛을 스피드 다이얼 넘버(speed dial number)인 어떤 장치 데이터 유닛과 결부시킴을 특징으로 하는 방법.
  6. 제4항에 있어서, 상기 사용자 데이터 유닛은 전화 번호이거나 전화 번호를 참조하며, 상기 바인딩 데이터는 상기 사용자 데이터 유닛을 통화자 그룹의 식별자인 어떤 장치 데이터 유닛과 결부시킴을 특징으로 하는 방법.
  7. 제4항에 있어서,
    상기 사용자 데이터 유닛들의 동기와 관련하여, 상기 제1동기 장치에서 제2동기 장치로 상기 장치 데이터 유닛을 동기시키는 단계를 포함함을 특징으로 하는 방법.
  8. 제1항 또는 제2항에 있어서,
    상기 제1동기 장치는 SyncML 프로토콜에 따른 SyncML 서버이고, 제2동기 장치는 SyncML 프로토콜에 따른 SyncML 클라이언트이고,
    상기 제2동기 장치는 사용자 데이터 유닛의 LUID 또는 GUID 식별자를 상기 장치와 관련된 적어도 하나의 LUID 또는 GUID 식별자와 결부시키는 바인딩 데이터 테이블을 보유함을 특징으로 하는 방법.
  9. 제2동기 장치와의 사용자 데이터 동기를 위해 동기 세션을 설정하는 수단을 구비한 동기 장치에 있어서,
    상기 동기 장치는 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 상기 동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 정의하도록 되고;
    상기 동기 장치는 상기 제2동기 장치와, 상기 동기 장치로부터 제2동기 장치로 상기 사용자 데이터 유닛을 전송하는 스텝을 포함하는 제1동기화 스텝을 수행하도록 되고,
    상기 동기 장치는 상기 제2동기 장치와, 제1동기화 스텝의 수행에 응하여, 상기 동기 장치로부터 제2동기 장치로 바인딩 데이터를 전송하는 스텝을 포함하는 제2동기화 스텝을 수행하도록 됨을 특징으로 하는 동기 장치.
  10. 제2동기 장치와의 사용자 데이터 동기를 위해 동기 세션을 설정하는 수단을 구비한 동기 장치에 있어서,
    상기 동기 장치는 상기 제2동기 장치와, 상기 제2동기 장치로부터 상기 동기 장치로 사용자 데이터 유닛을 전송하는 스텝을 포함하는 제1동기화 스텝을 수행하고,
    상기 동기 장치는 상기 제1동기화 스텝의 수행에 응하여, 상기 제2동기 장치와, 상기 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 상기 제2동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 상기 제2동기 장치로부터 상기 동기 장치로 전송하는 스텝을 포함하는 제2동기화 스텝을 수행하고,
    상기 동기 장치는 상기 바인딩 데이터에 따라 상기 사용자 데이터 유닛과 상기 동기 장치의 기능들 중 적어도 한 기능 사이에 바인딩을 형성함을 특징으로 하는 동기 장치.
  11. 제9항 또는 제10항에 있어서,
    상기 바인딩 데이터는 상기 사용자 데이터 유닛과, 상기 제2동기 장치의 동작에 영향을 미치는 어떤 데이터 유닛인 장치 데이터 유닛을 결부시킴을 특징으로 하는 동기 장치.
  12. 제9항 또는 제10항에 있어서,
    상기 바인딩 데이터는 상기 사용자 데이터 유닛을, 적어도 한 어플리케이션에 의해 사용되는 자원 식별자와 결부시킴을 특징으로 하는 동기 장치.
  13. 적어도 하나의 사용자 데이터 유닛을 포함하는 제1동기 장치 및, 제2동기 장치를 최소한 포함하는 동기 시스템에 있어서,
    상기 동기 시스템은, 상기 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 상기 제1동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 규정하도록 하고,
    상기 동기 시스템은, 제1동기 장치와 제2동기 장치 사이에서, 제1동기 장치로부터 제2동기 장치로 상기 사용자 데이터 유닛을 전송하는 스텝을 포함하는 제1동기화 스텝을 수행하도록 하고,
    상기 동기 시스템은, 상기 제1동기화 스텝의 수행에 응하여, 제1동기 장치와 제2동기 장치 사이에서, 제1동기 장치로부터 제2동기 장치로 바인딩 데이터를 전송하는 스텝을 포함하는 제2동기화 스텝을 수행하도록 하고,
    상기 동기 시스템은, 상기 제2동기 장치에서, 상기 바인딩 데이터에 따라 상기 사용자 데이터 유닛과 상기 제2동기 장치의 적어도 한 기능 사이에 바인딩을 형성하도록 함을 특징으로 하는 방법.
  14. 동기 장치의 메모리 안에 로드될 수 있는 컴퓨터 프로그램을 저장하는, 컴퓨터로 읽을 수 있는 저장매체에 있어서, 상기 컴퓨터 프로그램은,
    상기 동기 장치를 제어하여 사용자 데이터 유닛과 상기 동기 장치의 적어도 한 기능을 결부시키는 바인딩 데이터를 규정하도록 하는 프로그램 코드 부분; 및
    상기 동기 장치를 제어하여 상기 동기 장치에서 제2동기 장치로 상기 사용자 데이터 유닛을 전송하는 스텝을 포함하는 제1동기화 스텝을 수행하도록 하는 프로그램 코드 부분을 포함하고,
    상기 동기 장치를 제어하여, 상기 제1동기화 스텝의 수행에 응해, 상기 제2동기 장치와, 상기 동기 장치로부터 제2동기 장치로 바인딩 데이터를 전송하는 스텝을 포함하는 제2동기화 스텝을 수행하도록 하는 프로그램 코드 부분을 더 포함함을 특징으로 하는, 컴퓨터로 읽을 수 있는 저장매체.
  15. 동기 장치의 메모리 안에 로드될 수 있는 컴퓨터 프로그램을 저장하는, 컴퓨터로 읽을 수 있는 저장매체에 있어서, 상기 컴퓨터 프로그램은,
    상기 동기 장치를 제어하여, 사용자 데이터 유닛을 상기 동기 장치로 전송하는 스텝을 포함하는 제1동기화 스텝을 제2동기 장치와 함께 수행하도록 하는 프로그램 코드 부분을 포함하고,
    상기 동기 장치를 제어하여, 상기 제1동기화 스텝의 수행에 반응하여, 상기 사용자 데이터 유닛을 식별하는 사용자 데이터 식별자를 상기 제2동기 장치의 적어도 한 기능과 결부시키는 바인딩 데이터를 상기 제2동기 장치로부터 상기 동기 장치로 전송하는 제2동기화 스텝을 상기 제2동기 장치와 함께 수행하도록 하는 프로그램 코드 부분; 및
    상기 동기 장치를 제어하여 상기 바인딩 데이터에 따라 상기 사용자 데이터 유닛들과 상기 동기 장치의 기능들 중 한 기능 사이에 바인딩을 형성하도록 하는 프로그램 코드 부분을 포함함을 특징으로 하는, 컴퓨터로 읽을 수 있는 저장매체.
  16. 제10항의 동기 장치에서 사용되는 데이터 구조를 저장하는, 컴퓨터로 읽을 수 있는 저장매체에 있어서, 상기 데이터 구조는,
    제2장치에서 정의되고, 상기 동기 장치의 메모리에 저장된 데이터를 업데이트하는 컴퓨터 프로그램의 실행 중에 상기 동기 장치로 하여금 상기 제2장치로부터 수신한 사용자 데이터 유닛과 상기 동기 장치의 기능들 중 적어도 한 기능과의 사이에 바인딩을 형성하도록 만드는 바인딩 데이터를 포함함을 특징으로 하는, 컴퓨터로 읽을 수 있는 저장매체.
KR1020057007387A 2002-10-29 2003-10-28 데이터 동기 KR101011216B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20021920A FI114750B (fi) 2002-10-29 2002-10-29 Datan synkronoiminen
FI20021920 2002-10-29

Publications (2)

Publication Number Publication Date
KR20050084886A KR20050084886A (ko) 2005-08-29
KR101011216B1 true KR101011216B1 (ko) 2011-01-26

Family

ID=8564835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057007387A KR101011216B1 (ko) 2002-10-29 2003-10-28 데이터 동기

Country Status (7)

Country Link
US (1) US8073432B2 (ko)
EP (1) EP1556785A1 (ko)
KR (1) KR101011216B1 (ko)
CN (1) CN1729468B (ko)
AU (1) AU2003274194A1 (ko)
FI (1) FI114750B (ko)
WO (1) WO2004040470A1 (ko)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797386B2 (en) * 2004-02-27 2010-09-14 Research In Motion Limited System and method for remotely configuring a desktop mailbox
US7783729B1 (en) 2004-03-19 2010-08-24 Single Touch Interactive, Inc. Transmitting mobile device data
US7814231B2 (en) * 2004-05-24 2010-10-12 Apple Inc. Method of synchronizing between three or more devices
US7877356B1 (en) 2004-05-24 2011-01-25 Apple Inc. Retaining intermediate states of shared groups of objects and notification of changes to shared groups of objects
US7383291B2 (en) * 2004-05-24 2008-06-03 Apple Inc. Method for sharing groups of objects
US7809682B2 (en) * 2004-05-24 2010-10-05 Apple Inc. Data synchronization between multiple devices
US20060047837A1 (en) * 2004-06-14 2006-03-02 Jukka-Pekka Rissanen Arrangement for informing application capabilities by an object exchange protocol
US7672978B2 (en) * 2004-08-20 2010-03-02 Nokia Corporation Handling of content in a data processing device
US7610055B2 (en) * 2005-05-13 2009-10-27 Avaya Inc. Synchronizing information across telecommunications terminals for multiple users
US7849199B2 (en) 2005-07-14 2010-12-07 Yahoo ! Inc. Content router
US8320952B2 (en) 2005-07-25 2012-11-27 Motorola Mobility Llc Method and apparatus to facilitate download scheduling
US8024290B2 (en) 2005-11-14 2011-09-20 Yahoo! Inc. Data synchronization and device handling
US8065680B2 (en) 2005-11-15 2011-11-22 Yahoo! Inc. Data gateway for jobs management based on a persistent job table and a server table
US9367832B2 (en) 2006-01-04 2016-06-14 Yahoo! Inc. Synchronizing image data among applications and devices
CN100493090C (zh) * 2006-01-25 2009-05-27 中国移动通信集团公司 移动终端与服务器之间的数据同步方法
US7890646B2 (en) * 2006-04-27 2011-02-15 Microsoft Corporation Synchronization orchestration
US20080005280A1 (en) * 2006-06-30 2008-01-03 Research In Motion Limited Automatic data synchronization
US7715444B2 (en) * 2007-02-02 2010-05-11 Palm, Inc Resuming a previously interrupted peer-to-peer synchronization operation
US8037022B2 (en) * 2007-06-05 2011-10-11 Samsung Electroncis Co., Ltd. Synchronizing content between content directory service and control point
WO2009054661A1 (en) * 2007-10-25 2009-04-30 Lg Electronics Inc. Procedure for managing data synchronization under multiple devices environment
US20090112915A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Class configuration for locally cached remote data binding
US8010158B2 (en) * 2007-12-21 2011-08-30 Nokia Corporation Synchronization of mobile terminals
US8078749B2 (en) * 2008-01-30 2011-12-13 Microsoft Corporation Synchronization of multidimensional data in a multimaster synchronization environment with prediction
US20090196311A1 (en) * 2008-01-31 2009-08-06 Microsoft Corporation Initiation and expiration of objects in a knowledge based framework for a multi-master synchronization environment
US20090325630A1 (en) * 2008-06-27 2009-12-31 Nokia Corporation Method, apparatus, and computer program product for personalizing a device
CN101493826B (zh) * 2008-12-23 2012-12-19 中兴通讯股份有限公司 基于web应用的数据库系统及其数据管理方法
US20100268784A1 (en) * 2009-04-17 2010-10-21 Marc Henness Data synchronization system and method
US10395762B1 (en) 2011-06-14 2019-08-27 Merge Healthcare Solutions Inc. Customized presentation of data
US8867807B1 (en) 2011-09-23 2014-10-21 Dr Systems, Inc. Intelligent dynamic preloading and processing
US9443230B2 (en) * 2012-04-30 2016-09-13 At&T Intellectual Property I, L.P. Point-to point data synchronization
CN105635250A (zh) * 2015-12-18 2016-06-01 北京奇虎科技有限公司 一种基于终端的网络记录同步方法及终端
CN108306966B (zh) * 2018-01-31 2022-01-21 腾讯科技(深圳)有限公司 文档处理方法、装置、系统、终端及服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000054740A (ko) * 2000-06-21 2000-09-05 김행곤 웹 환경 하에서 실시간 정보 생성기와 자원 레지스트리를이용한 네트워크 정보의 관리 방법
KR20020063523A (ko) * 2001-01-29 2002-08-03 소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드 네트워크를 통한 1차 컨텐트의 다운로드/억세스 시에 로컬저장소에 위치된 보조 컨텐트를 제공하는 방법 및 시스템
KR100651072B1 (ko) 1996-02-26 2006-11-28 노키아 모빌 폰즈 리미티드 복수의 애플리케이션을 지원하는 통신 네트워크 단말기

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5392390A (en) 1992-04-10 1995-02-21 Intellilink Corp. Method for mapping, translating, and dynamically reconciling data between disparate computer platforms
US5633484A (en) * 1994-12-26 1997-05-27 Motorola, Inc. Method and apparatus for personal attribute selection and management using a preference memory
US6247135B1 (en) * 1999-03-03 2001-06-12 Starfish Software, Inc. Synchronization process negotiation for computing devices
US20030069874A1 (en) * 1999-05-05 2003-04-10 Eyal Hertzog Method and system to automate the updating of personal information within a personal information management application and to synchronize such updated personal information management applications
JP2001167019A (ja) * 1999-12-13 2001-06-22 Sharp Corp 電子メールシンクロ装置
KR100362149B1 (ko) 1999-12-22 2002-11-23 엘지전자 주식회사 휴대폰과 컴퓨터간 데이터 동기화 방법
GB2359461A (en) * 2000-02-21 2001-08-22 Nokia Mobile Phones Ltd Personalised information from a phone is backed up and/or transferred between phones using a computer
US20030023759A1 (en) * 2000-11-30 2003-01-30 Jack Littleton System and method for provisioning telephony services via a personal digital assistant
FI113129B (fi) 2001-03-26 2004-02-27 Nokia Corp Sovellusdatan synkronointi tietoliikennejärjestelmässä
FI114417B (fi) 2001-06-15 2004-10-15 Nokia Corp Datan valitseminen synkronointia varten
US20040039801A9 (en) 2002-03-11 2004-02-26 Venkatachary Srinivasan System and method for delivering data in a network
US20030220966A1 (en) * 2002-05-24 2003-11-27 International Business Machines Corporation System and method for dynamic content dependent conflict resolution

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100651072B1 (ko) 1996-02-26 2006-11-28 노키아 모빌 폰즈 리미티드 복수의 애플리케이션을 지원하는 통신 네트워크 단말기
KR20000054740A (ko) * 2000-06-21 2000-09-05 김행곤 웹 환경 하에서 실시간 정보 생성기와 자원 레지스트리를이용한 네트워크 정보의 관리 방법
KR20020063523A (ko) * 2001-01-29 2002-08-03 소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드 네트워크를 통한 1차 컨텐트의 다운로드/억세스 시에 로컬저장소에 위치된 보조 컨텐트를 제공하는 방법 및 시스템
KR100687068B1 (ko) 2001-01-29 2007-02-27 소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드 네트워크를 통한 1차 컨텐트의 다운로드/억세스 시에 로컬저장소에 위치된 보조 컨텐트를 제공하는 방법 및 시스템

Also Published As

Publication number Publication date
AU2003274194A1 (en) 2004-05-25
US8073432B2 (en) 2011-12-06
CN1729468B (zh) 2010-06-16
KR20050084886A (ko) 2005-08-29
FI114750B (fi) 2004-12-15
EP1556785A1 (en) 2005-07-27
FI20021920A (fi) 2004-04-30
CN1729468A (zh) 2006-02-01
WO2004040470A1 (en) 2004-05-13
FI20021920A0 (fi) 2002-10-29
US20040136404A1 (en) 2004-07-15

Similar Documents

Publication Publication Date Title
KR101011216B1 (ko) 데이터 동기
CA2653096C (en) Data synchronization
US8190671B2 (en) Arranging synchronization session
US6810405B1 (en) System and methods for synchronizing data between multiple datasets
US8024290B2 (en) Data synchronization and device handling
KR100592915B1 (ko) 원격 통신 시스템의 어플리케이션 데이터 동기화
US9594821B2 (en) Method and apparatus for synchronizing how data is stored in different data stores
KR100873711B1 (ko) 동기 관련 정보를 핸들링 하는 방법 및 장치
US20070250645A1 (en) Mobile phone data backup system
EP2073429A1 (en) Data synchronous method, system and apparatus
JP2002057807A (ja) 携帯電話の電話帳管理システム
RU2419238C1 (ru) Система и способ распределения общей информации о местоположении между устройствами связи
EP2116033B1 (en) Method and apparatus for event-based synchronization of information between communication devices
MXPA05002408A (es) Metodo, dispositivo y sistema para la sincronizacion de datos que proporciona el manejo de un proceso interrumpido de sincronizacion.
KR100976317B1 (ko) 무선 단말의 가입자 아이디의 저장과 상호작용을 위한 방법 및 장치
US20040127205A1 (en) Over the air maintenance of mobile station telephone directories
JP4527385B2 (ja) 通信システムおよび方法
KR20020036869A (ko) 이동통신 단말기와 개인용 컴퓨터 및 개인 정보 관리서버의 정보 동기화 방법
CN100372311C (zh) 一种同步标示语言中终端管理的无线搜索方法
KR101180768B1 (ko) 모임 구성원 이동통신단말기로 제공하기 위한 모임주소록작성 시스템 및 그 방법
CN109327595A (zh) 联系人关系变更方法、装置以及服务器
KR20070023894A (ko) 멀티미디어 데이터 동기화 방법 및 그 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150106

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151217

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180111

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20190110

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20200109

Year of fee payment: 10