KR101130443B1 - 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체 - Google Patents

전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR101130443B1
KR101130443B1 KR1020050073586A KR20050073586A KR101130443B1 KR 101130443 B1 KR101130443 B1 KR 101130443B1 KR 1020050073586 A KR1020050073586 A KR 1020050073586A KR 20050073586 A KR20050073586 A KR 20050073586A KR 101130443 B1 KR101130443 B1 KR 101130443B1
Authority
KR
South Korea
Prior art keywords
contact
field names
data source
recipient list
user interface
Prior art date
Application number
KR1020050073586A
Other languages
English (en)
Other versions
KR20060050395A (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 KR20060050395A publication Critical patent/KR20060050395A/ko
Application granted granted Critical
Publication of KR101130443B1 publication Critical patent/KR101130443B1/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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)

Abstract

전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의 데이터를 통합하는 방법, 장치 및 컴퓨터 판독가능 매체가 제공된다. 상기 방법은 초기 데이터 소스로부터 필드명 및 필드 데이터를 수신하는 단계와, 후속하여 부가된 데이터 소스로부터의 필드명을 초기 데이터 소스에 맵핑하는 단계와, 초기 데이터 소스로부터의 필드명 및 후속하여 부가된 데이터 소스로부터의 맵핑된 필드명에 기초하여 수신자 리스트 스키마를 구축하는 단계와, 수신자 리스트 스키마에 따라 수신자 리스트를 생성하는 단계와, 수신자 리스트를 파일에 저장하는 단계를 포함한다. 수신자 리스트 스키마는 수신자 리스트 내의 필드명과 초기 및 후속하여 부가된 데이터 소스 내의 필드명 사이의 관계를 정의한다.
전자 문서, 필드명, 필드 데이터

Description

전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의 데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체{METHOD, SYSTEM, AND COMPUTER-READABLE MEDIUM FOR MERGING DATA FROM MULTIPLE DATA SOURCES FOR USE IN AN ELECTRONIC DOCUMENT}
도 1은 본 발명의 여러 실시예에 사용되고 그 실시예에 의해 제공되는 컴퓨터 시스템을 나타내는 컴퓨터 시스템 아키텍쳐 다이아그램이다.
도 2는 본 발명의 예시적 실시예에 따라, 다중 데이터 소스로부터 데이터를 통합하는, 도 1의 컴퓨터 시스템 내의 데스크탑 공개 어플리케이션에 의해 수행되는 예시적 루틴이다.
도 3 내지 도 6은 본 발명의 일 실시예에 따라, 다중 데이터 소스로부터 데이터를 통합하고 다중 데이터 소스로부터 통합된 데이터를 관리하는 설비를 제공하는 본 발명의 측면을 나타내는 스크린 다이아그램이다.
<도면의 주요부분에 대한 부호의 설명>
5: CPU
7: 시스템 메모리
10: 데스크탑 공개 어플리케이션
11: ROM
14: 대용량 저장 디바이스
16: 운영 체제
26, 28, 30: 데이터 소스
현대의 데스크탑 공개 어플리케이션은 사용자가 전자 문서를 쉽게 생성하는 것을 가능하게 한다. 전자 문서를 생성하기 위한 많은 데스크탑 공개 어플리케이션에 이용가능한 하나의 특성은 "메일 통합(mail merge)"로 공지되어 있다. 메일 통합은 사용자가 단일 데이터 소스로부터의 데이터에 접속하고 통합하는 것을 허용함으로써 가변 데이터 문서를 생성하는 프로세스를 자동화한다. 메일 통합 특성을 사용함에 있어서, 데이터는 단일 데이터 소스(가령, 메일링 리스트)로부터 풀(pull)되고 문서 내의 표시된 위치에 삽입된다.
현대의 데스크탑 공개 어플리케이션에 의해 제공된 메일 통합 특성과 관련된 하나의 결함은 사용자가 종종 데이터(가령, 메일링 리스트)를 다른 포맷으로 컴퓨터 시스템 내의 여러 위치에 저장한다는 것이다. 예를 들어, 사용자는 컨택트 매니저 프로그램에 의해 판독가능한 컨택트 파일로서 하나의 컨택트 리스트를 저장할 수 있지만, 컨택트의 다른 리스트는 스프레드시트 프로그램에 의해 판독가능한 스프레드시트 파일로서 저장될 수 있다. 따라서, 사용자는, 데스크탑 공개 어플리케이션에 의해 제공된 메일 통합 특성을 이용하기 위해, 종종 다중 소스로부터 다른 포맷의 데이터를 하나의 데이터 소스 내에 수집할 필요가 있다.
본 발명의 다양한 실시예들은 이러한 점들을 고려하여 이루어진 것이다.
본 발명에 따르면, 전술한 문제 및 다른 문제들이 전자 문서 내의 사용을 위해 다중 데이터 소스로부터 데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체에 의해 해결된다. 본 발명의 일 측면에 따르면, 상기 방법은 초기 데이터 소스로부터 필드명 및 필드 데이터를 수신하는 단계와, 후속하여 부가된 데이터 소스로부터의 필드명을 초기 데이터 소스에 맵핑하는 단계와, 초기 데이터 소스로부터의 필드명 및 후속 부가된 데이터 소스로부터의 맵핑된 필드명에 기초하여 수신자 리스트 스키마를 구축하는 단계를 포함한다. 수신자 리스트 스키마는 수신자 리스트 내의 필드명과 초기 및 후속하여 부가된 데이터 소스 내의 필드명 사이의 관계를 정의한다. 수신자 리스트를 구축하는 단계는 후속하여 부가된 데이터 소스로부터의 맵핑된 필드명을 초기 데이터 소스로부터의 필드명과 비교하는 단계를 포함하며, 후속하여 부가된 데이터 소스로부터의 맵핑된 필드명 중 어느것도 초기 데이터 소스로부터의 필드명에 일치하지 않을 경우에는 상기 방법은 맵핑된 필드명을 부가하는 단계를 포함한다.
상기 방법은 수신자 리스트 스키마에 따른 수신자 리스트를 생성하는 단계와, 수신자 리스트가 재생성되도록 허용하는 파일을 저장하는 단계를 더 포함한다. 수신자 리스트 스키마에 따른 수신자 리스트의 생성은, 마스터 데이터 소스를 생성하기 위해, 후속 부가된 데이터 소스로부터의 필드 데이터의 행을 임시 수신자 리 스트에 부가하는 단계와, 마스터 데이터 소스 내에 필드 데이터의 각 행에 대한 해시값(hash value)을 계산하는 단계를 포함할 수 있다. 저장된 업데이트 수신자 리스트 파일은 초기 데이터 소스에 대한 참조(a reference), 후속 부가된 데이터 소스에 대한 참조 및 마스터 데이터 소스 내의 필드 데이터의 각 행에 대해 계산된 해시값을 포함할 수 있다. 상기 방법은 초기 데이터 소스 필드 데이터 및 후속 부가된 데이터 소스 내의 필드 데이터를 수정하기 위해 수신자 리스트를 수정하는 단계와, 수신자 리스트 내의 초기 데이터 소스와 후속 부가된 데이터 소스 사이의 복제를 해결하는 단계를 더 포함할 수 있다.
본 발명은 컴퓨터 프로세스로서, 컴퓨터 프로그램으로서, 또는 컴퓨터 프로그램 제품 또는 컴퓨터 판독가능 매체와 같은 제조물의 물건으로서 구현될 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능하며 컴퓨터 프로세스를 실행하기 위한 인스트럭션의 컴퓨터 프로그램을 인코딩한 프로그램 컴퓨터 저장 매체일 수 있다. 또한 컴퓨터 프로그램 제품은 컴퓨터 시스템에 의해 판독가능하며 컴퓨터 프로세스를 실행하기 위한 인스트럭션의 컴퓨터 프로그램을 인코딩한 캐리어 상에서 전파되는 신호일 수 있다.
본 발명을 특징짓는 상기 특징들 및 여러 다른 특징들 및 이점들은 후속하는 본 발명의 상세한 설명 및 도면을 참조하면 보다 명백해 질 것이다.
지금부터 동일한 번호가 동일한 엘리먼트를 나타내는 도면을 참조하여, 본 발명의 다양한 측면이 기술될 것이다. 특히, 도 1 및 그 해당 설명은 본 발명의 실시예가 구형될 수 있는 적합한 컴퓨팅 환경에 대한 간단하고도 일반적인 설명을 제공한다. 본 발명이 개인용 컴퓨터의 운영 체제를 구동하는 프로그램 모듈과 공동으로 실행되는 프로그램 모듈에 대한 일반적 컨텍스트로 기술되지만, 당업자는 본 발명이 다른 유형의 컴퓨터 시스템 및 프로그램 모듈과 공동으로 실행될 수도 있다는 것을 알 것이다.
일반적으로, 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조 및 특정 태스크를 수행하거나 특정 추상 데이터 유형을 실행하는 다른 유형의 구조를 포함한다. 또한, 당업자는 본 발명이, 핸드헬드 디바이스, 멀티프로세서, 마이크로프로세 기반 또는 프로그램 가능 가전 제품, 미니컴포넌트, 메인프레임 컴퓨터 등을 포함하는, 다른 컴퓨터 시스템 구성과도 실시될 수 있다는 것을 이해할 것이다. 또한 본 발명은 통신 네트워크를 통해 링크된 원격 프로세싱 디바이스에 의해 태스크가 수행되는 분산 컴퓨팅 환경(distributed computing environment)에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 디바이스 내에 위치할 수 있다.
지금부터 도 1을 참조하면, 본 발명의 다양한 실시예에 이용되는 컴퓨터(2)에 대한 예시적 컴퓨터 아키텍쳐가 설명될 것이다. 도 1에 도시된 컴퓨터 아키텍쳐는, CPU(a central processing unit)(5)와, RAM(a random access memory)(9) 및 ROM(a read-only memory)(11)를 포함하는 시스템 메모리(7)와, 메모리를 CPU(5)에 결합시키는 시스템 버스(12)를 포함하는 통상의 데스크탑 또는 랩탑 컴퓨터를 나타낸다. 가령, 시동 동안 컴퓨터 내의 엘리먼트들 사이에 정보를 전송하도록 돕는 기본적 루틴을 포함하는 기본적 입력/출력 시스템은 ROM(11) 내에 저장되어 있다. 컴퓨터(2)는 운영 체제(16), 어플리케이션 프로그램 및 다른 프로그램 모듈을 저장하기 위한 대용량 저장 디바이스(14)를 더 포함하는데, 이에 대해서는 이후 보다 상세히 설명될 것이다.
대용량 저장 디바이스(14)는 버스(12)에 접속된 대용량 저장 제어기(미도시)를 통해 CPU(5)에 접속된다. 대용량 저장 디바이스(14) 및 그 관련 컴퓨터 판독가능 매체는 컴퓨터(2)에 비휘발성 저장을 제공한다. 본 명세서에 포함된 컴퓨터 판독가능 매체의 설명이 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 매체를 언급하지만, 당업자는 컴퓨터 판독가능 매체가 컴퓨터(2)에 의해 액세스될 수 있는 매체라면 어느 것도 이용가능하다는 것을 알 것이다.
예에 의하면, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 인스트럭션, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 소정의 방법 또는 기술로 구현될 수 있는 휘발성 및 비휘발성, 분리형 빛 비분리형 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 다른 고체 메모리 기술(solid state memory technology), CD-ROM, DVD(Digital Versatile Disks) 또는 다른 광 저장, 마그네틱 카세트, 마그네틱 테이프, 마그네틱 디스크 저장 또는 다른 마그네틱 저장 디바이스, 또는 원하는 정보를 저장하기 위해 사용될 수 있으며 컴퓨터(2)에 의해 액세스될 수 있는 소정의 다른 매체를 포함하며, 이에 한정되는 것은 아니다.
본 발명의 다양한 실시예에 따르면, 컴퓨터(2)는 인터넷과 같은 네트워크(18)를 통해 원격 컴퓨터에 대한 로컬 접속을 이용하여 네트워크 환경 내에서 동작할 수 있다. 컴퓨터(2)는 버스(12)에 접속된 네트워크 인터페이스 유닛(20)을 통해 네트워크(18)에 접속될 수 있다. 또한, 네트워크 인터페이스 유닛(20)은 다른 유형의 네트워크 및 원격 컴퓨터 시스템에 접속되어 이용될 수 있다는 것이 이해되어야 한다. 또한, 컴퓨터(2)는 키보드, 마우스 또는 전자 스틸러스(도 1에 도시되지 않음)를 포함하는 다수의 다른 디바이스로부터 입력을 수신 및 처리하고 입력/출력 제어기(22)를 포함할 수 있다. 유사하게, 입력/출력 제어기(22)는 디스플레이 스크린, 프린터 또는 다른 유형의 출력 디바이스에 출력을 제공할 수 있다.
앞서 간단히 설명한 바와 같이, 다수의 프로그램 모듈 및 데이터 파일은 워싱톤 레드몬드의 MICROSOFT CORPORATION으로부터의 WINDOW XP 운영 체제 시스템과 같이, 네트워크된 개인용 컴퓨터의 동작을 제어하는데 적합한 운영 체제(16)를 포함하는 컴퓨터의 대용량 저장 디바이스(14) 및 RAM(9) 내에 포함될 수 있다. 또한, 대용량 저장 디바이스(14) 및 RAM(9)은 하나 이상의 프로그램 모듈을 포함할 수 있다. 특히, 대용량 저장 디바이스(14) 및 RAM(14)은 데스크탑 공개 어플리케이션(10)을 저장할 수 있다. 당업자에 공지된 바와 같이, 데스크탑 공개 어플리케이션(10)은 전자 문서를 생성하고 편집하는 기능을 제공하도록 동작한다. 본 발명의 일 실시예에서, 데스크탑 공개 어플리케이션(10)은 MICROSOFT CORPORATION으로부터의 PUBLISHER 워드 프로세싱 어플리케이션 프로그램을 포함한다. 그러나, 본 발명의 다양한 측면을 구현하기 위해 다른 제조자로부터의 데스크탑 공개 어플리케 이션이 이용될 수 있다는 것이 이해되어야 한다. 또한, 본 발명의 다양한 측면은 데스크탑 공개 어플리케이션에 한정되지 않으며, 스프레드시트 프로그램 및 데이터베이스 프로그램뿐만 아니라 MICROSOFT CORPORATION로부터의 WORD 프로그램과 같은 텍스트 프로세싱이 가능한 다른 프로그램을 이용할 수 있다는 것이 이해되어야 한다.
전자 문서의 생성과 함께, 데스크탑 공개 어플리케이션(10)은 사용자가 데이터 소스(26)(Data Source 1), 데이터 소스(28)(Data Source 2) 및 데이터 소스(30)(Data Source N)를 전자 문서의 다양한 위치에 통합하도록 허용하는 기능을 제공한다. 각 데이터 소스(26, 28, 30)가 하나 이상의 필드로 나누어진 데이터의 리스트 또는 테이블일 수 있다는 것이 이해되어야 한다. 예를 들어, 데이터 소스는 이름, 회사 및 주소를 포함하는 컨택트 정보를 데이터 필드 "Last Name", "First Name", "Title", "Company Name" 및 "Address" 내에 저장할 수 있다. 다중 데이터 소스를 통합할 때, 데스크탑 공개 어플리케이션(10)은 통합된 데이터를 저장하기 위한 수신자 리스트 파일(24)을 생성한다는 것이 이해되어야 한다. 수신자 리스트 파일(24)을 생성하기 위해 데이터 소스(26)(Data Source 1), 데이터 소스(28)(Data Source 2) 및 데이터 소스(30)(Data Source N)를 통합하는 데스크탑 공개 어플리케이션(10)에 의해 이용되는 예시적 방법은, 이하 도 2를 참조하여 보다 상세히 설명될 것이다.
지금부터 도 2를 참조하면, 다중 데이터 소스로부터 데이터를 통합하는 데스크탑 공개 어플리케이션(10)에 의해 수행되는 프로세스를 나타내는 예시적 루틴 (200)이 설명될 것이다. 본 명세서에 기술된 본 발명의 실시예가 데스크탑 공개 어플리케이션(10)의 컨텍스트로 제공되지만, 본 발명은 워드 프로세싱, 스프레드시트 및 데이터베이스 프로그램과 같은 텍스트 프로세싱을 지원하는 다른 유형의 어플리케이션 프로그램 내에서 이용될 수 있다는 것이 이해되어야 한다.
본 명세서에 제공된 루틴에 대한 논의를 읽을 경우, 본 발명의 다양한 실시예의 로지컬 동작이 (1) 컴퓨팅 시스템을 구동하는 컴퓨터 구현 동작 또는 프로그램 모듈의 시퀀스 및/또는 (2) 컴퓨팅 시스템 내의 상호접속된 머신 로직 회로 또는 회로 모듈로서 실행된다는 것이 이해되어야 한다. 실행은 본 발명을 실행하는 컴퓨팅 시스템의 성능 요구에 의존한 선택의 문제이다. 따라서, 도 2에 도시된 로지컬 동작, 및 본 명세서에 기술된 본 발명의 실시예를 구현하는 것은 동작, 구조 디바이스, 행위 또는 모듈과 같이 다양하게 언급될 수 있다. 이러한 동작, 구조적 디바이스, 행위 및 모듈은, 본 명세서 내에 적시된 청구항 내에 인용된 것과 같은 본 발명의 사상 및 범주로부터 벗어남이 없이, 소프트웨어, 펌웨어, 특수 목적의 디지털 로직 및 그 조합으로 구현될 수 있다는 것이 당업자에 의해 인식될 것이다.
이제부터 도 2를 참조하면, 루틴(200)은 동작(210)에서 시작하는데, 여기서 데스크탑 공개 어플리케이션(10)은 데이터 소스(26)(Data Source 1), 데이터 소스(28)(Data Source 2) 및 데이터 소스(30)(Data Source N)를 수신하고, 데이터 소스의 각각에 필드를 "맵핑"한다. 특히, 데이터 소스의 각각에 필드를 맵핑할 때, 데스크탑 공개 어플리케이션(10)은 제1 데이터 소스를 초기 데이터 소스로서 검색하고, 각각의 후속 검색된 데이터 소스로부터의 필드를 초기 데이터 소스의 필드와 연관시키며, 초기 데이터 소스에 나타나지 않은 후속 데이터 소스 내에 필드를 부가할 수 있다. 예를 들어, 데이터 소스(26)(Data Source 1)는 데이터 필드 "First Name"과 "Last Name"을 포함할 수 있지만, 데이터 소스(28)(Data Source 2)는 필드 "First Name", "Last Name" 및 "Title"을 포함할 수 있다. 데이터 필드를 맵핑할 때, 워드 프로세싱 어플리케이션 프로그램은 데이터 소스(26)를 초기 데이터 소스로서 지정할 수 있고, 데이터 소스에 의해 나누어진 공통 필드(즉, "First Name" 및 "Last Name")를 맵핑할 뿐만 아니라 데이터 소스(28)로부터 단일 필드 "Title"을 부가할 수 있다. 본 발명의 다양한 실시예에서, 데스크탑 공개 어플리케이션(10)의 사용자는 후속 데이터 소스(가령, 데이터 소스(28))로부터의 필드를 초기 데이터 소스에 맵핑 또는 부가되도록 지정할 수 있다는 것이 이해되어야 한다. 또한, 맵핑된 필드는 맵핑 해제될 수 있다는 것이 이해되어야 한다.
루틴(200)은 동작(210)으로부터 동작(220)까지 계속되는데, 여기서, 데스크탑 공개 어플리케이션(10)은 데이터 소스(26, 28, 30)로부터 맵핑된 필드로부터 수신자 리스트(즉, 마스터 데이터 소스) 스키마를 만든다. 본 명세서에서 정의된 바와 같이, "스키마"는 입력 데이터 소스의 각각으로부터 맵핑된 필드명을 정의한다. 예를 들어, 데이터 소스(26) 및 데이터 소스(28)에 대한 수신자 리스트 스키마는 (데이터 소스(26, 28)로부터) 필드 "First Name"과 "Last Name" 뿐만 아니라 (데이터 소스(28)로부터만) 필드 "Title"을 포함할 수 있다.
루틴(200)은 동작(220)으로부터 동작(230)까지 계속되는데, 여기서 데스크탑 공개 어플리케이션(10)은 수신자 리스트 스키마로부터 임시 수신자 리스트를 생성 한다. 특히, 데스크탑 공개 어플리케이션(10)은 입력 데이터 소스의 각각으로부터 필드와 관련된 데이터를 수신하기 위해 수신자 리스트 스키마로부터 필드의 테이블을 생성할 수 있다. 루틴(200)은 동작(230)으로부터 동작(240)까지 계속되는데, 여기서 데스크탑 공개 어플리케이션(10)은 수신자 리스트를 생성하기 위해 입력 데이터 소스의 각각으로부터 하나 이상의 데이터의 행을 검색한다. 특히, 데스크탑 공개 어플리케이션(10)은 각각의 데이터 소스로부터 데이터를 검색하고, 수신자 리스트 스키마에 따른 임시 수신자 리스트를 채운다.
루틴(200)은 동작(240)으로부터 동작(250)까지 계속되는데, 데스크탑 공개 어플리케이션(10)은 수신자 리스트 내의 각 행에 대해 해시를 생성한다. 당업자에게 공지된 바와 같이, 해시는 데이터 방법에 액세스하는데 사용될 수 있는 텍스트의 스트링으로부터 생성된 수이다. 해시(또는 해시값)는 몇몇 다른 텍스트가 동일한 해시값을 거의 생성할 것 같지 않은 그러한 방식의 공식에 의해 생성된다. 해시값을 생성하기 위한 다양한 방법은 당업자에게 잘 공지되어 있고, 그러므로 여기서는 더 이상 상세히 언급하지 않는다. 해시는 입력 데이터가 수신자 리스트 내에서 통합된 데이터를 구분하기 위해 사용될 수 있다는 점에서 입력 데이터 소스 내의 데이터에 대한 링크로서 역할을 한다는 것이 이해되어야 한다.
루틴(200)은 동작(250)으로부터 동작(260)까지 계속되는데, 여기서 데스크탑 공개 어플리케이션(10)은 파일(가령, 수신자 리스트 파일(24))에 대한 수신자 리스트를 저장한다. 수신자 리스트를 저장할 때, 수신자 리스트가 재생성되도록 허용하는 파일이 생성된다는 것이 이해되어야 할 것이다. 또한, 수신자 리스트 파일 (24)은 초기 데이터 소스에 대한 참조, 각각의 후속 또는 부가된 데이터 소스에 대한 참조 및 수신자 리스트 내의 필드 데이터의 행의 각각에 대해 계산된 해시값을 포함할 수 있다는 것이 이해되어야 한다. 루틴(200)은 동작(260)으로부터 동작(270)까지 계속되는데, 여기서 데스크탑 출판 동작(10)은 사용자로부터의 입력에 응답하여 수신자 리스트를 수정한다. 특히, 사용자는, 데이터를 변경하거나 제거함으로써, 수신자 리스트 내의 데이터를 업데이트할 수 있다. 또한, 수신자 리스트의 수정은 공급 데이터 소스 내의 데이터를 수정한다는 것이 이해되어야 한다. 예를 들어, 데이터 소스(26)로부터 검색된 수신자 리스트 내의 Last Name 데이터를 수정하는 사용자는 데이터 소스(26) 내의 동일한 Last Name 데이터의 수정을 초래할 것이다. 수신자 리스트 내의 데이터를 수정할 때, 데스크탑 공개 어플리케이션(10)이 영향은 받은 데이터 소스 내의 대응 데이터를 위치시키고 업데이트하기 위해 수신자 리스트 내의 각각의 수정된 행에 대한 계산된 해시값을 참조할 수 있다는 것이 이해되어야 한다.
루틴(200)은 데스크탑 공개 어플리케이션(10)은 수신자 리스트 내에 복제 데이터를 결정하는 동작(270)으로부터 동작(280)까지 계속된다. 특히, 데이터 소스(26, 28, 30)가 수신자 리스트 내에 복제 엔트리로서 나타날 수 있는 동일한 데이터를 포함할 수 있다는 것이 이해되어야 할 것이다. 예를 들어, 사용자는 두 개의 다른 데이터 소스 내에 리스트된 동일한 사람에 대한 이름과 어드레스 정보를 가질 수 있다.
일 실시예에서, 데스크탑 공개 어플리케이션(10)은 수신자 리스트로부터 해 시값의 해시 테이블을 생성하고 두 개의 해시값이 가리키는 데이터 엔트리를 비교함으로써 복제 데이터 엔트리를 위치시키도록 구성될 수 있다는 것이 이해되어야 할 것이다. 본 발명의 다양한 예시적 실시예에서, 복제는 모든 행을 모든 다른 행과 비교함으로써 발견될 수 있다. 각 행에 대해 계산된 해시값은 메모리 내에 저장된다. 하나의 해시값은 모든 행에서 모든 열에 대해 저장된다는 것이 이해되어야 한다. 그런 다음, 해시값이 비교된다. 두 개의 데이터 엔트리가 매칭될 경우, 그 해시값도 매칭된다. 두 개의 행이 소정의 복제 룰(가령, 두 개의 행 내의 데이터의 75%가 매칭되어야 함)을 만족시킬 때, 그들은 마스터 데이터 소스로부터 로딩되고, 실제 데이터 엔트리는 사실상 서로의 복제인지를 결정하기 위해, 사용자에 의해 비교된다. 그런 다음, 루틴(200)이 종료된다.
이제 도 3을 참조하면, 사용자가 데이터 소스를 수신자 리스트 스키마에 맵핑하도록 허용하는 예시적 사용자 인터페이스가 설명될 것이다. 도 3은 데이터 소스로부터의 필드를 맵핑하기 위한 다수의 사용자 인터페이스 컴포넌트를 포함하는 사용자 인터페이스 윈도우(300)를 나타낸다. 특히, 윈도우(40)는 윈도우로부터 드래깅하고 필드(42) 또는 필드(44) 내에 드롭핑함으로써 수신자 리스트 스키마에 맵핑될 수 있는 데이터 소스로부터의 필드를 디스플레이한다. 윈도우(44) 내에 부가된 필드는 수신자 리스트 스키마 내에 새로운 열로서 부가된다. 맵핑은 필드를 윈도우(42 또는 44)로부터 윈도우(40)로 드래깅함으로써 원상복귀될 수 있다. 데스크탑 공개 어플리케이션(10)에 의해 자동적으로 결정되는 데이터 소스로부터 필드의 디폴트 맵핑을 선택하기 위한 디폴트 맵 버튼(46)이 제공된다.
지금부터 도 4를 참조하면, 맵핑된 필드 및 관련 데이터의 행을 따라 수신자 리스트를 디스플레이하는 예시적 사용자 인터페이스가 설명될 것이다. 도 4는 맵핑된 필드 및 관련 데이터의 행을 따라 수령자 리스트를 디스플레이하는 사용자 인터페이스 윈도우(400)를 나타낸다. 윈도우(52)는 수신자 리스트를 생성하기 위해 사용된 데이터 소스를 식별한다. 파일 데이터 베이스로부터의, 또는 컨택트 리스르로부터의 수령자 리스트에 데이터 소스를 부가하는 링크(54, 56)가 제공된다. 새로운 리스트를 타이핑함으로써 데이터 소스를 생성하기 위한 링크(58)가 제공된다.
지금부터 도 5를 참조하여, 사용자가 데이터 소스를 편집하는 것을 허용하는 예시적 사용자 인터페이스가 설명될 것이다. 도 5는 파일링된 데이터의 행을 따라 데이터 소스 테이블(60)을 디스플레이하는 사용자 인터페이스 윈도우(500)를 나타낸다. 신규 엔트리를 데이터 소스 테이블(60)에 부가하기 위한 부가 신규 엔트리 버튼(62)이 제공되며, 데이터 소스 테이블(60) 내에 디스플레이된 엔트리를 삭제하기 위한 삭제 엔트리 버튼(64)이 제공된다. 사용자 인터페이스 윈도우(500)는, 변화가 원래 데이터 소스에 다시 전해지도록, 다른 위치에 저장된 원래 데이터 소스에 링크된 수신자 리스트로부터 맵핑된 데이터 또는 복제된 데이터를 포함할 수 있다는 것이 이해될 것이다.
지금부터 도 6을 참조하면, 도 2에 대해 전술한 바와 같은 데스크탑 공개 어플리케이션(10)에 의해 사용자가 수신자 리스트 내에서 발견된 복제를 제거하도록 허용하는 예시적 사용자 인터페이스가 설명될 것이다. 도 6은 복제 데이터 엔트리 를 리스팅하는 데이터 소스 테이블(70)을 디스플레이하는 사용자 인터페이스(600)를 나타낸다. 사용자가 수신자 리스트로부터 제거될 엔트리를 선택하도록 허용하는 체크 박스(72)의 열이 제공된다.
전술한 바에 근거하여, 본 발명의 다양한 실시예는 방법, 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의 데이터를 통합하는 시스템 및 컴퓨터 판독가능 매체를 포함한다는 것이 이해되어야 한다. 상기 명세서, 예 및 데이터는 본 발명의 구성에 대한 제조 및 사용의 완전한 설명을 제공한다. 본 발명의 많은 실시예는 본 발명의 사상 및 범주로부터 벗어남이 없이 이루어질 수 있기 때문에, 본 발명은 이하 첨부된 청구항에 속한다.
본 발명에 의하면, 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의 데이터를 통합할 수 있다.

Claims (19)

  1. 전자 문서에 이용하기 위해 복수의 컨택트 데이터 소스(contact data sources)로부터의 컨택트 데이터를 병합하는(merging) 방법으로서,
    적어도 2개의 별개의(separate) 데이터 소스들로부터의 맵핑된 컨택트 필드 명들(mapped contact field names)의 스키마(schema)를 형성하는 단계를 포함하고,
    상기 스키마를 형성하는 단계는,
    초기의 컨택트 데이터 소스로부터 사전에 저장된 컨택트 필드명들을 수신하는 단계;
    상기 초기의 컨택트 데이터 소스로부터의 상기 컨택트 필드명들의 리스트를 이용해 제1 윈도우 사용자 인터페이스(window user interface)를 채우는(populaing) 단계;
    적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터 사전에 저장된 컨택트 필드명들을 수신하는 단계;
    상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 컨택트 필드명들의 리스트를 이용해 제2 윈도우 사용자 인터페이스를 채우는 단계;
    상기 제1 윈도우 사용자 인터페이스 및 상기 제2 윈도우 사용자 인터페이스를 채운 후에, 상기 제1 윈도우 사용자 인터페이스에 맵핑된 컨택트 필드명들의 리스트를 생성하기 위해 컨택트 필드명들을 맵핑하는 단계 - 컨택트 필드명들을 맵핑하는 단계는 상기 제2 윈도우 사용자 인터페이스의 상기 컨택트 필드 명들을 상기 제1 윈도우 사용자 인터페이스의 상기 컨택트 필드명들로 맵핑하는 단계를 포함함 - ; 및
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 컨택트 필드명들의 리스트로부터 상기 스키마를 형성하는 단계를 포함하고,
    상기 방법은 또한
    상기 스키마를 형성한 후, 상기 스키마로부터 임시 수신자 리스트(temporary recipient list)를 생성시키는 단계 - 상기 임시 수신자 리스트는 상기 스키마에 따라 생성된 상기 컨택트 필드명들과, 상기 초기 컨택트 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터 밸류들(values)을 수신하기 위한 밸류 필드들(value fields)을 포함함 -;
    상기 임시 수신자 리스트의 생성 후에, 프로세서로 하여금 상기 초기 데이터 소스와 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 밸류들을 이용하여 상기 밸류 필드를 채우는(populating) 단계 - 상기 밸류들은 상기 밸류들의 소스를 지시하는 소스 식별자들(source identifiers)과 연관됨 -;
    채워진(populated) 수신자 리스트의 생성 후에, 편집 사용자 인터페이스(edit user interface)에서 상기 채워진(populated) 수신자 리스트를 표시하는 단계;
    상기 채워진(populated) 수신자 리스트의 상기 밸류들 중의 적어도 하나에 대한 편집을 수신하는 단계;
    상기 편집을 수신한 상기 적어도 하나의 밸류와 연관된 소스 식별자에 기초하여, 상기 초기 컨택트 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스를 포함하는 그룹의 적어도 하나의 멤버에 상기 편집을 동기화하는 단계;
    채워진(populated) 컨택트 수신자 리스트의 각각의 열(row)에 대한 해시 밸류를 생성하는 단계 - 각각의 해시 밸류는 상기 채워진(populated) 컨택트 수신자 리스트의 임의의 열 사이의 복제의 판정을 용이하게 함 -;
    상기 채워진(populated) 컨택트 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치(hash value match)가 존재하는지 판정하는 단계 - 상기 채워진(populated) 컨택트 수신자 리스트의 상기 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 단계는, 상기 매치를 유발하는 사전 결정된 밸류 매치 임계값(value match threshold)을 포함하는 사전 결정된 복제 규칙에 따라 해시 밸류 매치가 존재하는지를 판정하는 단계를 포함함 -;
    해시 밸류 매치가 존재하는 경우, 매칭되는 해시 밸류들을 갖는 상기 채워진(populated) 컨택트 수신자 리스트의 열들을 이용하여 복제 윈도우 사용자 인터페이스를 채우고(populating), 상기 복제 윈도우 사용자 인터페이스를 통해 상기 채워진(populated) 컨택트 수신자 리스트의 복제 열들을 결정하는(resolving) 단계; 및
    상기 결정된 채워진(populated) 컨택트 수신자 리스트를 파일에 저장하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 컨택트 필드명들에 기초하여 스키마를 형성하는 단계는,
    상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 상기 맵핑된 컨택트 필드명들과 상기 초기의 컨택트 데이터 소스로부터의 상기 컨택트 필드명들을 비교하는 단계; 및
    상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 상기 맵핑된 컨택트 필드명들 중의 임의의 필드명이 상기 초기의 컨택트 데이터 소스로부터의 상기 컨택트 필드명들에 대응하지 않는 경우, 상기 맵핑된 컨택트 필드명들을 추가하는 단계
    를 포함하는, 방법.
  3. 제1항에 있어서,
    상기 채워진 컨택트 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 단계는,
    상기 열들 각각과 연관된 해시 밸류들의 해시 테이블을 생성하는 단계와 상기 해시 밸류들이 가리키는 각각의 열의 밸류들을 비교하는 단계
    를 포함하는, 방법.
  4. 제1항에 있어서,
    상기 복제 윈도우(duplication window) 사용자 인터페이스를 통해 복제 열들을 결정하는(resolving) 단계는
    열이 매치를 포함한다는 것을 지시하는 입력을 수신하는 단계; 및
    상기 결정된 채워진 컨택트 수신자 리스트를 생성하기 위해 상기 채워진 컨택트 수신자 리스트로부터 상기 열을 제거하는 단계
    를 포함하는, 방법.
  5. 전자 문서에 이용하기 위해 복수의 데이터 소스로부터의 데이터를 병합하는 시스템으로서,
    프로세서; 및
    컴퓨터 실행가능한 명령어가 저장된 메모리
    를 포함하며,
    상기 컴퓨터 실행가능한 명령어는,
    적어도 2개의 별개의(separate) 데이터 소스들로부터의 맵핑된 컨택트 필드 명들(maped contact field names)의 스키마(schema)를 형성하도록 구성되고,
    상기 스키마를 형성하는 것은,
    초기의 컨택트 데이터 소스로부터 사전에 저장된 컨택트 필드명들을 수신하는 것;
    상기 초기의 컨택트 데이터 소스로부터의 상기 컨택트 필드명들의 리스트를 이용해 제1 윈도우 사용자 인터페이스를 채우는 것;
    적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터 사전에 저장된 컨택트 필드명들을 수신하는 것;
    상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 컨택트 필드명들의 리스트를 이용해 제2 윈도우 사용자 인터페이스를 채우는 것;
    상기 제1 윈도우 사용자 인터페이스 및 상기 제2 윈도우 사용자 인터페이스를 채운 후에 상기 제1 윈도우 사용자 인터페이스에 맵핑된 컨택트 필드명들의 리스트를 생성하기 위해 컨택트 필드명들을 맵핑하는 것 - 컨택트 필드명들을 맵핑하는 것은 상기 제2 윈도우 사용자 인터페이스의 상기 컨택트 필드명들을 상기 제1 윈도우 사용자 인터페이스의 상기 컨택트 필드명들로 맵핑하는 것을 포함함 -; 및
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 컨택트 필드명들의 리스트로부터 상기 스키마를 형성하는 것을 포함하고,
    상기 컴퓨터 실행가능 명령어는 또한
    상기 스키마를 형성한 후, 상기 스키마로부터 임시 수신자 리스트를 생성시키고 - 상기 임시 수신자 리스트는 상기 스키마에 따라 생성된 상기 컨택트 필드명들과 상기 초기 컨택트 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터 밸류들을 수신하기 위한 밸류 필드들을 포함함 -;
    상기 임시 수신자 리스트의 생성 후에, 프로세서로 하여금, 상기 초기 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 밸류들을 이용하여 상기 밸류 필드들을 채우게 하고 - 상기 밸류들은 상기 밸류들의 소스를 지시하는 소스 식별자들과 연관됨 -;
    채워진 수신자 리스트의 생성 후에, 편집 사용자 인터페이스에서 상기 채워진 수신 리스트를 표시하고;
    상기 채워진 수신자 리스트의 상기 밸류들 중의 적어도 하나에 대한 편집을 수신하고;
    상기 편집을 수신한 상기 적어도 하나의 밸류와 연관된 소스 식별자에 기초하여, 상기 초기 컨택트 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스를 포함하는 그룹의 적어도 하나의 멤버에 상기 편집을 동기화하고;
    상기 채워진 컨택트 수신자 리스트의 각각의 열에 대한 해시 밸류를 생성하고 - 각각의 해시 밸류는 채워진 컨택트 수신자 리스트의 임의의 열 사이의 복제의 판정을 용이하게 함 -;
    상기 채워진 컨택트 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하고 - 상기 채워진 컨택트 수신자 리스트의 상기 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 것은, 상기 매치를 유발하는 사전 결정된 밸류 매치 임계값을 포함하는 사전 결정된 복제 규칙에 따라 해시 밸류 매치가 존재하는지를 판정하는 것을 포함함 -; 및
    해시 밸류 매치가 존재하는 경우, 매칭되는 해시 밸류들을 갖는 상기 채워진 컨택트 수신자 리스트의 열들을 이용하여 복제 윈도우 사용자 인터페이스를 채우고, 상기 복제 윈도우 사용자 인터페이스를 통해 상기 채워진 컨택트 수신자 리스트의 복제 열들을 결정하도록 구성되는, 시스템.
  6. 제5항에 있어서,
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 컨택트 필드명들에 기초하여 스키마를 형성하는 것은,
    상기 적어도 하나의 후속적으로 추가된 데이터 소스로부터의 상기 맵핑된 필드명들과 상기 초기의 데이터 소스로부터의 상기 필드명들을 비교하는 것; 및
    상기 적어도 하나의 후속적으로 추가된 데이터 소스로부터의 상기 맵핑된 필드명들 중의 임의의 필드명이 상기 초기의 데이터 소스로부터의 상기 필드명들에 대응하지 않는 경우, 상기 맵핑된 필드명들을 추가하는 것
    을 포함하는, 시스템.
  7. 제5항에 있어서, 상기 컴퓨터 실행가능 명령어는
    상기 수신자 리스트를 파일에 저장하도록 구성되고, 상기 수신자 리스트를 파일에 저장하는 것은 상기 수신자 리스트가 재생성될 수 있도록 허용하는 파일을 저장하는 것을 포함하는, 시스템.
  8. 제5항에 있어서,
    상기 채워진 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 것은,
    상기 열들 각각과 연관된 해시 밸류들의 해시 테이블을 생성하는 것, 및 상기 해시 밸류들이 가리키는 열들의 밸류들을 비교하는 것
    을 포함하는, 시스템.
  9. 제5항에 있어서,
    상기 복제 윈도우 사용자 인터페이스를 통해 복제 열들을 결정하는 것은
    열이 매치를 포함한다는 것을 지시하는 입력을 수신하는 것; 및
    상기 결정된 채워진 수신자 리스트를 생성하기 위해 상기 채워진 수신자 리스트로부터 상기 열을 제거하는 것
    을 포함하는, 시스템.
  10. 컴퓨터 실행가능 명령어가 저장된 컴퓨터 판독가능 저장 매체로서, 상기 컴퓨터 실행가능 명령어는 컴퓨터에 의해서 실행되는 경우 상기 컴퓨터로 하여금 전자 문서에 이용하기 위해 복수의 데이터 소스로부터의 데이터를 병합하는 방법을 수행하게 하며,
    상기 방법은,
    적어도 2개의 별개의 데이터 소스들로부터의 맵핑된 컨택트 필드명들의 스키마를 형성하는 단계를 포함하고,
    상기 스키마를 형성하는 단계는,
    초기의 데이터 소스로부터 사전에 저장된 필드명들을 수신하는 단계;
    상기 초기의 데이터 소스로부터의 상기 필드명들의 리스트를 이용해 제1 윈도우 사용자 인터페이스를 채우는 단계;
    적어도 하나의 후속적으로 추가된 데이터 소스로부터 사전에 저장된 필드명들을 수신하는 단계;
    상기 적어도 하나의 후속적으로 추가된 데이터 소스로부터의 필드명들의 리스트를 이용해 제2 윈도우 사용자 인터페이스를 채우는 단계;
    상기 제1 윈도우 사용자 인터페이스 및 상기 제2 윈도우 사용자 인터페이스를 채운 후에, 상기 제1 윈도우 사용자 인터페이스에 맵핑된 필드명들의 리스트를 생성하기 위해 필드명들을 맵핑하는 단계 - 필드명들을 맵핑하는 단계는 상기 제2 윈도우 사용자 인터페이스의 상기 필드명들을 상기 제1 윈도우 사용자 인터페이스의 상기 필드명들에 맵핑하는 단계를 포함함 -; 및
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 필드명들의 리스트로부터 상기 스키마를 형성하는 단계를 포함하고,
    상기 방법은 또한,
    상기 스키마를 형성한 후, 상기 스키마로부터 임시 수신자 리스트를 생성하는 단계 - 상기 임시 수신자 리스트는 상기 스키마에 따라 생성된 상기 컨택트 필드명들과 상기 초기 컨택트 데이터 소스 및 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터 밸류들을 수신하기 위한 밸류 필드들을 포함함 -;
    상기 임시 수신자 리스트의 생성 후에, 프로세서로 하여금 상기 초기 데이터 소스와 상기 적어도 하나의 후속적으로 추가된 컨택트 데이터 소스로부터의 밸류들을 이용하여 상기 밸류 필드를 채우게 하는 단계 - 상기 밸류들은 상기 밸류들의 소스를 지시하는 소스 식별자들과 연관됨 -;
    채워진 수신자 리스트의 생성 후에, 편집 사용자 인터페이스에서 상기 채워진 수신자 리스트를 표시하는 단계;
    상기 채워진 수신자 리스트의 각각의 열에 대한 해시 밸류를 생성하는 단계 - 각각의 해시 밸류는 채워진 컨택트 수신자 리스트의 임의의 열 사이의 복제의 판정을 용이하게 함 -;
    상기 채워진 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 단계 - 상기 채워진 수신자 리스트의 상기 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 단계는, 상기 매치를 유발하는 사전 결정된 밸류 매치 임계값을 포함하는 사전 결정된 복제 규칙에 따라 해시 밸류 매치가 존재하는지를 판정하는 단계를 포함함 -;
    해시 밸류 매치가 존재하는 경우, 매칭되는 해시 밸류들을 갖는 상기 채워진 컨택트 수신자 리스트의 열들을 이용하여 복제 윈도우 사용자 인터페이스를 채우고, 상기 복제 윈도우 사용자 인터페이스를 통해 상기 채워진 컨택트 수신자 리스트의 복제 열들을 결정하는 단계; 및
    상기 결정된 채워진 수신자 리스트를 파일에 저장하는 단계
    를 포함하는, 컴퓨터 판독가능 저장매체.
  11. 제10항에 있어서,
    상기 제1 윈도우 사용자 인터페이스에서 상기 맵핑된 필드명들에 기초하여 스키마를 형성하는 단계는,
    상기 적어도 하나의 후속적으로 추가된 데이터 소스로부터의 상기 맵핑된 필드명들과 상기 초기의 데이터 소스로부터의 상기 필드명들을 비교하는 단계; 및
    상기 적어도 하나의 후속적으로 추가된 데이터 소스로부터의 상기 맵핑된 필드명들 중의 임의의 필드명이 상기 초기의 데이터 소스로부터의 상기 필드명들에 대응하지 않는 경우, 상기 맵핑된 필드명들을 추가하는 단계
    를 포함하는, 컴퓨터 판독가능 저장매체.
  12. 제10항에 있어서,
    상기 채워진 수신자 리스트의 임의의 열들 사이에 해시 밸류 매치가 존재하는지 판정하는 단계는
    상기 열들 각각과 연관된 해시 밸류들의 해시 테이블을 생성하는 단계와 상기 해시 밸류들이 가리키는 열들의 밸류들을 비교하는 단계
    를 포함하는, 컴퓨터 판독가능 저장매체.
  13. 제10항에 있어서,
    상기 복제 윈도우 사용자 인터페이스를 통해 복제 열들을 결정하는 단계는
    열이 매치를 포함한다는 것을 지시하는 입력을 수신하는 단계; 및
    상기 결정된 채워진 수신자 리스트를 생성하기 위해 상기 채워진 수신자 리스트로부터 상기 열을 제거하는 단계
    를 포함하는, 컴퓨터 판독가능 저장매체.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
KR1020050073586A 2004-09-30 2005-08-11 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체 KR101130443B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/955,433 2004-09-30
US10/955,433 US7739309B2 (en) 2004-09-30 2004-09-30 Method, system, and computer-readable medium for merging data from multiple data sources for use in an electronic document

Publications (2)

Publication Number Publication Date
KR20060050395A KR20060050395A (ko) 2006-05-19
KR101130443B1 true KR101130443B1 (ko) 2012-03-28

Family

ID=35563470

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050073586A KR101130443B1 (ko) 2004-09-30 2005-08-11 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체

Country Status (5)

Country Link
US (1) US7739309B2 (ko)
EP (1) EP1643377A3 (ko)
JP (1) JP4906292B2 (ko)
KR (1) KR101130443B1 (ko)
CN (1) CN100552677C (ko)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060156135A1 (en) * 2004-12-16 2006-07-13 Marek Sikora Tabbed form with error indicators
US7788259B2 (en) * 2006-07-21 2010-08-31 Microsoft Corporation Locating, viewing and interacting with information sources
KR100803006B1 (ko) * 2006-09-20 2008-02-14 삼성전자주식회사 휴대단말기의 동적 입력방법 및 장치
EP1912404B1 (en) * 2006-10-11 2011-06-01 Murata Machinery, Ltd. File transfer server
KR100834293B1 (ko) * 2006-11-06 2008-05-30 엔에이치엔(주) 문서 처리 시스템 및 방법
US7675527B2 (en) * 2007-01-26 2010-03-09 Microsoft Corp. Multisource composable projection of text
US20080243823A1 (en) * 2007-03-28 2008-10-02 Elumindata, Inc. System and method for automatically generating information within an eletronic document
US8694518B2 (en) * 2007-06-14 2014-04-08 Colorquick, L.L.C. Method and apparatus for database mapping
US8126928B2 (en) * 2007-06-27 2012-02-28 Sap Ag Systems and methods for merging data into documents
US8056073B2 (en) * 2008-01-08 2011-11-08 International Business Machines Corporation Method, computer program product, and system for merging multiple same class instance states
US9189478B2 (en) * 2008-04-03 2015-11-17 Elumindata, Inc. System and method for collecting data from an electronic document and storing the data in a dynamically organized data structure
US8661342B2 (en) * 2008-06-17 2014-02-25 Microsoft Corporation Mail merge integration techniques
US8037062B2 (en) 2008-07-22 2011-10-11 Elumindata, Inc. System and method for automatically selecting a data source for providing data related to a query
US8041712B2 (en) * 2008-07-22 2011-10-18 Elumindata Inc. System and method for automatically selecting a data source for providing data related to a query
US8176042B2 (en) * 2008-07-22 2012-05-08 Elumindata, Inc. System and method for automatically linking data sources for providing data related to a query
US8341131B2 (en) * 2010-09-16 2012-12-25 Sap Ag Systems and methods for master data management using record and field based rules
US9542428B2 (en) * 2011-10-10 2017-01-10 Salesforce.Com, Inc. Systems and methods for real-time de-duplication
US10546057B2 (en) * 2011-10-28 2020-01-28 Microsoft Technology Licensing, Llc Spreadsheet program-based data classification for source target mapping
US9430114B1 (en) 2011-11-03 2016-08-30 Pervasive Software Data transformation system, graphical mapping tool, and method for creating a schema map
US9201558B1 (en) 2011-11-03 2015-12-01 Pervasive Software Inc. Data transformation system, graphical mapping tool, and method for creating a schema map
US8943059B2 (en) * 2011-12-21 2015-01-27 Sap Se Systems and methods for merging source records in accordance with survivorship rules
US8645332B1 (en) 2012-08-20 2014-02-04 Sap Ag Systems and methods for capturing data refinement actions based on visualized search of information
JP6136694B2 (ja) 2013-07-19 2017-05-31 富士通株式会社 データ管理プログラム、データ管理装置およびデータ管理方法
US10282407B1 (en) * 2013-08-21 2019-05-07 The United States Of America, As Represented By The Secretary Of The Navy Method for filtering data to generate a balance sheet
AU2014363901A1 (en) * 2013-12-10 2016-07-07 De Lage Landen Financial Services Method and system for negotiating, generating, documenting, and fulfilling vendor financing opportunities
US20160321757A1 (en) * 2015-04-29 2016-11-03 Pacific Resources Benefits Advisors, Llc Methods and systems for generating, and responding to, requests for proposals and requests for information for insurance products
CN105069542A (zh) * 2015-06-25 2015-11-18 中铁四局集团有限公司 一种责任成本预算编制方法及系统
CN104978307A (zh) * 2015-06-25 2015-10-14 中铁四局集团有限公司 一种清单处理方法及装置
CN104881762A (zh) * 2015-06-25 2015-09-02 中铁四局集团有限公司 一种工程量清单分解方法及系统
US10467615B1 (en) 2015-09-30 2019-11-05 Square, Inc. Friction-less purchasing technology
CN106919443A (zh) * 2015-12-25 2017-07-04 阿里巴巴集团控股有限公司 执行计算任务的方法、装置及系统
US10515121B1 (en) * 2016-04-12 2019-12-24 Tableau Software, Inc. Systems and methods of using natural language processing for visual analysis of a data set
US10810569B2 (en) 2017-01-30 2020-10-20 Square, Inc. Contacts for misdirected payments and user authentication
US10810574B1 (en) 2017-06-29 2020-10-20 Square, Inc. Electronic audible payment messaging
CN107479910B (zh) * 2017-07-07 2020-11-20 广州视源电子科技股份有限公司 文档修复方法、系统、可读存储介质及计算机设备
CN108989062B (zh) * 2018-07-25 2020-05-01 北京达佳互联信息技术有限公司 更新群成员数据的方法、装置、终端、系统及存储介质
US11079954B2 (en) * 2018-08-21 2021-08-03 Samsung Electronics Co., Ltd. Embedded reference counter and special data pattern auto-detect
CN110457084B (zh) * 2019-07-10 2021-11-30 五八有限公司 一种加载方法及装置
US11314935B2 (en) * 2019-07-25 2022-04-26 Docusign, Inc. System and method for electronic document interaction with external resources
CN112860737B (zh) * 2021-03-11 2022-08-12 中国平安财产保险股份有限公司 数据查询方法、装置、电子设备及可读存储介质
US11604839B2 (en) * 2021-05-17 2023-03-14 Docusign, Inc. Document package merge in document management system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5111395A (en) 1989-11-03 1992-05-05 Smith Rodney A Automated fund collection system including means to eliminate duplicate entries from a mailing list
US20030037051A1 (en) 1999-07-20 2003-02-20 Gruenwald Bjorn J. System and method for organizing data
US20050039119A1 (en) 2003-08-12 2005-02-17 Accenture Global Services Gmbh Presentation generator

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167405A (en) * 1998-04-27 2000-12-26 Bull Hn Information Systems Inc. Method and apparatus for automatically populating a data warehouse system
JP2000187668A (ja) * 1998-12-22 2000-07-04 Hitachi Ltd グループ化方法と重複排除方法
JP4552242B2 (ja) * 1999-10-06 2010-09-29 株式会社日立製作所 仮想表インタフェースと該インタフェースを用いた問合せ処理システム及び方法
US6748402B1 (en) 2001-04-02 2004-06-08 Bellsouth Intellectual Property Corporation System and method for converting and loading interactive pager address books
JP2005078612A (ja) * 2003-09-04 2005-03-24 Hitachi Ltd ファイル共有システム及びファイル共有装置間のファイル移行方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5111395A (en) 1989-11-03 1992-05-05 Smith Rodney A Automated fund collection system including means to eliminate duplicate entries from a mailing list
US20030037051A1 (en) 1999-07-20 2003-02-20 Gruenwald Bjorn J. System and method for organizing data
US20050039119A1 (en) 2003-08-12 2005-02-17 Accenture Global Services Gmbh Presentation generator

Also Published As

Publication number Publication date
EP1643377A3 (en) 2009-01-14
CN100552677C (zh) 2009-10-21
KR20060050395A (ko) 2006-05-19
JP4906292B2 (ja) 2012-03-28
JP2006107466A (ja) 2006-04-20
US20060075323A1 (en) 2006-04-06
EP1643377A2 (en) 2006-04-05
CN1755689A (zh) 2006-04-05
US7739309B2 (en) 2010-06-15

Similar Documents

Publication Publication Date Title
KR101130443B1 (ko) 전자 문서 내에서의 사용을 위해 다중 데이터 소스로부터의데이터를 통합하는 방법, 시스템 및 컴퓨터 판독가능 매체
US7711754B2 (en) System and method for managing data using static lists
US10108914B2 (en) Method and system for morphing object types in enterprise content management systems
JP4477689B2 (ja) 異なる情報システムのデータで協働アプリケーションにおけるドキュメントに注釈付与すること
US8380671B2 (en) System and method for creating a new annotation for a data source
US7590939B2 (en) Storage and utilization of slide presentation slides
US9830345B1 (en) Content-addressable data storage
US8910044B1 (en) Playlist incorporating tags
KR20190131032A (ko) 프라이버시 민감형 사용자 콘텐츠를 위한 구성 가능한 주석
US7801863B2 (en) Method and computer-readable medium for formula-based document retention
CA2917717A1 (en) Computing device and method for converting unstructured data to structured data
US9152656B2 (en) Database data type creation and reuse
US8346869B2 (en) Granular data synchronization for editing multiple data objects
CN109491962B (zh) 一种文件目录树管理方法及相关装置
US20110307243A1 (en) Multilingual runtime rendering of metadata
CN110720097A (zh) 图数据库中元组和边的功能性等价
GB2431741A (en) A method of digitally signing data
JP2005339549A (ja) データをラップするための方法およびシステム
US11698935B2 (en) System and method for copying linked documents
JP5063447B2 (ja) コンテンツ管理装置及び方法及びプログラム
US20040054676A1 (en) Systems and methods for automatically processing text information
JP2014059666A (ja) 業務入力画面カスタマイズシステム
US20210200732A1 (en) Tree-like metadata structure for composite datasets
JP2023533453A (ja) データ抽出のためのマルチステージデータスニッファ
JP2009199103A (ja) ファイル管理プログラム及びファイル管理装置

Legal Events

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