KR102091814B1 - 디지털 잡지용 동적 레이아웃 엔진 - Google Patents

디지털 잡지용 동적 레이아웃 엔진 Download PDF

Info

Publication number
KR102091814B1
KR102091814B1 KR1020167003444A KR20167003444A KR102091814B1 KR 102091814 B1 KR102091814 B1 KR 102091814B1 KR 1020167003444 A KR1020167003444 A KR 1020167003444A KR 20167003444 A KR20167003444 A KR 20167003444A KR 102091814 B1 KR102091814 B1 KR 102091814B1
Authority
KR
South Korea
Prior art keywords
content
area
display area
template
content item
Prior art date
Application number
KR1020167003444A
Other languages
English (en)
Other versions
KR20160029850A (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 KR20160029850A publication Critical patent/KR20160029850A/ko
Application granted granted Critical
Publication of KR102091814B1 publication Critical patent/KR102091814B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

Abstract

디지털 잡지 서버는 콘텐츠 항목의 상대적인 위치 및 크기를 나타내는 페이지 템플릿에 기초하여 콘텐츠 항목을 포함하는 디지털 잡지의 섹션을 생성한다. 페이지 템플릿은 콘텐츠 항목의 크기를 디스플레이 영역의 퍼센트로서 특정하는 디스플레이 영역을 포함할 수 있다. 추가적으로, 페이지 템플릿 내 디스플레이 영역은 콘텐츠 항목을 제시하기 위해 서브-템플릿의 사용을 특정할 수 있다. 서브-템플릿은 서브-템플릿의 사용을 특정하는 디스플레이 영역 내에 제시된 콘텐츠 항목의 상대적 위치를 특정하는 디스플레이 영역을 포함한다. 디지털 잡지를 생성하기 위해, 다양한 페이지 템플릿이 스코어링되고, 페이지 템플릿이 소코어링에 기초하여 선택된다. 하나 이상의 다이버시티 정치기 디지털 잡지와의 사용자 상호작용을 향상시키기 위해 페이지 템플릿을 선택할 때 강화될 수 있다.

Description

디지털 잡지용 동적 레이아웃 엔진{DYNAMIC LAYOUT ENGINE FOR A DIGITAL MAGAZINE}
본 개시는 일반적으로 디지털 잡지와 관련되고, 보다 구체적으로는 플렉서블한(flexible) 페이지 템플릿을 사용하여 클라이언트 장치 상에서 디지털 잡지 내 콘텐츠 항목들의 제시(presentation)용 레이아웃을 동적으로 결정하는 것에 관련된다.
디지털 콘텐츠의 발행자는 상이한 디스플레이 영역, 상이한 디스플레이 해상도, 또는 다른 디스플레이 특성들의 차이점들을 갖는 상이한 장치 상에 콘텐츠의 제시를 최적화하기 위해 노력한다. 사용자를 위한 콘텐츠를 선택하고 특정한 장치 상에서 사용자에게 제시하기 위하여 선택된 콘텐츠를 채택하는 기술을 결정하는 것은 발행자에게 자원과 성능에 대한 도전을 만든다. 추가적으로, 빠르게 증가하는 콘텐츠를 제시하기 위해 사용되는 장치의 수와 종류는 발행자들이 개별 장치에 맞춤화된 콘텐츠 레이아웃들을 계속하여 생성하는 것을 비현실적으로 만든다. 더욱이, 콘텐츠와 사용자 약속을 유지하기 위하여, 발행자는 콘텐츠 제시의 최적화가 사용자의 시각 경험에 부정적으로 영향을 주는 것을 방지하기 위하여 컴퓨팅 자원을 효율적으로 사용하여야 한다.
디지털 잡지 서버는 사용자에게 제시할 콘텐츠 항목을 포함하는 디지털 잡지를 사용자를 위해 생성한다. 디지털 잡지 서버는 적어도 하나의 공통 특성을 갖는 콘텐츠 항목을 다양한 섹션으로 조직하고, 섹션에 따라 사용자에게 콘텐츠 항목을 제시한다. 콘텐츠 항목과 사용자의 상호작용을 향상시키기 위해, 디지털 잡지 서버는 사용자에게 제시할 섹션(“레이아웃”)에서 서로에 대해 콘텐츠 항목의 공간적 배열을 나타내는 다양한 페이지 템플릿을 유지한다. 페이지 템플릿은 하나 이상의 콘텐츠 항목을 각각 제시하도록 구성된 하나 이상의 디스플레이 영역을 포함한다. 페이지 템플릿 내의 서로에 대한 디스플레이 영역의 위치는 페이지 템플릿으로부터 생성된 섹션 내의 서로에 대한 콘텐츠 항목의 위치를 특정한다.
페이지 템플릿 내의 하나 이상의 디스플레이 영역은 페이지 내에 디스플레이된 콘텐츠 항목의 크기를 특정하기 위해 디스플레이 영역의 일부의 치수의 범위 또는 디스플레이 영역의 퍼센트를 이용하여 디지털 잡지의 페이지(또한, “섹션”으로서 지칭됨) 내에 디스플레이 되는 콘텐츠 항목의 크기를 특정한다. 예를 들면, 페이지 템플릿 내 다양한 디스플레이 영역은 예컨대, 섹션이 디스플레이되는 디스플레이 영역의 높이 또는 너비의 퍼센트로서 특정된 높이와 너비 같은, 참고 치수의 퍼센트로서 특정된 하나 이상의 치수와 연관된다.
콘텐츠 항목의 제시를 더욱 맞춤화(customizing)할 수 있도록, 페이지 템플릿의 디스플레이 영역은 서브-템플릿이 콘텐츠 항목을 제시하도록 사용되는 것을 지시할 수 있다. 서브-템플릿은 하나 이상의 콘텐츠 항목을 제시하도록 각각 구성된 하나 이상의 디스플레이 영역을 포함한다. 페이지 템플릿의 디스플레이 영역은 디스플레이 영역을 통해 제시된 콘텐츠 항목의 상대적 위치 및 크기 정보를 결정하는데 사용되는 특정 서브-템플릿을 식별할 수 있다. 그 대신에, 페이지 템플릿의 디스플레이 영역은 디스플레이 영역 내의 콘텐츠 항목이 서브-템플릿에 기초하여 제시되는 것을 지시할 수 있고, 그래서 서브-템플릿은 페이지 템플릿이 선택되는 경우 선택되고, 선택된 서브-템플릿은 디스플레이 영역 내에 콘텐츠 항목을 제시하기 위해 사용된다. 추가하여, 페이지 템플릿의 디스플레이 영역은 서브-템플릿 그룹을 식별하고, 서브-템플릿은 페이지 템플릿이 선택되는 경우 식별된 그룹으로부터 선택되고, 디스플레이 영역 내에 콘텐츠 항목을 제시하기 위해 사용된다.
디지털 잡지 서버의 사용자는 디지털 잡지 서버 또는 클라이언트 장치 상에서 실행중인 디지털 잡지 어플리케이션으로부터 하나 이상의 소스에 의해 제공되는 콘텐츠 항목의 제시를 요청한다. 상기 요청은 디지털 잡지의 섹션이 제시되는 디스플레이 영역을 설명하는 정보를 포함한다. 예를 들면, 상기 요청은 디지털 잡지의 섹션이 제시되는 클라이언트 장치의 물리적 치수를 포함한다. 디스플레이 영역에 적어도 부분적으로 기초하여, 하나 이상의 후보 페이지 템플릿이 선택된다. 예를 들면, 스레스홀드 값보다 작은 하나 이상의 물리적 치수를 가지는 적어도 하나의 디스플레이 영역을 갖는 페이지 템플릿은 후보 페이지 템플릿으로서 식별되지 않는다. 따라서, 보도록 만들거나 콘텐츠 항목과 상호작용하도록 만들기 어려울 수 있는 치수를 이용하여 콘텐츠 항목을 제시할 수 있는 페이지 템플릿은 후보 페이지 템플릿으로서 식별되지 않는다.
후보 페이지 템플릿은 섹션을 제시하기 위해 클라이언트 장치의 디스플레이 영역에 기초하여 스코어링(scoring)될 수 있고, 그들의 연관된 스코어에 기초하여 랭킹(ranking)될 수 있다. 예를 들면, 스코어가, 임의의 적합한 데이터뿐만 아니라, 제시될 콘텐츠 항목의 특성, 다양한 후보 페이지 템플릿 내 디스플레이 영역의 특성, 콘텐츠 항목이 제시되는 장치의 디스플레이 영역에 기초된다. 예를 들면, 후보 페이지 템플릿의 디스플레이 영역 내에 콘텐츠 항목을 제시하기 위한 콘텐츠 항목의 조정의 양이 후보 페이지 템플릿에 대한 스코어 내에 반영된다. 콘텐츠 항목의 유형과 후보 콘텐츠 항목 내 디스플레이 영역들 간의 연관이 또한, 후보 페이지 템플릿의 스코어에 영향을 줄 수 있다. 랭킹에 적어도 부분적으로 기초하여, 페이지 템플릿이 선택되고, 섹션 내에 콘텐츠 항목을 제시하기 위해 사용된다.
추가적으로, 페이지 템플릿 선택은 다양한 페이지 템플릿을 사용하여 제시된 콘텐츠 항목을 사용자에게 제시하기 위한 다른 인자(factor)들을 설명할 수 있다. 페이지 템플릿과 연관된 스코어는 페이지 템플릿의 이전 선택에 기초하여 조정된다. 예를 들면, 만일 페이지 템플릿이 현재 시간의 스레스홀드 시간 간격 내에서 이미 선택되었다면, 페이지 템플릿과 연관된 스코어는 감소되고; 유사하게, 만일 페이지 템플릿이 현재 시간의 스레스홀드 시간 간격 보다 더 크게 이미 선택되었다면, 페이지 템플릿과 연관된 스코어는 감소된다. 제시될 콘텐츠 항목의 특성 및 다양한 페이지 템플릿은 또한 페이지 템플릿과 연관된 스코어를 조정하기 위해 사용될 수 있다. 예를 들면, 제시될 콘텐츠 항목이 특정된 유형을 갖는 적어도 하나의 콘텐츠 항목을 포함한다면, 콘텐츠 항목의 특정된 유형과 연관된 단일 디스플레이 영역을 포함하는 페이지 템플릿과 연관된 스코어가 증가된다. 페이지 템플릿의 랭킹은 페이지 템플릿과 연관되어 조정된 스코어에 기초하여 조정될 수 있고, 페이지 템플릿은 조정된 랭킹으로부터 선택될 수 있다.
만일 선택된 페이지 템플릿이 콘텐츠 항목을 제시하기 위한 서브-템플릿의 사용을 식별하는 디스플레이 영역을 포함한다면, 서브-템플릿은 선택되고, 대응되는 디스플레이 영역에 콘텐츠 항목을 제시하기 위해 사용된다. 다양한 서브-템플릿이 스코어링될 수 있고, 디스플레이 서브-템플릿이 스코어에 기초하여 선택될 수 있다. 페이지 템플릿을 선택하는 방법은 서브-템플릿을 선택하기 위해 사용될 수 있다. 만일 특정 서브-템플릿이 선택된 페이지 템플릿의 디스플레이 영역에 의해 식별된다면, 다양한 서브-템플릿과 연관된 스코어에 기초하여 서브-템플릿을 선택하는 것 이외에, 특정 서브-템플릿이 선택된다. 유사하게, 만일 선택된 페이지 템플릿의 디스플레이 영역이 서브-템플릿의 그룹을 식별하면, 디스플레이 서브-템플릿이 그룹 내 서브-템플릿과 연관된 스코어에 기초하여 또는 다른 적절한 인자에 기초하여, 식별된 그룹으로부터 선택된다.
도 1은 본 발명의 일 실시예에 따른, 디지털 잡지 서버가 동작하는 시스템 환경의 블록도이다.
도 2는 본 발명의 일 실시예에 따른, 디지털 잡지 서버의 블록도이다.
도 3은 본 발명의 일 실시예에 따른, 페이지 템플릿을 사용하는 디지털 잡지 내 콘텐츠 항목의 표시의 예시이다.
도 4는 본 발명의 일 실시예에 따른, 페이지 템플릿에 기초하여 디지털 잡지 내 콘텐츠 항목을 제시하는 방법의 흐름도이다.
도 5a 내지 5f는 본 발명의 일 실시예에 따른, 콘텐츠 항목을 제시할 수 있는 디스플레이 영역으로서 동적으로 조정가능한 페이지 템플릿을 사용하여 디지털 잡지 내 콘텐츠 항목의 표시를 조정하는 예시이다.
도 6은 본 발명의 일 실시예에 따른, 디지털 잡지 내 콘텐츠 항목을 제시하는 페이지 템플릿을 선택하는 방법의 흐름도이다.
도 7은 본 발명의 일 실시예에 따른, 페이지 템플릿과 페이지 템플릿과 연관된 서브-템플릿을 사용하여 디지털 콘텐츠 내 콘텐츠 항목을 제시하는 방법의 흐름도이다.
상기 도면들은 단지 예시 목적으로만 본 발명의 다양한 실시예들을 도시한다. 해당 기술분야의 통상의 기술자는 여기에서 예시된 구조와 방법의 대체적인 실시예들이 여기에서 설명된 본 발명의 원리로부터 벗어남 없이 채용될 수 있음을 바로 인식할 것이다.
Overview
디지털 잡지 서버는 하나 이상의 소스로부터 콘텐츠를 검색하고, 검색된 콘텐츠를 기초로 사용자를 위한 개인 맞춤형 디지털 잡지를 생성한다. 생성된 디지털 잡지는 (이동통신 단말기, 태블릿 컴퓨터, 혹은 임의의 다른 적합한 컴퓨팅 시스템과 같은) 컴퓨팅 장치 상에서 실행되는 디지털 잡지 어플리케이션에 의해 검색되고 사용자에게 제시된다. 예를 들어, 사용자나 사용자 대신 만들어진 선택에 기초하여, 디지털 서버 어플리케이션은 다수의 소스와 개별 사용자로부터 검색된 콘텐츠 항목을 가진, 하나 이상의 영역을 포함하는 디지털 잡지를 생성한다. 생성된 디지털 잡지는 사용자가 흥미있는 콘텐츠를 더욱 쉽게 소비하도록 허용하고, 컴퓨팅 장치를 통해 탐색 가능한 프린트형(print-style) 잡지 인터페이스의 콘텐츠 항목을 제시하여 사용자에게 더욱 쉽게 영감을 준다.
디지털 잡지는 공통된 특성을 가진 콘텐츠를 포함하는 다수의 영역으로 구성될 수 있다(예컨데, 특정한 소스로부터 얻은 콘텐츠). 예를 들면, 디지털 잡지의 영역은 (뉴스 조직의 웹 사이트와 같은) 온라인 뉴스 소스의 기사를 포함하고, 다른 영역은 특정한 주제와 연관된 콘텐츠의 서드-파티 큐레이트된 컬렉션(a third-party-curated collection)의 기사를 포함하고(예컨대, 기술 편집), 추가 영역은 사용자와 연관된 하나 이상의 계정으로 얻은 콘텐츠와 하나 이상의 소셜 네트워킹 시스템의 연결에 의해 유지된 콘텐츠를 포함한다. 예시의 목적으로, 영역에 포함된 콘텐츠는 “콘텐츠 항목”혹은 “기사”로서 칭하며, 이는 텍스트 문서, 사진, 비디오, 판매, 사용자 제작 콘텐츠(예를 들어, 소셜 네트워크 시스템에 게시한 콘텐츠). 광고, 그리고 디지털 잡지 안에서 디스플레이 가능한 콘텐츠의 다른 형식도 포함할 수 있다.
시스템 아키텍쳐(System Architecture)
도1은 디지털 잡지 서버(14)를 위한 시스템 환경(100)의 블록도이다. 도 1에 도시된 시스템 환경(100)은 하나 이상의 소스(110), 네트워크(120), 클라이언트 장치(130), 그리고 디지털 잡지 서버(140)를 포함한다. 대체적인 구성에서, 상이한, 및/또는 추가적인 구성요소가 시스템 환경(100)에 포함될 수 있다. 본 명세서에 기재된 실시 예들은 디지털 잡지 서버(140)가 아닌 온라인 시스템에서 적용될 수 있다.
소스(110)은 클라이언트 장치(130)에 다양한 유형의 콘텐츠를 제공할 수 있는 컴퓨팅 시스템이다. 예시의 목적으로, 소스에 의해 제공되는 콘텐츠는 “콘텐츠 피드(contents feed)”로 칭한다. 소스(110)에 의해 제공되는 콘텐츠의 예는 텍스트, 사진, 영상, 혹은 웹 페이지의 오디오, 웹 피드(web feed), 소셜 네트워킹 정보, 메시지, 혹은 다른 적절한 데이터를 포함한다. 콘텐츠의 추가적인 예로는 사용자가 생성한 콘텐츠, 즉, 블로그, 트윗, 공유한 사진, 영상, 오디오, 소셜 네트워킹 게시물, 그리고 소셜 네트워킹 상태 업데이트가 포함된다. 소스(110)에 의해 제공되는 콘텐츠는 발행자로부터 수신되고(예컨대, 뉴스 사건에 대한 이야기, 제품 정보, 엔터테인먼트, 혹은 교육적 자료) 소스(110)에 의해 배포될 수 있거나, 또는 소스(110)가 콘텐츠를 생성하는 발행자가 될 수 있다. 편의를 위하여 소스로부터의 콘텐츠는 그것의 구성과 무관하게, “기사”, “콘텐츠 항목”또는 “콘텐츠”로서 칭할 수 있다. 콘텐츠 항목은 텍스트, 사진, 영상과 같은 다양한 유형의 콘텐츠를 포함할 수 있다.
소스(110)는 유선 및/또는 무선 통신 시스템을 모두 사용하여, 근거리 및/또는 광역 네트워크의 임의의 조합을 포함할 수 있는 네트워크(120)를 통해 클라이언트 장치(130) 및 디지털 잡지 서버(140)와 통신한다. 일 실시예에서, 네트워크(120)는 표준 통신 기술 및/또는 프로토콜을 사용한다. 예를 들어, 네트워크(120)는 이더넷(Ethernet), 802.11, 와이맥스(WiMAX), 3G, 4G, CDMA(code division multiple access), DSL(digital subscriber line) 등의 기술을 이용한 통신 링크를 포함한다. 네트워크(120)을 통해 통신하는데 사용되는 네트워킹 프로토콜의 예는 MPLS(multiprotocol label switching), TCP/IP(transmission control protocol/Internet protocol), HTTP(hypertext transport protocol), SMTP(simple mail transfer protocol), FTP(file transfer protocol )을 포함한다. 네트워크(120)를 통해 교환되는 데이터는 HTML(hypertext markup language), 또는 XML(extensible markup language)과 같은 임의의 적합한 포맷을 이용하여 표현될 수 있다. 일부 실시의 예에서 네트워크(120)의 통신 링크의 전부 또는 일부는 임의의 적합한 기술 또는 기법을 이용하여 암호화 될 수 있다.
클라이언트 장치(130)는 네트워크(120)를 통해 데이터를 송신 및/또는 수신할 뿐만 아니라, 사용자 입력을 수신할 수 있는 하나 이상의 컴퓨팅 장치이다. 실시 예에서, 클라이언트 장치(130)는 데스크탑 혹은 노트북과 같은 종래의 컴퓨터 시스템이다. 대안적으로, 클라이언트 장치(130)는 PDA(personal digital assistant), 휴대전화, 스마트폰, 테플릿 컴퓨터, 또는 다른 적절한 장치와 같은 컴퓨터 기능을 갖는 장치일 수 있다.
일 실시 예에서, 클라이언트 장치(130)는 클라이언트 장치(130)의 사용자가 디지털 잡지 서버(140)와 상호작용할 수 있게 허용하는 어플리케이션을 실행하도록 한다. 예를 들어, 클라이언트 장치(130) 상에서 실행중인 어플리케이션은 클라이언트 장치(130)의 사용자에게 제시된 콘텐츠를 조정하도록 디지털 잡지 서버(140)에 콘텐츠 항목에 대한 명령 또는 요청을 통신한다. 다른 예로서, 클라이언트 장치(130)는 디지털 잡지 서버(140)로부터 페이지를 수신하고, 클라이언트 장치(130) 사용자에게 페이지를 제시하는 브라우저를 실행한다. 다른 실시 예에서, 클라이언트 장치(130)는 IOS® 또는 ANDROID™ 와 같은 클라이언트 장치(130)의 기본 운영 시스템에서 실행되는 API(application programming interface)를 통해 디지털 잡지 서버(140)와 상호작용한다. 도 1은 단일 클라이언트 장치(130)를 도시하는 반면에, 다양한 실시 예에서는, 임의 개수의 클라이언트 장치(130)가 디지털 잡지 서버(140)와 통신할 수 있다.
클라이언트 장치(130)에 포함된 디스플레이 장치(132)는 클라이언트 장치(130)의 사용자에게 콘텐츠 항목을 제시한다. 디스플레이 장치(132) 의 예는 LCD(liquid crystal display), AMLCD(active matrix liquid crystal display), OLED(organic light emitting diode), 또는 임의의 다른 적합한 장치를 포함한다. 다른 클라이언트 장치(130)는 상이한 특성을 갖는 디스플레이 장치(132)를 가질 수 있다. 예를 들어, 다른 클라이언트 장치(130)는 상이한 디스플레이 영역, 상이한 해상도, 또는 상이한 특성의 차이를 갖는 디스플레이 장치(132)를 갖는다.
클라이언트 장치(130)에 포함되는 하나 이상의 입력 장치(134)는 사용자로부터 입력을 수신한다. 상이한 입력 장치(134)가 클라이언트 장치(130)에 포함될 수 있다. 예를 들어, 클라이언트 장치(130)는 사용자로부터 입력 데이터, 명령 또는 정보를 수신하기 위한 터치-감지(touch-sensitive) 디스플레이를 포함한다. 터치-감지 디스플레이 사용은 클라이언트 장치(130)에게 디스플레이 장치(132)와 입력 장치(134)를 결합하도록 허용하여, 제시된 콘텐츠 항목과 사용자의 상호작용을 단순화시킨다. 다른 실시 예에서, 클라이언트 장치(13)는 키보드, 트랙패드, 마우스, 혹은 사용자로부터 입력을 수신할 수 있는 임의의 다른 장치를 포함할 수 있다. 다른 예에서, 입력 장치(134)는 비접촉 인터페이스를 통해 클라이언트 장치 사용자로부터 정보를 수신하도록 구성된다. 비접촉 인터페이스의 예는 사용자가 디스플레이 장치(132) 또는 클라이언트 장치(130)에 물리적으로 접촉하지 않고 클리언트 장치로부터 사용자 제스처를 수신하기 위하여, 이미지 캡쳐 장치와 같은 센서들을 포함한다. 추가로, 일부 실시 예에서, 클라이언트 장치(130)는 다수의 입력 장치(134)를 포함할 수 있다. 입력 장치(134)를 통해 수신된 입력들은 클라이언트 장치 사용자가 디지털 잡지 서버(140)에 의해 제시된 콘텐츠 항목과 상호작용할 수 있도록 디지털 잡지 서버(140)와 연관되며 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션에 의해 실행될 수 있다.
디지털 잡지 서버(140)는 하나 이상의 소스(110)로부터 콘텐츠 항목을 수신하며, 수신된 콘텐츠를 처리하여 디지털 잡지 내에 섹션을 생성하고, 클라이언트 장치(130)에 섹션을 제공한다. 도 2와 함께 이하에서 더 설명될 것처럼, 디지털 잡지 서버(140)는 하나 이상의 소스(110)로부터 획득된 콘텐츠 항목 및 콘텐츠 항목의 조직 및 제시를 설명하는 정보에 기초하여 사용자에게 제공할 하나 이상의 섹션을 생성한다. 예를 들어, 디지털 잡지 서버(140)는 사용자와 연관된 정보에 기초하여 서로에 대해 콘텐츠 항목의 위치를 특정하는 페이지 레이아웃을 결정하고, 클라이언트 장치(130)를 통해 사용자에게 제시하기 위해 결정된 레이아웃에 따라 배열된 콘텐츠 항목을 포함하는 섹션을 생성한다. 이는 사용자가 콘텐츠 항목과 사용자의 상호작용과 콘텐츠 항목의 소비를 강화시키는 포맷으로 클라이언트 장치(130)를 통해 콘텐츠 항목에 접근하는 것을 허용한다. 예를 들어, 디지털 잡지 서버(140)는 사용자에게 인쇄 잡지에서 사용된 포맷과 유사한 포맷으로 콘텐츠 항목을 제공한다. 인쇄 잡지와 유사한 포멧으로 콘텐츠 항목을 제시함으로써, 디지털 잡지 서버(140)는 다양한 콘텐츠 항목의 접근을 위해 클라이언트 장치(130)와 사용자의 상호작용의 양을 감소시킨다.
도 2는 디지털 잡지 서버(140)의 아키텍쳐의 블록도이다. 도 2에 도시된 예에서, 디지털 잡지 서버(140)는 사용자 프로필 저장소(205), 템플릿 저장소(210), 콘텐츠 저장소(215), 레이아웃 엔진(220), 커넥션 생성기(225), 커넥션 저장소(230), 추천 엔진(235), 검색 모듈(240), 인터페이스 생성기(245), 그리고 웹 서버(250)를 포함한다. 다른 실시 예에서, 디지털 잡지 서버(140)는 다양한 어플리케이션을 위한 추가적인, 더 적은, 또는 상이한 구성 요소들을 포함할 수 있다. 시스템 아키텍쳐의 세부사항을 명료하게 하도록 네트워크 인터페이스, 보안 기능, 로드 밸런서, 페일 오버 서버, 관리 및 네트워크 조작 콘솔 등과 같은 종래의 구성요소는 도시되지 않는다.
디지털 잡지 서버(140)의 각 사용자는 사용자 프로필 저장소(205)에 저장된 사용자 프로필과 연관된다. 사용자 프로필은 사용자에 의해 명시적으로 공유되었던 사용자에 관한 서술 정보(declarative information)를 포함하며, 또한 디지털 잡지 서버(140)에 의해 추론된 프로파일 정보를 포함할 수 있다. 일 실시예에서, 사용자 프로필은 다수의 데이터 필드를 포함하고, 각각은 대응되는 디지털 잡지 서버 사용자의 하나 이상의 속성을 설명한다. 사용자 프로필에 저장된 정보의 예는 성별, 취미 또는 선호도, 위치, 또는 다른 적절한 정보와 같은 전기적(biographic), 인고 통계학의(demographic), 그리고 서술적인 정보의 다른 형태를 포함한다. 또한 사용자 프로필 저장소(205)에 저장된 사용자 프로필은 디지털 잡지 서버(140)에 의해 제시된 콘텐츠 항목과 대응되는 사용자의 상호작용을 설명하는 데이터를 포함한다. 예를 들어, 사용자 프로필은 콘텐츠 항목 식별자(identifier), 콘텐츠 항목 식별자에 대응하는 콘텐츠 항목과의 상호작용의 설명, 그리고 상호작용이 발생한 시간을 포함한다.
사용자 프로필 저장소(205) 내의 사용자 프로필이 개인과 자주 연관되고, 개인에게 디지털 잡지 서버(140)을 통해 콘텐츠 항목을 제공하고, 수신하는 것을 허용하면서, 사용자 프로필은 사업 또는 조직과 같은 기업(entity)에 저장될 수도 있다. 이것은 디지털 잡지 서버(140)을 통해 기업이 콘텐츠 항목을 제시하거나, 항목에 접근하는 것을 허락한다. 기업은 자사의 제품이나 자사에 대한 정보를 게시하거나, 또는 디지털 잡지 서버(140)의 사용자의 관심 기업과 연관된 다른 콘텐츠 항목을 제공할 수 있다. 예를 들어, 디지털 잡지 서버(140)의 사용자는 디지털 잡지 서버(140)를 통해 기업과 관련된 콘텐츠 항목을 포함하는 디지털 잡지 또는 섹션을 수신할 수 있다.
템플릿 저장소(210)는 페이지 템플릿을 포함하며, 각각은 클라이언트 장치(130)에 의한 제시를 위한 섹션(“레이아웃”) 상에 서로에 대한 콘텐츠 항목의 공간 배열을 설명한다. 페이지 템플릿은 하나 이상의 콘텐츠 항목을 제시하도록 각각 구성된 하나 이상의 디스플레이 영역을 포함한다. 일부 실시예에서, 페이지 템플릿의 디스플레이 영역은 콘텐츠 항목의 특정 유형을 제시하거나 또는 하나 이상의 특정된 특성을 갖는 콘텐츠 항목을 제시하도록 구성될 수 있다. 예를 들어, 페이지 템플릿의 디스플레이 영역은 이미지를 표시하도록 구성되는 반면에, 페이지 템플릿의 다른 디스플레이 영역이 텍스트 데이터를 제시하도록 구성된다. 각 디스플레이 영역은 크기(예를 들어, 소, 중, 혹은 대)를 가지며, 종횡비를 갖는다. 하나 이상의 디스플레이 영역은 콘템츠 항목이 상이한 클라이언트 장치(130)를 사용하여 보여지는 경우, 콘텐츠 항목이 상이한 상대 위치에서 상이한 크기로 제시될 수 있게 하는, 클라이언트 장치의 유형들과 연관될 수 있다. 추가적으로, 페이지 템플릿은 소스(110)가 소스(110)으로부터 수신된 콘텐츠 항목을 제시하는 섹션의 포맷을 특정할 수 있도록 허용하도록, 소스(110)와 연관될 수 있다. 예를 들어, 온라인 소매 업체는 온라인 업체가 특정 조직과 디지털 잡지 서버(140)를 통해 콘텐츠 항목을 제시하는 것을 허용하는 페이지 템플릿과 연관된다. 페이지 템플릿의 예들은 그것의 전체가 여기에 참고로 병합되는, 2011년 7월 21일에 출원된 미국 특허 제13/187, 840호에 더 설명된다.
다양한 실시 예에서, 템플릿 저장소(210)에 포함된 페이지 템플릿은 콘텐츠 항목의 제시가 콘텐츠 항목이 제시되는 디스플레이 영역의 다양한 크기 또는 치수를 설명하는 것을 허용하도록, 플렉서블한 치수로 정의될 수 있다. 예를 들어, 페이지 템플릿은 콘텐츠 항목이 제시되는 디스플레이 영역의 퍼센트를 지정하는 디스플레이 영역을 포함한다. 콘텐츠 항목의 제시를 위한 디스플레이 영역의 퍼센트를 특정하는 것은 페이지 템플릿이 디스플레이 영역의 범위에 걸쳐 콘텐츠 항목을 제시하는 것을 허용하고, 디스플레이 영역 크기를 조정할 때 일관성 있는 프리젠테이션을 제공하는 것을 허용한다. 디스플레이 영역의 퍼센트로 특정된 디스플레이 영역을 갖는 페이지 템플릿은 상기 도 3, 4, 및 5a 내지 5f와 함께 이하에서 설명한다.
일부 실시 예에서, 템플릿 저장소(210)은 서로에 대해 콘텐츠 항목의 위치를 특정하는 하나 이상의 서브-템플릿을 포함한다. 서브-템플릿은 서로에 대해 콘텐츠 항목의 크기 및 위치를 특정하는 하나 이상의 디스플레이 영역을 포함한다. 페이지 템플릿의 디스플레이 영역은 디스플레이 영역 내에서 콘텐츠 항목의 제시를 위해 서브-템플릿을 선택을 특정할 수 있다. 예를 들어, 페이지 템플릿의 디스플레이 영역은 서브-템플릿을 식별하며, 디스플레이 영역에 제시된 콘텐츠 항목이 서로 상대적으로 위치될 수 있도록 허용한다. 콘텐츠 항목의 제시를 향상시키기 위해, 디스플레이 영역을 포함하는 페이지 템플릿이 제시되는 경우, 디스플레이 영역 내 콘텐츠 항목을 제시하기 위해 사용되는 서브-템플릿이 선택된다. 예를 들면, 템플릿 저장소(210) 내의 다양한 서브-템플릿은 콘텐츠 항목이 제시된 디스플레이 영역과 제시될 콘?츠 항목의 특성에 기초하여 스코어링된다. 이는 콘텐츠 항목이 사용자 상호작용을 용이하게 하는 포맷으로 디스플레이된 서브-템플릿을 선택함으로써 디스플레이 영역 내 콘텐츠 항목의 제시를 최적화한다. 그 대신에, 소스(110) 또는 디지털 잡지 서버(140)의 사용자는 특정 서브-템플릿을 템플릿의 디스플레이 영역과 연관시키고, 소스(110) 또는 사용자가 템플릿의 디스플레이 영역 내의 콘텐츠 항목의 제시를 최적화하도록 허용한다. 콘텐츠 항목을 제시하는 서브-템플릿의 사용은 도 7과 함께 이하에서 더 설명된다.
콘텐츠 저장소(215)는 다양한 유형의 콘텐츠를 나타내는 객체들을 저장한다. 예를 들면, 콘텐츠 저장소(215)는 현재 시간의 스레시홀드 시간 이내에 하나 이상의 소스(110)로부터 수신된 콘텐츠 항목을 저장한다. 콘텐츠 저장소(215)에 의해 저장되는 콘텐츠 항목의 예로는 페이지 포스트, 상태 업데이트, 사진, 비디오, 링크, 기사, 사진, 비디오 데이터 또는 임의의 다른 유형의 콘텐츠를 포함한다. 사용자는 공통 특성(common characteristic)을 갖는 콘텐츠 항목을 포함하는 섹션을 특정할 수 있고, 공통 특성은 섹션을 특정하는 사용자의 사용자 프로필과의 연관과 함께 콘텐츠 저장소(215) 내에 저장된다.
레이아웃 엔진(220)은 하나 이상의 소스(110) 또는 콘텐츠 저장소(215)로부터 콘텐츠 항목을 검색하고, 템플릿 저장소(210)로부터 페이지 템플릿에 기초하여 콘텐츠 항목을 포함하는 섹션을 생성한다. 검색된 콘텐츠 항목에 기초하여, 레이아웃 엔진(220)은 템플릿 저장소(210)로부터 후보 페이지 템플릿을 식별할 수 있고, 상이한 페이지 템플릿 내 디스플레이 영역의 특성에 기초하여, 이미-선택된 템플릿에 기초하여, 그리고 콘텐츠 항목의 특성에 기초하여, 후보 페이지 템플릿을 스코어링할 수 있다. 후보 페이지 템플릿과 연관된 스코어에 기초하여, 레이아웃 엔진(220)은 페이지 템플릿을 선택하고, 검색된 콘텐츠 항목이 서로에 대하여 제시되며 그들의 연관된 디스플레이 영역에 기초하여 크기가 정해진(sized) 섹션을 생성하기 위하여 검색된 콘텐츠 항목을 하나 이상의 디스플레이 영역과 연관시킨다. 레이아웃 엔진(220)은 후보 페이지 템플릿으로부터 페이지 템플릿이 선택될 때, 콘텐츠 항목이 제시되는 장치(130)의 디스플레이 영역을 사용할 수 있다. 일부 실시예에서, 레이아웃 엔진(220)은 사용자에 상이한 페이지 템플릿을 기초로 배열된 콘텐츠 항목을 제공하기 위하여 템플릿이 선택될 때, 하나 이상의 다각화 정책(diversification policy)을 시행할 수 있다. 다각화 정책의 사용은 도 6과 함께 이하에서 더 설명된다. 콘텐츠 항목을 디스플레이 영역과 연관시킬 때, 레이아웃 엔진(220)은 콘텐츠 항목을 콘텐츠 항목의 특정 유형을 제시하거나 또는 하나 이상의 특정된 특성을 갖는 콘텐츠 항목을 제시하도록 구성된 디스플레이 영역과 연관시킬 수 있다. 콘텐츠 항목을 제시하기 위해 페이지 템플릿을 사용하는 예는 여기에 그것의 전체가 참조로서 병합된, 2011년 7월 21일에 출원된 미국 특허 출원 No. 13/187,840호에 더 설명된다.
만일 선택된 템플릿의 디스플레이 영역이 서브-템플릿을 특정한다면, 레이아웃 엔진(220)은 템플릿 저장소로부터 특정된 서브-템플릿을 검색한다. 그 대신에, 레이아웃 엔진(220)은, 콘텐츠 항목의 특성, 서브-템플릿 내에 디스플레이 영역의 위치와 크기, 및 콘텐츠 항목이 제시되는 클라이언트 장치(130)의 디스플레이 영역에 기초하여 템플릿 저장소(210)로부터 검색된 다양한 서브-템플릿을 스코어링한다. 다양한 서브-템플릿과 연관된 스코어에 기초하여, 레이아웃 엔진(220)은 서브-템플릿 특정 크기 및 서브-템플릿을 특정하는 디스플레이 영역 내에 제시된 콘텐츠 항목의 상대적 위치를 선택한다.
커넥션 생성기(225)는 사용자와 디지털 잡지 서버(140)에 의해 제시된 콘텐츠 항목 간의 상호작용을 모니터링한다. 상호작용에 기초하여, 커넥션 생성기(225)는 다양한 콘텐츠 항목들 간의 연결, 사용자와 콘텐츠 항목 간의 연결, 또는 디지털 잡지 서버(140)의 사용자들 간의 연결을 결정한다. 예를 들면, 커넥션 생성기(225)는 디지털 잡지 서버(140)의 사용자가 콘텐츠 항목에 대한 피드백을 제공할 때를 식별하고, 콘텐츠 항목에 접근하고, 콘텐츠 항목을 다른 사용자와 공유하고, 또는 다른 동작을 콘텐츠 항목에 수행한다. 일부 실시예에서, 커넥션 생성기(225)는 데이터를 사용자 프로필 저장소(205) 내 사용자의 사용자 프로필로부터 콘텐츠 항목과 사용자의 상호작용을 나타내는 데이터를 검색한다. 그 대신에, 콘텐츠 항목과 사용자의 상호작용은 상호작용이 디지털 잡지 서버(140)에 의해 수신될 때 커넥션 생성기(225)와 통신된다. 커넥션 생성기(225)는 콘텐츠 항목과 사용자의 상호작용과 연관된 시간 정보(temporal information)를 설명할 수 있다. 예를 들면, 커넥션 생성기(225)는 특정된 시간 간격 내의 콘텐츠 항목과 사용자의 상호작용을 식별하거나, 또는 상호작용과 연관된 시간에 기초하여 디케이 인자(decay factor)를 식별된 사용자 상호작용에 적용시킬 수 있다. 커넥션 생성기(225)는 만일 콘텐츠 항목과의 사용자의 상호작용이 하나 이상의 기준을 만족한다면, 사용자와 콘텐츠 항목 간의 연결을 생성할 수 있다. 일 실시예에서, 커넥션 생성기(225)는 하나 이상의 기준을 만족하는 콘텐츠 항목과 사용자의 상호작용에 기초하여 사용자와 콘텐츠 항목 간의 연결의 강도를 특정하는 하나 이상의 가중치(weight)를 결정한다. 사용자와 콘텐츠 항목 간의 연결의 생성은 여기에 그 전체가 참조로 병합되는, 2013년 5월 29일에 출원된, 미국 특허 출원 No. 13/905,016호에 더 설명된다.
만일 다중 콘텐츠 항목이 사용자와 연결된다면, 커넥션 생성기(225)는 사용자와 연결된 콘텐츠 항목들 간의 묵시적 연결(implicit connection)을 확립한다. 일 실시예에서, 커넥션 생성기(225)는 사용자와 연결된 콘텐츠 항목들 간의 묵시적 연결을 식별하는 사용자 콘텐츠 그래프를 유지한다. 일 실시예에서, 사용자와 콘텐츠 항목 간의 연결과 연관된 가중치는 콘텐츠 항목들 간의 다양한 묵시적 연결과 연관된 가중치를 결정하기 위해 사용된다. 디지털 잡지 서버(140)의 다중 사용자를 위한 사용자 콘텐츠 그래프는 다양한 콘텐츠 항목들과 사용자의 상호작용을 설명하는 글로벌 콘텐츠 그래프를 생성하기 위해 결합된다. 예를 들면, 글로벌 콘텐츠 그래프는 사용자 콘텐츠 그래프 내 다양한 콘텐츠 항목들 간의 상호 연결에 기초하여 사용자 콘텐츠 그래프를 결합함으로써 생성된다.
일 실시예에서, 커넥션 생성기(225)는 글로벌 콘텐츠 그래프 또는 다중 사용자 콘텐츠 그래프로부터 인접 행렬(adjacency matrix)을 생성하고, 커넥션 저장소(230) 내에 인접 행렬을 저장한다. 인접 행렬은 콘텐츠 항목들 간의 연결을 설명한다. 예를 들면, 인접 행렬은 콘텐츠 항목의 식별자와 글로벌 콘텐츠 그래프에 기초하여 콘텐츠 항목들 간의 연결의 강도(strength) 또는 근사도(closeness)를 표현하는 가중치를 포함한다. 일 예로서, 가중치는 주제(subject matter)의 유사 정도 또는 다양한 콘텐츠 항목과 연관된 다른 특성들의 유사 정도를 나타낸다. 다른 실시예에서, 커넥션 저장소(230)는 다양한 사용자 콘텐츠 그래프로부터 결정된 다양한 인접 행렬을 포함하고; 인접 행렬은 디지털 잡지 서버(140)에 의해 제공된 콘텐츠 항목들에 대한 종합 인접 행렬을 생성하기 위해 분석될 수 있다. 그래프 분석 기법은 콘텐츠 항목을 점수매기기(scoring) 위해, 사용자에게 콘텐츠 항목을 추천하기 위해, 또는 그렇지 않으면, 콘텐츠 항목들 간의 관계를 분석하기 위해, 인접 행렬에 적용될 수 있다. 인접 행렬의 예는 여기에 그 전체가 참조로 병합되는, 2013년 5월 29일에 출원된, 미국 특허 출원 No. 13/905,016호에 더 설명된다.
콘텐츠 항목들 간의 연결을 식별하는 것에 추가하여, 커넥션 생성기(225)는 사용자와 콘텐츠 항목 간의 상호작용에 기초하여 디지털 잡지 서버(140)의 사용자들 간의 소셜 친밀도(social proximity)를 또한 결정할 수 있다. 일 실시예에서, 커넥션 생성기(225)는 콘텐츠 항목과 사용자 및 추가 사용자의 상호작용에 기초하여 디지털 잡지 서버(140)의 사용자와 추가 사용자 간의 연결 신뢰도(connection confidence) 값을 결정한다. 연결 신뢰도 값은 사용자와 추가 사용자 간의 친밀감 척도를 나타내는 수치 스코어일 수 있다. 예를 들면, 더 큰 연결 신뢰도 값은 사용자와 추가 사용자 간의 유사도가 더 높음을 나타낸다. 일 실시예에서, 만일 사용자가 다른 사용자와 적어도 스레스홀드 연결 신뢰도 값을 갖는다면, 디지털 잡지 서버(140)는 커넥션 저장소(230) 내에 사용자와 다른 사용자 간의 연결을 저장한다.
커넥션 저장소(230)로부터의 데이터를 사용하여, 추천 엔진(235)은 사용자에게 디지털 잡지 서버를 추천하기 위해 하나 이상의 소스(110)로부터 콘텐츠 항목을 식별한다. 따라서, 추천 엔진(235)은 사용자와 잠재적으로 관계가 있는 콘텐츠 항목을 식별한다. 일 실시예에서, 추천 엔진(235)은 콘텐츠 항목들 간의 연결, 및/또는 커넥션 저장소(230)로부터의 사용자 간의 연결을 설명하는 데이터를 검색한다. 일 실시예에서, 추천 엔진(235)은 콘텐츠 항목(예컨대, 제목, 섹션, 서브섹션) 및 디지털 잡지 서버 사용자와 관계가 있을 수 있는 콘텐츠 항목을 식별하기 위해 사용자와 다양한 콘텐츠 항목(예컨대, 보기, 공유, 저장, 링크, 읽은 주제, 또는 최근 활동) 간의 상호작용을 설명하는 저장된 정보를 사용한다. 예를 들면, 사용자가 상호작용된 콘텐츠 항목에 적어도 스레스홀드 가중치의 묵시적 연결을 갖는 콘텐츠 항목이 사용자에게 추천된다. 다른 예로서, 추천 엔진(235)은 스레스홀드 연결 신뢰도 스코어를 갖는 추가 사용자가 사용자와 상호작용된 콘텐츠 항목과 공통되는 하나 이상의 속성을 갖는 콘텐츠 항목을 사용자에게 제시한다. 추가 콘텐츠 항목에 대한 추천이 사용자가 디지털 잡지를 이용하여 콘텐츠 항목을 볼 때 사용자에게 제시될 수 있고, 디지털 잡지 서버(140)에 의해 사용자에게 알림으로서 제시될 수 있고, 또는 임의의 적합한 통신 채널을 통해 사용자에게 제시될 수 있다.
일 실시예에서, 추천 엔진(235)은 사용자에게 추천된 콘텐츠 항목을 효율적으로 제공하기 위해, 하나 이상의 소스(110) 또는 콘텐츠 저장소(215)로부터 수신된 콘텐츠 항목에 다양한 필터를 적용시킨다. 예를 들면, 추천 엔진(235)은 사용자의 사용자 프로필로부터 검색된 사용자의 특성을 고려하여 콘텐츠 항목의 속성을 분석한다. 콘텐츠 항목의 예시적인 속성은 유형(예컨대, 이미지, 스토리, 링크, 비디오, 오디오 등), 콘텐츠 항목이 수신되었던 소스(110), 콘텐츠 항목이 검색되었던 시간, 및 콘텐츠 항목의 주제를 포함한다. 사용자의 예시적은 특성은 사용자에 관한 바이오그래픽 정보(biographic information), 사용자에 연결된 사용자, 및 사용자와 콘텐츠 항목 간의 상호작용을 포함한다. 일 실시예에서, 추천 엔진(235)은 추천된 콘텐츠 항목 세트를 생성하기 위해 특정된 기간 동안 사용자의 특성을 고려하여 콘텐츠 항목의 속성을 분석한다. 추천된 콘텐츠 항목 세트는 사용자에게 제시될 수 있거나, 또는 사용자 특성 및 더 개선된 추천된 콘텐츠 항목 세트를 생성하기 위한 콘텐츠 항목 속성에 기초하여 더 분석될 수 있다. 사용자의 사용자 프로필에 포함된 설정은 사용자에게 추천된 콘텐츠 항목을 식별시키고, 사용자가 추천된 콘텐츠 항목을 식별하기 위해 사용되는 시간을 가지고 추천된 콘텐츠 항목의 개선을 밸런싱하는 것을 허용하기 전에, 콘텐츠 항목이 분석되는 시간의 길이를 특정할 수 있다.
검색 모듈(240)은 사용자로부터 검색 쿼리(search query)를 수신하고, 검색 퀴리에 기초하여 하나 이상의 소스(110)로부터 콘텐츠 항목을 검색한다. 예를 들면, 검색 쿼리의 적어도 일부와 매칭되는 속성의 적어도 일부를 갖는 콘텐츠 항목이 하나 이상의 소스(110)로부터 검색된다. 사용자는 콘텐츠가 사용자의 사용자 프로필에 의해 또는 검색 쿼리 내 하나 이상의 소스를 식별하는 것에 의해 유지된 설정을 통해 수신된 소스(110)를 특정할 수 있다. 일 실시예에서, 식별된 콘텐츠 항목이 검색 쿼리를 갖는 그들의 연관의 공통 속성을 갖기 때문에, 검색 모듈(240)은 검색 쿼리에 기초하여 식별된 콘텐츠 항목을 포함하는 디지털 잡지의 섹션을 생성한다. 검색 쿼리로부터 식별된 식별 콘텐츠 항목을 제시하는 것은 추가 콘텐츠 항목이 소스(110)에 의해 제공되는 경우, 사용자가 검색 쿼리에 적어도 부분적으로 매칭되는 추가 콘텐츠 항목을 더욱 쉽게 식별할 수 있게 허용한다.
검색 쿼리에 기초하여 콘텐츠 항목을 더욱 효율적으로 식별하기 위하여, 검색 모듈(240)은 다양한 소스(110)로부터의 콘텐츠 항목, 콘텐츠 항목의 그룹(또는 섹션) 및 사용자 프로필 정보를 인덱싱할 수 있다. 일 실시예에서, 인덱스는, 예컨대, 저자, 소스, 제목, 생성 일자/시간, 사용자 상호작용 정보, 문서 제목, 또는 콘텐츠 항목을 고유하게 식별할 수 있는 다른 정보와 같은, 다양한 콘텐츠 항목에 관한 정보를 포함한다. 검색 쿼리는 사용자 제시용 콘텐츠 항목을 식별하기 위한 인덱스 내에 유지되는 정보와 비교된다. 검색 모듈(240)은 랭킹에 기초하여 식별된 콘텐츠 항목을 제시할 수 있다. 콘텐츠 항목과 연관된 하나 이상의 인자가 랭킹을 생성하기 위해 사용될 수 있다. 인자의 예로는: 디지털 잡지 서버(140)의 사용자들 사이의 콘텐츠 항목의 글로벌 인기, 콘텐츠 항목과 상호작용하는 사용자들 간의 연결, 검색 쿼리를 제공하는 사용자, 및 소스(110)로부터의 정보를 포함한다. 추가하여, 검색 모듈(240)은 인덱스 정보 간의 유사도에 기초하여 선택된 각 콘텐츠 항목과 연관된 인덱스 정보에 가중치를 할당할 수 있고, 그들의 가중치에 기초하여 콘텐츠 항목을 랭킹할 수 있다. 예를 들면, 검색 쿼리에 기초하여 식별된 콘텐츠 항목은 콘텐츠 항목의 랭킹에 부분적으로 기초한 순서로 디지털 잡지의 섹션에 제시된다.
디지털 잡지와 사용자의 상호작용을 증가시키기 위해, 인터페이스 생성기(245)는 디지털 잡지 서버(140)에 의해 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션에 의해 수행된 동작과 수신된 입력을 연관시키는 명령을 유지한다. 예를 들면, 인터페이스 생성기(245)에 의해 유지된 명령은 입력 또는 클라이언트 장치(130)의 입력 장치(134)를 통해 수신된 특정 입력의 유형을 디지털 잡지에 의해 제시된 콘텐츠에 대한 조정과 연관시킨다. 예로서, 만일 입력 장치(134)가 터치-센서티브 디스플레이라면, 인터페이스 생성기(245)는 상이한 제스처를 디지털 장치에 의해 제시된 콘텐츠 항목을 통한 네비게이션과 연관시키는 명령을 포함한다. 인터페이스 생성기(245)로부터의 명령은 디지털 잡지 서버(140)로부터의 콘텐츠가 제시된 클라이언트 장치(130) 상에서 실행중인 다른 어플리케이션 또는 디지털 잡지 어플리케이션과 통신된다. 디지털 잡지 서버(140)를 통해 제시된 콘텐츠 항목이 디지털 잡지 서버(140)에 의해 제시된 콘텐츠와 사용자 상호작용을 단순화하기 위해 제시되는 경우, 클라이언트 장치(130)의 입력 장치(134)를 통해 수신된 입력은 명령에 기초하여 처리된다.
웹 서버(250)는 네트워크(120)를 통해 디지털 잡지 서버(140)를 하나 이상의 소스(110)뿐만 아니라, 하나 이상의 클라이언트 장치(130)에 링크시킨다. 웹 서버(250)는 JAVA®, FLASH®, XML 및 기타 등등과 같은 다른 콘텐츠 뿐만 아니라, 웹 페이지를 제공한다. 웹 서버(250)는 하나 이상의 소스(110)로부터 콘텐츠 항목을 검색할 수 있다. 추가하여, 웹 서버(250)는 레이아웃 엔진(220)으로부터 콘텐츠 항목의 섹션을 생성하기 위한 명령 및 사용자 제시하기 위해 인터페이스 생성기(245)로부터 클라이언트 장치(130)로의 수신된 입력을 처기하기 위한 명령을 통신한다. 웹 서버(250)는 또한, 클라이언트 장치(130)로부터의 콘텐츠 또는 다른 정보에 대한 요청을 수신하고, 대응되는 동작을 수행하기 위해 요청 또는 정보를 디지털 잡지 서버(140)의 구성요소에 통신한다. 추가하여, 웹 서버(250)은 IOS®, ANDROID™, WEBOS® 또는 RIM®과 같은, 네이티브한 클라이언트 장치 운영 체제에 직접적으로 데이터를 전송하기 위해 API(application programming interface) 기능을 제공할 수 있다.
예시 목적으로, 도 2는 디지털 잡지 서버(140)에 의해 제공되는 다양한 기능을 묘사한다. 그러나, 다른 실시예에서, 상술한 기능은 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션에 의해 제공될 수 있거나, 또는 디지털 잡지 서버(140)와 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션의 조합에 의해 제공될 수 있다. 예를 들면, 디지털 잡지 서버(140)는 사용자에 의해 제공된 검색 쿼리를 특정하는 콘텐츠 항목을 포함하는 디지털 잡지의 사용자-정의된 섹션을 생성하고, 한 명 이상의 사용자에게 제시하기 위해 클라이언트 장치(130)에 사용자-정의된 섹션을 전송한다. 다른 실시예에서, 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 사용자로부터 검색 쿼리를 수신하고, 디지털 잡지의 사용자-정의된 섹션을 생성한다. 그 대신에, 디지털 잡지 서버(140) 및 클라이언트 장치(130)는 디지털 잡지의 사용자-정의된 섹션을 생성하기 위해 서로 연결되어 동작한다. 예를 들면, 어떤 기능(예컨대, 검색 쿼리를 특정하는 소스(110)로부터 콘텐츠 항목을 식별하는 것)은 디지털 잡지 서버(140)에 의해 수행되는 반면, 다른 기능(예컨대, 디지털 잡지의 사용자-정의된 섹션을 제시하기 위한 템플릿)은 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션에 의해 수행된다.
페이지 템플릿
도 3은 콘텐츠 항목을 제시하도록 구성된 다중 직사각 디스플레이 영역을 갖는 예시적인 페이지 템플릿(302)을 도시한다. 일 실시예에서, 페이지 템플릿(302)은 콘텐츠 항목을 디스플레이하기 위한 디스플레이 영역을 정의하는 행과 열로 나뉘어진 2차원 그리드로서 배열된다. 행(row)과 열(column)은 단일 폭을 가질 수 있거나, 또는 상이한 폭을 가질 수 있다. 행과 열의 폭은 픽셀의 수, 거리, 또는 클라이언트 장치(130)의 디스플레이에 대한 정보의 위치를 설명하는 다른 적합한 측정 단위를 사용하여 특정될 수 있다. 디스플레이 영역의 상이한 구성을 갖는 다른 페이지 템플릿은 소스(110)로부터 수신된 하나 이상의 콘텐츠 항목을 제시하기 위해 디지털 잡지 서버(140)에 의해 사용될 수 있다. 도 3과 함께 위에서 설명된 것처럼, 일부 실시예에서, 페이지 템플릿 내 하나 이상의 디스플레이 영역은 특정 특성을 갖는 콘텐츠 항목의 제시를 위해, 또는 콘텐츠 항목의 특정 유형의 제시를 위해 예약된다. 일 실시예에서, 디스플레이 영역의 크기는 고정된 종횡비(aspect ratio)로서 특정되거나, 또는 고정된 치수(예컨대, 각 열을 분리하는 20개의 픽셀을 갖는 6개의 컬럼 영역)을 사용한다. 다른 실시예에서, 디스플레이 영역은 직사각형 또는 특정된 위치에서 특정된 크기를 갖는, 다른 영역으로서 특정된다(예컨대, 위치(x,y)에서 직사각형의 200 픽셀 와이드, 여기서, x는 디스플레이의 왼쪽 위 코너로부터 측정되는 것과 같이 제1 축을 따르는 픽셀의 수를 표현하고, y는 디스플레이의 왼쪽 위 코너로부터 측정되는 것과 같이 제1 축에 수직인 제2 축을 따르는 픽셀의 수를 표현한다). 상술한 바와 같이, 디스플레이 영역의 크기는 또한, 디스플레이 영역의 퍼센트로서 특정될 수 있다. 예를 들면, 페이지 템플릿은 디스플레이 영역의 종횡비를 참고 치수의 퍼센트로서 특정하거나, 또는 디스플레이 영역의 하나 이상의 치수를 참고 치수의 퍼센트로서 특정한다.
추가하여, 페이지 템플릿 내 디스플레이 영역은 계층적으로(hierarchically) 특정될 수 있고, 여기서, 디스플레이 영역은 디스플레이 영역 내에 제시된 콘텐츠 항목에 대한 위치 및 크기를 특정하는 서브-템플릿을 콘텐츠 저장소(215)로부터 식별한다. 상술한 것처럼, 서브-템플릿은 서로에 관하여 콘텐츠 항목의 크기와 위치를 특정하는 하나 이상의 디스플레이 영역을 포함하고, 서브-템플릿 내 디스플레이 영역은 콘텐츠 항목을 제시하기 위한 서브-템플릿을 식별한다. 이는 디지털 잡지 내 콘텐츠 항목의 제시를 더 맞춤화할 수 있게 허용해준다. 예를 들면, 페이지 템플릿은 계층적으로 조직되고, 여기서 페이지 템플릿 내의 디스플레이 영역은 콘텐츠 항목을 제시하기 위해 서브-템플릿을 식별한다. 7 열(column) 페이지 템플릿은, 예를 들면, 2개의 서브-템플릿(예컨대, 4-열 및 3-열 서브-템플릿, 5-열 및 2-열 서브-템플릿, 6-열 및 1-열 서브-템플릿)으로 분할될 수 있거나, 또는 7 열의 순열로 배열된 임의의 적합한 수의 서브-템플릿으로 분할될 수 있다.
도 3의 예에서, 디지털 잡지 서버(140)가 사용자 제시용 섹션을 생성하는 경우, 디지털 잡지 서버(140)는 페이지 템플릿(302) 내 디스플레이 영역에 콘텐츠 항목을 넣어줄 수 있다. 페이지 템플릿(302)과 콘텐츠 항목 간의 연관과 페이지 템플릿(302) 내 디스플레이 영역을 식별하는 정보가 저장되고, 섹션을 생성하기 위해 사용된다. 예를 들면, 사용자에게 섹션을 제시하기 위해, 레이아웃 엔진(220)은 템플릿 저장소(210)로부터 페이지 템플릿(302)을 식별하고, 하나 이상의 소스(110) 또는 콘텐츠 저장소(215)로부터 콘텐츠 항목을 검색한다. 레이아웃 엔진(220)은 페이지 템플릿(302) 내의 디스플레이 영역과 콘텐츠 페이지를 연관시키는 데이터 또는 명령을 생성한다. 따라서, 생성된 섹션은 디스플레이 영역에 의해 특정된 위치에 디스플레이 영역과 연관된 하나 이상의 콘텐츠 항목을 제시하는 다앙한 “콘텐츠 영역”을 포함한다.
콘텐츠 영역(304)는 이미지 데이터, 텍스트 데이터, 이미지와 텍스트의 조합, 또는 대응되는 콘텐츠 항목으로부터 검색된 임의의 다른 정보를 제시할 수 있다. 예를 들면, 도 3에서, 콘텐츠 영역(304a)는 디지털 잡지의 섹션을 식별하는 콘텐츠들의 테이블을 표현하고, 다양한 섹션과 연관된 콘텐츠가 콘텐츠 영역(304b-304h) 내에 제시된다. 예를 들면, 콘텐츠 영역(304a)는 제시된 데이터가, 디지털 잡지의 다양한 섹션과 연관된 하나 이상의 식별자에 이어지는 텍스트 “Cover Stories Featuring,”과 같은, 콘텐츠들의 테이블인 것을 지시하는 텍스트 또는 다른 데이터를 포함한다. 일 실시예에서, 섹션과 연관된 식별자는 섹션 내 콘텐츠 항목의 적어도 스레스홀드 수와 공통인 특성들을 설명한다. 예를 들면, 식별자는 섹션 내에 포함된 콘텐츠 항목이 수신되는 소셜 네트워크의 사용자 이름을 말한다. 다른 예에서, 섹션과 연관된 식별자는 제목, 저자, 발행자(예컨대, 신문, 잡지) 또는 섹션 내 콘텐츠 항목의 적어도 스레스홀드 수와 연관된 다른 특성을 특정한다. 추가하여, 섹션과 연관된 식별자는 디지털 잡지 서버(140)의 사용자에 의해 선택되고 섹션으로서 조직된 콘텐츠 항목을 더 특정할 수 있다. 섹션 내 콘텐츠 항목은 화제적으로(topically) 관련될 수 있고, 화제(topic)와 관련된 텍스트 및/또는 이미지를 포함할 수 있다.
섹션은 콘텐츠 영역에 제시된 하나 이상의 서브섹션과 연관된 콘텐츠 항목을 갖는, 서브섹션으로 더 조직될 수 있다. 섹션 또는 서브섹션 내 콘텐츠 항목과 공통된 특성과 같은, 섹션 또는 서브섹션을 설명하는 정보는, 콘텐츠 저장소(215) 내에 저정될 수 있고, 사용자를 위해 섹션 또는 서브섹션의 생성을 단순화하기 위하여 사용자 프로필과 연관될 수 있다. 서브섹션과 연관된 페이지 템플릿이 식별될 수 있고, 서브섹션과 연관된 페이지 템플릿 내 디스플레이 영역은 서로에 관하여 서브섹션으로부터 콘텐츠 항목의 제시를 결정하기 위해 사용될 수 있다. 도 3을 참조하면, 콘텐츠 영역(304h)은 신문으로부터 검색된 콘텐츠 항목을 포함하는 섹션을 지시하기 위해 신문과 연관된 콘텐츠 항목을 포함한다. 사용자가 콘텐츠 영역(304)과 상호작용하는 경우, 섹션과 연관된 콘텐츠 항목뿐만 아니라, 섹션과 연관된 페이지 템플릿이 검색된다. 섹션과 콘텐츠 항목과 연관된 페이지 템플릿에 기초하여, 디지털 잡지 서버(140)는 페이지 템플릿의 디스플레이 영역에 의해 묘사되는 레이아웃에 기초하여 콘텐츠 항목을 제시하는 섹션을 생성한다. 예를 들면, 도 3에서, 섹션(306)은 섹션과 연관된 콘텐츠 항목을 제시하는 콘텐츠 영역(308, 310, 312)을 포함한다. 콘텐츠 영역(308, 310, 312)은 하나 이상의 공통 특성(예컨대, 화제, 저자 등)을 갖는 콘텐츠 항목을 포함하는 다양한 서브섹션과 연관된 콘텐츠 항목을 포함할 수 있다. 따라서, 서브섹션은 디지털 잡지에 의한 콘텐츠 항목의 계층적인 조직 및 제시를 허용하는, 하나 이상의 서브섹션을 포함할 수 있다.
콘텐츠 항목을 제시하기 위한 페이지 템플릿을 선택
도 4는 페이지 템플릿에 기초하여 디지털 잡지 내 콘텐츠 항목을 제시하는 방법의 일 실시예의 흐름도이다. 디지털 잡지 서버(140), 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 하나 이상의 페이지 템플릿을 저장(405)한다. 예를 들면, 하나 이상의 페이지 템플릿이 콘텐츠 저장소(215)에 저장된다. 도 2 및 3과 함께 상술한 것처럼, 페이지 템플릿은 클라이언트 장치(130)에 의해 제시하기 위해 섹션(“레이아웃”) 상에 서로에 관하여 콘텐츠 항목의 공간적 배열을 설명한다. 페이지 템플릿은 하나 이상의 콘텐츠 항목을 제시하도록 각각 구성된 하나 이상의 디스플레이 영역을 포함한다. 페이지 템플릿에서 서로에 대해 디스플레이 영역의 위치는 페이지 템플릿으로부터 생성된 섹션 내에서 서로에 관해 콘텐츠 항목의 위치를 특정한다.
일 실시예에서, 페이지 템플릿 내 디스플레이 영역은 섹션에 디스플레이된 콘텐츠 항목의 크기를 특정하기 위해 디스플레이 영역의 퍼센트와 연관된다. 예를 들면, 다양한 디스플레이 영역이 섹션이 디스플레이되는 디스플레이 영역의 높이 또는 너비의 퍼센트로서 특정된 높이 또는 너비와 같은, 참고 치수의 퍼센트로서 특정된 하나 이상의 치수와 연관된다. 다른 예로서, 디스플레이 영역은 섹션이 디스플레이되는 디스플레이 영역의 퍼센트로서 특정된 종횡비와 연관된다. 디스플레이 영역의 퍼센트로서 디스플레이 영역의 사이즈를 특정하는 것은 디스플레이 영역에 기초하여 디스플레이된 콘텐츠 항목의 크기가 디스플레이 영역이 크기가 변함에 따라 쉽게 조정될 수 있도록 허용한다. 추가하여, 페이지 템플릿 내 하나 이상의 디스플레이 영역은 치수가 고정되었을 수 있고, 그래서 고정된-치수 디스플레이 영역을 기초로 제시된 콘텐츠 항목의 크기는 섹션을 제시하는 디스플레이 영역이 크기가 변함에도 변경되지 않고 유지된다.
디지털 잡지 서버(140), 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 디지털 잡지를 통해 하나 이상의 소스(110)로부터 콘텐츠 항목을 제시하기 위한 요청을 수신(410)한다. 클라이언트 장치(130)의 디스플레이 영역을 설명하는 정보가 요청에 포함된다. 예를 들면, 클라이언트 장치(130)의 디스플레이 장치(132)의 물리적 치수가 요청에 포함된다. 일부 실시예에서, 디스플레이 장치(132)의 해상도를 설명하는 정보가 수신된 용청에 포함된다. 상기 요청은 제시를 위해 콘텐츠 항목의 하나 이상의 특성을 식별하는 정보를 추가적으로 포함할 수 있다. 하나 이상의 콘텐츠 항목의 예시적인 특성은: 하나 이상의 식별자, 콘텐츠 항목과 연관된 키워드, 콘텐츠 항목과 연관된 사용자, 및 콘텐츠 항목과 연관된 시간 간격을 포함한다.
클라이언트 장치의 디스플레이 영역에 적어도 부분적으로 기초하여, 하나 이상의 후보 페이지 템플릿이 저정된 페이지 템플릿으로부터 선택(415)된다. 예를 들면, 콘텐츠 항목을 제시하기 위한 수신된 요청 내 정보를 이용하여, 저정된 페이지 템플릿들 각각의 디스플레이 영역에 대한 물리적 치수가 결정되고; 스레스홀드 값 이하인 하나 이상의 물리적 치수를 가지는 적어도 하나의 디스플레 영역을 갖는 페이지 템플릿은 후보 페이지 템플릿으로서 식별되지 않는다. 따라서, 보도록 만들거나 콘텐츠 항목과 상호작용하도록 만들기 어려울 수 있는 치수를 이용하여 콘텐츠 항목을 제시할 것인 페이지 템플릿은 후보 페이지 템플릿으로서 식별되지 않는다. 다른 예로서, 다양한 페이지 템플릿이 디스플레이 영역을 하나 이상의 열로 나누고, 다양한 페이지 템플릿의 각각은 수신된 요청으로부터의 디스플레이 영역에 관한 정보와 비교된다. 열은 디스플레이 영역의 퍼센트 또는 특정된 물리적 치수를 사용하여 특정될 수 있다. 적어도 스레스홀드 물리적 크기를 가지고 디스플레이 영역 내에 표시될 수 있는 많은 수의 열을 갖는 페이지 템플릿이 후보 페이지 템플릿으로서 선택(415)되는 반면에서, 적어도 스레스홀드 물리적 크기를 가지고 디스플레이 영역 내에 표시될 수 없는 하나 이상의 열을 갖는 페이지 템플릿이 후보 페이지 템플릿으로서 선택되지 않는다. 예를 들면, 디스플레이 영역은 스레스홀드 물리적 크기를 각각 갖는 5열 초과(more than)를 제시할 수 없을 것이고, 그래서 5열 초과를 포함하는 페이지 템플릿은 후보 페이지 템플릿으로서 선택되지 않는 반면에서, 5열 이하(5 or fewer)를 갖는 페이지 템플릿은 후보 페이지 템플릿으로서 선택(415)된다. 일 실시예에서, 콘텐츠 항목을 제시하기 위한 요청이 수신(415)되었던 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 디지털 잡지 서버(140)로부터 또는 클라이언트 장치(130)에 로컬하게 위치한(local to) 저장 장치로부터 페이지 템플릿을 검색한 후에 후보 페이지 템플릿을 선택(415)하고; 그 대신에, 디지털 잡지 서버(140)는 콘텐츠 저장소(215)로부터 후보 페이지 템플릿을 선택(415)한다.
후보 페이지 템플릿으로부터, 디스플레이 페이지 템플릿이 선택(420)된다. 도 6과 함께 이하에서 추가로 설명될 것처럼, 스코어가 후보 페이지 템플릿 각각에 대하여 생성되고, 페이지 템플릿이 스코어에 적어도 부분적으로 기초하여 선택(420)된다. 다양한 실시예에서, 스코어가, 임의의 적합한 데이터뿐만 아니라, 제시될 콘텐츠 항목의 특성, 다양한 후보 페이지 템플릿 내 디스플레이 영역의 특성, 콘텐츠 항목이 제시되는 디스플레이 장치(132)의 디스플레이 영역에 기초된다. 예를 들면, 후보 페이지 템플릿의 디스플레이 영역 내에 콘텐츠 항목을 제시하기 위한 콘텐츠 항목의 조정의 양이 후보 페이지 템플릿에 대한 스코어 내에 반영된다. 콘텐츠 항목의 유형과 후보 콘텐츠 항목 내 디스플레이 영역들 간의 연관은 또한, 후보 페이지 템플릿의 스코어에 영향을 줄 수 있다. 도 6과 함께 이하에서 추가로 설명될 것처럼, 페이지 템플릿의 다이버시티(Diversity)는 페이지 템플릿을 선택(420)할 때 강화될 수 있다. 예를 들면, 특정 후보 페이지 템플릿의 스코어가 얼마나 최근 그들이 선택되었는지에 기초하여 또는 후보 페이지 템플릿 또는 후보 페이지 템플릿 내의 디스플레이 영역의 특성에 기초하여 증가되거나 또는 감소된다.
디스플레이 페이지 템플릿을 이용하여, 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 하나 이상의 소스(110)로부터 콘텐츠 항목을 포함하는 섹션을 생성(425)한다. 생성된 섹션은 선택된 페이지 템플릿 내의 디스플레이 영역에 의해 특정된 서로에 관하여 위치를 갖는 하나 이상의 콘텐츠 항목을 제시하는 콘텐츠 영역을 포함한다. 추가하여 다양한 콘텐츠 영역의 크기가 대응되는 콘텐츠 영역이 생성되는 선택된 페이지 템플릿 내의 디스플레이 영역의 크기로부터 결정된다. 일 실시예에서, 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은, 선택된 페이지 템플릿을 기초로 서로에 관하여 하나 이상의 콘텐츠 항목을 포함하는 하나 이상의 콘텐츠 영역을 배열하고 크기를 정한다.
일 실시예에서, 콘텐츠 영역의 크기는 만일 콘텐츠 영역이 특정된 유형을 갖는 콘텐츠 항목을 제시한다면 디스플레이 영역 내에 콘텐츠 영역의 위치를 기초로 조정된다. 예를 들면, 만일 콘텐츠 영역이 이미지를 디스플레이 하는 중이고, 디스플레이 영역의 경계의 스레스홀드 거리 이내라면, 콘텐츠 영역은 콘텐츠 영역의 경계가 디스플레이 영역 경계의 스레스홀드 거리 이내인 크기로 증가된다. 제시된 콘텐츠 항목의 유형에 기초하여 어떤 콘텐츠 영역의 크기를 증가하는 것은 사용자가 어떤 콘텐츠 항목을 더욱 쉽게 보거나 또는 상호작용할 수 있게 할 수 있고, 디지털 잡지를 통해 제시된 콘텐츠 항목과 사용자 상호작용을 증가시킨다.
도 5a 내지 f와 함께 더 설명될 것처럼, 섹션이 생성(425)되고 클라이언트 장치(130)를 통해 사용자에게 제시된 후에, 섹션을 제시할 수 있는 디플레이 영역의 크기가 조정될 수 있다. 예를 들면, 섹센이 랩탑 컴퓨터의 윈도우 내에 디스플레이되고, 사용자 또는 어플리케이션은 섹션을 디스플레이하는 윈도우의 크기를 조정한다. 디스플레이 영역의 조정된 크기를 포함하는 정보가 상술한 것처럼, 디스플레이 영역의 조정된 크기를 기초로 후보 페이지 템플싯을 선택(415)한, 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션과 통신된다. 상술한 것처럼, 페이지 템플릿이 선택(420)되고 디스플레이 영역의 조정된 크기를 기초로 조정된 섹션을 생성(425)하기 위해 사용된다. 따라서, 섹션의 레이아웃은 섹션을 제시할 수 있는 디스플레이 영역이 조정될 때 동적으로 조정될 수 있고, 제시된 콘텐츠 항목과의 사용자 관여를 증가시킨다.
일 실시예에서, 콘텐츠 항목의 제시가 특정 콘텐츠 항목을 디스플레이 하기 위한 선택된 페이지 템플릿의 콘텐츠 영역의 크기를 기초로 조정된다. 예를 들면, 콘텐츠 영역에 포함될 텍스트가 선택된 템플릿의 콘텐츠 영역의 스레스홀드 영역보다 크다면, 텍스트는 전체 텍스트가 선택된 템플릿의 타겟 콘텐츠 영역 내에 디스플레이 될 수 있게 크기가 감소된다. 콘텐츠 항목의 속성을 조정하기 위한 공지된 기술이 감소된 텍스트, 이미지, 비디오, 또는 조정된 콘텐츠 항목이 타겟 콘텐츠 영역에 제시하기에 적합하도록 하는 다른 콘텐츠 항목에 적용될 수 있다. 선택된 페이지 템플릿을 사용하여, 디지털 잡지 서버(140)는 임의의 선택된 미조정 콘텐츠 항목과 함께 조정된 콘텐츠 항목을 포함하는 섹션을 제시한다. 선택된 템플릿 내 타겟 콘텐츠 영역의 영역을 기초로 어떤 콘텐츠 항목의 크기를 조정하는 것은 디지털 잡지 서버(140)가 페이지 템플릿의 러프한 선택을 만들 수 있게 하고, 그 후 타겟 콘텐츠 영역의 영역을 기초로 콘텐츠 항목의 크기를 조정할 수 있게 한다. 차례로, 디지털 잡지 서버(140)는 페이지 템플릿을 더 쉽게 선택할 수 있고, 선택된 템플릿에 기초하여 섹션을 생성할 수 있다.
도 5a는 디스플레이 영역이 조정될 때 조절가능한 페이지 템플릿을 사용하는 디지털 잡지 내 콘텐츠 항목의 예시적인 제시이다. 도 5a에 도시된 예시에서, 섹션(505)이 생성되고, 선택된 페이지 템플릿에 기초하여 클라이언트 장치(130)의 디스플레이 장치(132) 상에 디스플레이 된다. “Watches &Horology”로 라벨링된, 섹션(505)은 디스플레이 영역(510a, 510b, 510c, 510d)을 포함한다. 미리 설명된 것처럼, 각 디스플레이 영역은 선택된 페이지 템플릿 내 디스플레이 영역에 의해 특정된 서로에 대해 위치를 갖는 하나 이상의 콘텐츠 항목을 제시한다. 하나 이상의 디스플레이 영역은 클라이언트 장치(130)의 사용자로부터 수신된 입력에 기초하여 조정되거나 또는 숨겨질 수 있다. 예를 들면, 움직임 제스처가 초기 위치에서 조정된 위치로 디스플레이 장치(132)의 디스플레이 영역의 치수의 움직임을 시뮬레이팅하는 경우, 디스플레이 영역은 조정된다. 더 구체적인 예로서, 만일 움직임 제스처가 초기 위치(520a)에서 2차 위치(520b)로 디스플레이 영역 치수(520)를 움직이도록 시뮬레이팅하는 제스처가 클라이언트 장치(130)를 통해 수신되고, 클라이언트 장치(130) 상에서 실행중인 어플리케이션과 통신되고, 디지털 잡지 서버(140)와 연관된다면, 디스플레이 영역(510e)와 디스플레이 영역(510e)에 포함된 콘텐츠 항목은, 도 5b에서처럼, 숨겨진다. 다른 실시예에서, 초기 위치(520a)에서 2차 위치(520b)로 디스플레이 영역 치수(520)를 감소시키도록 시뮬레이팅하는 제스처가 수신되는 경우, 디스플레이 영역(510e)에 포함된 콘텐츠 항목이 보여지도록 하나 이상의 추가 디스플레이 영역에 재분배될 수 있다. 섹션(505)이 디스플레이 되는 디스플레 영역에 대한 추가 조정이, 디스플레이 영역의 시인성을 유지하는 수(number)에서 선택된 페이지 템플릿에 의해 특정된 디스플레이 영역의 최소 수가 디스플레이 될 때까지, 점진적으로 감소하는 결과를 이끌어 낼 수 있다. 예를 들면, 디스플레이 영역 치수(520)에 대한 다양한 조정이 도 5c에 도시된 것처럼, 5개의 디스플레이 영역으로부터 3개의 디스플레이 영역으로 2개의 디스플레이 영역으로 섹션(505)에 의해 제시된 디스플레이 영역(510)의 수를 감소시키고, 도 5d에 도시된 것처럼, 시인성을 유지하는 단일 디스플레이 영역으로 끝난다. 추가 디스플레이 영역 치수(525)는 디스플레이 영역 치수(520)와 유사한 방식으로 조정될 수 있다. 예를 들면, 디스플레이 영역 치수(520)는 수평 치수이고, 추가 디스플레이 영역 치수(525)는 수직 치수이다.
예를 들면, 도 5e에 도시된 것처럼, 디스플레이 영역 치수(520, 525)가 조정될 때 콘텐츠 항목의 제시는 콘텐츠 항목의 제시를 위해 선택된 페이지 템플릿에 기초된다. 예를 들면, 디스플레이 영역 치수(520, 525)가 조정된 경우, 선택된 페이지 템플릿은 그들의 초기 디스플레이 영역(510f, 510g, 501h 및 501i)로부터 대체 디스플레이 영역(510j, 510k, 501l 및 501m)으로 콘텐츠 항목을 재분배한다. 다른 실시예에서, 디스플레이 영역 치수(520, 525)가 도 5f에 도시된 것처럼 조정된 경우, 선택된 페이지 템블릿은 하나 이상의 디스플레이 영역(510) 내의 콘텐츠 항목을 보이지 않도록 숨긴다. 그 대신에, 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중이고 디지털 잡지 서버(140)와 연관된 어플리케이션은, 만일 디스플레이 영역 치수(520, 525)가 조정된다면(예컨대, 만일 디스플레이 영역 치수(520, 525)가 증가된다면), 추가 콘텐츠 항목을 제시하기 위해 추가 페이지 템플릿을 선택한다. 이는 섹션을 제시할 수 있는 디스플레이 영역에 대하여 조정에 기초한 섹션의 레이아웃의 동적인 조정을 허용하고, 콘텐츠 항목과의 사용자 관여에 가장 적합한 레이아웃 내에 콘텐츠 항목을 제시한다.
도 6은 디지털 잡지 내 콘텐츠 항목을 제시하기 위한 페이지 템플릿을 선택(420)하는 방법의 일 실시예의 흐름도이다. 도 6에 도시된 실시예에서, 각 후보 페이지 템플릿에 대한 스코어가 생성(605)된다. 다양한 기준이 후보 페이지 템플릿에 대한 스코어를 생성(605)하는데 사용될 수 있다. 예를 들면, 후보 템플릿에 대한 스코어는 후보 템플릿 내의 디스플레이 영역에 제시하기 위한 콘텐츠 항목에 대해 조정의 양의 측정을 제공하는, 후보 페이지 템플릿 내의 다양한 디스플레이 영역에 대하여 계산된 서브-스코어에 기초된다. 일 실시예에서, 디스플레이 영역에 콘텐츠 항목을 제시하기 위한 콘텐츠 항목에 대한 많은 양의 조정(예컨대, 재스케일링(rescaling), 크롭핑(cropping), 로테이팅(rotating) 등)은 디스플레이 영역에 대한 더 낮은 서브-스코어를 이끌어내고; 유사하게, 디스플레이 영역에 콘텐츠 항목을 제시하기 위한 콘텐츠 항목에 대한 감소된 양의 조정은 디스플레이 영역에 대한 더 높은 서브-스코어를 이끌어 낸다. 페이지 템플릿 내 다양한 디스플레이 영역에 대한 서브-스코어는 페이지 템플릿에 대한 스코어를 결정하기 위해 합쳐진다. 추가적으로, 페이지 템플릿 내의 디스플레이 영역은 콘텐츠 항목의 유형과 연관될 수 있고, 페이지 템플릿의 스코어는 페이지 템플릿 내의 디스플레이 영역과 연관된 콘텐츠 항목의 유형과 매칭되는 유형을 갖도록 제시될 많은 수의 콘텐츠 항목에 적어도 부분적으로 기초될 수 있다. 후보 페이지 템플릿에 대한 스코어를 생성(605)하는 추가적인 예는 여기에 그것의 전체가 참조로서 병합된, 2011년 4월 28일에 출원된 미국 특허 출원 No. 13/096,989호에 더 설명된다.
후보 페이지 템플릿은 그들의 연관된 스코에 기초하여 랭킹(610)된다. 예를 들면, 더 높은 스코어를 갖는 후보 페이지 템플릿은 랭킹에서 더 높은 위치를 갖는다. 후보 페이지 템플릿의 랭킹은 콘텐츠 항목을 제시하기 위해 사용될 다이버스(diverse) 페이지 템플릿의 가능성(likelihood)을 증가시키기 위해 후보 페이지 템플릿의 하나 이상의 특성에 기초하여 조정(615)된다. 예를 들면, 하나 이상의 후보 페이지 템플릿의 스코어는 후보 페이지 템플릿의 특성에 기초하여 조정되고, 조정된 스코어는 랭킹에서 다양한 후보 페이지 템플릿의 위치를 조정(615)하기 위해 사용된다. 이는 디지털 잡지가 디지털 잡지에 접근하거나 또는 상호작용하는 사용자의 가능성을 증가시키기 위해 콘텐츠 항목의 다이버스 제시를 제공하는 것을 허용한다.
예를 들면, 후보 페이지 템플릿이 콘텐츠 항목을 제시하기 위해 이미 사용되었던 경우, 후보 페이지 템플릿과 연관된 스코어는 시간 간격에 기초하여 조정된다. 일 실시예에서, 만일 후보 페이지 템플릿이 현재 시간의 스레스홀드 시간 간격 내에서 이미 선택되었다면, 후보 페이지 템플릿의 스코어는 감소된다. 후보 페이지 템플릿의 스코어는 콘텐츠 항목 제시를 위한 후보 페이지 템플릿의 이전 선택과 현재 시간 간의 시간 간격에 역으로 비례하는 양에 의해 감소될 수 있다. 예를 들면, 현재 시간으로부터 스레스홀드 시간 간격 내에 선택된 후보 페이지 템플릿의 스코어는 스레스홀드 시간 간격 보다 더 크게 선택된 후보 페이지 템플릿의 스코어 보다 더 많은 양이 감소된다. 유사하게, 현재 시간으로부터 스레스홀드 시간 간격 보다 더 크게 미리 선택된 후보 페이지 템플릿의 스코어는 증가될 수 있고, 이 후보 페이지 템플릿을 랭킹 내의 더 높은 위치에 위치시키고, 그들의 선택의 가능성을 증가시킨다.
후보 페이지 템플릿의 추가 특성이 랭킹 내 위치를 조정하는, 후보 페이지 템플릿과 연관된 스코어를 조정하기 위해 사용될 수 있다. 예를 들면, 특정된 수의 디스플레이 영역 또는 콘텐츠 영역의 스레스홀드 수보다 적은 것을 갖는 후보 페이지 템플릿과 연관된 스코어는 증가되고, 따라서 랭킹은 조정(615)된다. 다른 예로서, 만일 제시될 콘텐츠 항목이 특정된 유형을 갖는 적어도 하나의 콘텐츠 항목을 포함한다면, 콘텐츠 항목의 특정된 유형과 연관된 단일 디스플레이 영역을 포함하는 페이지 템플릿과 연관된 점수는 증가하고; 따라서, 이미지를 제시하기 위한 단일 디스플레이 영역을 포함하는 페이지 템플릿은 조정(615)을 위해 증가된 스코어, 랭킹 내 위치를 가질 수 있고, 만일 제시될 콘텐츠 항목이 적어도 하나의 이미지를 포함하면 그것의 선택 가능성을 증가시킨다.
추가하여, 랭킹이 소스(110)에 의해 또는 콘텐츠 항목이 제시될 사용자에 의해 제공되는 페이지 템플릿의 시퀀스에 기초하여 조정(615)될 수 있다. 예를 들면, 페이지 템플릿의 시퀀스는 제시를 위한 페이지 템플릿을 선택하는 순서를 식별하고, 그래서 시퀀스 내의 초기 페이지 템플릿과 연관된 스코어는 랭킹 내 그것의 위치를 올리고 그것의 선택 가능성을 증가시키기 위해 증가된다. 초기 페이지 템플릿이 선택된 후에, 초기 페이지 템플릿이 선택되었다는 지시가 생성되고, 콘텐츠 항목을 제시하기 위해 다음 요청이 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션에 의해 수신되는 경우, 페이지 템플릿의 시퀀스 내의 다음 페이지 템플릿과 연관된 스코어가 증가된다. 이는 소스(110)가 콘텐츠 항목의 제시를 사용자에게 맞춤화하도록 허용한다.
조정된 랭킹으로부터, 페이지 템플릿이 후보 페이지 템프릿으로부터 선택(620)된다. 도 4와 함께 상술한 바와 같이, 하나 이상의 콘텐츠 항목을 디스플레이하는 섹션이 선택된 후보 페이지 템플릿을 사용하여 생성(425)된다. 후보 페이지 템플릿의 랭킹을 조정(615)하는 다양한 예가 도 6과 함께 위에서 제공되었으나, 랭킹을 조정하는 임의의 적합한 방법이 사용될 수도 있다. 예를 들면, 다양한 후보 페이지 템플릿과 연관된 스코어를 조정하기 보다는, 랭킹 내 다양한 페이지 템플릿의 위치가 페이지 템플릿과 연관된 스코어가 변경 없이 유지되는 동안, 조정될 수 있다.
페이지 템플릿 및 서브-템플릿을 사용하여 섹션 생성
도 7은 페이지 템플릿 및 페이지 템플릿과 연관된 서브-템프릿을 사용하여 디지털 장치 내 콘텐츠 항목을 제시하는 방법의 일 실시예의 흐름도이다. 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은, 하나 이상의 서브-템플릿을 저장(705)한다. 예를 들면, 하나 이상의 서브-템플릿이 콘텐츠 저장소(215)에 저장된다. 도 2와 함께 상술한 것처럼, 서브-템플싯은 클라이언트 장치(130)에 의해 제시될 때 서로에 관하여 콘텐츠 항목의 공간적 배열을 설명한다. 서브-템프릿은 하나 이상의 콘텐츠 항목을 제시하도록 각각 구성된 하나 이상의 디스플레이 영역을 포함한다. 페이지 탬플릿 내에서 서로에 대해 디스플레이 영역의 위치는 페이지 템플릿으로부터 생성된 페이지 내에서 서로에 대해 콘텐츠 항목의 위치를 특정한다. 유사하게, 서브-템플릿 내 디스플레이 영역의 크기는 콘텐츠 항목이 제시되는 크기를 지시한다. 추가하여, 서브-템플릿의 디스플레이 영역은 서브-템플릿을 식별할 수 있고, 그래서 디스플레이 영역 내의 콘텐츠 항목이 식별된 서브-템플릿에 의해 특정된 상대적 위치 및 크기에 따라 제시된다.
도 2 내지 4와 함께 상술한 것처럼, 하나 이상의 페이지 템플릿이 콘텐츠 저장소(215) 또는 클라이언트 장치(130)에 포함된 로컬 저장 장치에 저장(710)된다. 도 2 내지 4와 함께 상술한 것처럼, 페이지 템플릿은 하나 이상의 디스플레이 영역을 포함하고, 각각은 하나 이상의 콘텐츠 항목을 제시하도록 구성되고 클라이언트 장치(130)에 의한 제시를 위해 섹션(“레이아웃”)에 대하여 서로에 과한 콘텐츠 항목을 설명한다. 페이지 템플릿 내에서 서로에 대해 디스플레이 영역의 위치는 페이지 템플릿으로부터 생성된 섹션 내에서 서로에 대해 콘텐츠 항목의 위치를 특정한다. 유사하게, 페이지 템플릿 내 디스플레이 영역의 크기는 콘텐츠 항목이 제시된 크기를 지시한다.
페이지 템플릿은 식별된 서브-템플릿에 의해 특정된 상대적 위치 및 크기에 따라서 디스플레이 영역 내의 콘텐츠 항목을 제시하기 위해 서브-템플릿을 식별하는 디스플레이 영역을 포함할 수 있다. 일 실시예에서, 페이지 템플릿의 디스플레이 영역은 특정 서브-템플릿을 식별하고, 섹션이 페이지 템플릿을 이용하여 생성되는 경우, 디스플레이 영역에 포함된 콘텐츠 항목은 특정 서브-템플릿 내의 상대적 위치 및 크기 정보를 이용하여 제시된다. 그 대신에, 페이지 템플릿의 디스플레이 영역은 디스플레이 영역 내 콘텐츠 항목이 서브-템플릿에 기초하여 생성되는 것을 식별하고; 페이지 템플릿이 선택되는 경우, 서브-템플릿은 서브-템플릿으로부터 선택되고, 선택된 서브-템플릿은 콘텐츠 항목을 제시하기 위해 사용된다. 다른 실시예에서, 페이지 템플릿의 디스플레이 영역은 서브-템플릿 그룹을 식별하고; 페이지 템플릿이 선택되는 경우, 식별된 그룹으로부터의 서브-템플릿이 선택되고, 콘텐츠 항목이 선택된 서브-템플릿 내에 포함된 위치 및 크기 정보에 기초하여 디스플레이 영역 내에 제시된다.
디지털 잡지 서버(140), 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은, 디지털 잡지를 통해 하나 이상의 소스로부터 콘텐츠 항목을 제시하기 위한 요청을 수신(715)한다. 도 4와 함께 상술한 것처럼, 클라이언트 장치(130)의 디스플레이 영역을 묘사하는 정보가 요청 내에 포함된다. 예를 들면, 클라이언트 장치(130)의 디스플레이 장치(132)의 물리적 치수가 요청 내에 포함된다.
클라이언트 장치의 디스플레이 영역에 적어도 부분적으로 기초하여, 페이지 템플릿은 저장된 페이지 템플릿으로부터 선택(720)된다. 페이지 템플릿의 선택은 도 4 및 6과 함께 위에서 더 설명되었다. 예를 들면, 후보 페이지 템플릿은 클라이언트 장치의 디스플레이 영역에 적어도 부분적으로 기초하여 식별되고, 각 후보 페이지 템플릿은 후보 페이지 템플릿의 특성, 하나 이상의 콘텐츠 항목의 특성, 및 디스플레이 영역에 기초하여 스코어링된다. 스코어에 기초하여, 디스플레이 페이지 템플릿이 후보 페이지 템플릿으로부터 선택(620)된다.
만일 선택된 페이지 템플릿이 서브-템플릿을 식별하는 디스플레이 영역을 포함한다면, 디스플레이 서브-템플릿은 저장된 서브-템플릿으로부터 선택(725)된다. 만일 선택된 페이지 템플릿 내 디스플레이 영역이 특정 서브-템플릿을 식별한다면, 특정 서브-템플릿이 선택(725)된다. 그러나, 만일 선택된 페이지 템플릿 내 디스플레이 영역이 콘텐츠 항목을 제시하기 위해 서브-템플릿의 사용을 지시한다면, 적어도 저장된 서브-템플릿의 서브?가 클라이언트 장치(130)의 디스플레이 영역 및 제시될 하나 이상의 콘텐츠 항목의 특성을 기초로 랭킹된다. 예를 들면, 각 서브-템플릿이 서브-템플릿의 디스플레이 영역 내 콘텐츠 항목을 제시하기 위해 하나 이상의 콘텐츠 항목에 대한 조정의 양에 기초하여 스코어링되고, 서브-템플릿은 그들의 스코어에 기초하여 랭킹된다. 서브-템플릿은 랭킹에 기초하여 선택(725)된다. 일부 실시예에서, 선택된 페이지 템플릿 내 디스플레이 영역은 서브-템플릿 그룹을 식별하고, 그래서 서브-템플릿은 식별된 서브-템플릿 그룹으로부터 선택(725)되고; 예를 들면, 그룹 내 각 서브-템플릿이 스코어링되고, 디스플레이 서브-템플식이 스코어에 기초하여 그룹으로부터 선택된다. 도 4 및 6과 함께 상술한 페이지 템플릿을 선택하는 방법은 디스플레이 서브-템플릿을 선택(725)하기 위해 유사하게 사용될 수 있다.
선택된 페이지 템플릿 및 디스플레이 서브-템플릿을 사용하여, 디지털 잡지 서버(140) 또는 클라이언트 장치(130) 상에서 실행중인 디지털 잡지 어플리케이션은 하나 이상의 소스(110)로부터의 콘텐츠 항목을 포함하는 섹션을 생성(73)한다. 도 4와 함께 상술한 것처럼, 생성된 섹션은 선택된 페이지 템플릿 내 디스플레이 영역에 의해 식별된 서로에 대해 위치를 갖는 하나 이상의 콘텐츠 항목을 제시하는 콘텐츠 영역을 포함한다. 유사하게, 콘텐츠 항목 제시를 위한 서브-템플릿의 사용을 식별하는 디스플레이 영역에 대응되는 콘텐츠 영역은 선택된 서브-템플릿 내 디스플레이 영역에 의해 식별된 상대적 위치 및 크기를 갖는 서브-콘텐츠 영역을 포함한다. 도 4와 함께 상술한 것처럼, 만일 생성된 섹션이 조정된 디스플레이 영역이 존재한다면, 대체 페이지 템플릿 및 디스플레이 서브-페이지 템플릿은 상술한 방법과 조정된 디스플레이 영역을 사용하여 선택될 수 있고, 콘텐츠 항목의 제시가 디스플레이 영역이 변함에 따라 동적으로 조정될 수 있게 허용한다.
요약
본 발명의 실시예들의 상술한 설명은 예시의 목적으로 제시되었고; 개시된 간명한 형태로 본 발명을 한정하거나 빠트림 없이 표현되도록 의도되는 것은 아니다. 관련 기술분야의 통상의 기술자는 많은 조정 및 변형이 상술한 개시를 고려하여 가능함을 이해할 수 있다.
본 명세서의 일부분에서는 발명의 실시예들을 정보에 대한 동작의 알고리즘 및 심볼 표현의 면에서 설명한다. 이 알고리즘 설명과 표현은 그 기술분야의 다른 통상의 기술자에게 효율적으로 그들의 작업의 결과를 전달하기 위하여 데이터 처리 분야의 통상의 기술자에 의해 공통적으로 사용된다. 이 동작들은, 기능적으로, 계산적으로, 또는 논리적으로 설명되었으나, 컴퓨터 프로그램 또는 동등한 전자 회로, 마이크로코드 또는 기타 유사한 것에 의해 구현될 수 있음이 이해된다. 더욱이, 보편성(generality)을 상실하지 않고, 동작들의 이러한 배열을 모듈로서 지칭하는 것이, 또한, 때로는 편리하게 증명되었다. 설명된 동작들 그들의 연관 모듈은 소프트웨어, 펌웨어, 하드웨어, 또는 그것들의 임의의 조합에서 실시될 수 있다.
여기에 설명된 임의의 단계, 동작, 프로세스는 하나 이상의 하드웨어 또는 소프트웨어 모듈로 수행되거나 구현될 수 있고, 그 자체로 또는 다른 장치와의 조합으로 수행되거나 구현될 수 있다. 일 실시예에서, 소프트웨어 모듈은 임의의 또는 모든 설명된 단계, 동작 또는 프로세스를 수행하는 컴퓨터 프로세서에 의해 실행될 수 있는, 컴퓨터 프로그램 코드를 포함하는 컴퓨타-판독가능한 매체를 포함하는 컴퓨터 프로그램 제품으로 구현된다.
본 발명의 실시예들은 또한 여기서 동작을 수행하는 장치와 관련될 수 있다. 이 장치는 요구된 목적을 위해 특별히 구성될 수 있거나, 또한/또는 그것은 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 또는 재구성되는 범용 컴퓨팅 장치를 포함할 수 있다. 이러한 컴퓨터 프로그램은 비-일시적인, 유형의 컴퓨터 판독가능 저장 매체, 또는 컴퓨터 시스템 버스와 연결될 수 있는 전자적 명령을 저장하는데 적합한 임의의 유형의 매체 내에 저장될 수 있다. 더욱이, 본 명세서에서 언급된 임의의 컴퓨팅 시스템은 단일 프로세서를 포함할 수 있거나, 또는 증가된 컴퓨팅 능력을 위해 다중 프로세스 디자인이 적용된 아키텍쳐일 수 있다.
본 발명의 실시예들은 또한 여기에 설명된 컴퓨팅 프로세스에 의해 생산된 제품과 관련될 수 있다. 이러한 제품은 컴퓨팅 프로세스의 결과로부터 나온 정보를 포함할 수 있고, 상기 정보는 비일시적인, 유형의 컴퓨터 판독가능 저장 매체 상에 저장되며, 여기서 설명된 다른 데이터 조합 또는 컴퓨터 프로그램의 임의의 실시예를 포함할 수 있다.
마지막으로, 본 명세서에서 사용된 언어는 원칙적으로 읽기쉽고(readability) 교육적인(instructional) 목적으로 선택되었고, 그것은 발명 주제를 상세하게 기재하거나(delineate) 또는 제한(circumscribe)하기 위해 선택되었던 것이 아니다. 그러므로, 본 발명의 범위는 여기에 기초한 출원 상에 이슈된 임의의 청구항에 의한 것 이외에, 이 상세한 설명에 의해 제한되는 것이 아니라는 것이 의도된다. 따라서, 본 발명의 실시예의 개시는 제한이 아니라, 다음 청구항들에 의해 이하에서 설명될 발명의 범위의, 예시가 의도되는 것이다.

Claims (19)

  1. 디지털 잡지를 생성하는 방법으로서,
    복수의 페이지 템플릿을 저장하는 단계로서, 각 템플릿은 하나 이상의 영역을 포함하고, 각 영역은 콘텐츠 항목을 제시하도록 구성되고 상기 콘텐츠 항목을 제시하기 위해 디스플레이 영역의 치수(dimension)의 범위를 특정하고, 적어도 하나의 영역은 서브-템플릿의 그룹을 식별하는 단계;
    디지털 잡지 내 하나 이상의 소스로부터 하나 이상의 콘텐츠 항목을 제시하기 위한 요청을 수신하는 단계;
    상기 콘텐츠 항목을 제시하기 위해 상기 디스플레이 영역을 결정하는 단계;
    저장된 페이지 템플릿에 포함된 영역에 의해 특정된 상기 콘텐츠 항목을 제시하기 위해 상기 결정된 디스플레이 영역 및 상기 디스플레이 영역의 치수의 범위에 기초하여 상기 저장된 페이지 템플릿 각각에 포함된 영역에 대한 물리적 치수를 결정하는 단계;
    클라이언트 장치의 상기 디스플레이 영역의 일부에 적어도 부분적으로 기초하여 상기 복수의 페이지 템플릿으로부터 하나 이상의 후보 페이지 템플릿을 선택하는 단계로서, 후보 페이지 템플릿의 각 영역은 스레스홀드 값과 같거나 스레스홀드 값보다 큰 물리적 치수를 가지는 단계;
    상기 하나 이상의 소스로부터의 상기 콘텐츠 항목의 하나 이상의 특성(characteristic), 상기 페이지 템플릿의 영역 내에 콘텐츠 항목을 제시하기 위한 다양한 콘텐츠 항목의 조정의 양, 및 상기 페이지 템플릿의 영역과 연관된 유형과 매칭되는 유형을 가지는 제시될 콘텐츠 항목의 수에 기초하여 상기 하나 이상의 후보 페이지 템플릿으로부터 페이지 템플릿을 선택하는 단계;
    상기 페이지 템플릿이 선택될 때, 식별된 서브-템플릿 그룹으로부터 서브-템플릿을 선택하는 단계;및
    상기 선택된 페이지 템플릿 및 상기 선택된 서브-템플릿을 사용하여, 상기 클라이언트 장치를 통해 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계를 포함하되, 상기 섹션은 상기 선택된 페이지 템플릿 내에 포함된 상기 하나 이상의 영역에 의해 특정된 위치에 놓여진 상기 하나 이상의 콘텐츠 항목을 포함하는, 디지털 잡지를 생성하는 방법.
  2. 제1항에 있어서,
    상기 클라이언트 장치를 통해 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계는:
    상기 클라이언트 장치의 상기 디스플레이 영역 및 상기 선택된 페이지 템플릿 내의 각 영역과 연관된 디스플레이 영역의 퍼센트에 기초하여 상기 선택된 페이지 템플릿 내의 각 영역과 연관된 콘텐츠 영역의 크기를 결정하는 단계; 및
    상기 결정된 크기를 갖는 콘텐츠 영역 내에 놓여지며 상기 하나 이상의 영역에 의해 특정된 위치에 놓여지는, 상기 하나 이상의 콘텐츠 항목을 포함하는 디지털 잡지의 섹션을 생성하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  3. 제1항에 있어서,
    상기 클라이언트 장치의 갱신된 디스플레이 영역을 수신하는 단계;
    상기 클라이언트 장치의 상기 갱신된 디스플레이 영역에 적어도 부분적으로 기초하여 상기 저장된 복수의 페이지 템플릿으로부터 하나 이상의 추가 후보 페이지 템플릿을 선택하는 단계;
    상기 하나 이상의 소스로부터의 상기 콘텐츠 항목의 하나 이상의 특성에 적어도 부분적으로 기초하여 상기 하나 이상의 추가 후보 페이지 템플릿으로부터 추가 페이지 템플릿을 선택하는 단계; 및
    상기 클라이언트 장치를 통해 제시하기 위한 상기 디지털 잡지의 조정된 섹션을 생성하는 단계를 더 포함하되, 상기 섹션은 상기 선택된 추가 페이지 템플릿 내에 포함된 상기 하나 이상의 영역에 의해 특정된 위치에 놓여진 상기 하나 이상의 콘텐츠 항목을 포함하는, 디지털 잡지를 생성하는 방법.
  4. 제1항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 종횡비(aspect ratio)를 갖는, 디지털 잡지를 생성하는 방법.
  5. 제1항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 치수를 갖는, 디지털 잡지를 생성하는 방법.
  6. 제2항에 있어서,
    상기 클라이언트 장치를 통해 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계는:
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 상기 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  7. 제6항에 있어서,
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계는:
    상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 스레스홀드 거리인지 여부를 결정하는 단계; 및
    상기 콘텐츠 영역 내에 제시된 상기 콘텐츠 항목이 이미지이고 상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 상기 스레스홀드 거리인 경우, 상기 콘텐츠 영역의 상기 크기를 증가시키는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  8. 디지털 잡지를 생성하는 방법으로서,
    하나 이상의 영역을 포함하는 페이지 템플릿을 저장하는 단계로서, 각 영역은 콘텐츠 항목을 제시하도록 구성되고 디스플레이 영역의 치수(dimension)의 범위와 연관되며, 적어도 하나의 영역은 서브-템플릿의 그룹을 식별하는 단계;
    디지털 잡지 내 하나 이상의 소스로부터 콘텐츠 항목을 제시하기 위한 요청을 수신하는 단계;
    상기 콘텐츠 항목을 제시하기 위해 상기 디스플레이 영역을 결정하는 단계;
    클라이언트 장치의 상기 디스플레이 영역의 일부, 스레스홀드 값과 같거나 스레스홀드 값보다 큰 상기 결정된 디스플레이 영역에 기초하여 상기 페이지 템플릿 내에 포함된 각 영역의 물리적 치수, 상기 하나 이상의 소스로부터의 상기 콘텐츠 항목의 하나 이상의 특성, 상기 페이지 템플릿의 영역 내에 콘텐츠 항목을 제시하기 위한 다양한 콘텐츠 항목의 조정의 양, 및 상기 페이지 템플릿의 영역과 연관된 유형과 매칭되는 유형을 가지는 제시될 콘텐츠 항목의 수, 및 하나 이상의 콘텐츠 항목의 소스로부터 수신되는 페이지 템플릿의 시퀀스에 기초하여 상기 페이지 템플릿을 선택하는 단계;
    상기 페이지 템플릿이 선택될 때, 식별된 서브-템플릿 그룹으로부터 서브-템플릿을 선택하는 단계;
    상기 선택된 페이지 템플릿의 각 영역과 연관된 상기 디스플레이 영역의 퍼센트와 상기 클라이언트 장치의 상기 디스플레이 영역의 일부에 기초하여 콘텐츠 항목을 포함하는 하나 이상의 콘텐츠 영역에 대한 크기를 결정하는 단계; 및
    상기 선택된 페이지 템플릿 및 상기 선택된 서브-템플릿을 사용하여, 상기 클라이언트 장치를 통해 상기 하나 이상의 콘텐츠 항목을 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계를 포함하되, 상기 섹션은 결정된 크기와 각각 연관된 하나 이상의 콘텐츠 항목을 포함하고 상기 페이지 템플릿 내에 포함된 영역에 의해 특정된 위치에 기초하여 상기 클라이언트 장치의 상기 디스플레이 영역 내의 위치를 갖는, 상기 생성하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  9. 제8항에 있어서,
    상기 클라이언트 장치의 갱신된 디스플레이 영역을 수신하는 단계;
    각 영역과 연관된 상기 디스플레이 영역의 퍼센트와 상기 클라이언트 장치의 상기 갱신된 디스플레이 영역에 기초하여 상기 콘텐츠 항목을 각각 포함하는 하나 이상의 콘텐츠 영역에 대한 조정된 크기를 결정하는 단계; 및
    조정된 크기와 연관된, 그리고 상기 페이지 템플릿 내에 포함된 영역에 의해 특정된 위치에 기초하여 상기 클라이언트 장치의 상기 디스플레이 영역 내의 위치를 갖는 하나 이상의 콘텐츠 영역을 포함하기 위하여 상기 디지털 잡지의 상기 섹션을 조정하는 단계를 더 포함하는, 디지털 잡지를 생성하는 방법.
  10. 제8항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 종횡비(aspect ratio)를 갖는, 디지털 잡지를 생성하는 방법.
  11. 제8항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 치수를 갖는, 디지털 잡지를 생성하는 방법.
  12. 제8항에 있어서,
    상기 클라이언트 장치를 통해 상기 하나 이상의 콘텐츠 항목을 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계는:
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 상기 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  13. 제12항에 있어서,
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계는:
    상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 스레스홀드 거리인지 여부를 결정하는 단계; 및
    상기 콘텐츠 영역 내에 제시된 상기 콘텐츠 항목이 이미지이고 상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 상기 스레스홀드 거리인 경우, 상기 콘텐츠 영역의 상기 크기를 증가시키는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  14. 디지털 잡지를 생성하는 방법으로서,
    복수의 페이지 템플릿을 저장하는 단계로서, 각 템플릿은 하나 이상의 영역을 포함하고, 각 영역은 콘텐츠 항목을 제시하도록 구성되고 상기 콘텐츠 항목을 제시하기 위해 디스플레이 영역의 치수(dimension)의 범위를 특정하고, 적어도 하나의 영역은 서브-템플릿의 그룹을 식별하는 단계;
    디지털 잡지 내 하나 이상의 소스로부터 하나 이상의 콘텐츠 항목을 제시하기 위한 요청을 수신하는 단계;
    상기 콘텐츠 항목을 제시하기 위해 상기 디스플레이 영역을 결정하는 단계;
    저장된 페이지 템플릿에 포함된 영역에 의해 특정된 상기 콘텐츠 항목을 제시하기 위해 상기 결정된 디스플레이 영역 및 상기 디스플레이 영역의 치수의 범위에 기초하여 상기 저장된 페이지 템플릿 각각에 포함된 영역에 대한 물리적 치수를 결정하는 단계;
    클라이언트 장치의 상기 디스플레이 영역의 일부에 적어도 부분적으로 기초하여 상기 저장된 복수의 페이지 템플릿으로부터 하나 이상의 후보 페이지 템플릿을 선택하는 단계로서, 후보 페이지 템플릿의 각 영역은 스레스홀드 값과 같거나 스레스홀드 값보다 큰 물리적 치수를 가지는 단계;
    상기 하나 이상의 소스로부터의 상기 콘텐츠 항목의 하나 이상의 특성, 상기 페이지 템플릿의 영역 내에 콘텐츠 항목을 제시하기 위한 다양한 콘텐츠 항목의 조정의 양, 및 상기 페이지 템플릿의 영역과 연관된 유형과 매칭되는 유형을 가지는 제시될 콘텐츠 항목의 수, 및 하나 이상의 콘텐츠 항목의 소스로부터 수신되는 페이지 템플릿의 시퀀스에 기초하여 상기 하나 이상의 후보 페이지 템플릿으로부터 페이지 템플릿을 선택하는 단계;
    상기 페이지 템플릿이 선택될 때, 식별된 서브-템플릿 그룹으로부터 서브-템플릿을 선택하는 단계;
    상기 클라이언트 장치의 상기 디스플레이 영역 및 상기 선택된 페이지 템플릿 내의 각 영역과 연관된 디스플레이 영역의 퍼센트에 기초하여 상기 선택된 페이지 템플릿 내의 각 영역과 연관된 콘텐츠 항목의 크기를 결정하는 단계; 및
    상기 선택된 페이지 템플릿 및 상기 선택된 서브-템플릿을 사용하여, 상기 결정된 크기를 갖는 콘텐츠 영역 내에 놓여지며 상기 선택된 페이지 템플릿의 상기 하나 이상의 영역에 의해 특정된 위치에 놓여지는, 상기 하나 이상의 콘텐츠 항목을 포함하는 디지털 잡지의 섹션을 생성하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  15. 제14항에 있어서,
    상기 클라이언트 장치의 갱신된 디스플레이 영역을 수신하는 단계;
    상기 클라이언트 장치의 상기 갱신된 디스플레이 영역에 적어도 부분적으로 기초하여 상기 저장된 복수의 페이지 템플릿으로부터 하나 이상의 추가 후보 페이지 템플릿을 선택하는 단계;
    상기 클라이언트 장치의 상기 갱신된 디스플레이 영역과 상기 하나 이상의 소스로부터의 상기 콘텐츠 항목의 하나 이상의 특성에 적어도 부분적으로 기초하여 상기 하나 이상의 추가 후보 페이지 템플릿으로부터 추가 페이지 템플릿을 선택하는 단계;
    상기 추가 페이지 템플릿 내 각 영역과 연관된 상기 디스플레이 영역의 퍼센트와 상기 클라이언트 장치의 상기 갱신된 디스플레이 영역에 기초하여 상기 콘텐츠 항목을 포함하는 하나 이상의 콘텐츠 영역에 대한 조정된 크기를 결정하는 단계; 및
    상기 조정된 크기를 갖는 콘텐츠 영역 내에 놓여지며 상기 추가 페이지 템플릿 내 상기 하나 이상의 영역에 의해 특정된 위치에 놓여지는, 상기 하나 이상의 콘텐츠 항목을 포함하는 디지털 잡지의 상기 섹션을 생성하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  16. 제14항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 종횡비(aspect ratio)를 갖는, 디지털 잡지를 생성하는 방법.
  17. 제14항에 있어서,
    상기 하나 이상의 페이지 템플릿으로부터의 페이지 템플릿 내에 포함된 영역은 참고 치수의 퍼센트로서 특정된 치수를 갖는, 디지털 잡지를 생성하는 방법.
  18. 제14항에 있어서,
    상기 클라이언트 장치를 통해 제시하기 위한 상기 디지털 잡지의 섹션을 생성하는 단계는:
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 상기 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
  19. 제18항에 있어서,
    상기 클라이언트 장치의 상기 디스플레이 영역 내의 상기 콘텐츠 영역의 위치와 콘텐츠 항목의 유형에 기초하여 상기 하나 이상의 콘텐츠 항목으로부터 콘텐츠 항목을 제시하는 상기 콘텐츠 영역의 크기를 조정하는 단계는:
    상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 스레스홀드 거리인지 여부를 결정하는 단계; 및
    상기 콘텐츠 영역 내에 제시된 상기 콘텐츠 항목이 이미지이고 상기 콘텐츠 영역이 상기 클라이언트 장치의 상기 디스플레이 영역의 경계로부터 상기 스레스홀드 거리인 경우, 상기 콘텐츠 영역의 상기 크기를 증가시키는 단계를 포함하는, 디지털 잡지를 생성하는 방법.
KR1020167003444A 2013-07-09 2014-07-01 디지털 잡지용 동적 레이아웃 엔진 KR102091814B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/938,223 2013-07-09
US13/938,223 US9483444B2 (en) 2013-07-09 2013-07-09 Dynamic layout engine for a digital magazine
PCT/US2014/044979 WO2015006086A1 (en) 2013-07-09 2014-07-01 Dynamic layout engine for a digital magazine

Publications (2)

Publication Number Publication Date
KR20160029850A KR20160029850A (ko) 2016-03-15
KR102091814B1 true KR102091814B1 (ko) 2020-03-20

Family

ID=52278160

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167003444A KR102091814B1 (ko) 2013-07-09 2014-07-01 디지털 잡지용 동적 레이아웃 엔진

Country Status (5)

Country Link
US (1) US9483444B2 (ko)
EP (1) EP3019941A4 (ko)
KR (1) KR102091814B1 (ko)
CN (1) CN105556449B (ko)
WO (1) WO2015006086A1 (ko)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10956485B2 (en) 2011-08-31 2021-03-23 Google Llc Retargeting in a search environment
US10630751B2 (en) 2016-12-30 2020-04-21 Google Llc Sequence dependent data message consolidation in a voice activated computer network environment
US8650188B1 (en) 2011-08-31 2014-02-11 Google Inc. Retargeting in a search environment
US9037592B2 (en) 2012-09-12 2015-05-19 Flipboard, Inc. Generating an implied object graph based on user behavior
US10289661B2 (en) 2012-09-12 2019-05-14 Flipboard, Inc. Generating a cover for a section of a digital magazine
US10061760B2 (en) 2012-09-12 2018-08-28 Flipboard, Inc. Adaptive layout of content in a digital magazine
US9165314B2 (en) * 2012-09-12 2015-10-20 Flipboard, Inc. Interactions for sharing content items in a digital magazine
US9703757B2 (en) 2013-09-30 2017-07-11 Google Inc. Automatically determining a size for a content item for a web page
US10614153B2 (en) 2013-09-30 2020-04-07 Google Llc Resource size-based content item selection
US10431209B2 (en) 2016-12-30 2019-10-01 Google Llc Feedback controller for data transmissions
US10885264B2 (en) 2013-10-28 2021-01-05 Mixonium Group Holdings, Inc. Systems, methods, and media for managing and sharing digital content and services
WO2015066061A2 (en) * 2013-10-28 2015-05-07 Mixonium Group Holdings, Inc. Systems, methods, and media for content management and sharing
WO2015078231A1 (zh) * 2013-11-26 2015-06-04 优视科技有限公司 网页模板生成方法和服务器
US20150169744A1 (en) * 2013-12-12 2015-06-18 Flipboard, Inc. Selecting Diverse, Relevant Content From Multiple Content Feeds
US9715735B2 (en) 2014-01-30 2017-07-25 Flipboard, Inc. Identifying regions of free space within an image
JP6031535B2 (ja) * 2014-02-10 2016-11-24 ネイバー コーポレーションNAVER Corporation 多様な形態のカードを利用してサイトの製作を支援するサイト管理方法およびシステム
US10091326B2 (en) 2014-02-22 2018-10-02 Flipboard, Inc. Modifying content regions of a digital magazine based on user interaction
US20150242374A1 (en) * 2014-02-27 2015-08-27 Styla GmbH Automatic layout technology
US9648080B2 (en) 2014-10-30 2017-05-09 Flipboard, Inc. Selection of page templates for presenting digital magazine content based on characteristics of additional page templates
US10437913B2 (en) 2014-10-30 2019-10-08 Flipboard, Inc. Determining heights of content regions presenting content in a digital magazine
US9576554B2 (en) 2014-12-15 2017-02-21 Flipboard, Inc. Determining a dominant color of an image based on pixel components
US9953009B1 (en) * 2014-12-19 2018-04-24 Google Llc Systems and methods for templated, configurable, responsive content items
US10015625B2 (en) 2015-02-11 2018-07-03 Flipboard, Inc. Providing digital content for offline consumption
CN107924387A (zh) * 2015-06-18 2018-04-17 缇洛公司 用于生成电子页面的系统和方法
US10346476B2 (en) 2016-02-05 2019-07-09 Sas Institute Inc. Sketch entry and interpretation of graphical user interface design
US10650046B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Many task computing with distributed file system
US10795935B2 (en) 2016-02-05 2020-10-06 Sas Institute Inc. Automated generation of job flow definitions
US10650045B2 (en) 2016-02-05 2020-05-12 Sas Institute Inc. Staged training of neural networks for improved time series prediction performance
US10642896B2 (en) 2016-02-05 2020-05-05 Sas Institute Inc. Handling of data sets during execution of task routines of multiple languages
US10268654B2 (en) 2016-03-21 2019-04-23 Cake Technologies, Inc. Accessing content from suppressed URL index
US10133722B2 (en) * 2016-04-26 2018-11-20 Flipboard, Inc. Updating page templates presenting content from a digital magazine in a native application
US10915234B2 (en) * 2016-06-01 2021-02-09 Motorola Mobility Llc Responsive, visual presentation of informational briefs on user requested topics
CN106325708B (zh) * 2016-08-23 2019-08-23 北京金山安全软件有限公司 一种图片的预设模板的处理方法、装置及设备
US10303743B2 (en) * 2016-10-28 2019-05-28 Facebook, Inc. Automatic placement of electronic media content items within an online document
US11481550B2 (en) * 2016-11-10 2022-10-25 Google Llc Generating presentation slides with distilled content
KR101901965B1 (ko) * 2017-01-12 2018-09-28 엘에스산전 주식회사 프로젝트 화면 작성장치
US10929450B2 (en) * 2017-02-06 2021-02-23 Flipboard, Inc. Customizing digital content with editorial content
US20190034549A1 (en) 2017-07-25 2019-01-31 Cake Technologies, Inc. Dynamic user agent strings
KR101979277B1 (ko) * 2017-07-25 2019-05-16 엘지전자 주식회사 차량용 사용자 인터페이스 장치 및 차량
CN107908336B (zh) * 2017-11-13 2019-04-19 平安科技(深圳)有限公司 列表控件的刷新方法、装置、存储介质及终端
US10762157B2 (en) * 2018-02-09 2020-09-01 Quantcast Corporation Balancing on-side engagement
KR101951244B1 (ko) * 2018-10-22 2019-05-21 이주영 인터넷 신문 편집툴을 이용한 인터넷 신문 편집 방법 및 시스템
TWI730442B (zh) * 2019-10-09 2021-06-11 中國信託商業銀行股份有限公司 資訊發布方法及其伺服器
CN111353983B (zh) * 2020-02-28 2023-05-23 腾讯科技(深圳)有限公司 缺陷检测识别方法、装置、计算机可读介质及电子设备
JP2022011937A (ja) * 2020-06-30 2022-01-17 株式会社メルカリ 端末装置、画面表示システム、表示方法およびプログラム
EP4268095A1 (en) 2021-02-23 2023-11-01 Samsung Electronics Co., Ltd. Method of displaying web pages and browser display system
KR102427761B1 (ko) * 2022-01-24 2022-08-03 주식회사 이든랩 Did 장치, did 시스템 및 did 장치의 제어방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120159314A1 (en) 2010-12-16 2012-06-21 Microsoft Corporation Adaptive content layout
US20130021377A1 (en) 2011-07-21 2013-01-24 Flipboard, Inc. Adjusting Orientation of Content Regions in a Page Layout
US20130024757A1 (en) 2011-07-21 2013-01-24 Flipboard, Inc. Template-Based Page Layout for Hosted Social Magazines

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3542930B2 (ja) * 1999-07-30 2004-07-14 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示情報確定方法及び装置、表示情報確定のためのソフトウエア・プロダクトを格納した記憶媒体
US6826727B1 (en) 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US6771801B1 (en) 2000-02-11 2004-08-03 Sony Corporation Adaptable pre-designed photographic storyboard
WO2002010988A2 (en) 2000-07-31 2002-02-07 Starkey James A Method and apparatus for generating web pages from templates
US7028255B1 (en) 2000-08-14 2006-04-11 Adobe Systems Incorporated Self-sizing object placement
US20040252340A1 (en) 2001-10-03 2004-12-16 Seiko Epson Corporation Image processing system, image processing method, template producing system and template data structure
JP4154976B2 (ja) 2002-09-24 2008-09-24 セイコーエプソン株式会社 レイアウトシステム、プログラム
AU2002952711A0 (en) 2002-11-18 2002-11-28 Typefi Systems Pty Ltd A method of formatting documents
US7181468B2 (en) 2003-04-28 2007-02-20 Sony Corporation Content management for rich media publishing system
US7246311B2 (en) * 2003-07-17 2007-07-17 Microsoft Corporation System and methods for facilitating adaptive grid-based document layout
US7554689B2 (en) 2003-10-15 2009-06-30 Canon Kabushiki Kaisha Document layout method
JP2007521588A (ja) 2004-02-06 2007-08-02 セコイア メディア グループ、エルシー 自動マルチメディアオブジェクトモデル
US7865511B2 (en) 2004-06-25 2011-01-04 Apple Inc. News feed browser
US7747947B2 (en) 2004-07-27 2010-06-29 Hewlett-Packard Development Company, L.P. Document creation system and related methods
EP1836584A4 (en) * 2004-11-16 2009-05-06 Zalag Corp DISPLAY / PRESENTATION METHODS AND DEVICES CORRESPONDING TO CONTENT ELEMENTS AND DISPLAY CONTAINERS
US7472340B2 (en) 2004-12-20 2008-12-30 Microsoft Corporation Method and computer-readable medium for generating a multiple column layout
JP4560416B2 (ja) 2005-01-27 2010-10-13 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP4095617B2 (ja) 2005-02-28 2008-06-04 キヤノン株式会社 文書処理装置及び文書処理方法及びコンピュータプログラム
US7644356B2 (en) 2005-06-10 2010-01-05 Hewlett-Packard Development Company, L.P. Constraint-based albuming of graphic elements
JP4800104B2 (ja) 2005-06-13 2011-10-26 富士フイルム株式会社 アルバム作成装置、アルバム作成方法、及びプログラム
US7770109B2 (en) * 2005-12-16 2010-08-03 Microsoft Corporation Adaptive layout for content
JP2007241661A (ja) 2006-03-08 2007-09-20 Canon Inc 画像形成装置およびその制御方法
US7814116B2 (en) 2006-03-16 2010-10-12 Hauser Eduardo A Method and system for creating customized news digests
US7664813B2 (en) 2006-04-28 2010-02-16 Microsoft Corporation Dynamic data presentation
US7627600B2 (en) 2006-06-20 2009-12-01 Microsoft Corporation Automatic layout of unpredictable content from multiple sources
KR20090102827A (ko) 2007-01-23 2009-09-30 조스텐즈 인코포레이팃드 커스터마이즈된 출력을 생성하는 방법 및 시스템
CN101632062A (zh) 2007-03-15 2010-01-20 皇家飞利浦电子股份有限公司 生成图像图册的方法和设备
CN100520717C (zh) * 2007-08-31 2009-07-29 南京联创科技股份有限公司 基于mvc的业务组装和页面模板化开发web平台的方法
JP2009237702A (ja) 2008-03-26 2009-10-15 Fujifilm Corp アルバム作成方法、プログラムおよび装置
CN101286120A (zh) * 2008-05-28 2008-10-15 北京中企开源信息技术有限公司 一种网站页面的制作方法和系统
US8627192B2 (en) 2008-07-03 2014-01-07 Ebay Inc. System and methods for automatic media population of a style presentation
US8952284B1 (en) 2008-09-16 2015-02-10 Amazon Technologies, Inc. Method and apparatus for managing the allocation of items to processing stations in an order fulfillment process
US20110082749A1 (en) 2009-10-06 2011-04-07 Firstpaper, Llc System And Method For Template-Based Assembly Of Publications
US20110283210A1 (en) 2010-05-13 2011-11-17 Kelly Berger Graphical user interface and method for creating and managing photo stories
US9348801B2 (en) 2010-08-10 2016-05-24 HP Brasil LTDA System and method for automatic page layout
US9135358B2 (en) 2010-10-20 2015-09-15 Microsoft Technology Licensing, Llc Result types for conditional data display
US9715485B2 (en) * 2011-03-28 2017-07-25 Microsoft Technology Licensing, Llc Techniques for electronic aggregation of information
US9152616B2 (en) 2011-04-28 2015-10-06 Flipboard, Inc. Template-based page layout for web content
US20120294514A1 (en) 2011-05-19 2012-11-22 Xerox Corporation Techniques to enable automated workflows for the creation of user-customized photobooks
US20130007586A1 (en) 2011-06-29 2013-01-03 Renjit Tom Thomas Method and system for creating and using web feed display templates
US20130124980A1 (en) 2011-11-16 2013-05-16 Future IP Limited Framework for creating interactive digital content
US8612851B2 (en) 2011-12-06 2013-12-17 Google Inc. Edition grid layout
US9070158B1 (en) * 2012-02-24 2015-06-30 Amazon Technologies, Inc. Adaptive information regions displaying content associated with an electronic commerce system
CN102662595A (zh) * 2012-04-18 2012-09-12 广州坚和网络科技有限公司 用于移动终端屏幕的杂志式图文混排方法
US20130305144A1 (en) * 2012-05-09 2013-11-14 Ni Group Limited Method of Publishing Digital Content

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120159314A1 (en) 2010-12-16 2012-06-21 Microsoft Corporation Adaptive content layout
US20130021377A1 (en) 2011-07-21 2013-01-24 Flipboard, Inc. Adjusting Orientation of Content Regions in a Page Layout
US20130024757A1 (en) 2011-07-21 2013-01-24 Flipboard, Inc. Template-Based Page Layout for Hosted Social Magazines

Also Published As

Publication number Publication date
CN105556449B (zh) 2018-12-04
KR20160029850A (ko) 2016-03-15
EP3019941A4 (en) 2017-04-05
EP3019941A1 (en) 2016-05-18
US9483444B2 (en) 2016-11-01
CN105556449A (zh) 2016-05-04
WO2015006086A1 (en) 2015-01-15
US20150019957A1 (en) 2015-01-15

Similar Documents

Publication Publication Date Title
KR102091814B1 (ko) 디지털 잡지용 동적 레이아웃 엔진
US10067930B2 (en) Page template selection for content presentation in a digital magazine
US10089295B2 (en) Selection of page templates for presenting digital magazine content based on characteristics of additional page templates
US10067929B2 (en) Hierarchical page templates for content presentation in a digital magazine
KR102348016B1 (ko) 디지털 매거진에 표시하기 위한 광고의 크기 수정 방법
US10133722B2 (en) Updating page templates presenting content from a digital magazine in a native application
US10437913B2 (en) Determining heights of content regions presenting content in a digital magazine
US9712575B2 (en) Interactions for viewing content in a digital magazine
US9483855B2 (en) Overlaying text in images for display to a user of a digital magazine
US20140351268A1 (en) Dynamic arrangement of content presented while a client device is in a locked state
US20140075275A1 (en) Generating a user-defined section of a digital magazine from a search request
US20140075289A1 (en) Adaptive Layout of Content in a Digital Magazine
US9971755B2 (en) Selecting additional supplemental content for presentation in conjunction with a content item presented via a digital magazine
US10091326B2 (en) Modifying content regions of a digital magazine based on user interaction
US10204421B2 (en) Identifying regions of free space within an image
US9979774B2 (en) Debugging and formatting feeds for presentation based on elements and content items
US10341282B2 (en) Identifying digital magazine server users based on actions by the users with content items presented by the digital magazine server

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