KR20090024283A - 커스터마이징된 사용자 인터페이스의 동적 생성 - Google Patents

커스터마이징된 사용자 인터페이스의 동적 생성 Download PDF

Info

Publication number
KR20090024283A
KR20090024283A KR1020097001423A KR20097001423A KR20090024283A KR 20090024283 A KR20090024283 A KR 20090024283A KR 1020097001423 A KR1020097001423 A KR 1020097001423A KR 20097001423 A KR20097001423 A KR 20097001423A KR 20090024283 A KR20090024283 A KR 20090024283A
Authority
KR
South Korea
Prior art keywords
style
time
user
variable
webpage
Prior art date
Application number
KR1020097001423A
Other languages
English (en)
Other versions
KR101445355B1 (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 KR20090024283A publication Critical patent/KR20090024283A/ko
Application granted granted Critical
Publication of KR101445355B1 publication Critical patent/KR101445355B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/134Hyperlinking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

온라인 애플리케이션을 표시하는 컴퓨터 구현 방법은, 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하는 단계, 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하는 단계를 포함한다. 몇몇 실시예들에서, 상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다. 몇몇 실시예들에서, 사용자 선택 변수는 웹페이지들의 콘텐츠와 무관하다. 몇몇 실시예들에서, 상이한 제 1 및 제 2 값은 사용자 프로파일에 따라 결정된다. 몇몇 실시예들에서, 제 1 웹페이지는 제 1 스타일을 이용하여 먼저 디스플레이된 다음, 제 1 웹페이지의 콘텐츠를 변경함이 없이, 제 2 스타일을 이용하여 다시 디스플레이된다.

Description

커스터마이징된 사용자 인터페이스의 동적 생성{DYNAMICALLY GENERATING CUSTOMIZED USER INTERFACES}
본 발명의 개시된 실시예들은 일반적으로 컴퓨터 애플리케이션의 그래픽 사용자 인터페이스들의 커스터마이징(customizing)에 관한 것이다. 특히, 실시예들은 온라인 애플리케이션들의 사용자 인터페이스들의 커스터마이징에 관한 것이다.
컴퓨터 사용자들은 일반적으로 컴퓨터 애플리케이션들의 그래픽 사용자 인터페이스들을 커스터마이징할 수 있다. 부가적으로, 웹 기반 이메일 애플리케이션들과 같은 많은 온라인 애플리케이션들은 사용자들이 상이한 컬러, 폰트, 배경 이미지, 라인 폭 등으로 온라인 애플리케이션의 인터페이스들 또는 외형을 커스터마이징할 수 있도록 한다. 이러한 커스터마이징된 외형들은 종종 '스킨'이라 지칭된다. 예를 들어, 특정한 온라인 애플리케이션들에서, 사용자들은 이들의 온라인 애플리케이션의 외형에 적용될 상이한 컬러들의 메뉴로부터 하나의 컬러를 선택할 수 있다. 사용자가 그 애플리케이션 또는 웹사이트에 로그인할 때마다, 그 웹사이트의 스킨은 이들이 선택했던 컬러로 나타난다. 커스터마이징된 외형은 온라인 애플리케이션의 콘텐츠가 변경 및 업데이트되는 것과 동일하게 유지된다.
온라인 애플리케이션을 표시(presenting)하는 컴퓨터 구현 방법으로서, 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하는 단계; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하는 단계를 포함한다. 몇몇 실시예들에서, 상기 제 1 스타일 및 상기 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각 상이한 제 1 및 제 2 값을 갖는다. 몇몇 실시예들에서, 상기 상이한 제 1 및 제 2 값은 사용자 프로파일에 따라 자동으로 결정된다.
온라인 애플리케이션을 표시하는 컴퓨터 구현 방법은 제 1 클라이언트 디바이스 및 제 2 클라이언트 디바이스에서 수행된다. 제 1 클라이언트 디바이스는 제 1 시간에 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하고, 제 2 시간에 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시한다. 상기 제 1 스타일 및 제 2 스타일은 제 1 사용자에 의해 선택된 변수에 따라 결정되고, 제 1 사용자에 의해 선택된 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다. 제 2 클라이언트 디바이스는 제 3 시간에 제 3 스타일을 갖는 온라인 애플리케이션의 제 3 웹페이지를 수신 및 표시하고, 제 4 시간에 상기 제 3 스타일과 상이한 제 4 스타일을 갖는 온라인 애플리케이션의 제 4 웹페이지를 수신 및 표시한다. 상기 제 3 스타일 및 제 4 스타일은 제 1 사용자와 상이한 제 2 사용자에 의해 선택된 변수를 따르고, 상기 제 2 사용자에 의해 선택된 변수는 상기 제 1 사용자에 의해 선택된 변수와 상이하다. 상기 제 2 사용자에 의해 선택된 변수는 제 3 및 제 4 시간에 각각, 상이한 제 3 및 제 4 값을 갖는다.
온라인 애플리케이션을 표시하기 위한 시스템(예, 클라이언트 디바이스)은 메모리, 하나 이상의 프로세서, 및 메모리에 저장되고 하나 이상의 프로세서에 의한 실행을 위해 컨피규어되는(configured) 하나 이상의 모듈을 포함한다. 모듈은 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하기 위한 명령어들, 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하기 위한 명령어들을 포함한다. 상기 제 1 스타일 및 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다.
컴퓨터 시스템과 연계하여 사용하기 위한 컴퓨터 프로그램 제품으로서, 컴퓨터 프로그램 제품은 컴퓨터 판독가능한 저장 매체 및 이에 내장된 컴퓨터 프로그램 메커니즘을 포함한다. 컴퓨터 프로그램 메커니즘은 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하기 위한 명령어들; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하기 위한 명령어들을 포함한다. 상기 제 1 스타일과 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다.
온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서, 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 클라이언트에게 전송하는 단계; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 상기 클라이언트에게 전송하는 단계를 포함한다. 몇몇 실시예들에서, 상기 제 1 스타일 및 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다. 몇몇 실시예들에서, 상이한 제 1 및 제 2 값은 클라이언트 디바이스의 사용자의 사용자 프로파일에 따라 자동으로 결정된다.
온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서, 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 제 1 클라이언트 디바이스로 전송하는 단계; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 상기 제 1 클라이언트 디바이스로 전송하는 단계를 포함한다. 상기 제 1 스타일과 제 2 스타일은 제 1 사용자에 의해 선택된 변수에 따르고, 제 1 사용자에 의해 선택된 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다. 상기 방법은 제 3 시간에, 제 3 스타일을 갖는 온라인 애플리케이션의 제 3 웹페이지를 제 2 클라이언트에게 전송하는 단계; 및 제 4 시간에, 상기 제 3 스타일과 상이한 제 4 스타일을 갖는 온라인 애플리케이션의 제 4 웹페이지를 상기 제 2 클라이언트에게 전송하는 단계를 추가로 포함한다. 상기 제 3 스타일과 제 4 스타일은 제 2 사용자에 의해 선택된 변수에 따른다. 제 2 사용자는 제 1 사용자와 상이하고, 제 2 사용자에 의해 선택된 변수는 제 1 사용자에 의해 선택된 변수와 상이하다. 제 2 사용자에 의해 선택된 변수는 제 3 및 제 4 시간에 각각, 상이한 제 3 및 제 4 값을 갖는다.
온라인 애플리케이션을 표시하기 위한 시스템(예, 애플리케이션 서버)은 메모리, 하나 이상의 프로세서, 및 메모리에 저장되고 하나 이상의 프로세서에 의한 실행을 위해 컨피규어되는 하나 이상의 모듈을 포함한다. 모듈은 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 클라이언트에게 전송하기 위한 명령어들; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 상기 클라이언트에게 전송하기 위한 명령어들을 포함한다. 상기 제 1 스타일과 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다.
컴퓨터 시스템과 연계하여 사용하기 위한 컴퓨터 프로그램 제품으로서, 컴퓨터 프로그램 제품은 컴퓨터 판독가능한 저장 매체, 및 이에 내장된 컴퓨터 프로그램 메커니즘을 포함한다. 컴퓨터 프로그램 메커니즘은 제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 클라이언트에게 전송하기 위한 명령어들; 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 온라인 애플리케이션의 제 2 웹페이지를 상기 클라이언트에게 전송하기 위한 명령어들을 포함한다. 상기 제 1 스타일과 제 2 스타일은 사용자 선택 변수에 따르고, 사용자 선택 변수는 제 1 및 제 2 시간에 각각, 상이한 제 1 및 제 2 값을 갖는다.
도 1은 웹페이지들을 위한 스타일 시트들을 동적으로 생성하기 위한 분배 시스템을 도시하는 도면이다.
도 2A는 본 발명의 몇몇 실시예들에 따른 웹페이지들을 위한 스타일 시트들 을 동적으로 생성하기 위한 프로세스를 도시하는 흐름도이다.
도 2B는 본 발명의 몇몇 실시예들에 따른 웹페이지들을 위한 스타일 시트들을 동적으로 생성하기 위한 프로세스를 도시하는 흐름도이다.
도 3A는 웹페이지에 적용되는 스타일 시트들의 세트를 순환시키기 위한 함수 요청 및 함수 정의를 갖는 웹페이지를 도시한다.
도 3B는 스타일 시트들의 순환 시트를 웹페이지에 적용하기 위한 자바스크립트 명령어들을 포함하는 웹페이지를 도시한다.
도 3C는 웹페이지에 적용되는 스타일 시트를 동적으로 변경하기 위한 예시적인 자바스크립트 소스 코드를 도시한다.
도 3D는 웹페이지에 적용되는 제 2 또는 차별 스타일 시트를 변경하기 위해 캐스케이딩 스타일 시트(CSS) 임포트 동작을 이용하는 예시적인 소스 코드를 도시한다.
도 3E는 문서 객체 모델(DOM)을 기반으로 하는 방법을 이용하여 웹페이지에 새로운 스타일 시트를 부가하는 자바스크립트 함수의 예시적인 소스 코드이다.
도 4는 본 발명의 몇몇 실시예들에 따른 예시적인 클라이언트를 도시하는 블럭도이다.
도 5는 본 발명의 몇몇 실시예들에 따른 예시적인 정보 서버를 도시하는 블럭도이다.
도면들에 걸쳐서 유사한 참조 번호들은 대응하는 구성요소들을 지칭한다.
도 1은 동적으로 생성 또는 동적으로 선택되는 스타일 시트들(종종 '스킨들'로 지칭됨)을 갖는 웹페이지들을 동적으로 생성하기 위한 분배 시스템을 도시하는 도면이다. 하나 이상의 컴퓨터 또는 디바이스(이후, "클라이언트들" 또는 "클라이언트 디바이스들")(102)는 통신망(104)에 접속될 수 있다. 클라이언트(102)는 임의의 수의 디바이스들(예, 컴퓨터, 인터넷 키오스크, 개인용 디지털 보조기, 휴대전화, 데스크톱 컴퓨터, 또는 랩톱 컴퓨터)일 수 있고, 하나 이상의 클라이언트 애플리케이션(106)을 포함할 수 있다. 클라이언트 애플리케이션(106)은 사용자가 웹페이지들(108) 또는 다른 문서들 또는 정보를 볼 수 있도록 할 수 있다. 클라이언트 애플리케이션(106)은 하나 이상의 작업을 수행하기 위해 사용자가 클라이언트(102) 및/또는 네트워크 리소스들과 상호작용할 수 있도록 하는 소프트웨어 애플리케이션일 수 있다. 예를 들어, 클라이언트 애플리케이션(106)은 클라이언트(102)상의 하나 이상의 웹페이지와 같은 리소스들을 사용, 브라우징 및/또는 검색하거나, 및/또는 통신망(104)을 통해 액세스가능한 웹 브라우저(예, Firefox, Internet Explorer, 또는 Safari) 또는 다른 타입의 애플리케이션일 수 있다. 또한, 클라이언트 애플리케이션(106)은 이메일 애플리케이션(예, Outlook, Lotus Notes, Entourage, 또는 Eudora)을 포함할 수 있다.
통신망(104)은 인트라넷, 익스트라넷, 인터넷 또는 그러한 네트워크들의 조합과 같은, 임의의 로컬 영역 네트워크(LAN) 및/또는 광역 네트워크(WAN)일 수 있다. 통신망(104)은 클라이언트들(202)과 서버(110) 사이의 통신 용량을 제공하기에 충분하다. 몇몇 실시예들에서, 통신망(104)은 전송 제어 프로토콜/인터넷 프로 토콜(TCP/IP)을 이용하여 정보를 전송하기 위해 하이퍼텍스트 전송 프로토콜(HTTP)을 사용한다. HTTP는 클라이언트 컴퓨터들이 통신망(104)을 통해 이용가능한 다양한 리소스들에 액세스할 수 있도록 한다. 그러나, 본 발명의 다양한 실시예들은 임의의 특정 프로토콜의 사용으로 제한되지 않는다. 본 명세서에 걸쳐 사용되는 "리소스"란 용어는 Uniform Resource Locator(URL)을 통해 액세스가능한 임의의 정보 또는 서비스 조각을 지칭하는 것으로서, 예를 들어, 웹페이지, 텍스트 또는 워드 프로세싱 문서, 이메일 메시지, 녹음된 음성 메시지, 데이터베이스, 이미지, 또는 계산론적 오브젝트(computational object)일 수 있다.
통신망(104)은 정보 서버(110)에 접속될 수 있다. 서버(110)는 HTTP 인터페이스(112), 하나 이상의 온라인 애플리케이션(114), 및 동적 스타일 시트 생성기(118)를 포함할 수 있다.
HTTP 인터페이스(112)는 통신망(104)과 온라인 애플리케이션(114) 사이의 통신을 용이하게 한다. 온라인 애플리케이션들(114)은 콘텐츠(118)를 전송 및 수신하도록 구성될 수 있다. 온라인 애플리케이션(114)은 다양한 콘텐츠(118)를 디스플레이하는데 사용되는 웹메일 애플리케이션 또는 다른 형태의 개인용 온라인 애플리케이션일 수 있다.
동적 스타일 시트 생성기(116)는 다음을 포함하거나 접속될 수 있다: 하나 이상의 메인 스타일 시트(122) 및 하나 이상의 차별(differential) 스타일 시트들(124)을 포함하는 스타일 시트 라이브러리(120); 하나 이상의 사용자 프로파일(128), 하나 이상의 이벤트 변수(130); 및 이미지 데이터베이스(132). 동적 스 타일 시트 생성기(116)는 사용자 프로파일들(128)에 저장될 수 있는 하나 이상의 사용자 선택 변수에 따른 동적 스타일 시트들을 생성한다. 대안적으로, 동적 스타일 시트 생성기(116)는 하나 이상의 사용자 선택 변수에 따라, 라이브러리(120)에 저장된 이전에 생성된 동적 스타일 시트들의 세트로부터 동적 스타일 시트를 선택한다. 선택적으로, 메인 스타일 시트(124)는 사용자 선택 변수들에 따라 조합된 스타일 시트(126)를 생성하기 위해 하나 이상의 차별 스타일 시트(124)와 조합될 수 있다. 그러나, 몇몇 실시예들에서, 서버(110)에 의해 생성된 각각의 웹페이지는 메인 스타일 시트와 차별 스타일 시트를 모두 참조하므로, 이러한 실시예들에서 동적 스타일 시트 생성기(116)는 조합된 스타일 시트들을 생성할 필요가 없다. 다양한 스타일 시트들은 송신 및 수신되는 웹페이지 콘텐츠(118)와 무관하다.
몇몇 실시예들에서, 사용자 선택 변수는 어떤 타입의 이벤트 변수들(130)이 요구될 것인지를 결정한다. 이벤트 변수들(130)은 이벤트가 변경되거나 이벤트가 발생함에 따라 업데이트될 수 있다. 예를 들어, 사용자가 "날씨"(특정 지역의, 예를 들어 특정 도시 또는 특정 우편번호의)를 이들의 스킨에 대한 변수로서 선택하면, 이벤트 변수들(130)은 온도, 강수량, 또는 습도 레벨일 수 있다. 따라서, 미리 결정된 시간들에서, 하나 이상의 이벤트 변수(130)는 적절한 스킨을 생성하기 위해, 정확한 현재 정보로 업데이트될 수 있다. 몇몇 실시예들에서, 동적 스타일 시트 생성기(116)는 웹페이지 스킨에 포함될 수 있는 이미지들(이미지 데이터베이스에 있는)에 대한 URL들의 리스트에 액세스할 수 있다.
도 2A는 본 발명의 몇몇 실시예들에 따라 웹페이지 스타일들 또는 스킨들을 동적으로 생성하기 위한 프로세스(200)를 도시하는 흐름도이다. 클라이언트의 사용자는 웹페이지의 사용자 인터페이스를 커스터마이징하기 위해 변수를 선택할 수 있다(202). 사용자에 의해 선택되는 변수는 이에 제한됨이 없이, 날짜, 시간, 날씨, 온도, 계절, 휴일, 및 주식 시장 활동을 포함할 수 있다. 그 다음, 서버는 제 1 선택 변수를 수신 및 저장한다(204). 몇몇 실시예들에서, 이러한 변수는 사용자 프로파일(128)(도 1에 도시된 바와 같은)에 저장될 수 있다. 몇몇 실시예들에서, 사용자 선택 변수는 디스플레이되는 웹페이지들의 콘텐츠와는 무관하고, 이에 따라 변수의 값들 및 결과적인 스타일 시트들 또한 디스플레이되는 웹페이지들의 콘텐츠와 무관하다.
변수가 선택된(202) 이후, 클라이언트의 사용자는 제 1 요청을 서버로 전송할 수 있다(206). 몇몇 실시예들에서, 초기 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 몇몇 타입의 정보 요청일 수 있다. 그 다음, 서버는 사용자 선택 변수의 현재 제 1 값을 결정하고(208), 사용자 선택 변수의 제 1 값을 기초로 제 1 스타일(본 명세서에서 종종 제 1 동적 스타일로 지칭됨)을 생성(또는 선택)한다(210). 서버는 제 1 스타일을 갖는 제 1 웹페이지를 클라이언트로 전송한다(212). 그 다음, 클라이언트는 제 1 스타일을 갖는 제 1 웹페이지를 수신 및 표시한다(214).
그 다음, 사용자는 제 2 요청을 전송할 수 있다(216). 몇몇 실시예들에서, 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 몇몇 타입의 정보 요청일 수 있다. 부가적으로, 몇몇 실시예들에서, 요청은 제 1 웹페이지의 외형을 리프레 시(refresh)하기 위한 요청일 수 있다. 리프레시 요청은 요구되는 어떠한 사용자 조치 없이도 자동으로 전송될 수 있거나, 명시적인 사용자 조치에 응답하여 전송될 수 있다. 그 다음, 서버는 사용자 선택 변수의 제 2 값을 결정하고(218), 사용자 선택 변수의 제 2 값을 기초로 제 2 스타일을 동적으로 생성 또는 선택한다(220). 그 다음, 제 2 스타일을 갖는 제 2 웹페이지가 클라이언트로 전송된다(222). 따라서, 클라이언트는 제 2 스타일을 갖는 웹페이지를 수신 및 표시할 수 있다(224).
몇몇 실시예들에서, 요청(216)이 새로운 또는 업데이트된 스타일 시트에 대한 요청인 경우, 또는 대안적으로 리프레시 요청인 경우, 동작(222)은 새로운 또는 업데이트된 웹페이지를 전송함이 없이, 생성 또는 선택된 스타일 시트를 요청하는 클라이언트로 전송하기 위한 동작들로 대체되고, 동작(224)은 새롭게 수신된 스타일 시트를 갖는 이전에 다운로딩된 웹페이지의 재-디스플레이로 대체된다. 결과적으로, 웹페이지의 외형은 변경되는 웹페이지 콘텐츠 없이 클라이언트에서 변경될 것이다. 사용자가 충분히 긴 시간 주기 동안 동일한 웹페이지를 지속적으로 보는 경우, 동작들(216~224)은 다수번 반복될 수 있고, 웹페이지의 외형은 다수번 변경된다. 상술된 것처럼, 이러한 프로세스에 의해 생성 또는 선택된 스타일들 또는 스타일 시트들은 종종 웹페이지 콘텐츠와는 무관하다.
예를 들어, 몇몇 실시예들에서, 사용자는 주어진 웹페이지에 대한 변수로서 날씨를 선택할 수 있다. 사용자가 그 웹페이지를 표시하기 위한 요청을 전송할 때, 서버는 사용자의 지역의 날씨가 어떤지에 관한 정보를 획득해야 한다. 비가 오고 있다면, 서버는 비를 디스플레이하는 그래픽들을 가진 웹페이지를 생성하기 위해 동적 스타일 시트 생성기(116)(도 1)를 사용할 수 있다. 몇몇 실시예들에서, 리프레시 동작은 디스플레이되는 웹페이지를 업데이트하도록 현재 정보를 획득하기 위해 수행될 수 있다. 몇몇 실시예들에서, 클라이언트에 의한 리프레시는 사용자에 의해 수동으로 생성될 수 있거나, 리프레시는 브라우저 또는 클라이언트에 의해 실행되는 웹페이지의 코드에 의해 생성될 수 있다.
몇몇 실시예들에서, 리프레시 요청은 전체 웹페이지를 재로딩(reloading)하는 것과는 상이할 수 있다. 리프레시 요청은 콘텐츠 정보, 스타일 정보, 또는 다른 타입의 정보를 포함할 수 있는 새로운 정보에 대한 요청일 수 있다. 몇몇 실시예들에서, 웹페이지의 스타일은 웹페이지의 콘텐츠를 리프레시함이 없이 리프레시될 수 있다. 예를 들어, 새로운 콘텐츠가 없지만 사용자 선택 변수의 값이 변경되었다면, 콘텐츠가 업데이트됨이 없이 스타일이 업데이트될 수 있다. 도 1에 도시되고 상술된 것처럼, 다양한 스타일 시트들은 콘텐츠(118)와는 무관하다.
몇몇 실시예들에서, 서버와 클라이언트 간에 지속적인 접속이 있는 경우, 서버는 클라이언트로부터의 요청이 없더라도 스타일 시트 및/또는 콘텐츠 업데이트들을 클라이언트로 전송할 수 있다.
도 2B는 본 발명의 몇몇 실시예들에 따라 웹페이지 스타일들 또는 스킨들을 동적으로 생성 또는 선택하기 위한 프로세스(250)를 도시하는 흐름도이다. 이러한 흐름도는 정보 서버 또는 애플리케이션 서버가 동적으로 결정된 스타일들을 갖는 웹페이지들을 하나 보다 많은 클라이언트로 전송할 때 사용되는 프로세스를 도시한다. 클라이언트들은 서버로부터 이전에 다운로딩된 웹페이지들의 스타일들을 업데 이트 및/또는 동적으로 결정된 스타일들을 갖는 웹페이지들을 획득하기 위해, 중첩되는 시간 주기들 동안 또는 동시에 서버에 액세스할 수 있다. 클라이언트 A의 사용자(사용자 A)는 서버에 의해 수신 및 저장된(254) 제 1 변수를 선택한다(252). 몇몇 실시예들에서, 서버는 사용자 A의 프로파일(128)(도 1에 도시된 바와 같은)에 변수를 저장한다. 사용자에 의해 변수가 선택되고 서버에 의해 저장된 이후의 시간에, 클라이언트 A의 사용자는 제 1 요청을 서버로 전송한다. 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 다른 형태의 정보 요청일 수 있다. 그 다음, 서버는 제 1 변수의 제 1 값(예, 현재 값)을 기초로 제 1 스타일을 동적으로 생성 또는 선택하고(258), 제 1 스타일을 갖는 제 1 웹페이지를 클라이언트 A로 전송한다(250). 제 1 스타일(및 이하에서 언급되는 다른 스타일들)은 제 1 값을 기초로 동적으로 생성되거나(예, 스타일 시트 파일을 동적으로 생성함으로써), 또는 하나의 세트의 미리 규정된 또는 이전에 생성된 스타일 시트 파일들 중 하나를 선택할 수 있다. 클라이언트 A는 제 1 스타일을 갖는 제 1 웹페이지를 수신 및 표시한다(262).
이후 시간에, 클라이언트 A의 사용자는 제 2 요청을 서버로 전송한다(264). 전술한 것처럼, 몇몇 실시예들에서, 제 2 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 다른 형태의 정보 요청일 수 있다. 다른 실시예들에서, 요청은 사용자 초기화되거나 자동적일 수 있는, 제 1 웹페이지의 외형을 리프레시하기 위한 요청일 수 있다. 그 다음, 서버는 제 1 변수의 제 2 값(예, 새로운 현재 값)을 기초로 제 2 스타일을 동적으로 생성하거나 선택하고(266), 제 2 스타일을 갖는 제 2 웹페이지를 클라이언트 A로 전송한다(268). 클라이언트 A는 제 2 스타일을 갖는 제 2 웹페이지를 수신 및 표시한다(270). 몇몇 실시예들에서, 제 2 웹페이지를 요청하는 대신에, 클라이언트(예, 클라이언트 A)는 웹페이지 콘텐츠를 다운로딩 또는 리프레시함이 없이, 웹페이지에 적용되는 새로운 스타일 시트를 요청 및 수신한다.
유사하게, 클라이언트 B의 사용자(사용자 B)는 변수를 선택한다(272). 클라이언트 B의 사용자에 의해 선택된 변수는 서버에 의해 수신 및 저장된다(274). 몇몇 실시예들에서, 변수는 사용자 A(상기)의 프로파일과 구별되고 상이한 사용자 B의 프로파일에 저장될 수 있다. 이후 시간에, 사용자 B는 요청을 서버로 전송한다(276). 몇몇 실시예들에서, 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 다른 형태의 정보 요청일 수 있다. 요청에 응답하여, 서버는 제 2 변수의 현재 값(본 명세서에서 "제 3 값"으로 지칭됨)을 기초로 제 3 동적 스타일을 동적으로 생성 또는 선택한다(278). 제 2 변수의 현재 값은 전술한 제 1 변수의 제 1 및 제 2 값과 구별하기 위해, 본 명세서에서 "제 3 값"으로 지칭된다. 서버는 제 3 스타일을 갖는 제 3 웹페이지를 클라이언트 B로 전송한다(280). 클라이언트 B는 제 3 스타일을 갖는 제 3 웹페이지를 수신 및 표시한다(282).
또 다른 이후 시간에, 사용자 B는 다른 요청을 전송한다(284). 몇몇 실시예들에서, 요청은 검색 질의, 새로운 웹페이지에 대한 요청, 또는 다른 형태의 정보 요청일 수 있다. 다른 실시예들에서, 요청은 사용자 초기화되거나 자동적일 수 있는, 제 3 웹페이지의 외형을 리프레시하기 위한 요청일 수 있다. 요청(284)에 응답하여, 서버는 제 2 변수의 현재 값(본 명세서에서 "제 4 값"으로 지칭됨)을 기초 로 제 4 스타일을 동적으로 생성 또는 선택하고(286), 제 4 스타일을 갖는 제 4 웹페이지를 클라이언트 B로 전송한다(288). 클라이언트 B는 제 4 스타일을 갖는 제 4 웹페이지를 수신 및 표시한다(290). 몇몇 실시예들에서, 요청(264 또는 284)이 새로운 또는 업데이트된 스타일 시트에 대한 요청인 경우, 동작들(266 또는 288)은 새로운 또는 업데이트된 웹페이지를 전송함이 없이, 생성되거나 선택된 스타일 시트를 요청 클라이언트로 전송하기 위한 동작들로 대체된다.
도 3A 내지 도 3E는 커스터마이징된 사용자 인터페이스들을 동적으로 생성하는 방법이 어떻게 구현될 수 있는지를 예시한다. 도 3A는 커스트마이징된 스킨들을 구현하기 위한 웹페이지의 명령어들(300)의 일반적인 예이다. 명령어들(300)은 하나 이상의 초기 스타일 시트 링크들(302)이 호출되고 함수가 정의(304)되도록 배열 또는 정렬된다. 도 3A에 도시된 예에서, 함수는 "Rotate"로 지칭된다. 본 예에서, 다양한 함수들을 수행하기 위한 애플리케이션 코드(306)도 생성되고 애플리케이션 코드의 적어도 일부분이 실행된다. 애플리케이션 코드의 부분으로서, 변수가 정의되고 현재 값이 할당될 수 있다(308). 변수에 할당된 현재 값(308)은 시간에 따라 변경될 수 있다. 예를 들어, 변수는 그 값이 클라이언트 외부의 조건에 의존하는 사용자 선택 변수일 수 있다. 또한, 이전에 정의된 함수(304 참조)는 함수 호출(310)의 파라미터로서 변수의 현재 값을 이용하여, 시간에 따라 애플리케이션 코드에 의해 호출될 수 있다.
도 3B는 함수 호출을 포함하는, 웹페이지에 대한 예시적인 HTML 소스 코드를 도시한다. 본 도면에 도시된 것처럼, "skin-1.css" 캐스케이딩(cascading) 스타일 시트는 웹페이지의 메인 소스 코드로부터 초기화될 수 있다. 도 3B의 예는 rotate() 함수에 대한 정의를 나타내지 않지만, rotate() 함수의 예들은 도 3C 및 3D에 제공된다. 몇몇 실시예들에서, 다른 정의된 스타일 시트들은 웹페이지의 디스플레이 동안 시간에 따라 호출(즉, 웹페이지를 디스플레이할 때 적용)될 수 있다.
도 3C는 순환 세트의 "차별(differential)" 스타일 시트들을 호출하기 위한 자바스크립트 명령어들을 포함하는, 웹페이지에 대한 예시적인 HTML 소스 코드(330)를 도시한다. 코드 내에서, 메인 스타일 시트가 먼저 생성된다(332). 스킨 또는 외형을 변경 또는 리프레시하기 위해, 본 명세서에서 차별 스타일 시트로서 지칭되는 다른 스타일 시트가 적절한 Uniform Resource Locator(URL)을 이용하여 호출된다(334). 차별 스타일 시트가 메인 스타일 시트와 동일한 임의의 파라미터들을 갖는다는 점에서, 그러한 파라미터들이 무시된다(override). 한편, 메인 스타일 시트 및 차별 스타일 시트가 상이한 스타일 파라미터들을 상술(specify)한다는 점에서는, 2개의 스타일 시트들은 상보적(complementary)이다. rotate 함수가 호출될 때마다(예, 웹페이지에 대한 HTML 소스 코드(330)의 바디에 있는 자바스크립트 명령어들에 의해), 웹페이지의 외형을 추가로 리프레시하기 위해 다른 차별 스타일 시트가 호출된다(336).
도 3D는 스타일 시트들의 시퀀스를 임포트하기 위해 URL 임포트 동작들(예, "@import" HTML 명령들을 이용하여 구현됨)을 이용하는 예시적인 소스 코드(340)를 도시한다. 본 예는 도 3C의 예와 동일한 결과들을 달성하지만, 상이한 기술을 사 용한다. 도 3C의 소스 코드와 유사하게, 메인 스타일 시트가 먼저 생성된다(342). 차별 또는 제 2 스타일 시트의 URL은 HTML "@import" 명령에 상술되어, 상술된 스타일 시트가 클라이언트로 임포트(344)되고 웹페이지에 적용되도록 한다. 차별 또는 제 2 스타일 시트는 본 예에서 식별자, id="skin"으로 할당되고, 스타일 시트가 새로운 스타일 시트에 의해 대체될 수 있도록 한다. 이전에 임포트된 차별 또는 제 2 스타일 시트를 대체하기 위해 다른 스타일 시트들을 임포트하기 위한 함수(본 예에서 rotate 함수로 지칭됨)는 346에서 정의된다. rotate 함수는 웹페이지에 대한 HTML 소스 코드(340)의 바디에 있는 명령어들에 의해 호출될 수 있다. rotate 함수가 호출될 때마다(예, 웹페이지에 대한 HTML 소스 코드(340)의 바디에 있는 자바스크립트 명렁어들에 의해), 새로운 스타일 시트는 식별자 id="skin"으로 할당된 이전에 임포트된 스타일 시트를 대체하고, 새롭게 임포트된 스타일 시트의 스타일 아이템들은 웹페이지를 표시할 때 클라이언트 디바이스에 의해 사용된다.
도 3E는 문서 객체 모델(DOM)을 이용하여 웹페이지에 스타일 시트를 부가하는 자바스크립트 함수의 예시적인 소스 코드를 도시한다. 본 예에서, 함수는 스타일 시트로의 링크를 웹페이지의 헤더에 삽입시킨다. DOM은 문서의 콘텐츠, 구조, 및 스타일을 액세스 및 변형하기 위해 애플리케이션 프로그래밍 인터페이스(API)를 제공한다. 본 예에서, 함수는 웹페이지의 DOM 구조에 새로운 엘리먼트를 부가시킨다. 웹페이지에 부가되는 새로운 엘리먼트는 rel="stylesheet", type="text/css" 및 href=url의 속성들을 갖는 HTML 링크로서, 여기서 "url"은 함수의 입력 파라미터이다. HTML 링크의 "url"은 전술한 것처럼, 사용자 특정 변수에 따라 선택된 URL일 수 있다. 대안적으로, HTML 링크의 "url"은 스타일 시트 생성 함수 또는 서버의 프로시저를 호출하는 고정 값일 수 있다.
몇몇 실시예들에서, 웹페이지에 대한 HTML 코드에서 스타일 시트로의 링크의 생성 또는 대체는 서버로의 HTML 요청을 초래하고, HTML 요청은 요청되는 스타일 시트의 URL을 상술한다. URL을 갖는 HTML 요청은 스타일 시트 생성 함수 또는 프로시저에 대한 함수 또는 프로시저 호출로서 서버에 의해 처리될 수 있다. 함수 또는 프로시저는 요청하는 클라이언트와 연관된 사용자의 사용자 프로파일에서 식별되는 변수의 현재 값에 따라 스타일 시트를 생성 또는 선택한다(예, 사용자는 서버로의 성공적인 로그인에 의해 클라이언트와 연동될 수 있음).
도 4는 본 발명의 몇몇 실시예들에 따른 예시적인 클라이언트(102)를 도시하는 블럭도이다. 클라이언트(102)는 전형적으로 하나 이상의 처리 유닛(CPU)(402), 하나 이상의 네트워크 또는 다른 통신 인터페이스(404), 사용자 인터페이스(408), 메모리(414), 및 이러한 구성요소들을 상호접속하기 위한 하나 이상의 통신 버스(406)를 포함한다. 통신 버스들(406)은 시스템 컴포넌트들 간의 통신을 상호접속 및 제어하는 회로(종종 '칩셋'으로 지칭됨)를 포함할 수 있다. 사용자 인터페이스(408)는 디스플레이(410), 키보드(412) 및 가능하면 다른 컴포넌트들도 포함할 수 있다.
메모리(414)는 DRAM, SRAM, DDR RAM, 또는 다른 랜덤 액세스 고상 메모리 소자들과 같은 고속 랜덤 액세스 메모리를 포함하고; 하나 이상의 자기 디스크 저장 장치, 광학 디스크 저장 장치들, 또는 다른 비휘발성 고상 저장 장치들과 같은 비 휘발성 메모리를 포함할 수 있다. 메모리(414)는 CPU(s)(402)로부터 떨어져 위치된 하나 이상의 저장 장치를 선택적으로 포함할 수 있다. 몇몇 실시예들에서, 메모리(414)는 이하의 프로그램들, 모듈들, 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
● 다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 작업들을 수행하기 위한 프로시저들을 포함하는 운영 체제(416);
● 인터넷, 다른 광역 네트워크, 로컬 영역 네트워크, 광대역 네트워크 등과 같은, 하나 이상의 통신 네트워크 인터페이스들(404) 및 하나 이상의 통신망을 통해 클라이언트(102)를 다른 컴퓨터들에 접속시키기 위해 사용되는 네트워크 통신 모듈(418);
● 전술한 것처럼, 하나 이상의 작업을 수행하기 위해 클라이언트(102) 및/또는 네트워크 리소스들과 사용자가 상호작용할 수 있도록 하는 클라이언트 애플리케이션(106);
● 클라이언트 애플리케이션(106)상에 디스플레이될 수 있는 하나 이상의 웹페이지(108); 및
● 하나 이상의 스타일 시트(420).
몇몇 실시예들에서, 웹페이지들(108)은 웹메일 애플리케이션 또는 다른 형태의 온라인 애플리케이션을 디스플레이할 수 있다. 전술한 것처럼, 웹페이지들(108)은 사용자 선택 변수에 따라 생성 또는 선택되는, 순환하는(rotating) 스타일 시트들의 세트, 또는 스타일 시트들의 시퀀스를 참조할 수 있다. 몇몇 실시예 들에서, 하나 이상의 스타일 시트(420)는 클라이언트 애플리케이션(106)에 사용하기 위해 국부적으로 캐싱될 수 있다. 다른 실시예들에서, 스타일 시트(들)(420)은 웹페이지가 다운로딩 또는 리프레시될 때마다 서버(110)로부터 다운로딩될 수 있다.
도 5는 본 발명의 몇몇 실시예들에 따른 예시적인 정보 서버(110)를 도시하는 블럭도이다. 서버(110)는 전형적으로 하나 이상의 처리 유닛(CPU)(502), 하나 이상의 네트워크 또는 다른 통신 인터페이스들(504), 메모리(508), 및 이러한 구성요소들을 상호접속시키기 위한 하나 이상의 통신 버스(506)를 포함한다. 통신 버스들(506)은 시스템 컴포넌트들 간에 통신들을 상호접속 및 제어하기 위한 회로(종종 '칩셋'으로 지칭됨)를 포함할 수 있다.
메모리(508)는 DRAM, SRAM, DDR RAM, 또는 다른 랜덤 액세스 고상 메모리 소자들과 같은 고속 랜덤 액세스 메모리를 포함하고; 하나 이상의 자기 디스크 저장 장치, 광학 디스크 저장 장치들, 또는 다른 비휘발성 고상 저장 장치들과 같은 비휘발성 메모리를 포함할 수 있다. 메모리(508)는 CPU(s)(502)로부터 떨어져 위치된 하나 이상의 저장 장치를 선택적으로 포함할 수 있다. 몇몇 실시예들에서, 메모리(508)는 이하의 프로그램들, 모듈들 및 데이터 구조들, 또는 이들의 서브세트를 저장한다:
● 다양한 기본 시스템 서비스들을 처리하고 하드웨어 의존 작업들을 수행하기 위한 프로시저들을 포함하는 운영 체제(510);
● 인터넷, 다른 광역 네트워크, 로컬 영역 네트워크, 광대역 네트워크 등과 같은, 하나 이상의 통신 네트워크 인터페이스들(504) 및 하나 이상의 통신망을 통해 클라이언트(102)를 다른 컴퓨터들에 접속시키기 위해 사용되는 네트워크 통신 모듈(512);
● 온라인 애플리케이션(114);
● 동적 스타일 시트 생성기(116);
● 하나 이상의 메인 스타일 시트(122) 및 하나 이상의 차별 스타일 시트(124)를 포함하는, 스타일 시트 라이브러리(120);
● 하나 이상의 조합된 스타일 시트(126)(상기에서 설명된 것처럼 선택사항임)
● 사용자 정보를 저장하기 위한 사용자 프로파일들(128);
● 하나 이상의 이벤트 변수(130); 및
● 이미지 데이터베이스(132).
몇몇 실시예들에서, 온라인 애플리케이션(114)은 웹메일 애플리케이션 또는 다른 형태의 온라인 애플리케이션일 수 있다. 동적 스타일 시트 생성기(116)는 전술한 것처럼, 하나 이상의 사용자 선택 변수에 따른 동적 스타일 시트들을 생성하거나 선택한다.
스타일 시트 라이브러리(120)는 메인 스타일 시트들(122)을 저장할 수 있다. 메인 스타일 시트들(122)은 조합된 스타일 시트들(126)을 생성하기 위해 차별 스타일 시트들(124)과 조합될 수 있다. 대안적으로, 온라인 애플리케이션(114)에 의해 생성된 웹페이지들은 메인 스타일 시트 및 하나 이상의 차별 스타일 시트(124)를 모두 참조할 수 있다. 다양한 스타일 시트들이 동적 스타일 시트 생성기(116)에 의해 사용되어, 사용자 선택 변수들에 따른 스타일 시트들을 전송 및 생성한다.
사용자 프로파일 데이터베이스(128)는 각 사용자에 특정된 정보를 저장한다. 몇몇 실시예들에서, 개별적인 사용자 프로파일(516)은 사용자 ID(518), 하나 이상의 사용자 선택 변수(520), 및 다른 사용자 특정 정보를 포함할 수 있다. 사용자 ID(516)가 사용자에게 할당되면, 사용자는 이들의 사용자 ID(516)를 이용하여 웹사이트 또는 온라인 애플리케이션에 로그인할 수 있다. 그 다음, 사용자는 웹사이트 또는 온라인 애플리케이션의 외형을 커스터마이징하기 위해, 변수(사용자 선택 변수(520))를 선택할 수 있다. 그 다음, 사용자 선택 변수(520)는 그 특정 사용자에 대한 사용자 프로파일(516)에 저장된다.
도 4 및 도 5의 상기 인용된 각각의 엘리먼트는 이전에 언급된 하나 이상의 메모리 장치에 저장될 수 있다. 이러한 도면들에 도시된 애플리케이션들, 기능들, 모듈들 및 운영 체제들은 전술한 기능들을 수행하기 위한 명령어들의 세트들에 대응한다. 상기 인용된 모듈들 또는 프로그램들(즉, 명령어들의 세트)은 개별적인 소프트웨어 프로그램들, 프로시저들 또는 모듈들로서 구현될 필요는 없으며, 이에 따라 다양한 실시예들에서, 이러한 모듈들의 다양한 서브세트들이 조합되거나 재배열될 수 있다. 몇몇 실시예들에서, 메모리(416) 및/또는 메모리(508)는 상기 인용된 모듈들 및 데이터 구조들의 세브세트를 저장할 수 있다. 더욱이, 메모리(416) 및/또는 메모리(508)는 전술하지 않은 부가적인 모듈들 및 데이터 구조들을 저장할 수 있다.
도 4 및 도 5는 각각 클라이언트(102)와 서버(110)를 도시하지만, 도면들은 본 발명에서 기술되는 실시예들의 구조적 개념 이외에 서버들의 세트와 클라이언트에 존재할 수 있는 다양한 특징들의 기능적인 설명들인 것으로서 의도된다. 실제로, 통상의 당업자에 의해 인식되는 것처럼, 개별적으로 도시된 아이템들이 조합될 수 있고, 몇몇 아이템들은 분리될 수 있다. 예를 들어, 도 5에 개별적으로 도시된 몇몇 아이템들은 단일 서버 상에서 구현될 수 있고, 단일 아이템들은 하나 이상의 서버에 의해 구현될 수 있다. 서버(110)를 구현하는데 사용되는 서버들의 실제 개수 및 이들 간에 특징부들이 할당되는 방법은 구현예 별로 변화될 수 있으며, 평균 사용 주기들 동안 뿐만 아니라, 피크 사용 주기들 동안에 시스템이 처리해야 하는 데이터 트래픽의 양에 부분적으로 의존할 수 있다.
설명을 목적으로 한 전술한 상세한 설명은 특정 실시예들을 참조로 기술되었다. 그러나, 상기한 예시적인 논의들은 개시된 정확한 형태들로 본 발명을 제한하거나 본 발명을 전부 열거한 것으로 의도되지 않는다. 많은 변형예들과 변화들이 상기한 기술적 사상들의 관점에서 가능할 수 있다. 본 발명의 원리들과 그 실제 애플리케이션들을 최상으로 설명함으로써, 특정한 사용에 적합한 것으로 고려되는 다양한 변형들을 갖는 다양한 실시예들 및 본 발명을 통상의 당업자가 최상으로 활용할 수 있도록 하기 위하여, 실시예들이 선택되어 기술되었다.

Claims (26)

  1. 온라인 애플리케이션을 표시(presenting)하기 위한 컴퓨터 구현 방법으로서,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하는 단계; 및
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하는 단계
    를 포함하고, 상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수에 따르며, 상기 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖는,
    컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 제 1 시간에, 상기 사용자 선택 변수의 상기 제 1 값에 따른 제 1 스타일 시트를 동적으로 수신하는 단계 - 상기 제 1 스타일 시트는 상기 제 1 스타일에 상응함 -; 및
    상기 제 2 시간에, 상기 사용자 선택 변수의 상기 제 2 값에 따른 제 2 스타일 시트를 동적으로 수신하는 단계 - 상기 제 2 스타일 시트는 상기 제 2 스타일에 상응함 -
    를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  3. 제 2 항에 있어서,
    상기 제 1 웹페이지는 정적 스타일 시트 및 상기 제 1 스타일 시트를 참조하고, 상기 제 2 웹페이지는 상기 정적 스타일 시트 및 상기 제 2 스타일 시트를 참조하며, 상기 정적 스타일 시트는 상기 제 1 및 제 2 웹페이지 모두에 적용되는 다수의 스타일 엘리먼트들을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  4. 제 1 항에 있어서,
    상기 사용자 선택 변수는 날짜, 시간, 날씨, 온도, 계절, 휴일, 및 주식 시장 활동으로 이루어진 그룹에서 선택되는 것을 특징으로 하는 컴퓨터 구현 방법.
  5. 제 1 항에 있어서,
    상기 제 1 및 제 2 스타일은 상이한 제 1 및 제 2 배경 이미지에 대한 링크들을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  6. 제 1 항에 있어서,
    상기 제 1 및 제 2 값은 사용자 프로파일에 의해 특정되는 적어도 하나의 메트릭(metric)에 따라 결정되고, 상기 적어도 하나의 메트릭은 시간에 따라 변하는 값을 갖는 것을 특징으로 하는 컴퓨터 구현 방법.
  7. 제 1 항에 있어서,
    상기 제 1 웹페이지 및 상기 제 2 웹페이지는 동일한 URL을 갖는 것을 특징으로 하는 컴퓨터 구현 방법.
  8. 제 1 항에 있어서,
    상기 방법은 각각의 클라이언트 디바이스에서 수행되고, 상기 사용자 선택 변수는 상기 클라이언트 디바이스의 사용자에 의해 선택되는 것을 특징으로 하는 컴퓨터 구현 방법.
  9. 제 1 항에 있어서,
    상기 제 1 웹페이지 및 상기 제 2 웹페이지는 상기 온라인 애플리케이션과 연동되는 임의의 미리 규정된 세트의 웹페이지들인 것을 특징으로 하는 컴퓨터 구현 방법.
  10. 제 1 항에 있어서,
    상기 제 1 스타일 및 상기 제 2 스타일은 상기 제 1 웹페이지 및 상기 제 2 웹페이지의 콘텐츠와 무관한 것을 특징으로 하는 컴퓨터 구현 방법.
  11. 온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하는 단계; 및
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 수신하고, 상기 제 2 스타일을 이용하여 상기 제 1 웹페이지를 표시하는 단계
    를 포함하고, 상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수에 따르며, 상기 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖고, 상기 사용자 선택 변수는 상기 제 1 웹페이지의 콘텐츠와 무관한,
    컴퓨터 구현 방법.
  12. 온라인 애플리케이션을 표시하기 위한 시스템으로서,
    메모리;
    하나 이상의 프로세서; 및
    상기 메모리에 저장되고 상기 하나 이상의 프로세서에 의한 실행을 위해 컨피규어(configure)되는 하나 이상의 모듈
    을 포함하고, 상기 모듈은,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하기 위한 명령어들, 및 제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하기 위한 명령어들을 포함하며,
    상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수에 따르고, 상기 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖는,
    온라인 애플리케이션을 표시하기 위한 시스템.
  13. 컴퓨터 시스템과 연계하여 사용하기 위한 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 프로그램 제품은 컴퓨터 판독가능한 저장 매체, 및 이에 내장된 컴퓨터 프로그램 메커니즘을 포함하고, 상기 컴퓨터 프로그램 메커니즘은,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 수신 및 표시하기 위한 명령어들; 및
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 수신 및 표시하기 위한 명령어들
    을 포함하며, 상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수를 따르고, 상기 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖는,
    컴퓨터 프로그램 제품.
  14. 온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 클라이언트로 전송하는 단계; 및
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 상기 클라이언트로 전송하는 단계
    를 포함하고, 상기 제 1 스타일과 상기 제 2 스타일은 사용자 선택 변수를 따르며, 상기 사용자 선택 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖는,
    컴퓨터 구현 방법.
  15. 제 14 항에 있어서,
    상기 제 1 시간에, 상기 사용자 선택 변수의 상기 제 1 값에 따른 제 1 스타일 시트를 동적으로 생성하는 단계 - 상기 제 1 스타일 시트는 상기 제 1 스타일에 상응함 -; 및
    상기 제 2 시간에, 상기 사용자 선택 변수의 상기 제 2 값에 따른 제 2 스타일 시트를 동적으로 생성하는 단계 - 상기 제 2 스타일 시트는 상기 제 2 스타일에 상응함 -
    를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  16. 제 15 항에 있어서,
    상기 제 1 웹페이지는 정적 스타일 시트 및 상기 제 1 스타일 시트를 참조하고, 상기 제 2 웹페이지는 상기 정적 스타일 시트 및 상기 제 2 스타일 시트를 참조하며, 상기 정적 스타일 시트는 상기 제 1 및 제 2 웹페이지 모두에 적용되는 다수의 스타일 엘리먼트들을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  17. 제 14 항에 있어서,
    상기 사용자 선택 변수는 날짜, 시간, 날씨, 온도, 계절, 휴일, 및 주식 시장 활동으로 이루어진 그룹에서 선택되는 것을 특징으로 하는 컴퓨터 구현 방법.
  18. 제 14 항에 있어서,
    상기 제 1 및 제 2 스타일은 상이한 제 1 및 제 2 배경 이미지를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  19. 제 14 항에 있어서,
    상기 제 1 및 제 2 값은 사용자 프로파일에 의해 특정되는 적어도 하나의 메트릭에 따라 결정되고, 상기 적어도 하나의 메트릭은 시간에 따라 변하는 값을 갖는 메트릭을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  20. 제 14 항에 있어서,
    상기 제 1 웹페이지 및 상기 제 2 웹페이지는 동일한 URL을 갖는 것을 특징으로 하는 컴퓨터 구현 방법.
  21. 제 14 항에 있어서,
    상기 방법은 상기 클라이언트로부터 떨어져 있는 서버에서 수행되고, 상기 사용자 선택 변수는 상기 클라이언트의 사용자에 의해 선택되는 것을 특징으로 하는 컴퓨터 구현 방법.
  22. 제 14 항에 있어서,
    상기 제 1 웹페이지 및 상기 제 2 웹페이지는 상기 온라인 애플리케이션과 연동되는 임의의 미리 규정된 세트의 웹페이지들인 것을 특징으로 하는 컴퓨터 구현 방법.
  23. 온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 클라이언트 디바이스로 전송하는 단계; 및
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 상기 클라이언트 디바이스로 전송하는 단계
    를 포함하고, 상기 제 1 스타일과 상기 제 2 스타일은 변수에 따르며, 상기 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 갖고, 상기 상이한 제 1 값 및 제 2 값은 상기 클라이언트 디바이스의 사용자 프로파일에 따라 자동으로 결정되는,
    컴퓨터 구현 방법.
  24. 제 23 항에 있어서,
    상기 제 1 시간에, 상기 사용자 선택 변수의 상기 제 1 값에 따른 제 1 스타일 시트를 동적으로 생성하는 단계 - 상기 제 1 스타일 시트는 상기 제 1 스타일에 상응함 -; 및
    상기 제 2 시간에, 상기 사용자 선택 변수의 상기 제 2 값에 따른 제 2 스타일 시트를 동적으로 생성하는 단계 - 상기 제 2 스타일 시트는 상기 제 2 스타일에 상응함 -
    를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  25. 온라인 애플리케이션을 표시하는 컴퓨터 구현 방법으로서,
    제 1 시간에, 제 1 스타일을 갖는 온라인 애플리케이션의 제 1 웹페이지를 제 1 클라이언트 디바이스로 전송하는 단계;
    제 2 시간에, 상기 제 1 스타일과 상이한 제 2 스타일을 갖는 상기 온라인 애플리케이션의 제 2 웹페이지를 상기 제 1 클라이언트 디바이스로 전송하는 단계 - 상기 제 1 스타일과 상기 제 2 스타일은 제 1 사용자에 의해 선택된 변수를 따르고, 상기 제 1 사용자에 의해 선택된 상기 변수는 상기 제 1 및 제 2 시간에 각각, 상이한 제 1 값 및 제 2 값을 가짐 -;
    제 3 시간에, 제 3 스타일을 갖는 상기 온라인 애플리케이션의 제 3 웹페이지를 제 2 클라이언트로 전송하는 단계; 및
    제 4 시간에, 상기 제 3 스타일과 상이한 제 4 스타일을 갖는 상기 온라인 애플리케이션의 제 4 웹페이지를 상기 제 2 클라이언트로 전송하는 단계 - 상기 제 3 스타일과 상기 제 4 스타일은 제 2 사용자에 의해 선택된 변수를 따르고, 상기 제 2 사용자는 상기 제 1 사용자와 상이하며, 상기 제 2 사용자에 의해 선택된 변수는 상기 제 1 사용자에 의해 선택된 변수와 상이하고, 상기 제 2 사용자에 의해 선택된 변수는 상기 제 3 및 제 4 시간에 각각, 상이한 제 3 값 및 제 4 값을 가짐 -
    를 포함하는 컴퓨터 구현 방법.
  26. 제 25 항에 있어서,
    상기 제 1 시간에, 상기 제 1 사용자에 의해 선택된 변수의 상기 제 1 값에 따른 제 1 스타일 시트를 동적으로 생성하는 단계 - 상기 제 1 스타일 시트는 상기 제 1 스타일에 상응함 -;
    상기 제 2 시간에, 상기 제 1 사용자에 의해 선택된 변수의 상기 제 2 값에 따른 제 2 스타일 시트를 동적으로 생성하는 단계 - 상기 제 2 스타일 시트는 상기 제 2 스타일에 상응함 -;
    상기 제 3 시간에, 상기 제 2 사용자에 의해 선택된 변수의 상기 제 3 값에 따른 제 3 스타일 시트를 동적으로 생성하는 단계 - 상기 제 3 스타일 시트는 상기 제 3 스타일에 상응함 -; 및
    상기 제 4 시간에, 상기 제 2 사용자에 의해 선택된 변수의 상기 제 4 값에 따른 제 4 스타일 시트를 동적으로 생성하는 단계 - 상기 제 4 스타일 시트는 상기 제 4 스타일에 상응함 -
    를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
KR1020097001423A 2006-06-29 2007-06-28 커스터마이징된 사용자 인터페이스의 동적 생성 KR101445355B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/427,774 2006-06-29
US11/427,774 US7908551B2 (en) 2006-06-29 2006-06-29 Dynamically generating customized user interfaces
PCT/US2007/072401 WO2008003062A2 (en) 2006-06-29 2007-06-28 Dynamically generating customized user interfaces

Publications (2)

Publication Number Publication Date
KR20090024283A true KR20090024283A (ko) 2009-03-06
KR101445355B1 KR101445355B1 (ko) 2014-09-29

Family

ID=38846562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097001423A KR101445355B1 (ko) 2006-06-29 2007-06-28 커스터마이징된 사용자 인터페이스의 동적 생성

Country Status (5)

Country Link
US (2) US7908551B2 (ko)
EP (1) EP2038741A2 (ko)
KR (1) KR101445355B1 (ko)
CN (1) CN101512483B (ko)
WO (1) WO2008003062A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160029998A (ko) * 2014-09-05 2016-03-16 주식회사 포워드벤처스 쇼핑 서비스 제공 장치, 방법, 및 컴퓨터 프로그램
KR20220033967A (ko) * 2020-09-10 2022-03-17 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 페이지 테마 결정 방법, 장치, 기기 및 저장 매체

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774378B2 (en) 2004-06-04 2010-08-10 Icentera Corporation System and method for providing intelligence centers
US8078290B2 (en) * 2005-12-13 2011-12-13 Panasonic Electric Works Co., Ltd. System and methods for controlling embedded devices using device style sheets
US8868533B2 (en) 2006-06-30 2014-10-21 International Business Machines Corporation Method and apparatus for intelligent capture of document object model events
US8949406B2 (en) * 2008-08-14 2015-02-03 International Business Machines Corporation Method and system for communication between a client system and a server system
US8583772B2 (en) 2008-08-14 2013-11-12 International Business Machines Corporation Dynamically configurable session agent
US8972881B2 (en) * 2006-09-04 2015-03-03 Sony Corporation Add-in for download, upload, and rewriting
US20080270473A1 (en) * 2007-04-30 2008-10-30 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Determining an influence on a person by web pages
US20080297521A1 (en) * 2007-05-31 2008-12-04 Liang-Yu Chi System and method for providing skins for a web page
US8042055B2 (en) 2007-08-31 2011-10-18 Tealeaf Technology, Inc. Replaying captured network interactions
US8533588B2 (en) * 2007-11-30 2013-09-10 Red Hat, Inc. Overriding images in user interfaces
US8285813B1 (en) * 2007-12-05 2012-10-09 Appcelerator, Inc. System and method for emulating different user agents on a server
KR20110003343A (ko) * 2008-03-21 2011-01-11 코닌클리케 필립스 일렉트로닉스 엔.브이. 클라이언트에 의해 생성된 정보를 디스플레이하기 위한 방법
US20110072370A1 (en) * 2008-05-20 2011-03-24 Mitchell April S User interface modifier
US8775926B2 (en) * 2008-05-30 2014-07-08 Red Hat, Inc. Stylesheet conversion engine
KR101547496B1 (ko) * 2008-07-24 2015-08-27 삼성전자주식회사 웹 페이지 재구성 방법 및 장치
US8418066B2 (en) * 2008-08-07 2013-04-09 International Business Machines Corporation Content personalization for web distributed content
CN101814021B (zh) * 2009-02-24 2014-08-06 易保网络技术(上海)有限公司 在远程设备上显示用户界面的方法和系统
US8930818B2 (en) * 2009-03-31 2015-01-06 International Business Machines Corporation Visualization of website analytics
US8914736B2 (en) * 2010-03-30 2014-12-16 International Business Machines Corporation On-page manipulation and real-time replacement of content
US9934320B2 (en) 2009-03-31 2018-04-03 International Business Machines Corporation Method and apparatus for using proxy objects on webpage overlays to provide alternative webpage actions
US8132109B2 (en) * 2009-05-15 2012-03-06 International Business Machines Corporation Webpage magnifier/formatter using CSS properties and cursor/mouse location
KR101632748B1 (ko) * 2009-09-24 2016-07-04 삼성전자주식회사 맞춤형 원격 사용자 인터페이스 페이지를 제공하기 위한 장치 및 방법
EP2325800A1 (en) * 2009-11-02 2011-05-25 Accenture Global Services Limited Web portal application customization method and system using profiles
US20110145736A1 (en) * 2009-12-14 2011-06-16 Sap Ag Systems and Methods for Designing a Universal User Interface
US8543675B1 (en) * 2009-12-17 2013-09-24 Amazon Technologies, Inc. Consistent link sharing
TW201222415A (en) 2010-11-29 2012-06-01 Ibm Method and system for consistent web application presentation
CN102622376A (zh) * 2011-01-28 2012-08-01 北京千橡网景科技发展有限公司 用于合并层叠样式表文件的方法和设备
CN102298523A (zh) * 2011-09-09 2011-12-28 北京华通伟业科技发展有限公司 界面管理系统及界面管理方法
US10120847B2 (en) * 2012-01-27 2018-11-06 Usablenet Inc. Methods for transforming requests for web content and devices thereof
US20130227426A1 (en) * 2012-02-24 2013-08-29 Sony Corporation Customized user web-page setting techniques
US20150234798A1 (en) * 2012-06-01 2015-08-20 Google Inc. System and method for changing a web ui application appearance based on state through css selector cascading
CN102881050B (zh) * 2012-09-19 2015-02-25 中国联合网络通信集团有限公司 票务处理方法及系统
US9635094B2 (en) 2012-10-15 2017-04-25 International Business Machines Corporation Capturing and replaying application sessions using resource files
US9536108B2 (en) 2012-10-23 2017-01-03 International Business Machines Corporation Method and apparatus for generating privacy profiles
US9535720B2 (en) 2012-11-13 2017-01-03 International Business Machines Corporation System for capturing and replaying screen gestures
US10474735B2 (en) 2012-11-19 2019-11-12 Acoustic, L.P. Dynamic zooming of content with overlays
CN102982164B (zh) * 2012-12-07 2016-08-03 北京奇虎科技有限公司 一种浏览器页面呈现方法和浏览器
CN103034710B (zh) * 2012-12-07 2016-08-24 北京奇虎科技有限公司 用于浏览器的页面呈现方法和装置
US10977425B1 (en) * 2013-03-13 2021-04-13 Sprint Communications Company L.P. Dynamic resource refresh
US20150007133A1 (en) * 2013-06-27 2015-01-01 Adobe Systems Incorporated Content Package Generation for Web Content
CN103399747B (zh) * 2013-08-02 2017-12-26 百度在线网络技术(北京)有限公司 导航页的提供方法、系统和导航服务器
US20150040000A1 (en) * 2013-08-02 2015-02-05 Moboom Ltd. Methods and systems for generating server-side media queries
WO2015116592A1 (en) 2014-01-28 2015-08-06 Moboom Ltd. Adaptive content management
US9189207B2 (en) * 2014-03-11 2015-11-17 Telefonaktiebolaget L M Ericsson (Publ) Methods and systems for dynamic runtime generation of customized applications
CN104007991B (zh) * 2014-06-06 2019-06-14 百度在线网络技术(北京)有限公司 应用程序界面布局调整方法和装置
US10963539B2 (en) 2014-09-10 2021-03-30 Mk Systems Usa Inc. Interactive web application editor
CN104579928B (zh) * 2014-12-31 2017-11-28 上海格尔软件股份有限公司 一种根据邮件发件人信息自动配置邮件在邮件列表中展现样式的系统及方法
US10423711B2 (en) * 2015-10-23 2019-09-24 Oracle International Corporation Generating style sheets during runtime
CN108073649B (zh) * 2016-11-15 2022-02-25 北京搜狗科技发展有限公司 一种信息处理方法和装置、一种用于信息处理的装置
US10614145B2 (en) * 2017-06-14 2020-04-07 International Business Machines Corporation Presenting content on a webpage in a desired format
CN110389759A (zh) * 2018-04-17 2019-10-29 北京搜狗科技发展有限公司 一种目标界面生成方法及装置
US11514121B2 (en) 2020-08-10 2022-11-29 International Business Machines Corporation Webpage customization
CN114428615B (zh) * 2022-01-26 2024-05-17 北京有竹居网络技术有限公司 Css编译方法、样式更新方法、装置、介质及设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6151702A (en) * 1994-09-30 2000-11-21 Computer Associates Think, Inc. Method and system for automated, interactive translation of a software program to a data model for input to an information repository
US7421278B2 (en) * 2000-03-13 2008-09-02 Intellions, Inc. Method and apparatus for time-aware and location-aware marketing
US7346842B1 (en) * 2000-11-02 2008-03-18 Citrix Systems, Inc. Methods and apparatus for incorporating a partial page on a client
US20020165881A1 (en) * 2001-03-15 2002-11-07 Imation Corp. Web page color accuracy using color-customized style sheets
JP2003223463A (ja) 2001-11-01 2003-08-08 Matsushita Electric Ind Co Ltd 情報提供サーバ装置及び情報提供システム
EP1327940A1 (en) * 2002-01-09 2003-07-16 Sony International (Europe) GmbH Server-side framework for personalised mobile services
US6941521B2 (en) 2002-03-29 2005-09-06 Intel Corporation Method for dynamically generating a user interface from XML-based documents
US20030216929A1 (en) * 2002-05-16 2003-11-20 International Business Machines Corporation Method, system and program product for presenting web content according to a determined learning style
US7200820B1 (en) * 2002-09-27 2007-04-03 Bellsouth Intellectual Property Corp. System and method for viewing search results
JP2004185541A (ja) * 2002-12-06 2004-07-02 Minolta Co Ltd デバイス管理装置
US7383498B1 (en) * 2002-12-27 2008-06-03 Sap Ag Editing styles for markup documents using parametrized styles sheets
US20060069790A1 (en) * 2004-09-30 2006-03-30 Surender Surana Content presentation adaptation
US20060212806A1 (en) * 2005-03-18 2006-09-21 Microsoft Corporation Application of presentation styles to items on a web page
US20070239726A1 (en) * 2006-03-29 2007-10-11 Mathew Girard Weiss Systems and methods of transforming data for web communities and web applications

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160029998A (ko) * 2014-09-05 2016-03-16 주식회사 포워드벤처스 쇼핑 서비스 제공 장치, 방법, 및 컴퓨터 프로그램
KR20220033967A (ko) * 2020-09-10 2022-03-17 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 페이지 테마 결정 방법, 장치, 기기 및 저장 매체

Also Published As

Publication number Publication date
EP2038741A2 (en) 2009-03-25
WO2008003062A2 (en) 2008-01-03
KR101445355B1 (ko) 2014-09-29
CN101512483B (zh) 2013-06-12
US20080005661A1 (en) 2008-01-03
CN101512483A (zh) 2009-08-19
US8555158B2 (en) 2013-10-08
US7908551B2 (en) 2011-03-15
WO2008003062A3 (en) 2008-03-27
US20110161803A1 (en) 2011-06-30

Similar Documents

Publication Publication Date Title
US7908551B2 (en) Dynamically generating customized user interfaces
JP6272933B2 (ja) 遠隔ブラウジングセッション管理
CN103782294B (zh) 远程浏览会话管理
US9330077B2 (en) Dynamic image generation for customizable user interfaces
JP4791452B2 (ja) ポートレットをクライアント側でプリフェッチし、キャッシングする方法、システム及びコンピュータ・プログラム
US8719421B2 (en) Cross domain interaction of a web application
US9646254B2 (en) Predicting next web pages
US10296558B1 (en) Remote generation of composite content pages
US20020078165A1 (en) System and method for prefetching portions of a web page based on learned preferences
US20020156803A1 (en) Method for extracting digests, reformatting, and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
CN107229633A (zh) 静态页面生成方法、网页访问方法及装置
EP1406183A2 (en) Method and system for refreshing browser pages
CA2413684A1 (en) Method for selectively reloading frames of a web-page
JP2012511198A (ja) 複数ビュー要素gui内で見られるほとんどのデータを最大化するためのビュー要素サイズの最適化
US20170031882A1 (en) Web Page Profiler
US20140344074A1 (en) Network content message placement management
JP5937207B2 (ja) 遠隔ブラウジングセッション管理
CN111079048A (zh) 一种页面加载方法及装置
US8112717B1 (en) Automatic formatting of display screen to reflect past correlative changes to data display windows
US20060064632A1 (en) Method and system to inverse graphs
AU2039001A (en) Method for extracting digests, reformatting and automatic monitoring of structured online documents based on visual programming of document tree navigation and transformation
WO2017168133A1 (en) Rendering a web page on a user device
CN115357316A (zh) 一种分享工程计价的方法、系统、装置及存储介质
Nadon et al. Next-Level Static Content Hosting
Luce AJAX in the Classroom

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190910

Year of fee payment: 6