KR20110090950A - 동적 페이지 내 광고 - Google Patents

동적 페이지 내 광고 Download PDF

Info

Publication number
KR20110090950A
KR20110090950A KR1020117011910A KR20117011910A KR20110090950A KR 20110090950 A KR20110090950 A KR 20110090950A KR 1020117011910 A KR1020117011910 A KR 1020117011910A KR 20117011910 A KR20117011910 A KR 20117011910A KR 20110090950 A KR20110090950 A KR 20110090950A
Authority
KR
South Korea
Prior art keywords
web page
advertisements
request
context
web
Prior art date
Application number
KR1020117011910A
Other languages
English (en)
Other versions
KR101266722B1 (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 KR20110090950A publication Critical patent/KR20110090950A/ko
Application granted granted Critical
Publication of KR101266722B1 publication Critical patent/KR101266722B1/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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0277Online advertisement
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

웹 페이지에서 디스플레이되는 광고는 웹 페이지를 리로딩(reloading)하지 않고 웹 페이지의 컨텍스트가 변화함에 따라 변경될 수 있다. 웹 페이지 상의 하나 이상의 디스플레이되는 광고는 하나 이상의 대안적인 광고로 대체될 수 있다. 대안적인 광고의 선택은 웹 페이지의 컨텍스트의 변화를 야기하는 하나 이상의 이벤트의 발생에 기초하여 트리거(trigger)된다. 대안적인 광고의 디스플레이는 웹 페이지가 리로딩될 필요 없이 동적으로 수행된다.

Description

동적 페이지 내 광고{DYNAMIC IN-PAGE ADVERTISING}
본 발명은 온라인 웹 페이지에서의 디스플레이를 위한 광고의 선택과 관련된다.
하나의 정의에 따르면, 광고는 광고자가 식별되고 광고자에 의해 제공되는 메시지(즉, 광고)가 제어되는 매체를 통한 유료 일방향 통신이다. 광고는 선전, 홍보(public relations), 제품 간접 광고(product placement), 후원(sponsorship), 보험 인수(underwriting) 및 판촉을 포함하는 다양한 목적을 위해 수행될 수 있다. 텔레비전, 라디오, 영화, 잡지, 신문, 인터넷 및 광고판을 포함하는 다양한 매체가 광고를 전달하는 데 사용된다.
온라인 광고는 인터넷 및 월드 와이드 웹을 사용하는 제품 및 서비스의 판촉과 관련된다. 전형적인 온라인 광고 유형은 브라우저(browser)를 통해 사용자의 컴퓨터 데스크톱(desktop)에 제공되는 배너(banner) 광고, 플로팅(floating) 광고, 팝업(pop-up) 광고 및 비디오 광고를 포함한다. "컨텍스트 광고(contextual advertising)"는 사용자에게 디스플레이되는 컨텐트에 기초하여 자동화된 시스템에 의해 광고가 선택 및 서비스되는 인터넷 광고/마케팅의 형태를 지칭한다. 예컨대, 컨텍스트 광고 선택 시스템은 웹 페이지의 텍스트(text)에서 키워드를 스캔(scan)할 수 있고, 텍스트 내에 위치한 임의의 키워드에 기초하여 광고를 선택할 수 있다. 웹 페이지가 사용자에 대해 디스플레이되는 경우, 컨텍스트 광고 선택 시스템은 선택된 광고를 웹 페이지 상의 디스플레이를 위해 제공한다.
클라이언트측 스크립팅(scripting) 언어(예컨대 JavaScript 또는 유사한 스크립팅 언어)로 생성되는 동적 웹 페이지는 새로운 "페이지 보기(page views)"를 생성하지 않고 변경{예컨대 웹 페이지의 완전한 리로딩(reloading) 없이 웹 페이지의 컨텐트 중 일부를 변경함}될 수 있는 컨텐트를 갖는다. 동적 웹 페이지의 컨텐트는 예컨대 사용자가 웹 페이지의 피처(feature)와 상호작용하는 것으로 인해 변경될 수 있지만, 웹 페이지 전체는 리로딩되지 않는다. 그 결과, 동적 웹 페이지의 실시간 상태(사용자가 임의의 특정한 순간에 관찰함)는 원래의, 최초로 로딩된 웹 페이지 컨텐트로부터 실질적으로 변경될 수 있다. 현재의 광고 관련성 합치(advertisement relevance matching) 기법들은 페이지 보기 이벤트에 기초하는데, 광고는 웹 페이지가 로딩되는 때의 웹 페이지 컨텐트에 합치된다. 그 결과, 사용자가 동적 웹 페이지와 상호작용하고 컨텐트가 수정됨에 따라, 웹 페이지 내의 광고는 사용자가 현재 보고 경험하는 것과의 관련성이 낮아지게 될 수 있다.
웹 페이지에서 디스플레이되는 광고는 웹 페이지의 컨텍스트가 변화함에 따라 변경될 수 있다. 예컨대, 하나 이상의 광고의 제1 집합이 웹 페이지 상에 디스플레이될 수 있다. 디스플레이되는 광고 중 하나 이상은 하나 이상의 대안적인 광고로 대체될 수 있다. 대안적인 광고의 선택은 웹 페이지의 컨텍스트의 변화를 야기하는 하나 이상의 이벤트의 발생에 기초하여 트리거(trigger)된다. 대안적인 광고의 디스플레이는 웹 페이지가 완전히 리로딩될 필요 없이 동적으로 수행된다. 이러한 방식으로, 웹 페이지 상에 디스플레이되는 광고는 웹 페이지 컨텍스트의 변화에 기초하여 변경되어, 변경된 컨텍스트에 더 잘 대응하는 광고를 사용자에게 제공할 수 있다.
일 구현예에서, 웹 페이지에서 광고를 동적으로 제공하기 위한 방법이 제공된다. 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제1 요청이 송신된다. 하나 이상의 광고의 제1 집합이 수신되고, 웹 페이지 상에 디스플레이되도록 제공된다. 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지가 수신된다. 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제2 요청이 이벤트 통지(들)에 기초하여 생성된다. 하나 이상의 광고의 제2 집합이 수신되고, 제1 집합의 적어도 하나의 광고 대신에 웹 페이지 상에 디스플레이되도록 제공된다.
상기 방법의 추가적인 구현예에 있어서, 웹 페이지의 컨텍스트에 대한 복수의 수정을 가리키는 복수의 이벤트 통지가 수신될 수 있다. 웹 페이지의 컨텍스트에 대한 복수의 수정은 집계될 수 있다. 집계된 컨텍스트 수정이 미리 결정된 문턱값에 도달하는 경우와 같은, 트리거 이벤트에 대응하는 이벤트 통지가 수신되는 경우, 광고에 대한 제2 요청이 생성될 수 있다.
상기 방법의 추가적인 구현예에 있어서, 웹 서비스로부터의 데이터에 대한 웹 페이지로부터의 요청이 수신될 수 있다. 웹 서비스로부터의 데이터에 대한 수신된 요청과 관련된 정보는 제1 이벤트 통지로서 저장될 수 있다. 데이터에 대한 요청은 웹 서비스에 송신될 수 있다. 응답 데이터가 웹 서비스로부터 수신될 수 있다. 응답 데이터는 제2 이벤트 통지로서 저장될 수 있다.
다른 구현예에서, 웹 페이지에서 광고를 동적으로 공급하도록 구성되는 동적 광고 공급자가 제공된다. 하나의 예시적인 구현예에 있어서, 동적 광고 공급자는 광고 요청 모듈(advertisement request module; ARM) 및 페이지 이벤트 청취자 모듈(page event listener module; PELM)을 포함한다. ARM은 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제1 요청을 생성하고, 제1 요청에 기초하여 하나 이상의 광고의 제1 집합을 수신하고, 웹 페이지 상에 디스플레이되도록 하나 이상의 광고의 제1 집합을 제공하도록 구성된다. PELM은 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하고 수신된 적어도 하나의 이벤트 통지를 ARM에 제공하도록 구성된다. ARM은 이벤트 통지(들)에 기초하여 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제2 요청을 생성하고, 제2 요청에 기초하여 하나 이상의 광고의 제2 집합을 수신하며, 제1 집합의 적어도 하나의 광고 대신에 웹 페이지 상에 디스플레이되도록 하나 이상의 광고의 제2 집합을 제공하도록 구성된다.
추가적인 구현예에서, PELM은 웹 페이지의 컨텍스트에 대한 복수의 수정을 가리키는 복수의 이벤트 통지를 수신하고, 복수의 이벤트 통지가 가리키는 웹 페이지의 컨텍스트에 대한 복수의 수정을 집계하여 웹 페이지의 컨텍스트에 대한 집계된 수정을 생성하도록 구성되는 컨텍스트 수정 집계기를 포함할 수 있다.
다른 추가적인 구현예에서, ARM은 집계된 수정이 미리 결정된 문턱값에 도달했는지 여부를 결정하고, 집계된 수정이 미리 결정된 문턱값에 도달한 것으로 결정되는 경우 ARM이 제2 요청을 생성할 수 있게 하도록 구성되는 컨텍스트 비교기를 포함할 수 있다.
다른 추가적인 구현예에서, PELM은 수신된 이벤트 통지가 트리거 이벤트에 대응하는지 여부를 결정하도록 구성되는 트리거 이벤트 생성기를 포함할 수 있다. ARM은 수신된 이벤트 통지가 트리거 이벤트에 대응하는 것으로 결정되는 경우 제2 요청을 생성하도록 구성될 수 있다.
다른 추가적인 구현예에서, 웹 서비스 인터페이스는 웹 서비스로부터의 데이터에 대한 웹 페이지로부터의 요청을 수신하도록 구성될 수 있다. 컨텍스트 수정 집계기는 웹 서비스로부터의 데이터에 대한 수신된 요청과 관련된 정보를 제1 이벤트 통지로서 저장하도록 구성될 수 있다. 웹 서비스 인터페이스는 데이터에 대한 요청을 웹 서비스에 송신하고 웹 서비스로부터 응답 데이터를 수신하도록 구성될 수 있다. 컨텍스트 수정 집계기는 응답 데이터를 제2 이벤트 통지로서 저장하도록 구성될 수 있다.
컴퓨터 프로그램 제품이 또한 본 명세서에 기술된다. 컴퓨터 프로그램 제품은 본 명세서에 기술되는 구현예들에 따라 광고들이 웹 페이지에서 동적으로 디스플레이되도록 하기 위한 컴퓨터 프로그램 로직이 기록된 컴퓨터 판독 가능 매체를 포함한다.
본 발명의 추가적인 특징 및 장점은 물론 본 발명의 다양한 실시예의 구조 및 동작은 첨부된 도면들을 참조하여 아래에서 상세히 기술된다. 본 발명은 본 명세서에 기술된 특정한 실시예들로 한정되지 않음에 주목한다. 이러한 실시예들은 본 명세서에서 예시를 위해서만 제공된다. 추가적인 실시예들은 관련 기술 분야(들)의 당업자에게는 본 명세서에 포함된 설명에 비추어 자명할 것이다.
본 명세서에 포함되고 그 일부를 형성하는 첨부된 도면들은 본 발명을 예시하고, 본 설명과 함께 또한 본 발명의 원리들을 해설하고 관련 기술 분야(들)의 당업자가 본 발명을 만들고 사용할 수 있게 하는 역할을 한다.
도 1은 사용자가 컨텐트를 열람하는 데 사용할 수 있는 컴퓨터의 블록도.
도 2는 사용자가 검색 엔진에 질의를 제출하는 것으로부터 초래될 수 있는 예시 검색 결과 페이지를 도시하는 도면.
도 3 및 5는 본 발명의 예시 실시예들에 따른 동적 광고 시스템의 블록도들.
도 4는 본 발명의 예시 실시예에 따른 동적으로 광고를 제공하기 위한 흐름도.
도 6은 본 발명의 예시 실시예에 따른 동적 광고 공급 시스템.
도 7은 본 발명의 예시 실시예에 따른 웹 페이지 소스 코드의 블록도.
도 8은 본 발명의 예시 실시예에 따른 동적 광고 공급자의 블록도.
도 9는 본 발명의 예시 실시예에 따른 웹 브라우저와 광고 서버 사이의 통신을 위한 시스템의 블록도.
도 10은 본 발명의 예시 실시예에 따라 웹 페이지가 광고들로 동적으로 업데이트될 수 있게 하기 위한 흐름도.
도 11은 본 발명의 예시 실시예에 따른 웹 브라우저, 웹 서비스 및 광고 서버 사이의 통신을 위한 시스템의 블록도.
도 12는 본 발명의 예시 실시예에 따른 웹 서비스를 액세스하기 위한 흐름도.
도 13은 본 발명의 예시 실시예에 따른 도 12의 흐름도에 포함될 수 있는 추가 프로세스를 도시하는 도면.
도 14는 본 발명의 예시 실시예에 따른, 웹 브라우저, 웹 서비스 및 광고 서버 사이의 통신을 위한 시스템의 블록도.
도 15 및 16은 본 발명의 실시예들에 따른 예시 동적 웹 페이지의 도면들.
도면 전체에 걸쳐 동일한 참조 부호들이 대응하는 요소들을 식별하는 도면들 과 함께 고려되는 경우, 본 발명의 특징 및 장점은 아래에 제시되는 상세한 설명으로부터 더 명확해질 것이다. 도면들에서, 동일한 참조 번호들은 일반적으로 동일하고/하거나, 기능적으로 유사하고/하거나 구조적으로 유사한 요소들을 가리킨다. 요소가 처음 나타나는 도면은 대응하는 참조 번호 내의 가장 왼쪽 숫자(들)에 의해 표시된다.
도입
본 명세서는 본 발명의 특징들을 포함하는 하나 이상의 실시예를 개시한다. 개시된 실시예(들)은 본 발명을 예시할 뿐이다. 본 발명의 범위는 개시된 실시예(들)로 한정되지 않는다. 본 발명은 본 명세서에 첨부된 청구항들에 의해 정의된다.
본 명세서에서 "일 실시예", "실시예", "예시 실시예" 등을 지칭하는 것은 기술된 실시예가 특정한 특징, 구조, 또는 특성을 포함할 수 있지만 모든 실시예가 반드시 그 특정한 특징, 구조, 또는 특성을 포함하는 것은 아닐 수 있음을 가리킨다. 더욱이, 그러한 문구들은 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 특징, 구조, 또는 특성이 실시예와 관련하여 기술되는 경우, 이러한 특징, 구조, 또는 특성을 이들이 명시적으로 기술되어 있는지 여부와 관계없이 다른 실시예들과 관련하여 구현하는 것은 본 기술 분야의 당업자의 지식에 속함을 밝혀둔다.
본 발명의 실시예들은 컨텍스트 광고 및 후원 검색의 형태를 갖는 광고와 같은 온라인 광고와 관련된다. 도 1 및 2는 컨텍스트 광고 및 후원 검색 환경에서 광고들을 디스플레이하는 예들을 도시한다. 예컨대, 도 1은 사용자가 컨텐트(108)를 열람하는 데 사용할 수 있는 컴퓨터(102)의 블록도를 도시한다. 도 1에 도시된 바처럼, 컴퓨터(102)는 웹 페이지(106)를 디스플레이하는 디스플레이(104)를 갖는다. 예컨대, 웹 페이지(106)는 웹 브라우저에서 열릴 수 있다. 사용자는 웹 페이지(106)에 대한 URL(uniform resource locator) 주소에 따라 웹 페이지(106)로 내비게이트(navigating)하는 것을 포함하는 임의의 방식으로 웹 페이지(106)가 디스플레이되게 할 수 있다. 도 1에 도시된 바처럼, 웹 페이지(106)는 웹 페이지(106)로 내비게이트함으로써 사용자가 디스플레이되게 한 컨텐트(108)를 포함한다. 또한 웹 페이지(106)는 도 1에 도시된 광고들(110a 내지 110c)을 포함하는 임의의 개수 및 배열의 광고를 포함할 수 있다. 광고들(110a 내지 110c)은 배너 광고, 플로팅 광고, 팝업 광고 및 비디오 광고를 포함하는 임의의 적합한 형태에 따라 디스플레이될 수 있다. 도 1의 예에서, 광고(110a)는 웹 페이지(106)의 맨 위에 배너로서 도시되고(예컨대 북쪽 배너), 광고들(110b 및 110c)은 둘 다 웹 페이지(106)의 오른쪽 가장자리에 인접하여 배치된다. 컨텐트(108)에 포함된 텍스트를 검색하고 검색된 텍스트에서 발견된 키워드들과 관련되는 광고들을 선택함으로써 광고들(110a 내지 110c)이 디스플레이를 위해 선택될 수 있다.
도 2는 사용자가 검색 엔진에 질의를 제출하는 것으로부터 초래될 수 있는 예시 검색 결과 페이지(200)를 도시한다. 검색 결과 페이지(200)는 웹 페이지(106)와 유사한 방식으로 도 1의 컴퓨터(102)에 의해 디스플레이될 수 있다. 검색 결과 페이지(200)는 전형적으로 웹 페이지이고, 검색 엔진에 의해 사용자에게 제공될 수 있다. 도 2에 도시된 바처럼, 검색 결과 페이지(200)는 검색 결과 섹션(202), 데이터 입력 상자(204) 및 검색 버튼(206)을 포함한다. 데이터 입력 상자(204)는 하나 이상의 질의어가 입력될 수 있는 사용자 편집 가능 영역을 정의한다. 검색 버튼(206)은 사용자에 의해 활성화되는 경우 검색 엔진이 데이터 입력 상자(204)에 입력된 질의어(들)에 기초하여 문서 검색을 수행하게 하는 인터페이스 요소를 포함한다. 검색 결과 섹션(202)은 제출된 검색 질의에 응답하여 검색 엔진에 의해 식별된 문서들에 관한 정보를 디스플레이하는 데 사용된다.
검색 결과 페이지(200)는 도 2에 도시된 광고들(110a 내지 110d)을 포함하는 임의의 개수 및 배열의 광고를 포함할 수 있다. 광고들(110a 내지 110d)은 배너 광고, 플로팅 광고, 팝업 광고, 텍스트 광고 및 비디오 광고를 포함하는 임의의 적합한 형태에 따라 검색 결과 페이지(200)에서 디스플레이될 수 있다. 도 2의 예에서, 광고들(110a 내지 110d)은 웹 페이지(106)의 오른쪽 가장자리에 인접한 열에 디스플레이된다. 광고들(110a 내지 110d)은 각각 광고자들에 의해 제공되는 후원 검색 광고일 수 있다. 광고자는 광고들(110a 내지 110d) 중 하나 이상이 하나 이상의 특정한 질의에 대해 검색 결과 페이지(200)의 후원 섹션에 나타나게 하기 위해 비용을 지불하거나 다른 보상을 제공할 수 있다.
도 1에 도시된 웹 페이지(106) 및 검색 결과 페이지(200)는 동적 웹 페이지들일 수 있다. 동적 웹 페이지는 새로운 "페이지 보기"를 생성하지 않고 변경될 수 있는 컨텐트(예컨대 웹 페이지를 리로딩하지 않고 웹 페이지의 컨텐트 중 일부가 변경될 수 있음)를 갖는다. 동적 웹 페이지는 클라이언트측 스크립팅 언어(예컨대 JavaScript 또는 유사한 스크립팅 언어)로 생성되는 것을 포함하는 다양한 방식으로 생성될 수 있다. 동적 웹 페이지의 컨텐트는 예컨대 사용자가 웹 페이지의 피처들과 상호작용하는 것으로 인해 변경될 수 있다. 예컨대, 도 1을 참조하면, 웹 페이지(106)를 열람하는 사용자는 컨텐트(108)에 디스플레이되는 피처를 클릭하거나 그 위에 커서를 옮길 수 있다. 컨텐트(108)에 디스플레이되는 피처를 클릭하거나 그 위에 커서를 옮김으로써, 예컨대 피처와 연관된 이미지의 디스플레이 또는 수정, 피처와 관련된 텍스트의 디스플레이 또는 수정 및/또는 다른 컨텐트 수정에 의해 컨텐트(108)가 수정될 수 있다. 도 2를 참조하면, 검색 결과 페이지(200)를 열람하는 사용자는 데이터 입력 상자(204)에 새로운 질의를 입력할 수 있는데, 이는 검색 결과 섹션(202)의 컨텐트의 변화, 또는 검색 도움 질의어의 디스플레이 및/또는 다른 컨텐트 수정을 포함하는 검색 컨텐트의 다른 변화를 야기할 수 있다.
어느 경우(도 1 및 도 2)이건, 수정된 컨텐트는 웹 페이지(106) 또는 검색 결과 페이지(200)를 리로딩하지 않고 디스플레이될 수 있다. 그 결과, 동적 웹 페이지의 실시간 상태(사용자가 임의의 특정한 순간에 관찰함)는 원래의, 최초로 로딩된 웹 페이지 컨텐트로부터 실질적으로 변경될 수 있고, 수정된 버전은 항상 어드레싱 가능(addressable)(예컨대 URL 주소를 사용하여)한 것은 아니다. 종래의 광고 관련성 합치 기법들은 페이지 보기 이벤트에 기초하는데, 광고는 웹 페이지가 로딩되는 때의 웹 페이지 컨텐트에 합치된다. 그 결과, 사용자가 동적 웹 페이지와 상호작용하고 컨텐트가 변경됨에 따라, 웹 페이지 내의 광고는 사용자가 현재 보고 경험하는 것과의 관련성이 낮아지게 될 수 있다. 도 1을 참조하면, 웹 페이지(106)를 리로딩하지 않고 컨텐트(108)가 수정됨에 따라, 광고들(110a 내지 110c)은 이들이 원래 로딩되었을 때보다 웹 페이지(106)의 컨텍스트와의 관련성이 낮아지게 될 수 있다. 도 2를 참조하면, 검색 결과 페이지(200)를 리로딩하지 않고 검색 결과 페이지(200)의 컨텐트가 수정됨에 따라, 광고들(110a 내지 110d)은 이들이 원래 로딩되었을 때보다 검색 결과 페이지(200)의 컨텍스트와의 관련성이 낮아지게 될 수 있다.
본 발명의 실시예들은 웹 페이지 리로딩 없이 더 많은 개수의 광고 및 더 큰 관련성을 갖는 광고가 동적 웹 페이지에 디스플레이되도록 하여 종래의 광고 관련성 합치 기법들의 결점들을 극복한다. 광고를 동적으로 제공하기 위한 예시 실시예들이 아래의 섹션에 기술된다.
광고를 동적으로 제공하기 위한 예시 실시예들
웹 페이지에서 광고를 동적으로 제공하기 위한 예시 실시예들이 본 명세서에 기술된다. 본 명세서에 기술된 예시 실시예들은 한정이 아닌 예시를 위해 제공된다. 수정/개변을 포함하는 추가적인 구조 및 동작 실시예들은 본 명세서의 설명으로부터 관련 기술 분야(들)의 당업자에게 자명해질 것이다.
위에서 기술된 바처럼, 동적 웹 페이지(예컨대 클라이언트측 JavaScript 또는 유사한 클라이언트측 스크립팅 언어로 생성될 수 있음)는 새로운 "페이지 보기"를 생성하지 않고 변경되는 컨텐트를 갖는다. 별개의 페이지 보기 이벤트가 없다는 것은, 웹 페이지의 실시간 상태(사용자가 임의의 특정한 순간에 관찰함)가 최초로 로딩된 웹 페이지 컨텐트로부터 실질적으로 변경될 수 있고, 따라서 사용자에게 디스플레이되는 광고는 사용자가 현재 보고 경험하는 것과의 관련성이 낮아지게 될 수 있음을 의미한다.
광고를 합치시키고 동적 웹 페이지에 전달하기 위한 실시예들이 제공된다. 동적 웹 페이지와의 사용자 상호작용{예컨대 링크를 클릭하고, 문자열을 입력하며, 맵에서 팬(pan) 및 줌(zoom)을 행하는 것 등에 의함}은 웹 페이지의 실시간 컨텐트 및 사용자 상호작용의 컨텍스트를 식별하기 위해 수집 및 사용되는 이벤트{API(application programming interface) 호출을 포함할 수 있음}를 생성한다. 이러한 정보는 사용자에게 디스플레이되는 페이지 내 광고를 업데이트하는 데 사용되어, 웹 페이지의 컨텍스트가 변화함에 따라 변화하는, 상황적으로 관련성이 더 높은 광고를 제공한다.
웹 페이지 상에서 동적으로 광고를 제공하기 위한 다양한 실시예가 본 명세서에 기술된다. 예컨대, 도 3은 본 발명의 예시 실시예에 따른 동적 광고 시스템(300)의 블록도를 도시한다. 도 3에 도시된 바처럼, 시스템(300)은 웹 페이지(302), 동적 광고 공급자(304) 및 광고 서버(306)를 포함한다. 동적 광고 공급자(304)는 웹 페이지(302) 상에 디스플레이하기 위한 광고를 동적 방식으로 제공하도록 구성되어, 웹 페이지(302)를 리로딩할 필요 없이 웹 페이지(302)에 디스플레이되는 광고가 반복적으로 업데이트될 수 있게 한다. 동적 광고 공급자(304)는 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수 있다. 예컨대, 동적 광고 공급자(304)는 하나 이상의 프로세서에서 실행되도록 구성되는 컴퓨터 코드로서 구현될 수 있다. 그 대신, 동적 광고 공급자(304)는 하드웨어 로직/전기 회로로서 구현될 수 있다.
시스템(300)이 도 4와 관련하여 아래와 같이 기술된다. 도 4는 본 발명의 예시 실시예에 따른 동적으로 광고를 제공하기 위한 흐름도(400)를 도시한다. 동적 광고 공급자(304)는 예컨대 흐름도(400)에 따라 동작할 수 있다. 추가적인 구조 및 동작 실시예들이 흐름도(400)에 관한 논의에 기초하여 관련 기술 분야(들)의 당업자에게 자명해질 것이다. 흐름도(400)는 아래와 같이 기술된다.
흐름도(400)는 단계(402)로 시작한다. 단계(402)에서, 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제1 요청이 송신된다. 도 3에 도시된 바처럼, 웹 페이지(302)가 디스플레이된다. 웹 페이지(302)는 컨텐트(310)와 같은 컨텐트를 디스플레이할 수 있다. 컨텐트(310)는 웹 페이지(302)에 대한 소스 코드에 포함될 수 있고/있거나 하나 이상의 컨텐트 서버로부터 요청될 수 있다. 컨텐트(310)는 예컨대 도 1에 도시된 컨텐트(108) 및/또는 도 2에 도시된 검색 결과 페이지(200)의 컨텐트와 유사할 수 있다. 전형적으로, 광고(312)와 같은, 웹 페이지(302)에서 디스플레이될 광고들은 광고 서버(306)와 같은 광고 서버로부터 요청된다. 웹 페이지(302)가 로딩되는 때에, 동적 광고 공급자(304)는 디스플레이할 하나 이상의 광고에 대한 제1 요청(314)을 웹 페이지(302)로부터 수신한다. 제1 요청(314)은 웹 페이지(302)를 위한 광고를 선택하는 데 사용될 수 있는 웹 페이지(302)의 컨텍스트에 관한 정보를 포함할 수 있다. 도 3에 도시된 바처럼, 동적 광고 공급자(304)는 제1 요청(314)을 광고 서버(306)에 송신한다.
단계(404)에서, 하나 이상의 광고의 제1 집합이 수신된다. 제1 요청(314)에 응답하여, 광고 서버(306)는 하나 이상의 광고를 선택한다. 광고 서버(306)는 제1 요청(314)에서 수신된 정보에 포함될 수 있는 웹 페이지(302)의 컨텍스트에 기초하여 하나 이상의 광고를 선택할 수 있다. 웹 페이지(302)의 컨텍스트는 웹 페이지(302)의 컨텐트(310)에 기초하는 것, 웹 페이지(302)가 디스플레이되게 하는 사용자(308)의 속성들, 웹 페이지(302)를 디스플레이하는 데 사용되는 전자 장치의 속성들 및/또는 컨텍스트의 다른 요소들을 포함하는 다양한 요인에 기초할 수 있다. 도 3에 도시된 바처럼, 광고 서버(306)는 제1 광고 집합(316)을 송신하는데, 이는 동적 광고 공급자(304)에 의해 수신된다. 제1 광고 집합(316)은 웹 페이지(302)에 디스플레이될 광고의 개수에 따라 광고 서버(306)에 의해 선택되는 임의의 개수의 하나 이상의 광고를 포함할 수 있다.
단계(406)에서, 웹 페이지 상에 디스플레이될 하나 이상의 광고의 제1 집합이 제공된다. 도 3에 도시된 바처럼, 동적 광고 공급자(304)는 디스플레이를 위해 웹 페이지(302)에 제1 광고 집합(316)을 제공한다. 도 3의 예에서, 제1 광고 집합(316)은 웹 페이지(302)에 디스플레이되는 것으로 도시된 광고(312)를 포함한다.
단계(408)에서, 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지가 수신된다. 도 5는 본 발명의 예시 실시예에 따라 이벤트 통지(506)가 동적 광고 공급자(304)에 의해 웹 페이지(302)로부터 수신되는 시스템(300)의 다른 도면을 도시한다. 이벤트 통지(506)는 웹 페이지(302)의 컨텍스트에 대한 수정이 발생하였음을 가리킨다. 동적 광고 공급자(304)는 시간에 따라 웹 페이지(302)로부터 임의의 개수의 하나 이상의 이벤트 통지(506)를 수신할 수 있다.
이벤트 통지(506)가 가리키는 웹 페이지(302)의 컨텍스트에 대한 수정은 사용자(308)가 웹 페이지(302)의 컨텐트(310)와 상호작용하는 것에 의해, 컨텐트(310)에 대한 수정을 야기하는 웹 페이지(302)의 코드/스크립트(예컨대 JavaScript 또는 다른 스크립팅 언어)에 의해 및/또는 다른 방식을 포함하는 다양한 방식으로 발생할 수 있다. 웹 페이지(302)의 컨텍스트에 대한 수정의 예는, 컨텐트(310)의 피처 상에 마우스 포인터를 옮기거나, 컨텐트(310)의 피처를 클릭하거나, 또는 사용자(308)에 의한 다른 동작에 의해 사용자(308)가 팝업 윈도우/텍스트/그래픽이 웹 페이지(302)에 나타나고/나타나거나 수정되게 하는 것, 사용자(308)가 웹 페이지(302) 내의 입력 상자에 검색 질의 또는 다른 텍스트 정보와 같은 텍스트를 타이핑하는 것, 사용자(308)가 웹 페이지(302) 내의 컨텐트(310)로서 디스플레이되는 지도를 가로질러 팬(pan)하는 것(예컨대 지도 내의 제1 위치로부터 제2 위치로의 팬), 사용자(308)가 체크리스트(checklist), 드롭다운(drop-down) 메뉴, 또는 컨텐트(310)의 다른 선택 가능한 피처로부터 옵션을 선택하는 것 및/또는 사용자(308)가 웹 페이지(302)의 컨텐트(310)와 상호작용할 수 있는 임의의 다른 방식을 포함한다. 예컨대, 도 5는 컨텐트(310){이전에 도 3에서 웹 페이지(302)에 디스플레이된 것으로 도시됨}의 수정된 형태인 웹 페이지(302) 내의 컨텐트(502)를 도시한다. 웹 페이지(302)의 컨텍스트에 대한 수정은 사용자(308)의 컨텐트(310)와의 상호작용에 직접 기초하거나{예컨대 사용자(308)에 의해 입력되는 텍스트} 또는 사용자(308)의 컨텐트(310)와의 상호작용에 간접적으로 기인할 수 있다{예컨대 사용자(308)에 의한 컨텐트(310)와의 상호작용에 기인하는 정보 생성 스크립트}.
웹 페이지(302)의 컨텍스트에 대한 수정에 관한 정보는 이벤트 통지(506)에 포함될 수 있다. 예컨대, 이벤트 통지(506)는 사용자(308)에 의해 입력되는 텍스트(예컨대 검색 질의), 웹 페이지(302)에 나타나는 새로운 텍스트(예컨대 JavaScript 또는 다른 스크립팅 언어에 의해 생성됨), 웹 페이지(302)에 나타나는 새로운 또는 수정된 그래픽 및/또는 텍스트와 연관된 태그(tag), 사용자(308)에 의해 선택된 옵션들의 표시, 웹 페이지(302)에서 사용자(308)가 열람하는 새로운 지도 위치 및/또는 웹 페이지(302)의 컨텍스트에 대한 수정에 관한 임의의 다른 정보를 포함할 수 있다.
단계(410)에서, 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제2 요청이 적어도 하나의 이벤트 통지에 기초하여 생성된다. 실시예에서, 동적 광고 공급자(304)는 웹 페이지(302)로부터 수신된 하나 이상의 이벤트 통지(506)에 관한 정보를 포함하는 광고에 대한 제2 요청을 생성할 수 있다. 웹 페이지(302)에서의 디스플레이를 위해 이전에 제공된 광고 집합(316)의 관련성이 이벤트 통지(들)(506)이 가리키는 웹 페이지(302) 내의 컨텍스트의 변화(들)로 인해 감소하였을 수 있기 때문에, 광고에 대한 제2 요청이 생성될 수 있다. 동적 광고 공급자(304)는 미리 결정된 개수의 이벤트 통지(506)의 수신, 특정한 유형의 이벤트 통지(506)의 수신, 미리 결정된 길이의 시간의 경과, 다른 유형의 트리거 이벤트 및/또는 트리거 이벤트들의 임의의 조합과 같은 하나 이상의 트리거 이벤트의 발생시에 제2 요청을 생성할 수 있다.
단계(412)에서, 제2 요청이 송신된다. 도 5에 도시된 바처럼, 동적 광고 공급자(304)는 하나 이상의 이벤트 통지(506)에 기초하여 생성된 광고에 대한 제2 요청인 제2 요청(508)을 송신할 수 있다. 제2 요청(508)은 광고 서버(306)에 의해 수신된다. 제2 요청(508)에 포함된 이벤트 통지(들)(506)에 관한 정보에 기초하여, 광고 서버(306)는 웹 페이지(302)에서의 디스플레이를 위한 하나 이상의 추가적 및/또는 대안적인 광고를 선택할 수 있다. 예컨대, 단계(404)와 관련하여 위에서 기술된 바와 같은 광고 서버(306)에 의해 수행되었을 수 있는 것과 같은 종래의 컨텍스트 합치 기법들에 기초하여, 광고 서버(306)는 하나 이상의 추가적 및/또는 대안적인 광고를 선택할 수 있다.
단계(414)에서, 하나 이상의 광고의 제2 집합이 수신된다. 도 5에 도시된 바처럼 광고 서버(306)는 제2 광고 집합(510)을 송신하고, 이는 동적 광고 공급자(304)에 의해 수신된다. 제2 광고 집합(510)은 웹 페이지(302)에서 현재 디스플레이되는 광고{예컨대 제1 광고 집합(316)} 대신에 디스플레이될 것으로 결정된 광고의 개수에 따라 임의의 개수의 하나 이상의 광고를 포함할 수 있다.
단계(416)에서, 제1 집합의 적어도 하나의 광고 대신에 웹 페이지 상에 디스플레이되도록 하나 이상의 광고의 제2 집합이 제공된다. 도 5에 도시된 바처럼, 동적 광고 공급자(304)는 디스플레이를 위해 제2 광고 집합(510)을 웹 페이지(302)에 제공한다. 도 5의 예에서, 제2 광고 집합(510)은 광고(312) 대신에 웹 페이지(302)에서 디스플레이되는 것으로 도시된 광고(504)를 포함한다. 광고(504)는 웹 페이지(302)가 리로딩되지 않더라도 웹 페이지(302)에서 디스플레이됨에 주목한다.
시스템(300) 및 흐름도(400)에 따르면, 종래의 광고 공급 시스템에서와 같이 웹 페이지가 처음 로딩되는 때부터 동일한 하나 이상의 광고가 웹 페이지에 디스플레이되는 대신, 웹 페이지의 임의의 리로딩 전에, 웹 페이지의 컨텍스트가 변화함에 따라 하나 이상의 광고가 웹 페이지에서 디스플레이되는 하나 이상의 다른 광고를 대체하도록 제공될 수 있다. 이는 광고 공급자에게 장점을 제공하는데, 그 까닭은 웹 페이지의 임의의 단일 로딩 중에 더 많은 개수의 광고가 디스플레이될 수 있기 때문이다. 이는 또한 소비자에게 장점을 제공하는데, 그 까닭은 웹 페이지의 컨텍스트의 수정으로 인해 소비자에 관한 추가 정보가 획득됨에 따라 웹 페이지 상에서 소비자에게 디스플레이되는 광고가 업데이트될 수 있기 때문이다. 이러한 방식으로, 소비자는 웹 페이지를 열람하고/하거나 웹 페이지와 상호작용하는 동안에 관련성이 높아지는 광고를 보는 것이 가능해질 수 있다.
시스템(300)은 다양한 방식으로 구현될 수 있다. 예컨대, 일 실시예에서, 웹 페이지(302) 및 동적 광고 공급자(304)는 상이한 컴퓨터 시스템 상에서 호스팅(host)될 수 있고, 네트워크를 통해 서로 통신할 수 있다. 다른 실시예에서, 웹 페이지(302) 및 동적 광고 공급자(304)는 동일한 컴퓨터 시스템 상에 존재할 수 있고, 따라서 인터컴퓨터(inter-computer) 방식으로 서로 통신할 수 있다.
예컨대, 도 6은 본 발명의 예시 실시예에 따른 동적 광고 시스템(600)을 도시한다. 시스템(600)은 도 3에 도시된 시스템(300)의 일례이다. 도 6에 도시된 바처럼, 시스템(600)은 전자 장치(602), 네트워크(604), 컨텐트 서버(606) 및 광고 서버(306)를 포함한다. 도 6에 도시된 바처럼, 전자 장치(602)는 웹 페이지(302) 및 동적 광고 공급자(304)를 포함한다. 시스템(600)의 요소들은 아래와 같이 기술된다.
전자 장치(602)는 데스크톱 컴퓨터(예컨대 개인용 컴퓨터 등), 이동 컴퓨팅 장치{예컨대 휴대 전화, 스마트폰, PDA(personal digital assistant), 랩톱(laptop) 컴퓨터, 노트북 컴퓨터 등}, 또는 이동 이메일 장치(예컨대 RIM Blackberry® 장치)를 포함하는, 웹 브라우징 기능으로 구성될 수 있는 임의의 유형의 전자 장치일 수 있다.
도 6에 도시된 바처럼, 전자 장치(602)는 통신 링크(610)에 의해 네트워크(604)에 결합된다. 네트워크(604)는 LAN(local area network), WAN(wide area network), PAN(personal area network), 또는 통신 네트워크들의 조합과 같은 임의의 유형의 통신 네트워크일 수 있다. 실시예들에서, 네트워크(604)는 인터넷 및/또는 인트라넷을 포함할 수 있다. 전자 장치(602)는 컨텐트 서버(606) 및 광고 서버(306)를 포함하는 주체들과 네트워크(604)를 통해 통신할 수 있다. 도 6에 도시된 바처럼, 컨텐트 서버(606)는 통신 링크(612)에 의해 네트워크(604)에 결합되고, 광고 서버(306)는 통신 링크(614)에 의해 네트워크(604)에 결합된다. 네트워크(604)가 인터넷을 포함하는 실시예들에서, 월드 와이드 웹의 일부를 형성하는 웹 페이지(302)와 같은 웹 페이지들은 네트워크(604)를 통한 전자 장치(602)에 의한 색출(retrieval)을 위해 이용 가능하다. 인트라넷 상에서, 웹 페이지들은 http://www.yahoo.com과 같은 URL(uniform resource locator) 및/또는 다른 메커니즘들에 의해 식별/위치 파악될 수 있다. 전자 장치(602)는 웹 페이지(302)에 대응하는 URL을 문서 서버(도 3에 도시되지 않음)에 공급함으로써 네트워크(604)를 통해 웹 페이지(302)를 액세스할 수 있다.
전자 장치(602)는 웹 페이지(302)와 같은 웹 페이지들을 로딩 및 디스플레이하도록 구성되는 웹 브라우저(608)를 동작시킨다. 또한, 웹 브라우저(608)는 동적 광고 공급자(304)를 포함할 수 있거나, 또는 동적 광고 공급자(304)를 로딩하도록 구성될 수 있다. 일 실시예에서, 웹 페이지(302) 및 동적 광고 공급자(304)는 별개로 수신되고 별개로 웹 브라우저(608)에 로딩될 수 있다. 다른 실시예에서, 웹 페이지(302) 및 동적 광고 공급자(304)는 함께 패키징(package)되고 함께 웹 브라우저(608)에 로딩될 수 있다. 예컨대, 도 7은 본 발명의 예시 실시예에 따른 웹 페이지 소스 코드(700)의 블록도이다. 도 7에 도시된 바처럼, 웹 페이지 소스 코드(700)는 컨텐트 관련 소스 코드 부분(702) 및 동적 광고 공급자(304)를 포함한다. 이러한 실시예에서, 동적 광고 공급자(304)는 프로그램 코드의 형태를 가질 수 있다. 웹 브라우저(608)는 서버로부터 웹 페이지(302)를 요청할 수 있고, 이에 응답하여 웹 페이지(302)에 대응하는 웹 페이지 소스 코드(700)를 수신할 수 있다. 웹 브라우저(608)는 컨텐트 관련 소스 코드 부분(702)이 가리키는 바에 따라 네트워크(604)를 통해 하나 이상의 컨텐트 서버(606)를 액세스함으로써 웹 페이지(302)에 대한 컨텐트(310)를 획득할 수 있다. 또한, 웹 브라우저(608)는 위에서 기술된 바처럼 동적 광고 공급자(304)에 따라 네트워크(604)를 통해 광고 서버(306)를 액세스함으로써 웹 페이지(302)에 대한 하나 이상의 광고(312)를 획득할 수 있다.
동적 광고 공급자(304)는 자신의 기능들을 수행하기 위해 다양한 방식으로 구성될 수 있다. 예컨대, 도 8은 본 발명의 예시 실시예에 따른 동적 광고 공급자(304)의 블록도를 도시한다. 도 8에 도시된 바처럼, 동적 광고 공급자(304)는 페이지 이벤트 청취자 모듈(PELM)(802) 및 광고 요청 모듈(ARM)(804)을 포함할 수 있다. 일 실시예에서, ARM(804)은 흐름도(400)의 단계들(402 내지 406 및 410 내지 416)을 수행하도록 구성될 수 있고, PELM(802)은 단계(408)를 수행하도록 구성될 수 있다.
PELM(802) 및 ARM(804)은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수 있다. 예컨대, PELM(802) 및/또는 ARM(804)은 하나 이상의 프로세서에서 실행되도록 구성되는 컴퓨터 코드로서 구현될 수 있다. 그 대신, PELM(802) 및/또는 ARM(804)은 하드웨어 로직/전기 회로로서 구현될 수 있다. 예컨대, 일 실시예에서, ARM(804)은 광고를 웹 페이지에 삽입하기 위한 프로그램 코드의 형태로 기능을 포함하는 JavaScript(또는 다른 프로그래밍 또는 스크립팅 언어) 라이브러리를 포함할 수 있다.
도 3을 참조하면, ARM(804)은 광고 서버(306)에 송신될, 웹 페이지(302) 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제1 요청(314)을 생성하고, 제1 광고 집합(316)을 수신하며, 웹 페이지(302) 상에서 디스플레이되도록 제1 광고 집합(316)을 제공하도록 구성될 수 있다. 도 5를 참조하면, PELM(802)은 웹 페이지(302)의 컨텍스트에 대한 수정을 가리키는 이벤트 통지(들)(506)을 수신하고 이벤트 통지(들)을 ARM(804)에 제공하도록 구성될 수 있다.
일 실시예에서, PELM(802)은 웹 페이지(302)를 표현하는 문서 객체 모델(document object model; DOM)에 대한 수정으로서 웹 페이지(302)에 대한 수정을 모니터링할 수 있다. 정적 웹 페이지는 웹 서버에 의해 최종 구조 및 형식으로서 서비스되는 HTML을 포함한다. 웹 서버 상에서, HTML 문서는 동적으로 구축될 수 있거나, 또는 저장소 내의 정적 파일로부터 판독되고 서비스될 수 있다. 이러한 유형의 HTML 문서 중 어떤 것도 정적 웹 페이지로 간주될 수 있다. 웹 페이지가 클라이언트 브라우저{예컨대 도 6에 도시된 웹 브라우저(608)}에 송신되었으면, 정적 웹 페이지의 구조 및 컨텐트는 변경되지 않는다. 반면, 동적 웹 페이지는 웹 페이지가 웹 브라우저(608)에 의해 로딩된 후에 수정될 수 있는 컨텐트 및/또는 구조를 포함한다.
HTML 문서가 웹 브라우저(608)에 의해 로딩되는 경우, HTML 문서의 구조 및 컨텐트에 대응하는 메모리 내 데이터 구조가 생성된다. 이러한 데이터 구조가 DOM이다. DOM은 웹 브라우저(608) 내의 HTML 문서를 표현하고, HTML 문서의 컨텐트, HTML 문서의 요소들 사이의 구조적 관계, 프레젠테이션 설명 및/또는 추가 요소들을 포함한다. DOM은 계층적으로 배열된 노드들을 포함하는 트리(tree) 구조이다. 노드는 HTML 요소, HTML 문서의 텍스트 컨텐트를 표현하는 텍스트 노드, 요소의 속성, 이미지 등일 수 있다. 일 실시예에서, 웹 브라우저(608)가 HTML 문서를 판독하는 경우, 웹 브라우저(608)는 HTML 문서를 표현하기 위한 DOM 트리 구조를 생성한다.
동적 웹 페이지는 소정의 스크립트 요소들(전형적으로 JavaScript 또는 ECMAScript와 같은 DOM 스크립팅 언어로 작성됨)을 포함한다. 이러한 스크립트들은 HTML 문서의 순차 분석(in-order parsing)으로, 또는 DOM에 의해 생성된 이벤트들에 응답하여 실행된다. 동적 웹 페이지의 스크립트는 예컨대 노드의 추가, 노드의 제거, 노드의 이동, 값 및 특성의 변경, 이벤트 합성 및 추가적인 유형의 이벤트에 의해 DOM 트리 구조를 수정할 수 있다. 스크립트는 또한 후속 HTTP 요청들을 외부 서버들에게 발행함으로써 외부 소스로부터 추가적인 데이터를 로딩할 수 있다. 색출된 데이터는 스크립트에 의해 분석되고, DOM 트리에 삽입될 수 있거나 그렇지 않으면 DOM을 수정하는 데 사용될 수 있다.
PELM(802)은 페이지의 컨텐트를 수정하는 DOM 이벤트를 이벤트 통지(506)의 형태로 수신하도록 구성될 수 있다. 예컨대, 이벤트 통지(506)는 DOMNodeInserted 이벤트(예컨대 DOM 트리에 노드가 삽입됨), DOMNodeRemoved 이벤트(예컨대 DOM 트리로부터 노드가 제거됨), DOMSubtreeModified 이벤트(예컨대 DOM 트리의 노드에 대한 수정), 또는 다른 유형의 수정을 포함하는 특정한 유형의 수정의 형태를 가질 수 있는데, 이들 각각은 DOM이 그에 대응하여 수정되는 경우에 PELM(802)에 제공될 수 있다. PELM(802)은 사용자가 웹 페이지의 요소들과 상호작용하는 경우(예컨대 양식 필드에 값을 타이핑하거나, 버튼을 클릭하거나, 무언가를 선택하는 등)에 생성되는 onClick, onChange, 또는 다른 이벤트들에 응답하는 이러한 그리고 많은 양식 요소, 하이퍼링크, 이미지 등에 대한 이벤트 청취자들을 포함할 수 있다.
도 5를 참조하면, ARM(804)은 광고 서버(306)에 송신될, 웹 페이지(302) 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제2 요청(508)을 이벤트 통지(들)(506)에 기초하여 생성하고, 제2 광고 집합(510)을 수신하며, 제1 광고 집합(316)의 하나 이상의 광고 대신에 웹 페이지(302) 상에서 디스플레이되도록 제2 광고 집합(510)을 제공하도록 구성될 수 있다.
PELM(802) 및 ARM(804)은 이들의 각각의 기능을 수행하기 위해 다양한 방식으로 구성될 수 있다. 예컨대, 도 9는 본 발명의 예시 실시예에 따른 웹 브라우저(608) 및 광고 서버(306) 사이의 통신을 위한 시스템(900)의 블록도를 도시한다. 웹 브라우저(608)는 웹 페이지(302)를 포함하고(예컨대 로딩하였고), PELM(802) 및 ARM(804)의 예들을 포함한다. 시스템(900)이 아래와 같이 기술된다.
도 9에 도시된 바처럼, 일 실시예에서, PELM(802)은 컨텍스트 수정 집계기(902) 및 트리거 이벤트 결정기(904)를 포함할 수 있다. 컨텍스트 수정 집계기(902) 및 트리거 이벤트 결정기(904)는 도 10과 관련하여 아래와 같이 기술된다. 도 10은 본 발명의 예시 실시예에 따라 웹 페이지가 광고들로 동적으로 업데이트될 수 있게 하기 위한 흐름도(1000)를 도시한다. 추가적인 구조 및 동작 실시예들은 흐름도(1000)에 관한 논의에 기초하여 관련 기술 분야(들)의 당업자에게 자명해질 것이다. 흐름도(1000)가 아래와 같이 기술된다.
흐름도(1000)는 단계(1002)로 시작한다. 단계(1002)에서, 하나 이상의 광고의 집합을 디스플레이하는 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지가 수신된다. 예컨대, 도 9에 도시된 바처럼, 컨텍스트 수정 집계기(902)가 이벤트 통지(506)를 수신한다. 위에서 기술된 바처럼, 이벤트 통지(506)는 웹 페이지(302)의 컨텍스트에 대한 수정을 가리킨다. 도 9에 도시된 바처럼, 웹 페이지(302)는 컨텐트(310) 및 광고(312){이는 예컨대 도 4에 도시된 단계들(402 내지 406)에 따라 ARM(804)에 의해 이전에 웹 페이지(302)에 로딩되었을 수 있음}를 디스플레이한다. 컨텍스트 수정 집계기(902)는 도 6에 도시된 전자 장치(602)와 연관된 저장소{예컨대 하나 이상의 메모리 장치(예컨대 캐시 메모리), 저장 장치, 또는 다른 저장소}에 이벤트 통지(506)를 저장하도록 구성될 수 있다. 일 실시예에서, 컨텍스트 수정 집계기(902)는 웹 페이지(302)로부터 수신된 복수의 이벤트 통지(506)를 집계하여 웹 페이지(302)의 컨텍스트에 대한 집계된 수정을 생성하는 단계를 수행하도록 구성될 수 있다.
단계(1004)에서, 트리거 이벤트에 대응하는 이벤트 통지가 결정된다. 예컨대, 트리거 이벤트 결정기(904)는 트리거 이벤트에 대응하는 이벤트 통지(506)의 수신에 대해 컨텍스트 수정 집계기(902)에 의해 수신되는 이벤트 통지(506)를 모니터링할 수 있다. 트리거 이벤트 결정기(904)는 다양한 유형 및/또는 조합의 트리거 이벤트에 대해 이벤트 통지(506)를 모니터링하도록 구성될 수 있다. 트리거 이벤트의 예는 미리 결정된 개수의 이벤트 통지(506)(예컨대 미리 결정된 양의 컨텐트가 DOM에 추가되거나, 미리 결정된 양의 컨텐트가 DOM으로부터 제거되거나, 미리 결정된 양의 컨텐트가 DOM에서 수정되거나, 이들의 임의의 조합 등)의 수신, 특정한 유형의 이벤트 통지(506)(예컨대 사용자가 웹 페이지(302) 상의 요소와 상호작용하는 것, 대화 상자에 검색 질의를 타이핑하는 것, 지도를 가로질러 새로운 위치로 팬하는 것, 체크리스트나 드롭다운 상자 내의 옵션을 선택하는 것 등을 포함하는, 본 명세서의 다른 곳에서 기술된 임의의 유형의 이벤트)의 수신, 미리 결정된 길이의 시간의 경과, 또는 다른 임의의 적합한 유형의 트리거 이벤트를 포함한다. 트리거 이벤트 결정기(904)가 트리거 이벤트에 대응하는 이벤트 통지(506)가 수신된 것으로 결정하는 경우, 단계(1006)가 수행될 수 있다.
단계(1006)에서, 하나 이상의 대안적인 광고가 획득되고 제1 집합의 적어도 하나의 광고 대신에 웹 페이지 상에 디스플레이될 수 있게 하도록 적어도 하나의 이벤트 통지가 제공된다. 예컨대, 트리거 이벤트 결정기(904)는 트리거 이벤트가 발생한 것으로 결정(예컨대 단계 1004에서)한 후에 컨텍스트 수정 집계기(902)에게 집계된 컨텍스트 수정(908)을 ARM(804)에 송신하도록 지시할 수 있다.
도 9에 도시된 바처럼, ARM(804)은 집계된 컨텍스트 수정(908)을 수신한다. 위에서 기술된 바처럼, ARM(804)은 도 4에 도시된 흐름도(400)의 단계들(410 내지 416)을 수행할 수 있다. 도 9를 참조하면, ARM(804)은 광고 서버(306)에 송신될, 웹 페이지(302) 상에서의 디스플레이를 위한 하나 이상의 광고에 대한 제2 요청(508)을 집계된 컨텍스트 수정(908)에 기초하여 생성하도록 구성될 수 있다. 도 9에 도시된 바처럼, ARM(804)은 컨텍스트 비교기(906)를 포함할 수 있다. 컨텍스트 비교기(906)는 집계된 컨텍스트 수정(908)이 가리키는 웹 페이지(302)에 대한 집계된 컨텍스트 수정이 미리 결정된 문턱값에 도달하였는지 여부를 결정하도록 구성될 수 있다. 집계된 컨텍스트 수정(908)이 미리 결정된 문턱값에 도달한 것으로 결정되는 경우, ARM(804)은 제2 요청(508)을 생성할 수 있다. 집계된 컨텍스트 수정(908)이 미리 결정된 문턱값에 도달한 것으로 결정되지 않는 경우, ARM(804)은 컨텍스트 수정 집계기(902)로부터 수신되는 집계된 컨텐트 수정(908)을 누적할 수 있는데, 이는 누적된 집계된 컨텐트 수정이 미리 결정된 문턱값에 도달할 때까지 이루어진다.
위에서 기술되고 도 9에 도시된 바처럼, ARM(804)은 제2 요청(508)을 송신하고, 광고 서버(306)에 의해 수신된다. 이에 응답하여, 광고 서버(306)는 제2 요청(508)이 가리키는 수정된 컨텍스트에 기초하여 제2 광고 집합을 선택하고, 제2 광고 집합(510)을 송신한다. ARM(804)은 광고 서버(306)로부터 제2 광고 집합(510)을 수신할 수 있고, 광고(312)를 포함하는 제1 광고 집합(316)의 하나 이상의 광고 대신에 웹 페이지(302) 상에 디스플레이되도록 제2 광고 집합(510){예컨대 도 5에 도시된 광고(504)를 포함함}을 제공할 수 있다.
컨텍스트 수정 집계기(902), 트리거 이벤트 결정기(904) 및 컨텍스트 비교기(906)는 하드웨어, 소프트웨어, 또는 이들의 임의의 조합으로 구현될 수 있음에 주목한다. 예컨대, 컨텍스트 수정 집계기(902), 트리거 이벤트 결정기(904) 및/또는 컨텍스트 비교기(906)는 하나 이상의 프로세서에서 실행되도록 구성되는 컴퓨터 코드로서 구현될 수 있다. 그 대신, 컨텍스트 수정 집계기(902), 트리거 이벤트 결정기(904) 및/또는 컨텍스트 비교기(906)는 하드웨어 로직/전기 회로로서 구현될 수 있다.
실시예들에서, 웹 페이지(302)의 컨텍스트에 대한 수정에 관한 정보는 웹 페이지(302)에 의해 액세스되는 네트워크 기반 애플리케이션(예컨대 웹 서비스)과 관련하여 획득될 수 있다. 데이터 및 웹 서비스 API(application programming interface)(예컨대 Yahoo!® Maps, Yahoo!® Local 등)는 현재 서비스 공급자(예컨대 Yahoo!®) 또는 소비자{웹 개발자, 매시업 빌더(mashup builder) 등}에 대한 수익을 생성하지 않는다. 개발자들은 종종 Google® AdSense 또는 Yahoo!® Content Match와 같은 서비스를 통해 자신들의 웹 페이지 상에 광고를 배치하는 것을 통해 수익을 낳기를 원한다. 그러나, 위에서 언급된 바처럼, 종래의 데이터 주도적인 동적 웹사이트의 성질은 디스플레이되는 광고의 관련성이 사용자가 페이지와 상호작용함에 따라 감소한다는 것이다. 데이터 스트림에 광고를 내장하는 대안적인 모델, 예컨대 RSS를 위한 Yahoo!® Content Match는 데이터가 XML, JSON, 또는 다른 프로토콜들을 통해 배포되고 있는 경우에 명확한 아날로그를 갖지 않는다. 또한, 이러한 데이터 스트림이 RSS 리더(reader)의 인간이 아닌 소프트웨어 컴포넌트에 의해 소비되고 있는 경우, 광고가 사용자에게 전달된다고 보장하기가 어렵다.
본 발명의 실시예들은 API 호출의 모니터링을 가능하게 한다. 데이터가 API 호출의 형태로 원격 애플리케이션으로부터 요청되는 경우, 웹 페이지의 컨텍스트를 바꿀 수 있는 웹 페이지 내의 소정의 이벤트에 응답하여 데이터가 요청될 수 있다. 그 결과, 웹 페이지의 바뀐 컨텍스트를 더 잘 반영하는 제2 광고 집합이 웹 페이지에 디스플레이되는 것이 바람직할 수 있다. 이러한 방식으로, 보다 목표 지향적인 광고가 웹 서비스에 의해 서비스되고 있는 현재의 컨텐트를 반영하면서 실시간으로 웹 페이지 상에 디스플레이될 수 있다. 웹 페이지로부터의 API 호출은 컨텍스트 수정 집계기(902)에 의해 이벤트 통지로서 수신될 수 있고, 특정한 구현예에 대해 바람직한 경우 선택적으로 트리거 이벤트 결정기(904)에 의해 트리거 이벤트의 한 유형으로 간주될 수 있다.
예컨대, 도 11은 본 발명의 예시 실시예에 따른 웹 브라우저(608), 광고 서버(306) 및 웹 서비스(1102) 사이의 통신을 위한 시스템(1100)의 블록도를 도시한다. 도 11에서, 웹 브라우저(608)는 웹 페이지(302)를 포함하고(예컨대 로딩하였고), PELM(802) 및 ARM(804)의 예들을 포함한다. 시스템(1100)이 아래와 같이 기술된다.
도 11에 도시된 바처럼, 일 실시예에서, PELM(802)은 컨텍스트 수정 집계기(902), 트리거 이벤트 결정기(904) 및 웹 서비스 인터페이스(1104){대안적인 실시예에서 웹 서비스 인터페이스(1104)는 PELM(802)으로부터 분리될 수 있음에 주목}를 포함할 수 있다. 웹 서비스 인터페이스(1104)는 도 12와 관련하여 아래와 같이 기술된다. 도 12는 본 발명의 예시 실시예에 따른 웹 페이지와 웹 서비스 사이의 통신을 가능하게 하기 위한 흐름도(1200)를 도시한다. 추가적인 구조 및 동작 실시예들은 흐름도(1200)에 관한 논의에 기초하여 관련 기술 분야(들)의 당업자에게 자명해질 것이다. 흐름도(1200)가 아래와 같이 기술된다.
흐름도(1200)는 단계(1202)로 시작한다. 단계(1202)에서, 웹 서비스로부터의 데이터에 대한 웹 페이지로부터의 요청이 수신된다. 예컨대, 도 11에 도시된 바처럼, 웹 서비스 인터페이스(1104) 및 컨텍스트 수정 집계기(902)가 웹 페이지(302)로부터 웹 서비스 데이터 요청(1106)을 수신한다.
단계(1204)에서, 웹 서비스로부터의 데이터에 대한 수신된 요청과 관련된 정보가 제1 수정 이벤트로서 저장된다. 일 실시예에서, 컨텍스트 수정 집계기(902)는 이벤트 통지{예컨대 이벤트 통지(506)}에서 수신된 정보를 저장하는 것과 유사하게 웹 서비스 데이터 요청(1106)과 같은 웹 서비스 데이터에 대한 요청들을 수정 이벤트로서 저장하도록 구성된다. 예컨대, 웹 서비스 데이터 요청(1106)은 검색 질의 또는 다른 텍스트 정보, 지도 상의 위치를 디스플레이하기 위한 요청, 또는 웹 서비스로부터의 데이터에 대한 요청과 관련된 임의의 다른 정보를 포함할 수 있다. 이러한 정보는 컨텍스트 수정 집계기(902)에 의해 수정 이벤트로서 저장될 수 있다. 컨텍스트 수정 집계기(902)는 웹 서비스 데이터 요청(1106)의 정보를 다른 컨텍스트 수정 정보{예컨대 하나 이상의 다른 이벤트 통지(506)로서 수신됨}와 함께 집계할 수 있고, 이는 집계된 컨텍스트 수정(908)으로서 출력될 수 있다. 집계된 컨텍스트 수정(908)에 포함된 웹 서비스 데이터 요청(1106)의 정보 및 추가적인 정보는, 본 명세서의 다른 부분에서 기술된 바와 같이 이전의 디스플레이 광고 대신에 디스플레이하기 위해 웹 페이지(302)에 제공될 제2 광고 집합{예컨대 제2 광고 집합(510)}을 광고 서버(306)로부터 획득하기 위해 ARM(804)에 의해 사용될 수 있다.
단계(1206)에서, 데이터에 대한 요청이 웹 서비스에 송신된다. 도 11에 도시된 바처럼, 웹 서비스 인터페이스(1104)는 웹 서비스 요청(1108)을 송신한다. 웹 서비스 인터페이스(1104)는 임의의 유형의 애플리케이션 프로그래밍 인터페이스(API), 또는 웹 서비스(1102)와 같은 원격 애플리케이션과 통신하도록 구성된 다른 원격 애플리케이션 인터페이스일 수 있다. 웹 서비스 인터페이스(1104)는 예컨대 웹 페이지(302)에 의한 웹 서비스(1102)에 대한 동적 페이지 내 액세스를 제공하도록 구성되는 API 라이브러리를 포함할 수 있다. 웹 서비스 요청(1108)이 웹 서비스(1102)에 의해 수신되고 처리된다. 웹 서비스(1102)는 매핑(mapping) 도구(예컨대 Yahoo!® Maps, MapQuest 및 Google™ Maps), 이미지 공유 도구(예컨대 Yahoo! Flickr™), 또는 임의의 다른 네트워크 기반 웹 서비스 또는 애플리케이션을 포함하는 임의의 유형의 네트워크 기반 웹 서비스 또는 다른 네트워크 기반 애플리케이션일 수 있다. 웹 서비스(1102)의 수천가지 예가 존재하며, 관련 기술 분야(들)의 당업자에게 알려질 것이다.
단계(1208)에서, 응답 데이터가 웹 서비스로부터 수신된다. 도 11에 도시된 바처럼, 웹 서비스(1102)는 웹 서비스 응답(1110)을 생성 및 송신하는데, 이는 웹 서비스 인터페이스(1104)에 의해 수신된다. 웹 서비스 응답(1110)은 웹 서비스 요청(1108)에 대응하는 응답 데이터를 포함한다. 예컨대, 웹 서비스 응답(1110)은 텍스트 정보, 생성된 데이터, 매핑 정보, 이미지, 비디오 및/또는 임의의 다른 관련 데이터를 포함할 수 있다.
단계(1210)에서, 응답 데이터에 기초하여 웹 페이지의 디스플레이가 수정될 수 있도록 응답 데이터가 제공된다. 도 11에 도시된 바처럼, 웹 서비스 인터페이스(1104)는 웹 서비스 응답(1110)에서 수신된 데이터를 포함하는 웹 서비스 응답 데이터(1112)를 웹 페이지(302)에 제공한다. 웹 서비스 응답 데이터(1112)를 수신한 후에, 웹 페이지(302) 내의 컨텐트(310)가 그에 따라 수정될 수 있다{예컨대 웹 브라우저(608)에 의해}.
도 11의 실시예에서, 웹 페이지(302)로부터 수신된 웹 서비스(1102)로부터의 데이터에 대한 요청과 관련된 정보는 웹 페이지(302)에 대한 집계된 컨텍스트 수정에 포함될 수 있다. 추가적인 실시예에서, 웹 서비스(1102)로부터 수신된 응답 데이터는 웹 페이지(302)에 대한 집계된 컨텍스트 수정에 추가적으로 또는 대안적으로 포함될 수 있다. 예컨대, 일 실시예에서, 도 12에 도시된 흐름도(1200)는 도 13에 도시된 단계(1302)를 더 포함할 수 있다. 도 13에 도시된 바처럼, 단계(1302)에서, 응답 데이터는 제2 수정 이벤트로서 저장된다. 이러한 실시예에서, 웹 서비스 응답 데이터(1112)는 또한 컨텍스트 수정 집계기(902)에 의해 웹 페이지(302)의 컨텍스트에 대한 수정으로서 저장될 수 있다. 컨텍스트 수정 집계기(902)는 트리거 이벤트의 발생시에 응답 데이터를 (임의의 추가적인 집계된 컨텍스트 수정 정보와 함께) ARM(804)에 제공할 수 있다.
예컨대, 도 14는 본 발명의 다른 예시 실시예에 따른 웹 브라우저(608), 광고 서버(306) 및 웹 서비스(1102) 사이의 통신을 위한 시스템(1400)의 블록도를 도시한다. 시스템(1400)은 도 11에 도시된 시스템(1100)과 전반적으로 유사하지만, 아래와 같이 기술되는 차이가 있다. 도 11과 관련하여 위에서 기술된 바처럼, 웹 서비스 인터페이스(1104) 및 컨텍스트 수정 집계기(902)는 웹 서비스 데이터 요청(1106)을 수신하고, 웹 서비스 인터페이스(1104)는 웹 서비스 요청(1108)을 웹 서비스(1102)에 송신하며, 웹 서비스 인터페이스(1104)는 웹 서비스(1102)로부터 웹 서비스 응답(1110)을 수신한다. 도 14에 더 도시된 바처럼, 웹 서비스 인터페이스(1104)는 웹 서비스 응답 정보(1402)를 생성할 수 있는데, 이는 웹 서비스 응답(1110)에서 수신된 정보를 포함할 수 있다. 컨텍스트 수정 집계기(902)는 웹 서비스 응답 정보(1402)를 수신하고, 이벤트 통지{예컨대 이벤트 통지(506)}에서 수신된 정보를 저장하는 것과 유사하게 웹 서비스 응답 정보(1402)에서 수신된 정보를 수정 이벤트로서 저장할 수 있다. 컨텍스트 수정 집계기(902)는 웹 서비스 응답 정보(1402)에서 수신된 정보를 다른 컨텍스트 수정 정보{예컨대 하나 이상의 이벤트 통지(506)로서 수신됨}와 함께 선택적으로 집계할 수 있는데, 이는 집계된 컨텍스트 수정(908)으로서 ARM(804)에 출력될 수 있다.
본 발명의 실시예들은 웹 페이지를 리로딩할 필요 없이 웹 페이지에서 광고를 동적으로 디스플레이할 수 있게 한다. 광고의 업데이트는 사용자에 의한 웹 페이지와의 상호작용을 포함할 수 있는 하나 이상의 이벤트의 발생에 기초하여 트리거될 수 있다. 이러한 방식으로 광고의 업데이트를 가능하게 함으로써, 사용자가 광고를 클릭할 가능성이 높아지고, 이는 광고 서비스에 의해 부과될 CPC(cost per click)의 증가를 가능하게 할 수 있다. 또한, 웹 페이지에서 사용자에게 제시되는 광고의 개수가 증가할 수 있고, 이는 총 노출 회수(CPM)의 형태로 추가적인 수익이 발생하게 할 수 있다.
도 15는 예시 실시예에 따른 웹 페이지(302)의 일례인 웹 페이지(1500)를 도시한다. 웹 페이지(1500)는 사용자{예컨대 도 3에 도시된 사용자(308)}가 이미지와 상호작용할 수 있게 한다(디스플레이를 위한 이미지를 이미지 라이브러리에서 선택하는 것을 포함함). 또한, 웹 페이지(302)와 유사하게, 광고가 웹 페이지(1500)에서 동적으로 업데이트될 수 있다.
도 15에 도시된 바처럼, 웹 페이지(1500)는 이미지 라이브러리 섹션(1502), 광고 섹션(1504), 선택된 이미지(1508), 텍스트 입력 상자(1512) 및 검색 버튼(1514)을 포함한다. 이미지 라이브러리 섹션(1502)은 제1 내지 제4 이미지들(1506a 내지 1506d)을 포함하는 복수의 이미지(1506)를 포함한다. 임의의 개수의 이미지(1506)가 이미지 라이브러리 섹션(1502)에 존재할 수 있다. 광고 섹션(1504)은 제1 내지 제4 광고들(1510a 내지 1510d)을 포함하는 복수의 광고(1510)를 포함한다. 임의의 개수의 광고(1510)가 광고 섹션(1504)에 존재할 수 있다. 웹 페이지(1500)와 상호작용하는 사용자는 선택된 이미지(1508)로서 더 큰 형태로 디스플레이될 이미지(1506)를 이미지 라이브러리 섹션(1502)에서 선택할 수 있다. 예컨대, 사용자는 이미지들(1506a 내지 1506d) 중 하나를 클릭하거나 또는 이미지들(1506a 내지 1506d) 중 하나의 텍스트 설명을 텍스트 입력 상자(1512)에 입력하고 검색 버튼(1514)을 클릭함으로써 이미지(1506)를 디스플레이를 위해 선택 이미지(1508)로서 선택할 수 있다. 도 15의 예에서, 사용자는 텍스트 입력 상자(1512)에 "airplane(비행기)"이라는 텍스트를 입력하였고, 비행기의 이미지인 이미지(1506a)가 선택 이미지(1508)로서 디스플레이되게 하도록 검색 버튼(1514)을 클릭하였다.
웹 페이지(1500)는 동적 웹 페이지이어서, 선택 이미지(1508)의 디스플레이를 야기하는 이미지들(1506)과의 사용자 상호작용이 웹 페이지(1500)의 리로딩을 야기하지 않는다. 그 대신, 선택 이미지(1508)는 이미지들(1506a 내지 1506d) 중 선택된 것이 되도록 동적으로 업데이트된다. 종래의 광고 공급 시스템에서는 사용자가 이미지들(1506a 내지 1506d)과 상호작용하는 경우에 웹 페이지(1500)가 리로딩되지 않기 때문에, 웹 페이지(1500)의 컨텍스트의 변화에도 불구하고 광고들(1510a 내지 1510d)이 정적으로 유지된다. 웹 페이지(1500)와 상호작용하는 사용자는 이미지(1506a)를 선택 이미지(1508)로서 디스플레이되도록 선택함으로써 비행기에 대한 관심을 나타냈을 수 있다. 그러나, 광고들(1510a 내지 1510d)이 정적이기 때문에, 웹 페이지(1500)의 수정된 컨텍스트와 더 관련성이 있을 수 있는 대체 광고가 획득되어 웹 페이지(1500) 내의 광고들(1510a 내지 1510d) 중 하나 이상을 대체할 수 없다.
실시예들에 따라, 광고들(1510a 내지 1510d)에 대한 업데이트는 사용자에 의한 웹 페이지(1500)와의 상호작용을 포함할 수 있는 하나 이상의 이벤트의 발생에 기초하여 트리거될 수 있다. 예컨대, 사용자가 광고들(1506a 내지 1506d) 중 하나를 클릭하고/하거나 텍스트 입력 상자(1512)에 텍스트를 입력하는 것은 웹 페이지(1500)의 컨텍스트의 수정으로 간주되어 이벤트 통지{예컨대 이벤트 통지(506)}를 생성할 수 있다. 도 5에 도시된 동적 광고 공급자(304)는 이벤트 통지를 처리하여(단독으로 또는 하나 이상의 다른 수신된 이벤트 통지와 조합하여) 광고 서버(306)로부터 제2 광고 집합(510)을 요청할 수 있다.
예컨대, 도 16은 사용자가 텍스트 입력 상자(1512)에 "house(집)"이라는 텍스트를 입력하고 검색 버튼(1514)을 선택한 후의 웹 페이지(1500)의 도면을 도시한다. 도 16에 도시된 바처럼, 제2 이미지(1506b)가 집의 이미지이기 때문에 제2 이미지(1506b)가 선택 이미지(1508)로서 디스플레이된다. 도 9에 도시된 동적 광고 공급자(304)의 예를 참조하면, "house"라는 텍스트가 이벤트 통지(506)로서 웹 페이지(1500)로부터 컨텍스트 수정 집계기(902)에 송신되었다. 트리거 이벤트 결정기(904)는 "house"라는 텍스트의 수신을 트리거 이벤트인 것으로 결정하거나, 또는 다른 트리거 이벤트를 결정하여, 집계된 컨텐트 수정(908)("house"라는 텍스트를 포함함)이 ARM(804)에 제공되게 할 수 있다. ARM(804)은 웹 페이지(1500)의 수정된 컨텍스트에 기초하여 제2 광고 집합에 대한 제2 요청(508)을 생성하는데, 이는 광고 서버(308)에 송신된다. 제2 요청(508)에 기초하여 제2 광고 집합(510)이 ARM(804)에 의해 수신되고, 웹 페이지(1500)에 제공된다. 예컨대, 도 16을 참조하면, 제2 광고 집합(510)은 광고(1604a), 광고(1604b) 및 광고(1510c)를 포함할 수 있다. 광고들(1604a 및 1604b)은 웹 페이지(1500)의 컨텍스트에 대한 수정에 기초하여 웹 페이지(1500) 내의 광고들(1510a, 1510b 및 1510d)을 대체하도록 선택된 새로운 광고들이다. 예컨대, 광고들(1604a 및 1604b)은 부동산 중개인, 상업 용지, 또는 "house"라는 텍스트와 관련된 다른 주체 사용자 서비스에 대한 광고들일 수 있다.
광고(1510c)는 웹 페이지(1500)에 대한 컨텍스트의 수정에 대해 관련성을 유지했을 수 있고, 따라서 웹 페이지(1500)에서의 디스플레이를 위해 다시 제공되었을 수 있다. 일 실시예에서, 광고(1510c)는 제2 광고 집합(510) 내에서 ARM(804)에 송신되었을 수 있다. 그 대신, ARM(804)은 광고(1510c)와 같은 이전에 수신된 광고들을 저장할 수 있고(예컨대 캐시 내에 또는 다른 저장 메커니즘으로), 그에 따라 이전에 수신된 광고들은 다시 디스플레이되도록 웹 페이지(1500)에 제공되는 경우 광고 서버(306)로부터 재송신될 필요가 없다.
웹 페이지(1500)와 관련하여 위에서 기술된 바와 같은 본 발명의 실시예들은 사용자들이 동적 웹 페이지들과 상호작용할 수 있게 하면서, 사용자들에게 더 많은 개수의 광고 및/또는 더 관련성 있는 광고를 제공한다. 이러한 동적 웹 페이지의 예는 이미지 열람 애플리케이션(예컨대 Yahoo! Flickr™), 오디오 애플리케이션, 비디오 애플리케이션(예컨대 YouTube™), 매핑 도구(예컨대 Yahoo!® Maps, MapQuest 및 Google™ Maps), 또는 임의의 다른 네트워크 기반 웹 서비스 또는 애플리케이션에 의해 제공되는 것들을 포함한다. 이러한 웹 기반 애플리케이션의 수천가지 예가 존재하며, 관련 기술 분야(들)의 당업자에게 알려질 것이다.
일례에서, 웹 페이지(302)는 "매시업(mashup)"을 컨텐트로서 포함할 수 있다. 매시업은 둘 이상의 소스로부터의 데이터를 통합된 도구로 조합하는 웹 애플리케이션이다. 일례에서, 웹 페이지(302)는 매핑 도구 및 Yahoo!® Local의 매시업에 대한 액세스를 제공할 수 있다. 매핑 도구는 웹 페이지(302) 상에서 장소의 지도를 디스플레이할 수 있고, Yahoo!® Local은 식당, 점포, 공원 등을 포함하는 디스플레이된 장소에 관한 정보를 디스플레이하는 데 사용될 수 있다. 정보는 지도 내에 또는 지도에 인접하여 디스플레이될 수 있다(예컨대 텍스트 또는 이미지의 형태로). 웹 페이지(302)에서 이러한 매시업과 상호작용하는 사용자는 다양한 장소를 디스플레이하기 위해 지도 주위를 팬(pan)할 수 있는데, 이는 이벤트 통지를 생성할 수 있다. 또한, 사용자는 식당, 점포, 공원 및 지도에 디스플레이된 다른 지형지물을 포함하는 장소에 관한 디스플레이된 정보와 상호작용할 수 있는데, 이는 또한 이벤트 통지를 생성할 수 있다. 본 명세서의 다른 부분에 기술된 바처럼, 이러한 이벤트 통지는 웹 페이지(302)에 디스플레이되는 광고에 대한 페이지 내 업데이트를 제공하는 데 사용될 수 있다.
예시 컴퓨터 시스템 구현예
위에서 기술된 바처럼, 동적 광고 공급자(304)는 이것의 기능들 중 적어도 일부를 수행하기 위한 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합을 포함할 수 있다. 예컨대, 동적 광고 공급자(304), PELM(802), ARM(804), 웹 브라우저(608), 웹 서비스 인터페이스(1104), 컨텍스트 수정 집계기(902), 트리거 이벤트 생성기(904) 및/또는 컨텍스트 비교기(906)(도 3, 5 내지 9, 11 및 14에 도시됨) 중 임의의 하나 이상은 하나 이상의 프로세서에서 실행되도록 구성된 컴퓨터 코드를 포함할 수 있다. 그 대신, 또는 그에 부가하여, 동적 광고 공급자(304), PELM(802), ARM(804), 웹 브라우저(608), 웹 서비스 인터페이스(1104), 컨텍스트 수정 집계기(902), 트리거 이벤트 생성기(904) 및/또는 컨텍스트 비교기(906)는 하드웨어 로직/전기 회로를 포함할 수 있다.
일 실시예에서, 동적 광고 공급자(304), PELM(802), ARM(804), 웹 브라우저(608), 웹 서비스 인터페이스(1104), 컨텍스트 수정 집계기(902), 트리거 이벤트 생성기(904) 및/또는 컨텍스트 비교기(906)는 개인용 컴퓨터, 이동형 컴퓨터{예컨대 랩톱 컴퓨터, 노트북 컴퓨터, PDA 또는 Palm™ 장치 등과 같은 핸드헬드(handheld) 컴퓨터}, 또는 워크스테이션을 포함하는 하나 이상의 컴퓨터로 구현될 수 있다. 이러한 예시 장치들은 본 명세서에서 예시를 위해 제공되며, 한정을 위한 것이 아니다. 본 발명의 실시예들은 관련 기술 분야(들)의 당업자에게 알려지는 추가적인 유형의 장치들로 구현될 수 있다.
실시예들이 구현될 수 있는 장치들은 저장 드라이브, 메모리 장치 및 추가적인 유형의 컴퓨터 판독 가능 매체와 같은 저장소를 포함할 수 있다. 이러한 컴퓨터 판독 가능 매체의 예는 하드 디스크, 착탈식 자기 디스크, 착탈식 광학 디스크, 플래시(flash) 메모리 카드, 디지털 비디오 디스크, RAM(random access memory) 및 ROM(read only memory) 등을 포함한다. 본 명세서에서 사용되는 바처럼, "컴퓨터 프로그램 매체" 및 "컴퓨터 판독 가능 매체"라는 용어들은 하드 디스크 드라이브와 연관된 하드 디스크, 착탈식 자기 디스크, 착탈식 광학 디스크(예컨대 CDROM, DVD 등), zip 디스크, 테이프, 자기 저장 장치, MEMS(micro-electromechanical system) 저장소, 나노 기술 기반 저장 장치는 물론 플래시 메모리 카드, 디지털 비디오 디스크, RAM 장치 및 ROM 장치 등과 같은 다른 매체를 일반적으로 지칭하는 데 사용된다. 이러한 컴퓨터 판독 가능 매체는 동적 광고 공급자(304), PELM(802), ARM(804), 웹 브라우저(608), 웹 서비스 인터페이스(1104), 컨텍스트 수정 집계기(902), 트리거 이벤트 생성기(904) 및/또는 컨텍스트 비교기(906), 도 4의 흐름도(400), 도 10의 흐름도(1000), 도 12의 흐름도(1200), 도 13의 단계(1302) 및/또는 본 명세서에 기술된 본 발명의 추가적인 실시예들을 구현하기 위한 로직을 포함하는 프로그램 모듈들을 저장할 수 있다. 본 발명의 실시예들은 임의의 컴퓨터 사용 가능 매체 상에 저장된 이러한 로직(예컨대 프로그램 코드 또는 소프트웨어의 형태임)을 포함하는 컴퓨터 프로그램 제품과 관련된다. 이러한 프로그램 코드는 처리 유닛(하나 이상의 데이터 처리 장치를 포함함)에서 실행되는 경우 장치가 본 명세서에 기술된 바처럼 동작하게 한다.
결론
본 발명의 다양한 실시예가 위에서 기술되었지만, 이들은 한정이 아닌 예시를 위해서만 제시되었음을 이해해야 한다. 관련 기술 분야(들)의 당업자에게는 첨부된 청구항들에서 정의된 바와 같은 본 발명의 사상 및 범위로부터 벗어나지 않고 형태와 세부 사항에 있어서의 다양한 변화가 위에서 기술된 실시예들에게 가해질 수 있음이 자명할 것이다. 따라서, 본 발명의 폭과 범위는 위에서 기술된 예시 실시예들 중 어떤 것에 의해서도 한정되지 않아야 하며, 아래의 청구항들 및 이들의 등가물에 따라서만 정의되어야 한다.

Claims (20)

  1. 웹 페이지에서 광고들을 제공하기 위한 방법으로서,
    웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들의 제1 집합을 수신하는 단계;
    상기 하나 이상의 광고들의 제1 집합을 상기 웹 페이지 상에서 디스플레이되도록 제공하는 단계;
    상기 웹 페이지의 컨텍스트(context)에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계;
    상기 적어도 하나의 이벤트 통지에 기초하여 상기 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들에 대한 제2 요청을 생성하는 단계;
    하나 이상의 광고들의 제2 집합을 수신하는 단계; 및
    상기 하나 이상의 광고들의 제2 집합을, 상기 제1 집합 중의 적어도 하나의 광고 대신에 상기 웹 페이지 상에서 디스플레이되도록 제공하는 단계
    를 포함하는, 광고 제공 방법.
  2. 제1항에 있어서,
    상기 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계는,
    상기 웹 페이지의 컨텍스트에 대한 복수의 수정들을 가리키는 복수의 이벤트 통지들을 수신하는 단계; 및
    상기 복수의 이벤트 통지들이 가리키는 상기 웹 페이지의 컨텍스트에 대한 상기 복수의 수정들을 집계(aggregating)하여 상기 웹 페이지의 컨텍스트에 대한 집계된 수정을 생성하는 단계
    를 포함하는, 광고 제공 방법.
  3. 제2항에 있어서,
    상기 적어도 하나의 이벤트 통지에 기초하여 상기 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들에 대한 제2 요청을 생성하는 단계는, 상기 집계된 수정이 미리 결정된 문턱값에 도달하는 경우에 상기 제2 요청을 생성하는 단계를 포함하는, 광고 제공 방법.
  4. 제1항에 있어서,
    상기 적어도 하나의 이벤트 통지에 기초하여 상기 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들에 대한 제2 요청을 생성하는 단계는, 트리거(trigger) 이벤트에 대응하는 이벤트 통지를 수신하는 것에 기인하여 상기 제2 요청을 생성하는 단계를 포함하는, 광고 제공 방법.
  5. 제1항에 있어서,
    상기 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계는,
    웹 서비스로부터의 데이터에 대한 상기 웹 페이지로부터의 요청을 수신하는 단계; 및
    상기 웹 서비스로부터의 데이터에 대한 상기 수신된 요청과 관련된 정보를 제1 이벤트 통지로서 저장하는 단계
    를 포함하는, 광고 제공 방법.
  6. 제5항에 있어서,
    상기 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계는,
    상기 데이터에 대한 요청을 상기 웹 서비스에 송신하는 단계;
    상기 웹 서비스로부터 응답 데이터를 수신하는 단계; 및
    상기 응답 데이터를 제2 이벤트 통지로서 저장하는 단계
    를 더 포함하는, 광고 제공 방법.
  7. 제5항에 있어서,
    상기 데이터에 대한 요청을 상기 웹 서비스에 송신하는 단계;
    상기 웹 서비스로부터 응답 데이터를 수신하는 단계; 및
    상기 웹 페이지의 디스플레이가 상기 응답 데이터에 기초하여 수정될 수 있도록 상기 응답 데이터를 제공하는 단계
    를 더 포함하는, 광고 제공 방법.
  8. 웹 페이지에서 광고들을 제공하기 위한 시스템으로서,
    웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들에 대한 제1 요청을 생성하고, 상기 제1 요청에 기초하여 하나 이상의 광고들의 제1 집합을 수신하며, 상기 하나 이상의 광고들의 제1 집합을 상기 웹 페이지 상에서 디스플레이되게 제공하도록 구성되는 광고 요청 모듈(ARM; advertisement request module); 및
    상기 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하고, 상기 수신된 적어도 하나의 이벤트 통지를 상기 ARM에 제공하도록 구성되는 페이지 이벤트 청취자 모듈(PELM; page event listener module)
    을 포함하고,
    상기 ARM은, 상기 적어도 하나의 이벤트 통지에 기초하여 상기 웹 페이지 상에서의 디스플레이를 위한 하나 이상의 광고들에 대한 제2 요청을 생성하고, 상기 제2 요청에 기초하여 하나 이상의 광고들의 제2 집합을 수신하며, 상기 하나 이상의 광고들의 제2 집합을 상기 제1 집합 중의 적어도 하나의 광고 대신에 상기 웹 페이지 상에서 디스플레이되게 제공하도록 구성되는, 광고 제공 시스템.
  9. 제8항에 있어서,
    상기 PELM은,
    상기 웹 페이지의 컨텍스트에 대한 복수의 수정들을 가리키는 복수의 이벤트 통지들을 수신하고, 상기 복수의 이벤트 통지들이 가리키는 상기 웹 페이지의 컨텍스트에 대한 상기 복수의 수정들을 집계하여 상기 웹 페이지의 컨텍스트에 대한 집계된 수정을 생성하도록 구성되는 컨텍스트 수정 집계기를 포함하는, 광고 제공 시스템.
  10. 제9항에 있어서,
    상기 ARM은, 상기 집계된 수정이 미리 결정된 문턱값에 도달했는지 여부를 판정하고, 상기 집계된 수정이 상기 미리 결정된 문턱값에 도달한 것으로 판정되는 경우 상기 제2 요청을 생성하도록 구성되는, 광고 제공 시스템.
  11. 제8항에 있어서,
    상기 PELM은, 수신된 이벤트 통지가 트리거 이벤트에 대응하는지 여부를 판정하도록 구성되는 트리거 이벤트 생성기를 포함하고,
    상기 ARM은, 상기 수신된 이벤트 통지가 트리거 이벤트에 대응하는 것으로 판정되는 경우 상기 제2 요청을 생성하도록 구성되는, 광고 제공 시스템.
  12. 제8항에 있어서,
    상기 PELM은 웹 서비스로부터의 데이터에 대한 상기 웹 페이지로부터의 요청을 수신하도록 구성되고,
    상기 컨텍스트 수정 집계기는 상기 웹 서비스로부터의 데이터에 대한 상기 수신된 요청과 관련된 정보를 제1 이벤트 통지로서 저장하도록 구성되는, 광고 제공 시스템.
  13. 제12항에 있어서,
    상기 PELM은 상기 데이터에 대한 요청을 상기 웹 서비스에 송신하고 상기 웹 서비스로부터 응답 데이터를 수신하도록 구성되고,
    상기 컨텍스트 수정 집계기는 상기 응답 데이터를 제2 이벤트 통지로서 저장하도록 구성되는, 광고 제공 시스템.
  14. 제12항에 있어서,
    상기 데이터에 대한 요청을 상기 웹 서비스에 송신하고, 상기 웹 서비스로부터 응답 데이터를 수신하며, 상기 웹 페이지의 디스플레이가 상기 응답 데이터에 기초하여 수정될 수 있도록 상기 응답 데이터를 제공하도록 구성되는 웹 서비스 인터페이스를 더 포함하는, 광고 제공 시스템.
  15. 웹 페이지를 동적으로 업데이트하기 위한 방법으로서,
    하나 이상의 광고들의 집합을 디스플레이하는 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계;
    트리거 이벤트에 대응하는 수신된 이벤트 통지를 판정하는 단계; 및
    하나 이상의 대안적인 광고들이 획득되어 상기 제1 집합 중의 적어도 하나의 광고 대신에 상기 웹 페이지 상에 디스플레이될 수 있게 하도록 상기 적어도 하나의 이벤트 통지를 제공하는 단계
    를 포함하는, 웹 페이지 업데이트 방법.
  16. 제15항에 있어서,
    상기 하나 이상의 광고들의 집합을 디스플레이하는 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계는,
    웹 서비스로부터의 데이터에 대한 상기 웹 페이지로부터의 요청을 수신하는 단계; 및
    상기 웹 서비스로부터의 데이터에 대한 상기 수신된 요청과 관련된 정보를 제1 이벤트 통지로서 저장하는 단계
    를 포함하는, 웹 페이지 업데이트 방법.
  17. 제16항에 있어서,
    상기 하나 이상의 광고들의 집합을 디스플레이하는 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하는 단계는,
    상기 데이터에 대한 요청을 상기 웹 서비스에 송신하는 단계;
    상기 웹 서비스로부터 응답 데이터를 수신하는 단계; 및
    상기 응답 데이터를 제2 이벤트 통지로서 저장하는 단계
    를 더 포함하는, 웹 페이지 업데이트 방법.
  18. 웹 페이지를 동적으로 업데이트하기 위한 시스템으로서,
    하나 이상의 광고들의 집합을 디스플레이하는 웹 페이지의 컨텍스트에 대한 수정을 가리키는 적어도 하나의 이벤트 통지를 수신하도록 구성되는 컨텍스트 수정 집계기; 및
    수신된 이벤트 통지가 트리거 이벤트에 대응하는지 여부를 판정하도록 구성되는 트리거 이벤트 결정기
    를 포함하고,
    상기 컨텍스트 수정 집계기는, 수신된 이벤트 통지가 트리거 이벤트에 대응하는 것으로 상기 트리거 이벤트 결정기에 의해 판정되는 경우 하나 이상의 대안적인 광고들이 획득되어 상기 제1 집합 중의 적어도 하나의 광고 대신에 상기 웹 페이지 상에 디스플레이될 수 있게 하도록 상기 적어도 하나의 이벤트 통지를 제공하도록 구성되는, 웹 페이지 업데이트 시스템.
  19. 제18항에 있어서,
    상기 컨텍스트 수정 집계기는, 웹 서비스로부터의 데이터에 대한 상기 웹 페이지로부터의 요청을 수신하고, 상기 웹 서비스로부터의 데이터에 대한 상기 수신된 요청과 관련된 정보를 제1 이벤트 통지로서 저장하도록 구성되는, 웹 페이지 업데이트 시스템.
  20. 제19항에 있어서,
    상기 데이터에 대한 요청을 상기 웹 서비스에 송신하고 상기 웹 서비스로부터 응답 데이터를 수신하도록 구성되는 웹 서비스 인터페이스를 더 포함하고,
    상기 컨텍스트 수정 집계기는 상기 응답 데이터를 제2 이벤트 통지로서 저장하도록 구성되는, 웹 페이지 업데이트 시스템.
KR1020117011910A 2008-10-31 2009-10-09 동적 페이지 내 광고 KR101266722B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/262,497 US8175922B2 (en) 2008-10-31 2008-10-31 Dynamic in-page advertising
US12/262,497 2008-10-31
PCT/US2009/060170 WO2010051152A2 (en) 2008-10-31 2009-10-09 Dynamic in-page advertising

Publications (2)

Publication Number Publication Date
KR20110090950A true KR20110090950A (ko) 2011-08-10
KR101266722B1 KR101266722B1 (ko) 2013-05-31

Family

ID=42129506

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117011910A KR101266722B1 (ko) 2008-10-31 2009-10-09 동적 페이지 내 광고

Country Status (7)

Country Link
US (3) US8175922B2 (ko)
EP (1) EP2344997A4 (ko)
KR (1) KR101266722B1 (ko)
CN (2) CN104978674A (ko)
HK (1) HK1215980A1 (ko)
TW (1) TWI528304B (ko)
WO (1) WO2010051152A2 (ko)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090171790A1 (en) * 2008-01-01 2009-07-02 Transaxtions Llc Time based targeted advertising
US8175922B2 (en) 2008-10-31 2012-05-08 Yahoo! Inc. Dynamic in-page advertising
US20100205036A1 (en) * 2009-02-10 2010-08-12 Van Der Haar Rob Apparatus, Method and User Interface for Presenting Advertisements
US9442621B2 (en) * 2009-05-05 2016-09-13 Suboti, Llc System, method and computer readable medium for determining user attention area from user interface events
US9336191B2 (en) * 2009-05-05 2016-05-10 Suboti, Llc System, method and computer readable medium for recording authoring events with web page content
US20110153435A1 (en) * 2009-09-17 2011-06-23 Lexos Media Inc. System and method of cursor-based content delivery
US8635584B2 (en) * 2009-10-13 2014-01-21 Yahoo! Inc. Tutorial systems for code creation and provenance tracking
WO2011065285A1 (ja) * 2009-11-26 2011-06-03 楽天株式会社 サーバ装置、端末装置、Webページ上への情報挿入方法、情報挿入プログラム、及びプログラムが記録された記録媒体
US20120084149A1 (en) * 2010-09-10 2012-04-05 Paolo Gaudiano Methods and systems for online advertising with interactive text clouds
US20120089912A1 (en) * 2010-10-06 2012-04-12 Oggifinogi, Inc. Prestreams
US8606652B2 (en) 2010-12-20 2013-12-10 Target Brands, Inc. Topical page layout
US8606643B2 (en) 2010-12-20 2013-12-10 Target Brands, Inc. Linking a retail user profile to a social network user profile
US8589242B2 (en) 2010-12-20 2013-11-19 Target Brands, Inc. Retail interface
US8972895B2 (en) 2010-12-20 2015-03-03 Target Brands Inc. Actively and passively customizable navigation bars
US8521679B2 (en) * 2010-12-20 2013-08-27 Yahoo! Inc. Classification recommendation based on social actions
US8630913B1 (en) 2010-12-20 2014-01-14 Target Brands, Inc. Online registry splash page
US9384408B2 (en) 2011-01-12 2016-07-05 Yahoo! Inc. Image analysis system and method using image recognition and text search
US8756121B2 (en) 2011-01-21 2014-06-17 Target Brands, Inc. Retail website user interface
US20120198371A1 (en) * 2011-01-31 2012-08-02 Gad Liwerant Digital photo services in recreational parks
US9026942B2 (en) * 2011-02-25 2015-05-05 Cbs Interactive Inc. Song lyric processing with user interaction
US9805135B2 (en) * 2011-03-30 2017-10-31 Cbs Interactive Inc. Systems and methods for updating rich internet applications
US8539338B2 (en) * 2011-04-11 2013-09-17 Microsoft Corporation Cooperative rendering cache for mobile browser
WO2012144918A2 (en) * 2011-04-20 2012-10-26 IBT Internet Business Technologies - Informática, S.A. Methods and systems for real-time web tracking and marketing
CN102769634B (zh) * 2011-05-03 2016-08-17 腾讯科技(北京)有限公司 一种web在线信息管理方法及系统
US8965788B2 (en) 2011-07-06 2015-02-24 Target Brands, Inc. Search page topology
CN102916994A (zh) * 2011-08-02 2013-02-06 华为技术有限公司 一种页面浏览方法、服务器和终端
US8635519B2 (en) 2011-08-26 2014-01-21 Luminate, Inc. System and method for sharing content based on positional tagging
EP2573726A1 (en) * 2011-09-21 2013-03-27 Koninklijke KPN N.V. Method and system for providing a cross-context optimal experience
US20130086112A1 (en) 2011-10-03 2013-04-04 James R. Everingham Image browsing system and method for a digital content platform
US8737678B2 (en) 2011-10-05 2014-05-27 Luminate, Inc. Platform for providing interactive applications on a digital content platform
USD736224S1 (en) 2011-10-10 2015-08-11 Yahoo! Inc. Portion of a display screen with a graphical user interface
USD737290S1 (en) 2011-10-10 2015-08-25 Yahoo! Inc. Portion of a display screen with a graphical user interface
US8510644B2 (en) * 2011-10-20 2013-08-13 Google Inc. Optimization of web page content including video
US9024954B2 (en) 2011-12-28 2015-05-05 Target Brands, Inc. Displaying partial logos
USD711400S1 (en) 2011-12-28 2014-08-19 Target Brands, Inc. Display screen with graphical user interface
USD705790S1 (en) 2011-12-28 2014-05-27 Target Brands, Inc. Display screen with graphical user interface
USD706793S1 (en) 2011-12-28 2014-06-10 Target Brands, Inc. Display screen with graphical user interface
USD705791S1 (en) 2011-12-28 2014-05-27 Target Brands, Inc. Display screen with graphical user interface
USD703686S1 (en) 2011-12-28 2014-04-29 Target Brands, Inc. Display screen with graphical user interface
USD701224S1 (en) 2011-12-28 2014-03-18 Target Brands, Inc. Display screen with graphical user interface
USD712417S1 (en) 2011-12-28 2014-09-02 Target Brands, Inc. Display screen with graphical user interface
USD706794S1 (en) 2011-12-28 2014-06-10 Target Brands, Inc. Display screen with graphical user interface
USD703687S1 (en) 2011-12-28 2014-04-29 Target Brands, Inc. Display screen with graphical user interface
USD715818S1 (en) 2011-12-28 2014-10-21 Target Brands, Inc. Display screen with graphical user interface
USD711399S1 (en) 2011-12-28 2014-08-19 Target Brands, Inc. Display screen with graphical user interface
USD705792S1 (en) 2011-12-28 2014-05-27 Target Brands, Inc. Display screen with graphical user interface
USD703685S1 (en) 2011-12-28 2014-04-29 Target Brands, Inc. Display screen with graphical user interface
US11205200B1 (en) * 2012-01-24 2021-12-21 Integral Ad Science, Inc. Systems, methods, and media for detecting advertisements with advertising cues
US8255495B1 (en) * 2012-03-22 2012-08-28 Luminate, Inc. Digital image and content display systems and methods
US20130311306A1 (en) * 2012-05-21 2013-11-21 Yahoo! Inc. Providing focus to a search module presented on a dynamic web page
US10303754B1 (en) 2012-05-30 2019-05-28 Callidus Software, Inc. Creation and display of dynamic content component
US8700737B2 (en) * 2012-05-31 2014-04-15 Xerox Corporation Automated method for generating a web service composition
US9037577B1 (en) 2012-06-19 2015-05-19 Microstrategy Incorporated Filtering posts
US9741054B2 (en) * 2012-07-06 2017-08-22 International Business Machines Corporation Remotely cacheable variable web content
US9870344B2 (en) 2012-10-02 2018-01-16 Google Inc. Reassigning ordinal positions of content item slots according to viewport information during resource navigation
US20140129325A1 (en) * 2012-11-05 2014-05-08 T.L.V. Media On Line Ltd Method and System for Advertisement Replacement
US9594732B2 (en) 2012-12-20 2017-03-14 Google Inc. Selectively replacing displayed content items based on user interaction
US10417306B1 (en) * 2013-01-03 2019-09-17 Amazon Technologies, Inc. Determining load completion of dynamically updated content
WO2014123505A1 (en) * 2013-02-05 2014-08-14 Lui C Method and system for group purchase of on-line advertising
US9830612B2 (en) * 2013-03-11 2017-11-28 Capital One Financial Corporation Systems and methods for providing advertising services
US10705669B2 (en) * 2013-03-15 2020-07-07 Comcast Cable Communications, Llc Active impression tracking
US20140279071A1 (en) * 2013-03-15 2014-09-18 Yahoo! Inc. Online advertising dashboard
US9524073B1 (en) * 2013-05-13 2016-12-20 Google Inc. Triggering action on a web page
US10600087B2 (en) * 2013-08-30 2020-03-24 Microsoft Technology Licensing, Llc Techniques for facilitating content retargeting
DE102013223737A1 (de) * 2013-11-20 2015-05-21 BSH Hausgeräte GmbH Einkreis-Kältegerät
US9827714B1 (en) 2014-05-16 2017-11-28 Google Llc Method and system for 3-D printing of 3-D object models in interactive content items
US10887376B2 (en) 2014-08-08 2021-01-05 Samsung Electronics Co., Ltd. Electronic system with custom notification mechanism and method of operation thereof
WO2016020906A2 (en) * 2014-08-08 2016-02-11 Samsung Electronics Co., Ltd. Electronic system with custom notification mechanism and method of operation thereof
US10050949B2 (en) * 2015-03-23 2018-08-14 Amazon Technologies, Inc. Accessing a secure network using a streaming device
US9794205B2 (en) * 2015-05-07 2017-10-17 Adobe Systems Incorporated Modifying rich media components for an interactive email
CN104902327B (zh) * 2015-05-27 2018-03-27 青岛海信传媒网络技术有限公司 一种页面的内容更新及下发方法、智能电视和系统
CN105159942B (zh) * 2015-08-07 2020-04-24 百度在线网络技术(北京)有限公司 一种用于确定与浏览页面对应的信息栏的方法和装置
US10831349B2 (en) * 2016-02-05 2020-11-10 International Business Machines Corporation Implementing automated personalized, contextual alert displays
US11303714B2 (en) * 2016-12-14 2022-04-12 Rewardstyle, Inc. System and method for application traffic control
US10452758B1 (en) * 2017-04-26 2019-10-22 Amazon Technologies, Inc. Optimizing online content rendering
KR102037489B1 (ko) * 2017-06-08 2019-10-28 오드컨셉 주식회사 이미지 기반 광고 제공 방법, 장치 및 컴퓨터 프로그램
CN108008886B (zh) * 2017-11-28 2021-06-25 上海量明科技发展有限公司 在显示屏上输出广告的方法、装置及系统
KR102335862B1 (ko) * 2018-03-05 2021-12-07 삼성전자주식회사 전자 장치 및 그 제어 방법
US10839100B2 (en) 2018-04-04 2020-11-17 International Business Machines Corporation Reverse-tiered model to manage temporal access to data

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194424B2 (en) * 1997-06-25 2007-03-20 Intel Corporation User demographic profile driven advertising targeting
EP1272949A2 (en) * 1999-10-21 2003-01-08 Adfluence, Inc. Network methods for interactive advertising and direct marketing
CA2303466A1 (en) * 2000-03-30 2001-09-30 Softv.Net Automatically updating template based web pages with trigger events and scheduling
US20040148342A1 (en) * 2003-01-29 2004-07-29 Web.De Ag Web site having an event creation element
AU2003245410A1 (en) * 2002-06-05 2003-12-22 Yahoo ! Inc. Method and system for providing a dynamically changing advertisement
US7373395B2 (en) * 2004-02-04 2008-05-13 Perseus Wireless, Inc. Method and system for providing information to remote clients
US20060271425A1 (en) 2005-05-27 2006-11-30 Microsoft Corporation Advertising in application programs
US20060287912A1 (en) 2005-06-17 2006-12-21 Vinayak Raghuvamshi Presenting advertising content
US20070143264A1 (en) * 2005-12-21 2007-06-21 Yahoo! Inc. Dynamic search interface
CN101004739A (zh) * 2006-01-17 2007-07-25 千橡世纪科技发展(北京)有限公司 一种在浏览器网页的动态网页模块中的广告方法
CN101030283A (zh) * 2006-03-03 2007-09-05 腾讯科技(深圳)有限公司 一种发布广告的方法和系统
WO2007123760A2 (en) 2006-03-30 2007-11-01 Nebuad, Inc. Network device for monitoring and modifying network traffic between an end user and a content provider
US20100138451A1 (en) * 2006-04-03 2010-06-03 Assaf Henkin Techniques for facilitating on-line contextual analysis and advertising
US20100198697A1 (en) * 2006-07-21 2010-08-05 Videoegg, Inc. Fixed Position Interactive Advertising
KR20080053692A (ko) 2006-12-11 2008-06-16 주식회사 다츠커뮤니케이션 배너 광고 시스템 및 그 광고 방법
US20080249987A1 (en) * 2007-04-06 2008-10-09 Gemini Mobile Technologies, Inc. System And Method For Content Selection Based On User Profile Data
US20080307317A1 (en) * 2007-06-05 2008-12-11 Yohai-Giochais Leon Systems and methods for selecting and/or communicating web content
US20090044147A1 (en) * 2007-08-08 2009-02-12 Marc Alringer System and method for presenting dynamic advertisements on web pages
US8001004B2 (en) * 2007-08-18 2011-08-16 Traffiq, Inc. System and method for brokering the sale of internet advertisement inventory
US9442620B2 (en) * 2007-08-21 2016-09-13 Oracle International Corporation Navigation systems with event notification
US20090319648A1 (en) * 2008-06-24 2009-12-24 Mobile Tribe Llc Branded Advertising Based Dynamic Experience Generator
EP2329404B1 (en) * 2008-09-05 2018-04-04 Thomson Licensing DTV Method and system for dynamic play list modification
US8175922B2 (en) 2008-10-31 2012-05-08 Yahoo! Inc. Dynamic in-page advertising

Also Published As

Publication number Publication date
US20100114720A1 (en) 2010-05-06
US20120185343A1 (en) 2012-07-19
US8788346B2 (en) 2014-07-22
EP2344997A4 (en) 2013-10-09
KR101266722B1 (ko) 2013-05-31
HK1215980A1 (zh) 2016-09-30
EP2344997A2 (en) 2011-07-20
CN102197409A (zh) 2011-09-21
WO2010051152A2 (en) 2010-05-06
WO2010051152A3 (en) 2010-07-22
TWI528304B (zh) 2016-04-01
TW201020955A (en) 2010-06-01
US20130144729A1 (en) 2013-06-06
CN104978674A (zh) 2015-10-14
US8175922B2 (en) 2012-05-08
US8392257B2 (en) 2013-03-05

Similar Documents

Publication Publication Date Title
KR101266722B1 (ko) 동적 페이지 내 광고
US20220198129A1 (en) Selectively replacing displayed content items based on user interaction
TWI478085B (zh) 呈現廣告的方法與系統
KR102278657B1 (ko) 웹 페이지에 대한 컨텐츠 아이템에 대한 사이즈 자동 결정
US9898174B2 (en) Previewing expandable content items
JP5053298B2 (ja) モバイル装置上に広告を行うためのシステム
US11244352B2 (en) Selecting content associated with a collection of entities
US20150356627A1 (en) Social media enabled advertising
US9053091B2 (en) Header-token driven automatic text segmentation
WO2011146865A2 (en) Interactive ads
TWI519970B (zh) 透過互動郵件存取協議在電子郵件中插入內文的系統與方法
US20120284608A1 (en) Optimized display of the ad landing page
JP2022547789A (ja) マルチフォーマット埋め込みファイルの翻訳
US20100241689A1 (en) Method and apparatus for associating advertising with computer enabled maps
US20100250365A1 (en) Ad groups for using advertisements across placements
JP2019028797A (ja) 情報表示プログラム、情報表示方法、情報表示装置、及び配信装置
AU2011255291A1 (en) Interactive ads

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: 20160418

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170421

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180502

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 7