KR101674249B1 - 컨텍스트-기반 아이템 북마킹 - Google Patents

컨텍스트-기반 아이템 북마킹 Download PDF

Info

Publication number
KR101674249B1
KR101674249B1 KR1020137004358A KR20137004358A KR101674249B1 KR 101674249 B1 KR101674249 B1 KR 101674249B1 KR 1020137004358 A KR1020137004358 A KR 1020137004358A KR 20137004358 A KR20137004358 A KR 20137004358A KR 101674249 B1 KR101674249 B1 KR 101674249B1
Authority
KR
South Korea
Prior art keywords
action
context
entity
item
bookmarked
Prior art date
Application number
KR1020137004358A
Other languages
English (en)
Other versions
KR20130044329A (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 KR20130044329A publication Critical patent/KR20130044329A/ko
Application granted granted Critical
Publication of KR101674249B1 publication Critical patent/KR101674249B1/ko

Links

Images

Classifications

    • 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
    • G06F15/163Interprocessor communication
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9562Bookmark management
    • 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
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17325Synchronisation; Hardware support therefor
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17331Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • G06F15/17343Direct connection machines, e.g. completely connected computers, point to point communication networks wherein the interconnection is dynamically configurable, e.g. having loosely coupled nearest neighbor architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컨텍스트-기반 아이템 북마킹 방법(300)에 있어서, 이후에 전달하도록 아이템을 북마킹하라는 인스트럭션, 및 북마킹되는 아이템의 전달을 트리거하도록 구성된 액션 컨텍스트가 수신된다(304, 306). 아울러, 액션 컨텍스트 및 아이템이 북마킹되고(308), 액션 컨텍스트와 관련된 동작이 수행되었는지 여부를 판정하도록 적어도 하나의 개체의 동작이 모니터된다(310). 또한, 액션 컨텍스트와 관련된 동작이 수행되었다고 판정한 것에 응답해서, 적어도 하나의 개체에 북마킹된 아이템이 전달된다(314).

Description

컨텍스트-기반 아이템 북마킹{CONTEXT-BASED ITEM BOOKMARKING}
종래, 관심있는 아이템을 사용자가 이후의 재방문에 대비해서, 월드 와이드 웹(web)과 인터렉팅해서 북마킹할 수 있게 하는 여러가지 북마킹 시스템이 있었다. 이러한 북마킹 시스템은 전형적으로 웹 브라우저나 혹은 온라인 소셜 태깅 북마킹 서비스에 포함되어 있으며, 사용자는 이를 통해서 기본적으로 이후 검색하기 위해서 기억해야 하는 아이템을 태그할 수 있다. 이러한 북마킹 시스템에서는, 이후의 검색을 지원하기 위해서, 사용자가 필터링된 태그 혹은 카테고리를 이용해서, 아이템을 태깅하거나 카테고리화할 수 있게 하고 있다. 종래, 관심있는 아이템을 사용자가 이후의 재방문에 대비해서 북마킹하기 위해서, 소망의 웹 페이지의 URL(Uniform Resource Locator)을 자신에게 이메일로 보내는 등의 다른 방법을 이용하기도 했으며, 이 경우, 이메일은, 이메일 애플리케이션 혹은 다른 파일 탐색 애플리케이션을 이용한 탐색을 통한 이후의 호출에 대비해서, 그 웹 페이지의 디스크립션(키워드)을 포함하고 있다.
그러나, 사용자는, 관심있는 아이템에 할당한된 태그, 카테고리 혹은 키워드를 잊어버리는 경우가 종종 있기 때문에, 상기 설명한 종래의 북마킹 서비스 및 다른 검색 기법을 이용해서 북마킹된 관심있는 아이템을 검색하지 못하는 경우가 있다. 실제로는, 우선 사용자는 자신이 관심있는 아이템을 북마킹해 두었다는 사실조차 잊어버린다. 이 경우에는 상술한 종래의 북마킹 서비스 및 검색 기법을 통해서는 실제로, (북)마킹된 아이템이 사용자가 관심있어 하는 아이템이 되었을 때 그 아이템에 재방문할 수 있게 한다고 하는 사용자의 직접적인 요구는 지원해 줄 수 없는 경우가 있다.
당업자에게는, 첨부된 도면을 참조로 이하의 설명을 읽음으로써 본 발명의 특성이 자명할 것이다.
도 1은 본 발명의 예시적인 실시예에 따른, 컨텍스트-기반 아이템 북마킹 시스템의 개략 블록도,
도 2는 본 발명의 다른 예시적인 실시예에 따른, 컨텍스트-기반 아이템 북마킹 시스템의 개략 블록도,
도 3(a)는 본 발명의 예시적인 실시예에 따른, 컨텍스트-기반 아이템 북마킹 방법의 흐름도,
도 3(b)는 본 발명의 예시적인 실시예에 따른, 공통으로 작성된 액션 컨텍스트를 추적해서 메트릭을 생성하는 방법의 흐름도,
도 3(c)는 본 발명의 예시적인 실시예에 따른, 전달을 트리거하도록 구성된 동작이 수행되었다고 판정한 것에 응답해서, 아이템을 제 2 개체에 전달하는 방법의 흐름도,
도 4는, 도 1 및 도 2에 도시된 구성 요소의 다양한 기능을 수행하고, 도 3(a)~3(c)에 도시된 흐름도에 포함된 단계들 중 적어도 일부를 수행하는데 이용될 수 있는, 본 발명의 예시적인 실시예에 따른 컴퓨터 시스템을 나타내고 있다.
설명을 간략하게 하고, 또한 예시의 목적으로, 본 발명을 주로 그 예시적인 실시예를 참조로 해서 설명한다. 이하의 설명에서는, 본 발명을 완전하게 이해할 수 있도록 구체적인 수치를 들고 있다. 그러나, 본 발명이 이와 같은 구체적인 수치로 한정되는 일없이 실시될 수 있다는 것이 당업자에게 분명할 것이다. 다른 예로, 본 발명을 불필요하게 모호하게 하지 않기 위해서, 공지되어 있는 방법 및 구조는 설명을 생략했다.
이하에서는, 컨텍스트-기반 아이템 북마킹 방법 및 장치에 관한 실시예를 설명한다. 여기서 설명되는 방법 및 장치는, 사용자가 이후에 사전 선택된 액션 컨텍스트와 관련된 동작을 수행할 때 재방문할 수 있도록 아이템을 북마킹해 둘 수 있게 하는 것이다. 이로써, 일례로, 사용자는, 특정한 웹 페이지 x와 같은 아이템을, 예컨대 '내가 동작 y를 수행하면 웹 페이지 x를 나에게 전달할 것'이라는 형태의 주석과 함께 북마킹할 수 있다. 이 예에서는, 사용자가 동작 y를 수행하고 있는지 여부를 판정하기 위해서 사용자의 동작이 추적될 수 있으며, 그 사용자가 동작 y를 수행하고 있다고 판정되면 웹 페이지 x가 전달될 수 있다. 사용자는 또한, 사용자 및 다른 개체 중 적어도 하나가 사전 선택된 액션 컨텍스트와 관련된 동작을 수행하는 것에 응답해서, 북마크 아이템이 다른 개체에 전달되게 하는 주석과 함께, 아이템을 북마킹할 수도 있다. 예컨대, '이 웹 페이지를, 이클립스 소프트웨어 애플리케이션을 인스톨한 다른 팀 멤버에게 표시할 것' 등이 있다. 사용자는 또한, 다른 개체가 동작을 수행할 때 자신에게 전달되도록 아이템을 북마킹할 수도 있다. 예컨대, '내 배우자가 부재중이면 테이크아웃 식당의 메뉴를 나에게 전달할 것' 등이 있다. 나아가, 하나의 동작은, 서로 다른 개체가 수행하는 하위-동작들의 조합이 될 수도 있다. 예컨대, '내 배우자가 집에 있고, 내가 전날밤에 늦게까지 일했으면, 이 식당에 대한 평가서를 나에게 전달하라' 등이 있다.
여기 설명되는 방법 및 장치를 구현함으로써, 북마킹된 아이템이 원래 사용자 혹은 다른 개체가 관심을 갖게 되었다고 판정되었을 때, 그 북마킹된 아이템은 사용자 혹은 또 다른 선택된 개체로 전달될 수 있다. 따라서, 예컨대, 사용자가 키워드를 기억할 필요가 없고, 혹은 필요할 때 그 아이템을 재방문하기 위해서 그 아이템을 이전에 북마킹해 두었다는 사실을 기억할 필요가 없다.
본 명세서에서 사용되는 용어 '아이템'은 웹 페이지, URL, 하이퍼링크, 전자 문서, 비디오 파일, 오디오 파일, 이미지 파일, 멀티미티어 파일, 이메일 메시지, 텍스트 메시지 등 중 어느 것을 포함하는 것으로 정의될 수 있다. 아울러, 용어 '액션 컨텍스트'는, 수행되었을 때, 북마킹된 아이템의 전달을 트리거하는, 하나 이상의 동작과 관련된 문법으로서 정의될 수 있다. 예컨대, 액션 컨텍스트는 명사 즉 목적어와 관련된 특정 액션으로 정의할 수 있으며, 따라서 개체가, 선택된 명사 즉 목적어에 대해 특정 액션을 취하는지 여부를 판정하기 위해서, 그 개체의 동작을 모니터할 수 있다.
도 1을 참조하면, 여기에는 예시적인 실시예에 따른 컨텍스트-기반 아이템 북마킹 시스템(100)의 개략 블록도가 도시되어 있다. 시스템(100)의 범주를 벗어남없이, 시스템(100)은 추가로 구성 요소를 포함할 수 있으며, 여기 설명된 구성 요소 중 일부가 제거 및/또는 수정될 수 있다는 것을 이해할 것이다. 예컨대, 시스템(100)은, 이 시스템(100)과 관련되어 설명되는 다수의 다른 기능을 수행하도록 구성된 다수의 애플리케이션 혹은 소프트웨어를 추가로 포함할 수 있다.
시스템(100)은, 모듈(104~114), 프로세서(120), 입력 장치(130), 데이터 저장부(116), 출력 인터페이스(140) 및 출력 장치(142)를 포함한, 컨텍스트-기반 북마킹 장치(102)로 구성된, 개인용 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, PDA, 휴대 전화 등과 같은 컴퓨팅 장치를 포함한다. 프로세서(120)는 마이크로프로세서, 마이크로-컨트롤러, 응용 주문형 집적 회로(ASIC) 등을 포함할 수 있으며, 이는 다양한 처리 기능을 수행하도록 구성되어 있다. 처리 기능 중 하나로는, 개체-정의 컨텍스트에 기초해서 아이템을 북마킹하도록, 컨텍스트-기반 북마킹 장치(102)의 모듈(104~114)을 호출 혹은 구현하는 것을 들 수 있으며, 이에 대해서는 이하 상세하게 설명한다.
일례에 따라, 북마킹 장치(102)는, 기판에 장착된 회로 혹은 복수의 회로들과 같은 하드웨어 장치를 포함한다. 이 예에서, 모듈(104~114)은 회로 구성 요소 혹은 개개의 회로를 포함한다. 다른 예에서는, 북마킹 장치(102)는, 예컨대, DRAM(dynamic random access memory), EEPROM(electrically erasable programmable read-only memory), MRAM(magnetoresistive random access memory), 멤리스터, 플래시 메모리, 플로피 디스크, CD-ROM(compact disc read only memory), DVD-ROM(digital video disc read only memory), 혹은 다른 광 매체 혹은 자기 매체와 같은 휘발성 혹은 비휘발성 메모리에 저장된 소프트웨어를 포함한다. 이 예에서, 모듈(104~114)은 메모리에 저장된 소프트웨어 모듈을 포함한다. 다른 예에 따라서, 북마킹 장치(102)의 모듈(104~114)은 하드웨어 모듈과 소프트웨어 모듈의 조합을 포함한다.
북마킹 장치(102)는, 인터넷과 같은 외부망을 통해서 웹 페이지에 액세스할 때 이용하는 웹 브라우저, 혹은 사용자가 자신의 시스템(100)에 로컬 저장된 파일이나 예컨대 공유 서버와 같이 외부에 저장된 파일을 브라우징하는데 이용하는 파일 브라우저와 같은, 브라우저 애플리케이션에 대한 플러그-인을 포함할 수 있다. 또 다른 예에서, 북마킹 장치(102)는 예컨대, 이메일 애플리케이션, 채트 메시징 애플리케이션, 텍스트 메시징 애플리케이션 등과 같이, 시스템(100)에서, 인트라넷, 인터넷 등의 네트워크를 통한 통신이 가능하게 하는 임의의 적절한 애플리케이션을 포함한다. 이에 더해서, 혹은 이와 달리, 북마킹 장치(102)는, 메시징 애플리케이션, 브라우저 애플리케이션 혹은 임의의 타입의 애플리케이션과 인터렉트하도록 구성된 독립형 장치 혹은 애플리케이션을 포함할 수 있다.
도 1에 도시된 바와 같이, 북마킹 장치(102)는 사용자 인터페이스 모듈(104), 액션 컨텍스트 모듈(106), 북마킹 모듈(108), 동작 추적 모듈(110), 메트릭 생성 모듈(112) 및 출력 모듈(114)을 포함한다. 북마킹 장치(102)의 범주를 벗어남없이, 북마킹 장치(102)는 모듈을 추가로 포함할 수도 있고, 모듈(104~114) 중 하나 이상이 제거 및/또는 수정될 수 있다는 것을 이해할 것이다. 예컨대, 모듈(104~114) 중 어느 특정한 모듈과 관련되어서 설명되는 기능 중 하나 이상은, 모듈(104~114) 중 하나 이상의 다른 어느 모듈과 결합될 수 있다.
북마킹 장치(102)는 입력 장치(130)를 통해서 사용자로부터의 입력을 받으며, 이는 예컨대, 키보드, 마우스, 터치 감응형 스크린, 디지털 펜 혹은 다른 입력 메커니즘을 포함할 수 있다. 입력 장치(130)는 또한, 북마킹 장치(102)를 포함하는 컴퓨팅 장치와 인터페이스하도록 구성된, 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, PDA, 휴대 전화, 뮤직 플레이어, 비디오 플레이어 등과 같은 별도의 컴퓨팅 장치를 포함할 수 있다. 경우에 따라서는, 사용자는 입력 장치(130)를 이용해서 북마킹 장치(102)를 가동시킬 수 있다. 사용자는 또한 입력 장치(130)를 이용해서, 이후에 전달하도록 아이템을 북마킹하라는 인스트럭션을 입력할 수 있고, 또한 북마킹된 아이템의 전달을 트리거하도록 구성된 액션 컨텍스트를 입력할 수도 있다.
일 실시예에 따라서, 사용자 인터페이스 모듈(104)은 입력 장치(130)에 표시될 수 있는 사용자 인터페이스를 제공하도록 구성된다. 사용자 인터페이스는 사용자가 아이템을 북마킹하라는 인스트럭션을 입력할 때 선택할 수 있는 다양한 옵션, 및 북마킹된 아이템의 전달을 트리거하도록 구성된 하나 이상의 액션 컨텍스트를 포함할 수 있다. 일례에 따라, 사용자 인터페이스는 북마킹 장치(102)가 인식하도록 프로그래밍된, 이용 가능 컨텍스트의 리스트를 표시할 수 있다. 이용 가능 컨텍스트는 예컨대, '로 여행', '를 구입', '를 기념', '를 조사', '를 탐색', '에 위치', '를 관람', '로 여행을 계획', '를 준비', '에 임박한 듯', '를 시작', '를 청취' 등이 될 수 있다. 사용자 인터페이스는 또한 사용자가 그 컨텍스트와 관련된 명사를 입력할 수 있는 필드를 포함할 수 있으며, 여기서 명사는 북마킹된 아이템이 전달되게 하도록 구성되어 있다. 따라서, 특정 예로서, 사용자는 자신이 '신차를 구입'할 때, 자신에게 전달될 특정 아이템을 북마킹하도록, 북마킹 장치(102)에 지시할 수 있다. 다른 특정 예로서, 사용자는 자신이 '새로운 집을 조사'할 때 다른 개체에게 전달될 특정 아이템을 북마크하도록 북마킹 장치(102)에 지시할 수 있다.
이용 가능 컨텍스트는 데이터 저장부(116)에 저장될 수 있으며, 이는 DRAM, EEPROM, MRAM, PCRAM(phase change RAM), 멤리스터, 플래시 메모리 등의 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다. 이에 더해서, 혹은 이와 달리, 데이터 저장부(116)는 CD-ROM, DVD-ROM, 혹은 다른 광 매체 혹은 자기 매체와 같은 착탈식 매체로부터 판독하거나 여기에 기록하도록 구성된 장치를 포함한다. 어떤 점에서, 북마킹 장치(102)는 이하 더 상세하게 설명하는 바와 같이 추가 데이터를 저장하고 액세스할 수 있다.
사용자 인터페이스 모듈(104)은 데이터 저장부(116)에 액세스해서, 선택을 위해서 사용자에게 제공될 컨텍스트를 검색한다. 나아가, 액션 컨텍스트 모듈(106)은, 데이터 저장부(116)와 이용 가능 컨텍스트를 파퓰레이트(populate)시키도록 구성될 수 있다. 또한, 액션 컨텍스트 모듈(106)은 사용자가 입력한 명사의 정의를 판별할 때 라벨링된 텍스트 데이터 소스를 이용할 수 있다. 예컨대, 액션 컨텍스트 모듈(106)은, WikipediaTM, FreebaseTM, IMDBTM 등과 같은 제 3 아티클 데이터베이스를 포함할 수 있는, 라벨링된 텍스트 데이터 소스로부터 대량의 명사에 액세스할 수 있다. 일례에 따라서, 액션 컨텍스트 모듈(106)은 특정 명사를 특정 액션 컨텍스트와 연관시키고, 이 연관지어진 명사와 액션 컨텍스트를 데이터 저장부(116)에 저장하도록 구성된다. 이 예에서, 액션 컨텍스트 모듈(106)은, 사용자가 컨텍스트 '로 여행'을 선택하면, 사용자 인터페이스에 예컨대, 지리적인 위치나 장소명의 리스트를 표시하도록 구성될 수 있다. 나아가, 액션 컨텍스트 모듈(106)은 예컨대, 사용자가 특정 국가의 특정 주(state) 내의 특정 도시를 선택할 수 있도록, 사용자 인터페이스에 특정 명사를 계층 방식으로 표시할 수 있다. 또한, 사용자 인터페이스는 예컨대, 많은 최근의 검색 엔진에서 이용되는 '자동 완성'과 같은 일반적인 인터페이스 기법을 이용할 수 있으며, 이로써 사용자가 예컨대 원하는 도시의 처음 몇 글자를 타이핑하는 것 만으로 선택의 리스트를 상당히 좁힐 수 있다.
이에 더해서, 혹은 이와 달리, 액션 컨텍스트 모듈(106)은 복수의 개체가 명시한 액션 컨텍스트와 관련된 공통의 데이터를 분석해서, 사용자 인터페이스를 통해서 선택할 때 이용가능한 액션 컨텍스트를 결정할 수 있다. 개체는 사용자 및 다른 사용자를 포함할 수 있다. 이 경우, 도 2에 도시된 바와 같이, 북마킹 장치(102)는 인터넷과 같은 네트워크를 통해서 다수의 컴퓨팅 장치와 통신할 수 있으며, 이 다수의 컴퓨팅 장치로부터의 데이터를 수집하도록 구성될 수 있다. 따라서, 예컨대, 액션 컨텍스트 모듈(106)은 개체가 명시한 액션 컨텍스트 중 어느 것이 가장 공통적인지 혹은 가장 인기 있는지를 결정할 수 있고, 이들 액션 컨텍스트를 사용자 인터페이스를 통해서 사용자에게 제공할 수 있다. 여기서 인기도는 특히, 개체(사용자)가 선택한 가장 인기있는 액션 컨텍스트를 의미하거나(예컨대, 다른 조건은 동일하고, 많은 분포의 사용자가 자주 여행을 떠나는 사람들인 경우에는 가장 가능성이 높은 적절한 액션 컨텍스트는 여행 관련된 것이 될 것이다), 혹은 특정 아이템에 대해 결정된 가장 인기있는 액션 컨텍스트를 의미하거나(예컨대, 일반적인 사용자 분포의 특성에 관계없이, 특정 아이템은, 부동산 거래 웹사이트와 같은 특정 액션 컨텍스트 및 액션 컨텍스트 '새로운 집을 조사'와 관련될 수 있다), 혹은 이들의 조합을 의미할 수 있다. 이와 같이, 액션 컨텍스트는 다수의 개체의 공동의 액션을 분석해서 개발될 수 있다.
북마킹 모듈(108)은 수신한 액션 컨텍스트를 저장하도록, 그리고 이후에, 그 아이템을 북마킹하라는 인스트럭션을 제출한 사용자나, 사용자가 북마킹된 아이템을 수신하도록 명시한 하나 이상의 개체나, 북마킹된 아이템을 수신하도록 설계된 그룹의 하나 이상의 개체 등과 같은, 개체로 전달되도록 북마킹되어 표시되어 있는 아이템을 저장하도록 구성된다. 상술한 바와 같이, 아이템은 예컨대, 아이템 자체의 사본이나, 혹은 그 아이템의 URL과 같은 그 아이템으로의 하이퍼링크를 포함할 수 있다. 또한, 북마킹 모듈(108)은 수신한 액션 컨텍스트를 저장할 수 있고, 아이템 및 데이터 저장부(116)에 있는 아이템에 대한 리퍼런스 중 적어도 하나를 저장할 수 있다.
동작 추적 모듈(110)은 시스템(100) 및/또는 입력 장치(130)와 같은 컴퓨팅 장치에 대한 개체의 동작을 추적해서, 개체가 액션 컨텍스트와 관련된 동작을 수행했는지 여부를 판정하도록 구성된다. 이 개체는 예컨대, 액션 컨텍스트 및 아이템을 북마킹한 사용자나, 혹은 그 사용자 이외의 다른 개체를 포함할 수 있다. 따라서, 다양한 실시예에서, 그 사용자 이외의 개체를 포함한 다수의 개체의 동작이 추적될 수 있다. 일 실시예에서, 동작 추적 모듈(110)은, 이메일 애플리케이션, 인터넷 브라우저, 저널, 달력 등과 같은, 개체의 컴퓨팅 장치 상에서 수행되는 하나 이상의 애플리케이션에 대한 개체의 동작을 추적하도록 구성된다. 이에 더해서, 혹은 이와 달리, 동작 추적 모듈(110)은, 페이스북TM, 트위터TM, 유튜브TM 등과 같은 하나 이상의 소셜 네트워킹 애플리케이션에 대한 개체의 동작을 추적할 수 있다. 따라서, 예컨대, 동작 추적 모듈(110)은, 개체가 특정 식당에 가서 친구를 만나서 친구의 생일을 축하할 것이라고 하는 개체의 페이스북TM 페이지에 대한 입력에 기초해서, 개체가 '친구의 생일을 축하하고 있다'고 판정할 수 있다.
동작 추적 모듈(110)은, 개체의 동작이 사전 결정된 액션 컨텍스트와 관련된 것인지 여부를 직접 판정하는 것에 더해서, 혹은 이와 달리, 다양한 수집 데이터에 기초해서 개체의 동작을 추론하도록 구성될 수 있다. 예컨대, "익스페디아TM"는 "여행 예약" 타입의 컨텍스트이고, "뉴욕 타임즈TM"는 뉴스 읽기 타입의 컨텍스트이다라고 나타내는 등을 함으로써, 액션/동사의 리스트를 다양한 인기 웹사이트에 하드-코딩할 수 있다. 이 예에서, 예컨대, 라벨링된 텍스트 데이터 소스로부터 매칭되는 명사를 식별하기 위해서 방문한 각 웹 페이지의 전체 URL, 메타데이터 및/또는 컨텍스트가 분석될 수 있다.
또 다른 실시예에 따라서, 동작 추적 모듈(110)은, 예컨대 메트릭 생성 모듈(112)이 수집해서 분석한 것과 같은, 다수의 개체로부터 수집한 정보로부터 집단 지성(collective intelligence)을 파악하도록 구성된다. 상세하게, 메트릭 생성 모듈(112)은 북마킹된 아이템 및 개체의 동작과 관련된 하나 이상의 메트릭을 생성하도록 구성된다. 예컨대, 메트릭 생성 모듈(112)은 복수의 개체가 추적한 액션 컨텍스트와 관련된 하나 이상의 동작을 수행했는지 여부에 관한 메트릭을 하나 이상 생성하도록 구성된다. 이 예에서, 메트릭 생성 모듈(112)은, 개체 중에서, 추적한 액션 컨텍스트와 관련된 동작을 수행한 개체의 비율을 측정할 수 있다. 이 경우, 예컨대 동작 추적 모듈(110)은, 집단 지성에 기초해서, 특정 웹 페이지를 보고 있는 개체는 여행을 계획하고 있는 것이라고 추측할 수 있으며, 따라서, 사용자가 특정 웹 페이지를 방문할 때 사용자가 여행을 계획하고 있다고 추측할 수 있다. 메트릭 생성 모듈(112)이 생성한 메트릭은 예컨대, 다양한 웹 페이지를 방문하는 개체의 성향을 식별해서 광고하는데도 유용할 것이다.
출력 모듈(114)은, 사전 결정된 액션 컨텍스트와 관련된 동작 중 하나 이상이 수행되었다고 판정한 것에 응답해서, 북마킹된 아이템을 하나 이상의 개체에 전달하도록 구성된다. 도 1에 도시된 바와 같이, 시스템(100)은 출력 인터페이스(140) 및 출력 장치(142)를 포함할 수 있으며, 북마킹 장치(102)는 이를 통해서 하나 이상의 개체에 북마킹된 아이템을 제공하도록 구성된다. 이 경우, 출력 모듈(114)은 하나 이상의 개체에 북마킹된 아이템을 제공하기 위해서 데이터 저장부(116)에 저장된 북마킹된 아이템에 액세스할 수 있다. 나아가 출력 장치(142)는 예컨대, 디스플레이 모니터, 컴퓨팅 장치 등을 포함할 수 있으며, 개체는 이를 통해서 전달된 북마킹된 아이템을 볼 수 있다. 또한, 출력 인터페이스(140)는 하나 이상의 개체가 북마킹된 아이템 혹은 아이템에 대한 북마킹된 리퍼런스에 액세스하는 것을 가능하게 하도록 구성된, 임의의 적절한 하드웨어 및/또는 소프트웨어를 포함할 수 있다.
도 3(a)에 도시된 방법(300)을 이용해서, 북마킹 장치(102)의 모듈(104~114)이 동작할 수 있는 다양한 동작을 더 상세하게 설명한다. 그러나 먼저, 도 2를 참조하며, 여기에는 또 다른 예시적인 실시예에 따른 컨텍스트-기반 아이템 북마킹 시스템(200)이 개략적으로 도시되어 있다. 시스템(200)이 그 범주를 벗어남 없이 추가 구성 요소를 포함할 수 있으며, 여기서 설명되는 구성 요소 중 일부는 제거 및/또는 수정될 수 있다는 것을 이해할 것이다. 예컨대, 시스템(200)은, 시스템(200)과 관련해서 설명되는 몇 가지의 다른 기능을 수행하도록 구성된, 몇 개의 추가 애플리케이션 및 소프트웨어를 포함할 수 있다.
도 2에 도시된 바와 같이, 시스템(200)은, 도 1과 관련해서 상기 설명한 구성 요소에 더해서, 네트워크(210), 네트워크 인터페이스(212) 및 복수의 컴퓨팅 장치(220a~220n)을 포함하고 있다. 첫번째 예에 따라서, 프로세서(120), 입력 장치(130) 및 컨텍스트-기반 북마킹 장치(102)가 제 1 사용자에게 국한된(local) 컴퓨팅 장치의 일부를 이루고 있다. 이 예에서, 모듈(104~114)은 제 1 사용자의 로컬 컴퓨팅 장치에 포함되는 하드웨어 및/또는 소프트웨어 모듈을 포함한다. 두번째 예에서, 프로세서 및 북마킹 장치(102)는, 서버와 같은, 제 1 사용자로부터 멀리 떨어진 컴퓨팅 장치의 일부를 이루고 있다. 이 예에서, 모듈(104~114)은, 제 1 사용자가 입력 장치(130)와 원격 컴퓨팅 장치 사이의 네트워크 접속을 통해서 액세스할 수 있는, 원격 컴퓨팅 장치에 있는 하드웨어 및/또는 소프트웨어를 포함하고 있다.
이하, 방법(300)과 관련해서 상세하게 설명되는 바와 같이, 북마킹 장치(102)는, 입력 장치(130)를 통해서 제 1 사용자로부터 및/또는 컴퓨팅 장치(220a~220n)를 통해서 하나 이상의 다른 개체로부터, 인스트럭션 및 액션 컨텍스트를 수신할 수 있다. 나아가 북마킹 장치(102)는 자신에게 입력되는 액션 컨텍스트와 관련된 데이터를 수집할 수 있으며, 개체가 수행하는 동작을 인터넷 등의 네트워크(210)를 통해서 추적할 수 있다. 또한, 북마킹 장치(102)는, 제시된 하나 이상의 액션 컨텍스트와 관련된 동작을 개체가 수행했다고 판정한 것에 응답해서, 하나 이상의 개체에 북마킹된 아이템을 전달할 수 있다.
도 3(a)를 참조하면, 예시적인 실시예에 따른 컨텍스트-기반 아이템 북마킹 방법의 흐름도(300)가 도시되어 있다. 방법(300)은 일반화된 예시로, 그 범주를 벗어남없이 다른 단계가 추가될 수도 있고 혹은 기존 단계들이 제거, 수정 혹은 재배열될 수 있다는 것이, 당업자에게는 자명할 것이다. 방법(300)에 개략적으로 설명된 단계들이 수행될 수 있는 환경을 포함하는 것으로서, 도 1 및 도 2에 도시된 시스템(100, 200)을 특히 참조하고 있지만, 방법(300)은 그 범주를 벗어남 없이, 다르게 구성된 시스템에서도 수행될 수 있다는 것을 이해할 것이다.
단계 302에서, 예컨대, 사용자 인터페이스 모듈(104)에 의해서 사용자 인터페이스가 개체에 제공된다. 상술한 바와 같이, 개체는, 북마킹 장치(102)을 구비한 컴퓨팅 장치에 직접 접속된 제 1 사용자나, 혹은 북마킹 장치(102)를 구비한 컴퓨팅 장치에 네트워크(210)를 통해서 접속된 다른 사용자를 포함할 수 있다. 또한, 상술한 바와 같이, 사용자 인터페이스는 다수의 액션 컨텍스트를 개체에 제공하고, 개체는 이를 선택해서 북마킹된 아이템의 전달을 트리거시킬 수 있다. 도 1과 관련해서 상기 설명한 바와 같이, 복수의 개체가 작성하는 액션 컨텍스트가 추적될 수 있으며, 이는 일례로, 공통으로 작성된 액션 컨텍스트를 추적해서 메트릭을 생성하는 방법(330)을 나타내고 있는 도 3(b)의 단계 332에 도시된 바와 같다. 또한, 단계 334에서, 추적한 액션 컨텍스트는 저장될 수 있으며, 단계 336에서, 저장된 액션 컨텍스트에 대한 액세스가, 예컨대 단계 306에서 액션 컨텍스트를 입력할 때 이용하도록 하나 이상의 개체에 제공될 수 있다. 상기 설명한 바와 같이, 개체에 제공되는 액션 컨텍스트는, 예컨대 개체의 공동의 액션을 분석해서 개체 사이에서 가장 인기있다고 판정된 액션 컨텍스트를 포함할 수 있다. 나아가, 단계 338에서는, 상술한 바와 같이, 추적한 액션 컨텍스트과 관련된 동작을 개체가 수행했는지 여부에 대한 하나 이상의 메트릭이 생성될 수 있다.
단계 304에서, 이후에 전달하도록 아이템을 북마킹하라는 인스트럭션이, 예컨대, 사용자 인터페이스 모듈(104)이 제공하는 사용자 인터페이스를 통해서 수신된다. 일례로, 예컨대 개체가 이후에 특정한 웹 페이지에 관심을 갖게 되었을 때 특정 웹 페이지를 재방문하고자 한다면, 개체는 단계 302에서 제공한 사용자 인터페이스를 통해서 그 특정 웹 페이지를 북마킹하도록 인스트럭션을 입력한다.
단계 306에서, 북마킹된 아이템의 전달을 트리거하도록 구성된 하나 이상의 액션 컨텍스트를 예컨대 사용자 인터페이스 모듈(104)이 제공하는 사용자 인터페이스를 통해서 수신한다. 상술한 바와 같이, 개체는 사용자 인터페이스를 통해서 이용가능한 액션 컨텍스트를 제공받을 수 있으며, 개체는 이용 가능한 액션 컨텍스트 중 하나 이상을 불러내서 북마킹된 아이템의 전달을 트리거한다. 나아가, 액션 컨텍스트는 상술한 바와 같이 하나 이상의 명사를 포함할 수 있다. 특정한 예로, 개체가 특정 도시에 있을 때 인도 요리와 관련된 웹 페이지에 개체가 관심을 가질 것이다라고 판단해서, 예컨대, 그 특정 도시에 갔을 때 재방문하기 위해서 그 웹 페이지를 북마킹하고자 할 수 있다.
다른 예로, 제 1 개체는, 개체와 하나 이상의 다른 개체가 모두 혹은 그 중 한쪽이 액션 컨텍스트와 관련된 동작을 수행하면, 한 전자 문서에 하나 이상의 다른 개체가 관심을 갖는 것이라고 판단할 수 있다. 이 예에서는, 일례로, 제 1 개체는, 그 액션 컨텍스트와 관련된 동작이 수행된 것에 응답해서 북마킹된 아이템이 하나 이상의 다른 개체로 전달되도록 구성되는 액션 컨텍스트를 입력할 수 있다. 특정 예로서, 제 1 개체 및 하나 이상의 다른 개체가 하나의 그룹에 속해서 하나의 프로젝트에 대해 함께 작업할 수 있으며, 제 1 개체는 그 그룹의 멤버들이 특정 동작을 수행하면 특정 전자 문서에 멤버가 관심을 갖고 있다고 판정할 수 있다.
상기 액션 컨텍스트 모듈(106)과 관련해서 설명한 바와 같이, 복수의 개체가 입력한 액션 컨텍스트가 추적될 수 있으며, 추적한 액션 컨텍스트 중 어느 것은 선택을 위해서 하나 이상의 개체에 제공될 수 있다. 나아가, 추적되는 액션 컨텍스트와 관련된 동작을 복수의 개체가 수행했는지 여부에 대한 하나 이상의 메트릭이, 예컨대 메트릭 생성 모듈(112)에 의해 생성될 수 있으며, 이는 액션 컨텍스트 중 어느 것을 개체에 제공할지 결정하는데 이용될 수 있다.
단계 308에서, 액션 컨텍스트 및 아이템은, 예컨대 북마킹 모듈(108)에 의해서 북마킹된다. 일례에 따라서, 북마킹 모듈(108)은 액션 컨텍스트 및 아이템을 데이터 저장부(116)에 저장하도록 구성된다. 이에 더해서, 혹은 이와 달리, 북마킹 모듈(108)은 액션 컨텍스트 및 아이템을 이격된 저장 위치에 저장하도록 구성된다. 나아가, 북마킹 모듈(108)은 북마킹된 액션 컨텍스트 및 아이템을 제 2 개체의 컴퓨팅 장치로 포워딩해서 여기에 국부적으로 저장되게 할 수도 있다.
단계 310에서, 적어도 하나의 개체의 동작을 예컨대 동작 추적 모듈(110)이 모니터한다. 상술한 바와 같이, 적어도 하나의 개체의 동작은, 적어도 하나의 개체가 컴퓨팅 장치나, 혹은 소셜 네트워킹 웹 사이트와 같은 웹 사이트에 행하는 동작을 모니터함으로써 모니터될 수 있다. 나아가, 단계 310에서는 아이템이 북마킹되도록 지시한 개체의 동작 및/또는 예컨대 북마킹된 아이템을 수신하도록 명시된 다른 개체의 동작이 모니터될 수 있다.
단계 312에서, 액션 컨텍스트와 관련된 동작이 수행되었는지 여부에 대한 판정을 예컨대, 동작 추적 모듈(110)이 수행한다. 일례로, 동작 추적 모듈(110)은 소셜 네트워킹 웹 사이트에 대한 개체의 입력을 추적하고, 이 입력에 기초해서 개체의 상태를 판정할 수 있다. 이로써, 예컨대 동작 추적 모듈(110)은 개체가 특정 도시에 있을 때의 개체의 입력에 기초해서, 개체가 특정 도시에 있다고 판정할 수 있다. 이 예에서, 개체가 그 특정 도시에 있을 때 북마킹된 아이템을 전달하도록 액션 컨텍스트를 입력했다면, 동작 추적 모듈(110)은 액션 컨텍스트의 조건이 만족되었다고 판정해서, 단계 312에서 액션 컨텍스트와 관련된 동작이 수행되었다고 판정할 수 있다. 동작 추적 모듈(110)은 또한, 개체의 컴퓨팅 장치의 GPS 좌표와 같은 다른 전자적인 수단을 이용해서 개체의 위치를 측정할 수도 있다.
액션 컨텍스트와 관련된 동작이 수행되지 않았다고 판정한 것에 응답해서, 적어도 하나의 개체의 동작은 단계 310에 나타낸 바와 같이 계속해서 모니터될 수 있다. 나아가, 적어도 하나의 개체의 동작은 단계 312에서 액션 컨텍스트와 관련된 동작이 수행되었다고 판정될 때까지 계속해서 모니터될 수 있다. 액션 컨텍스트와 관련된 동작이 수행되었다고 판정한 것에 응답해서, 단계 314에 나타낸 바와 같이, 북마킹된 아이템이 예컨대, 출력 모듈(114)에 의해서 적어도 하나의 개체로 전달된다. 다른 예에서, 북마킹된 아이템은 예컨대 네트워크(210)를 통해서 하나 이상의 다른 개체의 컴퓨팅 장치(220a~220n)에 전달된다. 또 다른 예에서, 북마킹된 아이템은, 개체가 아이템을 북마킹하라는 인스트럭션을 입력하는데 이용한 컴퓨팅 장치가 아닌, 개체의 다른 컴퓨팅 장치로 전달된다.
단계 316에서, 방법(300)을 계속할지에 대한 판정이 행해진다. 예컨대, 개체가 자신의 혹은 다른 개체가 수행한 것에 따라 전달될 북마킹된 아이템을 선택한 경우에는 방법(300)이 계속될 수 있다. 따라서, 예컨대, 개체가 액션 컨텍스트와 관련된 동작을 수행함에 따라서, 북마킹된 아이템이 다수의 개체로 전달되어야 하는 상황에서는, 방법(300)이 계속될 수 있다. 방법(300)이 계속되는 것으로 판정한 것에 응답해서, 단계 316에서 방법(300)이 중단되어야 한다고 판정될 때까지 단계 310~316가 반복될 수 있다. 예컨대, 사전 결정된 시간이 종료되는 것에 따라서, 일정 횟수 반복을 수행한 것에 따라서, 북마킹된 아이템을 수신하도록 명시된 개체 각각에 북마킹된 아이템을 전달한 것에 따라서, 방법(300)을 중단하는 것으로 판정할 수 있다. 이 때, 방법(300)은 단계 316에서의 '아니오'의 상태에 따라서, 단계 318에서 종료된다.
특정 예에 따라서, 제 1 개체, 제 2 개체 혹은 다른 개체를 포함한 적어도 하나의 개체가 수행한 동작이 단계 306에 나타낸 액션 컨텍스트와 관련되어 있다고 판정한 것에 응답해서, 제 2 개체로 전달된 아이템을 제 1 개체가 갖고자할 수도 있다. 이 예는 도 3(c)에 도시되어 있으며, 여기에는 예시적인 실시예에 따른 방법(350)의 흐름도가 도시되어 있다. 도시된 바와 같이, 단계 352에서는, 도 3의 단계 304 및 306에서 수신하는 것으로 북마킹되었던 액션 컨텍스트 및 아이템을 제 2 개체로 포워딩한다. 단계 354에서, 액션 컨텍스트 및 아이템은 제 2 개체가 액세스가능한 위치에 북마킹된다. 나아가, 단계 356에서, 개체의 동작이 추적되며, 이는 제 1 개체, 제 2 개체 및 다른 개체의 동작 중 적어도 하나를 추적하는 것을 포함할 수 있다. 또한, 단계 358에서, 액션 컨텍스트와 관련된 동작이 수행되었다고 판정한 것에 응답해서, 북마킹된 아이템이 제 2 개체로 전달된다.
방법(300, 330, 350)에서 설명한 동작 중 적어도 일부는, 임의의 소망의 컴퓨터 액세스 가능 매체 혹은 판독 가능 매체에, 하나 이상의 유틸리티, 프로그램 혹은 서브프로그램으로서 포함될 수 있다. 나아가, 방법(300, 330, 350)은, 활성화 및 비활성화와 같은 다양한 형태로 존재할 수 있는 컴퓨터 프로그램에 의해 실시될 수 있다. 예컨대, 소스 코드, 목적 코드, 실행 코드 혹은 다른 형태의 프로그램 인스트럭션으로 이루어진 소프트웨어 프로그램으로서 존재할 수 있다. 상술한 것 중 일부는 컴퓨터 판독 가능 매체에서 실시될 수 있으며, 이는 저장 장치 및 압축된 형태 혹은 압축되지 않은 형태의 신호를 포함한다.
예시적인 컴퓨터 판독 가능 저장 장치로는 종래의 컴퓨터 시스템 RAM, ROM, EPROM, EEPROM, 상변화 RAM(PCRAM), 멤리스터, 및 자기 혹은 광 디스크나 테이프를 들 수 있다. 반송파를 이용해서 변조된 혹은 변조되지 않은 예시적인 컴퓨터 판독 가능 신호는, 컴퓨터 프로그램을 호스팅 혹은 실행하는 컴퓨터 시스템이 액세스하도록 구성될 수 있는 신호로, 인터넷 혹은 다른 네트워크를 통해서 다운로딩되는 신호를 들 수 있다. 그 구체적인 예는 CD ROM으로 배포되는 프로그램이나 인터넷을 통해서 다운로딩되는 프로그램을 들 수 있다. 어떤 의미에서, 인터넷 자체가 추상적인 개체로서 컴퓨터 판독 가능 매체이다. 이는 일반적인 컴퓨터 네트워크에서 성립된다. 따라서, 상기 설명한 기능을 실행할 수 있는 임의의 전자 장치라면 상기 열거한 기능을 수행할 수 있다는 것을 이해할 것이다.
도 4는, 일례에 따라서, 상기 설명한 시스템(100, 200)에 도시된 구성 요소의 다양한 기능을 수행하는데 이용될 수 있는 컴퓨터 시스템(400)을 나타내는 도면이다. 이러한 관점에서 컴퓨터 시스템(400)은, 방법(300, 330, 350)과 관련해서 상기 설명한 기능 중 하나 이상을 수행하기 위한 플랫폼으로서 이용될 수 있다.
컴퓨터 시스템(400)은 프로세서(402)를 포함하며, 이는 상기 방법에서 설명된 단계들 중 적어도 일부를 실행하는데 이용될 수 있다. 프로세서(402)로부터의 커맨드 및 데이터는 통신 버스(404)를 통해서 통신된다. 컴퓨터 시스템(400)은 런타임동안 프로그램 코드가 실행될 수 있는, RAM과 같은, 메인 메모리(408), 및 제 2 저장부(410)를 포함한다. 제 2 저장부는 예컨대, 하드 드라이브 혹은 다른 비휘발성 메모리를 포함할 수 있으며, 여기에는 컨텍스트-기반 아이템 북마킹을 위한 프로그램 코드의 사본이 저장될 수 있다.
컴퓨터 시스템(400)은 웹 인터페이스를 구비한 서버를 포함할 수 있다. 이와 달리, 컴퓨터 시스템(400)은 키보드(416), 마우스(418) 및 디스플레이(420)를 구비한 사용자 입출력 장치로 구성될 수 있다. 디스플레이 어댑터(422)는 통신 버스(404) 및 디스플레이(420)와 인터페이스해서, 프로세서(402)로부터의 디스플레이 데이터를 수신하고, 이 디스플레이 데이터를 디스플레이(420)용 디스플레이 커맨드로 변환할 수 있다. 나아가, 프로세서(402)는 네트워크 어댑터(424)를 통해서 예컨대, 인터넷, LAN 등과 같은 네트워크로 통신할 수 있다.
당업자에게는, 다른 공지된 전자적인 구성 요소가 컴퓨터 시스템(400)에 추가 혹은 대체될 수 있다는 것이 자명할 것이다. 나아가, 컴퓨터 시스템(400)은 데이터 센터의 랙(rack)에 이용되는 시스템 보드나 블레이드를 포함할 수 있으며, 또한 종래의 '화이트 박스' 서버 혹은 컴퓨팅 장치 등을 포함할 수 있다. 또한, 도 4에 도시된 구성 요소 중 하나 이상은 선택 사항이 될 수 있다(예컨대, 사용자 입력 장치, 제 2 메모리 등).
이상 본 발명의 바람직한 실시예를 그 몇 가지 변형예와 함께 설명했다. 여기서 사용되는 용어, 설명 및 도면은 단지 예시적인 것으로, 한정의 의미가 아니다. 당업자라면 본 발명의 범주 내에서 많은 변형예가 가능하다는 것을 이해할 것이며, 이는 이하의 청구의 범위 - 및 다른 등가물 - 에 의해 정의되며, 여기서는 특별히 언급하지 않는 한, 용어는 가장 넓은 적절한 개념을 의미하고 있다.

Claims (15)

  1. 컨텍스트-기반 아이템 북마킹 방법(300)에 있어서,
    향후 전달(future delivery)을 위한 아이템을 북마킹하라는 인스트럭션을 수신하는 단계(304)와,
    북마킹되는 상기 아이템의 전달을 트리거하도록 구성된 액션 컨텍스트(an action context)를 수신하는 단계(306)와,
    상기 액션 컨텍스트 및 상기 아이템을 북마킹하는 단계(308)와,
    상기 액션 컨텍스트와 관련된 동작이 수행되었는지 여부를 판정하기 위하여 적어도 하나의 개체(at least one entity)의 동작(activities)을 모니터링하는 단계(310)와,
    상기 액션 컨텍스트와 관련된 동작이 수행되었다는 판정에 응답해서, 적어도 하나의 개체로 상기 북마킹된 아이템을 전달하는 단계(314)를 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  2. 제 1 항에 있어서,
    상기 인스트럭션 및 상기 액션 컨텍스트를 하나 이상의 개체로부터 수신하는데 이용될 사용자 인터페이스를 제공하는 단계(302)를 더 포함하고,
    상기 사용자 인터페이스는 복수의 액션 컨텍스트를 저장하는 데이터베이스와 관련되어 있으며,
    상기 사용자 인터페이스를 제공하는 단계(302)는 상기 데이터베이스에 저장된 복수의 액션 컨텍스트에 대한 액세스를 상기 하나 이상의 개체에 제공하는 단계를 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  3. 제 2 항에 있어서,
    복수의 개체가 작성하는 액션 컨텍스트를 추적하는 단계(332)와,
    상기 추적된 액션 컨텍스트를 상기 데이터베이스에 저장하는 단계(334)를 더 포함하고,
    상기 복수의 액션 컨텍스트에 대한 액세스를 상기 하나 이상의 개체에 제공하는 단계는, 상기 추적된 액션 컨텍스트에 대한 액세스를 상기 하나 이상의 개체에 제공하는 단계(336)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  4. 제 3 항에 있어서,
    상기 추적된 액션 컨텍스트와 관련된 동작을 상기 복수의 개체가 수행했는지 여부에 관한 하나 이상의 메트릭을 생성하는 단계(338)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  5. 제 1 항에 있어서,
    상기 적어도 하나의 개체의 동작을 모니터링하는 단계(310)는, 컴퓨팅 장치 상의 상기 적어도 하나의 개체의 동작을 모니터링하는 단계와, 상기 컴퓨팅 장치 상의 상기 적어도 하나의 개체의 동작이 상기 액션 컨텍스트와 관련되어 있는지 여부를 판정하는 단계를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  6. 제 1 항에 있어서,
    상기 아이템을 북마킹하라는 인스트럭션을 수신하는 단계(304)는, 상기 인스트럭션을 제 1 개체로부터 수신하는 단계(304)를 더 포함하고,
    상기 적어도 하나의 개체의 동작을 모니터링하는 단계(310)는, 상기 제 1 개체 및 제 2 개체 중 적어도 하나가 상기 동작을 수행했는지 여부를 판정하기 위하여 상기 적어도 하나의 개체의 동작을 모니터링하는 단계(310)를 더 포함하며,
    상기 북마킹된 아이템을 전달하는 단계(314)는, 상기 제 1 개체 및 상기 제 2 개체 중 적어도 하나가 상기 동작을 수행했다는 판정에 응답해서, 상기 제 1 개체 및 상기 제 2 개체 중 적어도 하나로 상기 북마킹된 아이템을 전달하는 단계(314)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  7. 제 6 항에 있어서,
    상기 적어도 하나의 개체의 동작을 모니터링하는 단계(310)는, 상기 적어도 하나의 개체가 상기 액션 컨텍스트와 관련된 동작을 수행했는지 여부를 판정하기 위하여 하나 이상의 소셜 네트워킹 애플리케이션 상의 상기 적어도 하나의 개체의 동작을 모니터링하는 단계(310)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  8. 제 1 항에 있어서,
    상기 액션 컨텍스트는, 복수의 개체에 의해 수행될 수 있는 동작과 관련되고,
    상기 모니터링하는 단계(310)는, 상기 액션 컨텍스트와 관련된 동작이 상기 복수의 개체 중 하나 이상에 의해 수행되었는지 여부를 판정하기 위하여 상기 복수의 개체의 동작을 모니터링하는 단계(310)를 더 포함하며,
    상기 전달하는 단계(314)는, 상기 복수의 개체 중에서 상기 동작을 수행했다고 판정된 하나 이상의 개체에, 상기 북마킹된 아이템을 전달하는 단계(314)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  9. 제 1 항에 있어서,
    상기 인스트럭션을 수신하는 단계(304) 및 상기 액션 컨텍스트를 수신하는 단계(306)는, 상기 인스트럭션 및 상기 액션 컨텍스트를 제 1 개체로부터 수신하는 단계를 더 포함하고,
    상기 방법은,
    상기 액션 컨텍스트 및 상기 아이템을 제 2 개체로 포워딩하는 단계(352)와,
    상기 제 2 개체가 액세스할 수 있도록 상기 액션 컨텍스트 및 상기 아이템을 북마킹하는 단계(354)를 더 포함하고,
    상기 모니터링하는 단계(310)는, 상기 액션 컨텍스트와 관련된 동작이 수행되었는지 여부를 판정하기 위하여 상기 적어도 하나의 개체의 동작을 모니터링하는 단계(356)를 더 포함하며,
    상기 전달하는 단계(314)는, 상기 액션 컨텍스트와 관련된 동작이 수행되었다는 판정에 응답해서, 상기 북마킹된 아이템을 상기 제 2 개체에 전달하는 단계(358)를 더 포함하는
    컨텍스트-기반 아이템 북마킹 방법.
  10. 컨텍스트-기반 아이템 북마킹 장치(102)에 있어서,
    향후 전달을 위한 아이템을 북마킹하라는 인스트럭션을 수신하고, 북마킹되는 상기 아이템의 전달을 트리거하도록 구성된 액션 컨텍스트를 수신하며, 상기 액션 컨텍스트 및 상기 아이템을 북마킹하고, 적어도 하나의 개체의 동작을 모니터링해서 상기 액션 컨텍스트와 관련된 동작이 수행되었는지 여부를 판정하며, 상기 액션 컨텍스트와 관련된 동작이 수행되었다는 판정에 응답해서 적어도 하나의 개체로 상기 북마킹된 아이템을 전달하도록 구성된 하나 이상의 모듈(104~114)과,
    상기 하나 이상의 모듈을 실행하도록 구성된 프로세서(120)를 포함하는
    컨텍스트-기반 아이템 북마킹 장치.
  11. 제 10 항에 있어서,
    상기 하나 이상의 모듈(104~114)은, 상기 인스트럭션 및 상기 액션 컨텍스트를 적어도 하나의 개체로부터 수신하는데 이용할 사용자 인터페이스를 제공하도록 더 구성되고,
    상기 사용자 인터페이스는 복수의 액션 컨텍스트를 저장하는 데이터베이스와 관련되며,
    상기 사용자 인터페이스는 상기 데이터베이스에 저장된 상기 복수의 액션 컨텍스트에 대한 액세스를 상기 적어도 하나의 개체에 제공하도록 구성되는
    컨텍스트-기반 아이템 북마킹 장치.
  12. 제 11 항에 있어서,
    상기 하나 이상의 모듈(104~114)은, 복수의 개체가 작성하는 액션 컨텍스트를 추적하고, 상기 추적한 액션 컨텍스트를 상기 데이터베이스에 저장하며, 상기 추적한 액션 컨텍스트에 대한 액세스를 상기 적어도 하나의 개체에 제공하도록 더 구성되는
    컨텍스트-기반 아이템 북마킹 장치.
  13. 제 10 항에 있어서,
    상기 하나 이상의 모듈(104~114)은, 제 1 개체로부터 상기 인스트럭션을 수신하고, 상기 제 1 개체 및 제 2 개체 중 적어도 하나가 상기 동작을 수행했는지 여부를 판정하며, 상기 제 1 개체 및 상기 제 2 개체 중 적어도 하나가 상기 동작을 수행했다는 판정에 응답해서, 상기 제 1 개체 및 상기 제 2 개체 중 적어도 하나로 상기 북마킹된 아이템을 전달하도록 더 구성되는
    컨텍스트-기반 아이템 북마킹 장치.
  14. 제 10 항에 있어서,
    상기 액션 컨텍스트는, 복수의 개체에 의해 수행될 수 있는 동작과 관련되어 있고,
    상기 하나 이상의 모듈(104~114)은, 상기 복수의 개체의 동작을 모니터링해서, 상기 액션 컨텍스트와 관련된 동작이 상기 복수의 개체 중 하나 이상에 의해 수행되었는지 여부를 판정하여, 상기 복수의 개체 중에서 상기 동작을 수행했다고 판정된 상기 하나 이상의 개체에, 상기 북마킹된 아이템을 전달하도록 더 구성되는
    컨텍스트-기반 아이템 북마킹 장치.
  15. 컨텍스트-기반 아이템 북마킹 방법(300)을 실행하는 하나 이상의 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능 저장 매체(410, 414)에 있어서,
    상기 하나 이상의 컴퓨터 프로그램은,
    향후 전달을 위한 아이템을 북마킹하라는 인스트럭션을 수신하고(304),
    북마킹되는 상기 아이템의 전달을 트리거하도록 구성된 액션 컨텍스트를 수신하며(306),
    상기 액션 컨텍스트 및 상기 아이템을 북마킹하고(308),
    상기 액션 컨텍스트와 관련된 동작이 수행되었는지 여부를 판정하기 위하여 적어도 하나의 개체의 동작을 모니터링하며(310),
    상기 액션 컨텍스트와 관련된 동작이 수행되었다는 판정에 응답해서, 적어도 하나의 개체로 북마킹된 상기 아이템을 전달하는(314)
    컴퓨터 판독 가능 코드를 포함하는
    컴퓨터 판독 가능 저장 매체.
KR1020137004358A 2010-07-22 2010-07-22 컨텍스트-기반 아이템 북마킹 KR101674249B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/042888 WO2012011910A1 (en) 2010-07-22 2010-07-22 Context-based item bookmarking

Publications (2)

Publication Number Publication Date
KR20130044329A KR20130044329A (ko) 2013-05-02
KR101674249B1 true KR101674249B1 (ko) 2016-11-08

Family

ID=45497101

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137004358A KR101674249B1 (ko) 2010-07-22 2010-07-22 컨텍스트-기반 아이템 북마킹

Country Status (7)

Country Link
US (1) US20130117263A1 (ko)
EP (1) EP2596438A4 (ko)
JP (1) JP5696213B2 (ko)
KR (1) KR101674249B1 (ko)
CN (1) CN103119581B (ko)
IN (1) IN2013CN00326A (ko)
WO (1) WO2012011910A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120158503A1 (en) 2010-12-17 2012-06-21 Ebay Inc. Identifying purchase patterns and marketing based on user mood
KR102062763B1 (ko) * 2012-12-07 2020-01-07 삼성전자주식회사 상황 정보 기반의 정보 제공 방법 및 시스템과 그 기록 매체
US10600296B2 (en) * 2015-08-19 2020-03-24 Google Llc Physical knowledge action triggers
US10810278B2 (en) 2017-04-18 2020-10-20 Google Llc Contextual deep bookmarking
US11017430B2 (en) * 2018-11-16 2021-05-25 International Business Machines Corporation Delivering advertisements based on user sentiment and learned behavior
US11269969B1 (en) * 2021-02-08 2022-03-08 Capital One Services, Llc Systems and methods for automatic and adaptive browser bookmarks

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040034637A1 (en) 2002-02-26 2004-02-19 Stephanie Riche Accessing a set of local or distant resources
US20060230058A1 (en) 2005-04-12 2006-10-12 Morris Robert P System and method for tracking user activity related to network resources using a browser

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6751777B2 (en) * 1998-10-19 2004-06-15 International Business Machines Corporation Multi-target links for navigating between hypertext documents and the like
IL134554A0 (en) * 1999-02-16 2001-04-30 Quiver Ltd System and method for sharing bookmark information
US7165220B1 (en) * 2000-05-03 2007-01-16 International Business Machines Corporation Apparatus and method for processing bookmark events for a web page
JP3984425B2 (ja) * 2001-02-28 2007-10-03 株式会社エヌ・ティ・ティ・ドコモ 情報提供方法及び情報提供装置
ATE359651T1 (de) * 2002-02-15 2007-05-15 Oracle Int Corp Verfahren zum verteilen von informationen in einem präsenzdienstsystem
US7987491B2 (en) * 2002-05-10 2011-07-26 Richard Reisman Method and apparatus for browsing using alternative linkbases
US20050222996A1 (en) * 2004-03-30 2005-10-06 Oracle International Corporation Managing event-condition-action rules in a database system
US8326658B1 (en) * 2004-04-12 2012-12-04 Amazon Technologies, Inc. Generation and contextual presentation of statistical data reflective of user selections from an electronic catalog
US7783979B1 (en) * 2004-09-14 2010-08-24 A9.Com, Inc. Methods and apparatus for generation and execution of configurable bookmarks
US20080024458A1 (en) * 2004-09-30 2008-01-31 Timo Nieminen Assignment of Functions to a Softkey
JP5055468B2 (ja) * 2005-10-17 2012-10-24 独立行政法人情報通信研究機構 情報通知システム
US8402094B2 (en) * 2006-08-11 2013-03-19 Facebook, Inc. Providing a newsfeed based on user affinity for entities and monitored actions in a social network environment
CN101192231B (zh) * 2006-11-27 2012-07-04 国际商业机器公司 基于上下文的书签
US20080177858A1 (en) * 2007-01-19 2008-07-24 Ari Aarnio Arranging dynamic bookmarks based on service provider inputs
US8087033B2 (en) * 2007-08-31 2011-12-27 Yahoo! Inc. Task-based tool for speeding and customizing interactions with web documents
US8744990B2 (en) * 2010-07-09 2014-06-03 Yahoo! Inc. Rule based, proactive web browsing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040034637A1 (en) 2002-02-26 2004-02-19 Stephanie Riche Accessing a set of local or distant resources
US20060230058A1 (en) 2005-04-12 2006-10-12 Morris Robert P System and method for tracking user activity related to network resources using a browser

Also Published As

Publication number Publication date
KR20130044329A (ko) 2013-05-02
JP2013541059A (ja) 2013-11-07
CN103119581A (zh) 2013-05-22
CN103119581B (zh) 2017-05-10
IN2013CN00326A (ko) 2015-07-03
US20130117263A1 (en) 2013-05-09
EP2596438A1 (en) 2013-05-29
WO2012011910A1 (en) 2012-01-26
EP2596438A4 (en) 2017-01-11
JP5696213B2 (ja) 2015-04-08

Similar Documents

Publication Publication Date Title
US11727076B2 (en) Browser-based navigation suggestions for task completion
US11750683B2 (en) Computer application promotion
US10789304B2 (en) Method and system for measuring user engagement with content items
US20230041467A1 (en) Method and system for measuring user engagement with content items
US20160162591A1 (en) Web Content Tagging and Filtering
KR101674249B1 (ko) 컨텍스트-기반 아이템 북마킹
CN101960483A (zh) 来自应用程序页的服务预览和访问
WO2008137510A1 (en) Tag-sharing and tag-sharing application program interface
JP2008257444A (ja) 類似ファイル管理装置、その方法及びそのプログラム
US8352541B2 (en) Identifying relevant data from unstructured feeds
US20130212496A1 (en) Integrated context-driven information search and interaction
CN105069175A (zh) 一种基于版本控制系统的信息检索方法及服务器
EP2487632A1 (en) Intelligent data management methods and systems, and computer program products thereof
CN110941752A (zh) 信息搜索方法、数据处理方法及设备
US20140258875A1 (en) Systems, methods and media for providing historical navigation controls for a mobile device user
JP2008040869A (ja) 地点情報評価装置、地点情報評価プログラム
JP2007265282A (ja) 情報検索システム、端末、サーバ、プログラム、及び記録媒体
US20110270823A1 (en) Accelerated rendering of virtual views
CN104641372A (zh) 提供访问网站动作的接口

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant