KR102122104B1 - 웹 애플리케이션에서의 협업 통신 기법 - Google Patents

웹 애플리케이션에서의 협업 통신 기법 Download PDF

Info

Publication number
KR102122104B1
KR102122104B1 KR1020147020586A KR20147020586A KR102122104B1 KR 102122104 B1 KR102122104 B1 KR 102122104B1 KR 1020147020586 A KR1020147020586 A KR 1020147020586A KR 20147020586 A KR20147020586 A KR 20147020586A KR 102122104 B1 KR102122104 B1 KR 102122104B1
Authority
KR
South Korea
Prior art keywords
comment
document
image
window
reply
Prior art date
Application number
KR1020147020586A
Other languages
English (en)
Other versions
KR20140125361A (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 KR20140125361A publication Critical patent/KR20140125361A/ko
Application granted granted Critical
Publication of KR102122104B1 publication Critical patent/KR102122104B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9558Details of hyperlinks; Management of linked annotations
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • 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/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services

Landscapes

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

Abstract

네트워크 상에서 액세스 가능한 문서는 다수의 유저들에 의해 열릴 수도 있다. 유저는 그 문서에 액세스하기 위해 씬 클라이언트 애플리케이션을 사용할 수도 있는데, 그 문서의 이미지와 XML 데이터는 그 문서의 코멘트의 위치와 코멘트를 포함한다. 코멘트가 앵커된 문서에서 힌트 아이콘이 디스플레이된다. 힌트의 선택시, HTML 코멘트 창이 문서의 측면에 디스플레이되어, 그 문서에 현재 저장된 코멘트와 그 코멘트에 대한 답글을 노출시킬 수도 있다. 코멘트 창은 선택된 힌트와 관련된 코멘트로 스크롤될 수도 있다. 추가적으로, 선택된 코멘트와 관련된 문서에서의 엘리먼트 위에 하이라이팅이 제공될 수도 있다. 코멘트는 코멘트 창을 통해 추가될 수도 있고 네트워크 상의 문서에 저장될 수도 있다. 코멘트 및 코멘트 위치(location) 데이터는 다른 클라이언트로 전달될 수도 있고, 그 결과 씬 클라이언트 애플리케이션을 통한 협업 통신을 가능하게 하게 된다.

Description

웹 애플리케이션에서의 협업 통신 기법{COLLABORATIVE COMMUNICATION IN A WEB APPLICATION}
전자 문서 개발에서 협업 리뷰 프로세스(collaborative review process)가 사용되는 것이 일반적이다. 통상적으로 이런 프로세스에서, 하나 이상의 유저는 문서에 액세스하고, 컨텐츠를 평가하고, 코멘트를 통해 피드백 및 변경사항(changes)을 전달한다. 코멘트는 유저가 문서의 컨텐츠를 논의하고 주석을 다는 것을 가능하게 한다. 웹브라우저와 같은 씬 클라이언트(thin client)를 통해 서버에 저장된 문서를 보고 편집하기 위해, 유저가 클라이언트 소프트웨어 애플리케이션에 대한 온라인 지침서를 사용하는 경향이 증가하고 있다.
이러한 애플리케이션은 리치(rich) 클라이언트 애플리케이션과 같은 대부분의 편집 피쳐를 제공한다. 현재의 씬 클라이언트 애플리케이션은 유저가 문서에 포함된 코멘트를 보는 것은 허용하지만, 유저가 코멘트와 상호작용하는 것은 허용하지 않는다. 몇몇 현재의 씬 클라이언트 애플리케이션은 유저가 코멘트를 추가하는 것은 허용할 수도 있지만, 현재의 애플리케이션은 유저가 코멘트를 추가하고 문서에서 코멘트가 앵커된(anchored) 위치를 보는 것은 허용하지 않는다.
이들 및 다른 고려 사항에 대해 본 발명이 이루어졌다.
개요
본 발명의 실시형태는 씬 클라이언트 애플리케이션을 통해 코멘트를 다는(commenting) 기능성을 제공함으로써 상기 및 다른 문제점을 해결한다. 실시형태에 따르면, 유저는 웹브라우저 애플리케이션과 같은 씬 클라이언트 애플리케이션을 통해 서버 상에 저장된 문서를 요청할 수도 있다. 열람(viewing) 및 편집을 위해 서버 기반의 문서의 이미지가 클라이언트 디바이스로 전송될 수도 있다. 문서에 이미 남겨진 코멘트뿐만 아니라, 문서에서의 그 코멘트의 포지션을 포함하는 확장성 마크업 랭귀지(extensible markup language; XML) 파일이 서버로부터 전송될 수도 있다. 코멘트의 포지션을 하이라이팅하는 하이퍼텍스트 마크업 랭귀지(hypertext markup language; HTML) 오버레이가 문서 이미지 상에 디스플레이될 수도 있다. 실시형태는 유저가 문서 이미지의 측면(side)에 제공된 HTML 코멘트 패널을 통해 씬 클라이언트 애플리케이션을 통해 서버 기반의 문서에 코멘트를 추가하는 것을 가능하게 한다. 코멘트 또는 코멘트에 대한 답글의 입력시, 코멘트는 서버로 전달되고 그 문서에 저장된다. 코멘트 및 코멘트 위치(location) 데이터는 다른 클라이언트로 전달될 수도 있고, 그 결과 씬 클라이언트 애플리케이션을 통한 협업 통신을 가능하게 하게 된다.
하나 이상의 예들의 세부사항들은 첨부되는 도면들 및 하기의 설명들에서 제시된다. 다른 피쳐 및 이점은 하기의 상세한 설명의 판독 및 관련된 도면의 검토로부터 명확해질 것이다. 하기의 상세한 설명은 단지 예시적인 것이며 청구된 바와 같은 본 발명을 제한하는 것은 아님이 이해되어야 한다.
이러한 개요는 하기 상세한 설명에서 더 설명되는 개념의 선택을 간소화된 형태로 소개하기 위해 제공된다. 이러한 개요는 청구된 주제의 주요한 피쳐 또는 본질적 피쳐를 식별하도록 의도된 것이 아니며, 또한 청구된 주제의 범위를 결정하는 데 있어서의 보조로서도 의도된 것이 아니다.
본 개시에 통합되며 본 개시의 일부를 구성하는 첨부된 도면은 본 발명의 다양한 실시형태를 예시한다. 도면에서,
도 1은 실시형태에 따른 웹 애플리케이션에서의 협업 통신을 제공하기 위한 시스템 아키텍쳐의 예시이다;
도 2는 실시형태에 따른 문서 이미지의 측면에 디스플레이되는 코멘트 창(comments pane) 및 브라우저 애플리케이션 윈도우에서 디스플레이되는 문서 이미지를 갖는 예시적인 스크린샷의 예시이다;
도 3은 실시형태에 따른 코멘트 창에서 디스플레이되는 코멘트를 선택하는 방법의 흐름도이다;
도 4a는 코멘트가 선택되지 않은 경우의 문서 이미지와 코멘트 창의 스크린샷의 예시이다;
도 4b는 코멘트가 코멘트 창에서 선택된 이후의 도 4a의 문서 이미지와 코멘트 창의 예시이다;
도 5a 및 도 5b는 실시형태에 따른 씬 클라이언트를 통해 코멘트를 추가하는 방법의 흐름도이다;
도 6a는 선택된 텍스트와 관련된 코멘트의 삽입을 위해 단일 라인의 텍스트가 선택되는 문서 이미지의 예시적인 스크린샷의 예시이다;
도 6b는, "새로운 코멘트" 커맨드의 선택의 표시(indicaiton)가, 선택된 텍스트와 관련되어 수신된 이후의 도 6a의 동일한 문서 이미지의 예시이다
도 7은 실시형태에 따른 씬 클라이언트를 통해 코멘트에 답글을 다는(replying) 방법의 흐름도이다;
도 8은 문서 이미지와 코멘트, 코멘트에 대한 답글, 및 코멘트 창에서 디스플레이되는 코멘트 편집 박스의 예시적인 스크린샷의 예시이다;
도 9a 및 도 9b는 UI 엘리먼트에 코멘트를 다는 것을 도시한다;
도 10은 힌트의 선택을 통해 코멘트를 선택하는 방법의 흐름도이다;
도 11은 코멘트와 관련된 힌트의 선택을 통해 선택된 코멘트를 나타내는 예시적인 스크린샷의 예시이다;
도 12는 컴퓨팅 디바이스의 예시적인 물리적 컴포넌트를 예시하는 단순화된 블록도로서, 그 컴퓨팅 디바이스를 통해 본 발명의 실시형태가 실시될 수도 있다;
도 13a 및 도 13b는 모바일 컴퓨팅 디바이스의 단순화된 블록도로서, 그 모바일 컴퓨팅 디바이스를 통해 본 발명의 실시형태가 실시될 수도 있다; 그리고
도 14는 분산 컴퓨팅 디스템의 단순화된 블록도로서, 그 분산 컴퓨팅 시스템을 통해 본 발명의 실시형태가 실시될 수도 있다.
상세한 설명
위에서 간략히 설명된 바와 같이, 본 발명의 실시형태는 씬 클라이언트 애플리케이션을 통해 코멘트를 다는 기능성을 제공하는 것에 대한 것이다. 하기의 설명은 첨부의 도면을 참조한다. 가능하다면 언제든지, 동일한 또는 유사한 엘리먼트를 가리키기 위해 도면에서 그리고 하기의 설명에서 동일한 도면부호가 사용될 수도 있다. 본 발명의 실시형태가 설명되고, 수정되고, 채택되지만, 다른 구현예가 가능할 수 있다. 예를 들면, 도면에 예시된 엘리먼트에 대한 대체, 추가, 또는 수정이 이루어질 수도 있고, 본원에서 설명된 방법은 개시된 방법에 대해 단계를 대체하거나, 재배치하거나, 또는 추가하는 것에 의해 수정될 수도 있다. 따라서, 하기의 상세한 설명은 본 발명을 제한하지 않는다. 대신, 본 발명의 적절한 범위는 첨부된 특허청구범위에 의해 정의된다.
이제, 여러 도면에 걸쳐 유사한 도면부호가 유사한 엘리먼트를 나타내는 도면을 참조하여, 본 발명의 양태 및 예시적인 동작 환경이 설명될 것이다. 본 발명이 퍼스널 컴퓨터 상의 오퍼레이팅 시스템 상에서 동작하는 애플리케이션 프로그램과 연계하여 실행하는 프로그램 모듈의 일반적 상황에서 설명될 것이지만, 당업자라면, 본 발명이 다른 프로그램 모듈과 결합하여 또한 구현될 수도 있음을 알 수 있을 것이다.
일반적으로, 프로그램 모듈은 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 특정 태스크를 수행하거나 또는 특정 추상적 데이터 타입을 구현하는 다른 타입의 구조를 포함한다. 또한, 당업자라면, 본 발명이, 핸드헬드 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반의 또는 프로그램가능한 컨슈머 전자장치, 미니컴퓨터, 메인 프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성으로 실시될 수도 있음을 알 수 있을 것이다. 본 발명은, 통신 네트워크를 통해 연결된 원격 프로세싱 디바이스에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 또한 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 디바이스 둘 다에 위치될 수도 있다.
도 1은 웹 애플리케이션에서 협업 통신을 제공하기 위한 시스템 아키텍쳐를 예시하는 단순화된 블록도이다. 시스템(100)은, 인트라넷, 엑스트라넷, 및 인터넷과 같은 네트워크(120)를 통해 서버 디바이스(110)(또는 복수의 서버 디바이스)에 통신적으로 접속된 하나 이상의 클라이언트 디바이스(125A-N)(총체적으로 또는 개별적으로 클라이언트 디바이스(125)로 칭해짐)를 포함한다. 하나 이상의 클라이언트 디바이스(125)는, 유저(130A-N)(총체적으로 또는 독립적으로 유저(130)로 칭해짐)가 문서(105)에 액세스하는 것뿐만 아니라 파일을 공유하고 다른 유저와 온라인에서 협업하는 것을 가능하게 하도록 동작가능한 씬 클라이언트 애플리케이션(135), 예를 들면, 웹브라우저 애플리케이션을 포함할 수도 있다. 하나 이상의 클라이언트 디바이스(125)는 도 12 내지 14를 참조로 하기에 설명되는 여러가지 적절한 컴퓨팅 디바이스 중 하나일 수도 있다. 서버(110)는 통상적으로 네트워크화된 환경에서 하나 이상의 소프트웨어 프로그램을 실행하는 다수의 타입의 컴퓨팅 디바이스 중 임의의 것일 수도 있지만, 서버는, 하나 이상의 컴퓨팅 디바이스 상에서 실행되며 네트워크 상에서 서버로서 보이는 가상 서버(소프트웨어 프로그램)로서 또한 구현될 수도 있다. 어떤 환경에서, 서버(110)는 미국 워싱턴주 레드몬드의 마이크로소프트®에 의한 SharePoint® 서버 소프트웨어와 같은 협업 소프트웨어(112)를 포함할 수도 있다.
하나 이상의 리치 웹 애플리케이션(115)은 하나 또는 다수의 서버(110) 상에서 실행될 수도 있고 웹 프론트 엔드 컴포넌트(web front-end component)로부터의 요청을 관리하고,렌디션(renditions)을 캐싱하고, 씬 클라이언트 애플리케이션(135)에 의한 소비를 위해 문서를 저장, 계산, 및 렌더링할 수도 있다. 문서(110)는, 예를 들면, 네트워크(120)에 접속된 씬 클라이언트 애플리케이션(135)을 통해, 다양한 위치의 다양한 유저(130)에 의해 액세스될 수도 있는 데이터 저장부(108)에 저장될 수도 있다. 씬 클라이언트 애플리케이션(135)은 애플리케이션, 예를 들면, 워드프로세싱 애플리케이션(예를 들면, 미국 워싱턴주 레드몬드의 마이크로소프트®에 의한 워드®), 스프레드시트 애플리케이션(예를 들면, 미국 워싱턴주 레드몬드의 마이크로소프트®에 의한 엑셀®), 프리젠테이션 애플리케이션(예를 들면, 미국 워싱턴주 레드몬드의 마이크로소프트®에 의한 파워포인트®), 및 플래너 및 필기(note taking) 애플리케이션(예를 들면, 미국 워싱턴주 레드몬드의 마이크로소프트®에 의한 원노트®)의 웹 기반의 버전일 수도 있다. 하나 이상의 웹 애플리케이션(115)은, 다양한 플랫폼 상에서 다양한 네트워크(120)를 통해 정보를 교환하기 위해 표준 전송, 인코딩, 및 프로토콜을 사용할 수도 있고, 소프트웨어 통신의 시맨틱스 및 신택스를 설명하는 표준의 세트를 활용할 수도 있다. 웹 애플리케이션(115)은, 하이퍼텍스트 마크업 랭귀지(HTML), 자바스크립트, 및 이미지와 같은 네이티브 브라우저 오브젝트를 사용하여 문서(105)의 표현(140)을 제공함으로써 유저(130)에게 브라우저 기반의 열람 및 편집 경험을 제공한다.
위에서 간략히 설명된 바와 같이, 전자 문서 개발에서 협업 리뷰 프로세스가 사용되는 것이 일반적이다. 협업 리뷰 프로세스에서 종종, 유저(130)는 문서(105)의 특정 부분에 코멘트를 남긴다. 본 발명의 실시형태는, 특정 클라이언트 소프트웨어에 대한 필요 없이, 협업자(collaborators)(유저(130))가 씬 클라이언트(135) 로부터 코멘트를 달고, 답글을 달고, 코멘트를 관리하는 것을 가능하게 한다. 웹 기반의 문서(105)가 브라우저 애플리케이션(135)과 같은 씬 클라이언트(135)를 통해 액세스되면, 본원에서 문서 이미지(140)로서 칭해지는 문서의 표현이 제공될 수도 있다. 문서 이미지(140)는 문서(150)의 고충실 버전을 제공할 수도 있다. 일 실시형태에 따르면, 문서 이미지(140)는 비트맵 이미지일 수도 있다. 문서와 관련된 확장성 마크업 랭귀지(XML) 데이터(145)는, 클라이언트로부터의 요청에 응답하여 제공될 수도 있는데, XML 데이터는 문서(105)의 구조, 문서에 이미 존재하는 코멘트, 및 문서에서의 코멘트의 포지션과 같은 데이터를 포함한다.
이제, 도 2를 참조하면, 브라우저 애플리케이션 윈도우(202)에 디스플레이되는 예시적인 문서 이미지(140)가 도시된다. 예시된 예시적인 문서 이미지(140)가 워드 프로세싱 문서(105)의 이미지이지만, 그 문서(105)는, 워드프로세싱 문서, 스프레드시트 문서, 슬라이드쇼 프리젠테이션 문서, 플래닝 및 필기(note-taking) 문서 등과 같은 그러나 이들에 제한되지 않는 다양한 타입의 문서들 중 하나일 수도 있다. 문서(105)는 그 문서의 선택된 부분과 관련된 하나 이상의 코멘트를 포함할 수도 있다. HTML 아이콘과 같은 선택가능한 제어는, 유저(130)에게 코멘트가 앵커될 수도 있는 곳을 통지하기 위해 문서 이미지(140) 위에 오버레이로서 제공될 수도 있다. 이 중첩된 선택가능한 HTML 아이콘은 본원에서 "힌트"(225)로서 칭해질 것이다. 예를 들면, 도 2에 예시된 바와 같이, 힌트(225)는, 코멘트가 앵커된 곳인 문서 이미지(140)의 측면에 디스플레이된 선택가능한 아이콘일 수도 있다. 일 실시형태에 따르면, 힌트(225)는 문서(150)에서의 단일의 패러그래프의 코멘트 모두를 나타낼 수도 있다. 표 또는 사행의 칼럼(snaking columns)을 갖는 것과 같이 한 문서가 다수의 칼럼의 패러그래프를 포함하면, 단일의 힌트(225)는 모든 칼럼의 코멘트를 나타낼 수도 있다.
힌트(225)의 선택시, HTML 오브젝트와 같은 오브젝트는, 코멘트와 관련된 문서의 선택된 부분 위에 하이라이팅으로서 제공되는 문서 이미지(140) 위의 오버레이로서 제공될 수도 있는데, 본원에서, "앵커"(230)로서 칭한다. 앵커(230) 및 힌트(225)의 위치는 서버(110)로부터 전송된 XML 데이터(145)에서 제공될 수도 있다. 추가적으로 힌트(225)의 선택시, 코멘트 창(205)이 이미 열려져 있지 않으면, 문서 이미지(140)의 측면에 코멘트 창(205)이 디스플레이될 수도 있다. 실시형태에 따르면, 코멘트 창(205)은 HTML 창일 수도 있다. 코멘트 창(205)은 선택된 코멘트(210)뿐만 아니라, 코멘트에 대한 다른 코멘트 및 답글(220)을 포함할 수도 있다. 실시형태에 따르면, 힌트(225)의 선택시, 코멘트 창(205)은 선택된 힌트와 관련된 코멘트(210)로 스크롤링될 수도 있다. 추가적으로, 선택된 코멘트(210)는 하이라이팅될 수도 있다.
도 3은 코멘트 창(205)에서 디스플레이되는 코멘트(210)를 선택하는 방법(300)의 흐름도이다. 도 4a 및 도 4b에 대한 참조가 이루어질 수도 있다. 도 4a는 코멘트(210)가 선택되지 않은 경우에서의 문서 이미지(140)와 코멘트 창(205)의 스크린샷의 예시이다. 도 4b는 코멘트(205)가 코멘트 창에서 선택된 이후의 동일한 문서 이미지(140) 및 코멘트 창(205)을 도시한다. 이제 도 3을 참조하면, 도시된 실시형태에서, 방법(300)은 동작(305)에서 시작한다. 코멘트 창(205)에서 코멘트(210) 선택의 표시를 수신하면(310), 코멘트와 관련된 코멘트 상태는 "선택됨"으로 변경될 수도 있다(315). 알 수 있는 바와 같이, 코멘트(210)는 다양한 선택 방법을 통해 선택될 수도 있는데, 예를 들면, 마우스를 통한 선택, 터치스크린 인터페이스 상의 터치를 통한 선택, 또는 키보드 커맨드를 통한 선택일 수도 있지만, 이들에 제한되는 것은 아니다. 일 실시형태에 따르면, 현재 다른 코멘트가 선택되면, 다른 코멘트의 선택시, 현재 선택된 코멘트는 선택해제될 것이다.
선택된 코멘트(210)와 관련된 엘리먼트의 임의의 부분이 가시적인지를 결정하는 결정이 이루어질 수도 있다(320). 예를 들면, 도 4a를 참조하면, 문서 이미지(140)의 측면에 힌트(225)가 디스플레이되지 않는다. 따라서, 코멘트 창(205)에서 코멘트(210, 220)와 관련된 텍스트는, 문서 이미지(140)의 현재 디스플레이되는 포지션에서 보이지 않는다. 선택된 코멘트(210)와 관련된 엘리먼트가 보이지 않으면, 그 문서 이미지(140)는 그 엘리먼트가 디스플레이되도록 스크롤될 수도 있다(325). 도 4b에 예시된 바와 같이, 선택된 코멘트(410)와 관련된 힌트(225) 및 텍스트가 뷰 내에 있도록 문서 이미지(140)가 스크롤되었다. 선택된 코멘트(210)와 관련된 엘리먼트가 뷰 속으로 스크롤된 후(325) 또는 엘리먼트가 이미 보이면, 하이라이팅으로서 디스플레이된 앵커(230)는 관련 엘리먼트 위에 HTML 오버레이로서 제공될 수도 있다(330). 추가적으로, 일 실시형태에 따르면, 코멘트 창(205)에서의 선택된 코멘트(410)는 하이라이팅될 수도 있다. 그 방법은 동작(395)에서 종료한다.
본 발명의 실시형태는, 웹브라우저 애플리케이션과 같은 씬 클라이언트(135)를 통해 웹기반 문서(105)에 코멘트(210)를 추가하는 것을 가능하게 한다. 도 5a 및 도 5b는 씬 클라이언트(135)를 통해 코멘트를 추가하는 방법(500)의 흐름도이다. 도 6a 및 도 6b에 대해 참조가 이루어질 수도 있다. 도 6a는 선택된 텍스트와 관련된 코멘트의 삽입을 위해 단일 라인의 텍스트가 선택되는 문서 이미지(140)의 예시적인 스크린샷의 예시이다. 도 6b는, 도 6a에서, "새로운 코멘트" 커맨드의 선택의 표시(indicaiton)가, 선택된 텍스트와 관련되어 수신된 이후의 동일한 문서 이미지(140)의 예시이다. 이제 도 5a를 참조하면, 도시된 실시형태에서, 방법(500)은 동작(505)에서 시작한다. "새로운 코멘트" 커맨드(625)의 선택의 표시의 수신시(510), 웹기반 문서(105)의 문서 이미지(140)의 엘리먼트(예를 들면, 텍스트, 그래프, 셀, 이미지 등)가 선택되는지 아닌지를 결정하는 결정이 이루어진다(515). 엘리먼트가 선택되지 않으면, 문서의 엘리먼트를 선택하도록 유저(130)에게 요청하는 메시지가 제공될 수도 있다(520). 문서 이미지(140)의 엘리먼트가 선택된 것이 결정되면, 그 선택(640)이 패러그래프보다 작은지 또는 큰지를 결정하는 결정이 이루어질 수도 있다(525). 선택(640)이 (도 6a에서 도시된 바와 같은) 패러그래프보다 작으면, (도 6b에 도시된 바와 같이) 그 선택은 전체 패러그래프로 확장될 수도 있다(530). 선택(640)이 패러그래프보다 크면(535), 그 선택은 선택에 의해 터치된 모든 패러그래프로 확장될 수도 있다(540). 알 수 있는 바와 같이, 동작(525-540)은 소정 타입의 문서(105), 예를 들면, 워드 프로세싱 문서 또는 패러그래프의 데이터를 포함하는 다른 타입의 문서로 적용될 수도 있다. 선택(640)의 확장시(530, 540), (도 6b에 도시된 바와 같이) 코멘트 편집 박스(650)가 제공될 수도 있고 코멘트 편집 박스에 포커스가 맞춰질 수도 있다(545). 도 6b에 또한 예시된 바와 같이, 코멘트 편집 박스(650) 아래의 코멘트(210)는 코멘트 편집 박스에 대한 여유공간(room)을 만들기 위해 코멘트 창(205)에서 아래로 옮겨질 수도 있다.
방법(500)은 동작(550)으로 진행하는데, 여기서 앵커(230) 및 힌트(225)가 문서 이미지(140) 상에 디스플레이된다. 위에서 설명된 바와 같이, 앵커(230) 및 힌트(225)는 문서 이미지(140) 상에 HTML 오버레이로서 디스플레이될 수도 있다. 앵커(230) 및 힌트(225)의 포지션은 서버(110)로부터 제공된 XML 파일(145)에서 전달될 수도 있다. 코멘트 편집 박스(650)가 제공되고 그 코멘트 편집 박스에 초점이 맞춰지면, "새로운 코멘트" 커맨드(625)뿐만 아니라 다른 코멘트(210) 및 힌트(225)를 선택하는 능력이 불능으로 될 수도 있다(555).
방법(500)은 도 5b로 계속된다. 타이핑, 예를 들면, 유저(130)가 코멘트 편집 박스에 코멘트(650)를 추가하는 표시의 수신시(560), 코멘트(210)가 입력완료되었는지의(committed) 여부를 검증하는 결정이 이루어질 수도 있다. 코멘트(210)는 다양한 방법들, 예를 들면, 코멘트가 저장되는 경우 또는 입력된 코멘트로부터 떨어져 포커스가 선택되는 경우를 통해 입력완료될 수도 있다. 코멘트(210)가 입력완료되지 않았음이 결정되면, 그리고 취소 커맨드의 표시가 수신되지 않았다면(570), 방법(500)은 동작(560)으로 리턴될 수도 있다. 취소 커맨드가 수신되면(570), 방법(500)은 시작 동작(505)으로 리턴할 수도 있다. 동작(565)에서 코멘트(210)가 입력완료되었음이 결정되면, 코멘트는 서버(110) 상의 문서(105)뿐만 아니라, 다른 메타데이터에 추가될 수도 있는데, 상기 다른 메타데이터는 유저 데이터, 앵커 포지션, 및 타임스탬프를 포함할 수도 있지만, 이들에 제한되지는 않는다. 동작(580)에서, 코멘트(210)는 선택된 코멘트(410)로서 렌더링될 수도 있다.
일 실시형태에 따르면, 코멘트(210) 추가 표시의 수신시, 문서(105)가 코멘트를 허용하는 상태에 있는지를, 예를 들면, 문서(105)가 패스워드 보호되어 있는지를 결정하기 위한 요청이 서버(110)로 전송될 수도 있다. 그 문서(105)가 코멘트를 허용하는 상태에 있지 않으면, 에러 메시지가 유저(130)에게 제공될 수도 있다. 대안적으로, 문서(105)가 커밍(coming) 상태에 있으면, 코멘트가 파일에 기록되는 것을 허용하기 위한 그리고 문서(105)를 요청하는 유저(130)가 동시에 그 문서에 대한 공동 저작을 허용하기 위한 블록 또는 협업 블록이 서버(110) 상에서 취해질 수도 있다. 그 방법(500)은 동작(395)에서 종료한다.
본 발명의 실시형태는 코멘트에 대한 답글을 다는 것을 가능하게 한다. 도 7은 씬 클라이언트(135)를 통해 코멘트에 답글을 다는 방법(700)의 흐름도를 예시한다. 문서 이미지(140)와 코멘트(210), 코멘트에 대한 답글(220), 및 코멘트 창(205)에서 디스플레이되는 코멘트 편집 박스(650)의 예시적인 스크린샷의 예시인 도 8을 참조할 것이다. 이제 도 7을 참조하면, 방법(700)은 동작 705에서 시작한다. 710에서, 코멘트(210)에 답글을 달기 위한 선택의 표시가 수신될 수도 있다. 실시형태에 따르면, 코멘트(210)에 달글을 달기 위한 선택의 표시는 선택된 코멘트(410)에 대한 "답글" 커맨드(450)(도 4b에서 예시됨) 또는 답글(220)의 선택일 수도 있거나, 코멘트(210) 또는 답글(220)이 선택되는 경우 "새로운 코멘트" 커맨드(625)의 선택일 수도 있거나, 또는 키보드 커맨드의 선택을 통할 수도 있다. 코멘트(210)에 답글을 달기 위한 선택의 표시 또는 답글(220)의 수신시(710), 코멘트 편집 박스(650)는 (도 8에 예시된) 부모 코멘트(210)에 대한 마지막 답글(220) 아래에 디스플레이될 수도 있다(715). 코멘트 편집 박스(650)가 디스플레이되면, "새로운 코멘트" 커맨드(625)와 같은 커맨드 및 코멘트(210) 및 힌트(220)를 선택하는 능력이 불능으로 될 수도 있다(720).
동작(725)에서, 답글(22)의 타이핑의 표시가 수신될 수도 있다. 답글이 입력완료되지 않았고(730) 그리고 답글이 취소되지 않았다면(735), 방법(700)은 동작 725로 리턴할 수도 있다. 답글이 입력완료되지 않았고(730) 그리고 답글이 취소되었다는(735) 표시가 수신되면, 방법(700)은 시작 동작(705)으로 리턴할 수도 있다. 대안적으로, 결정 동작(730)에서 답글이 입력완료되었다는 것이 결정되면, 답글(220)은 서버(110) 상의 문서(105)뿐만 아니라, 유저 데이터, 부모 코멘트(210) 및 타임스탬프를 포함할 수도 있지만 이들에 제한되지 않는 다른 메타데이터에 추가될 수도 있다. 그 다음, 답글(220)은 코멘트 창(205)에서 선택된 답글로서 렌더링될 수도 있다(745). 일 실시형태에 따르면, 마지막으로 입력완료된 답글(220)은 코멘트와 관련된 다른 답글 아래에 디스플레이될 수도 있다. 그 방법(700)은 동작(795)에서 종료한다.
본 발명의 실시형태는 위에서 설명된 커맨드에 더해 다양한 인터페이스(UI) 제어를 제공한다. 예를 들면, 그리고 도 9a를 이제 참조하면, 코멘트(210) 또는 답글(220)이 선택되는 경우, 삭제 커맨드(905), 답글 커맨드(910), 및 완료 커맨드(915)가 코멘트 창(205)에 제공될 수도 있다. 일 실시형태에 따르면 그리고 예시된 바와 같이, 삭제 커맨드(905), 답글 커맨드(910), 및 완료 커맨드(915)는 선택된 코멘트(410) 또는 답글(220) 아래에 디스플레이될 수도 있다. 삭제 커맨드(905)의 선택은 선택된 코멘트(410) 또는 답글(220)을 삭제할 수도 있다. 선택된 코멘트(410)가 자식 코멘트(children)를 가지면, 즉, 그 선택된 코멘트와 관련된 답글(220)이 존재하고, 그리고 삭제 커맨드(905)의 선택에 의해 코멘트가 삭제되면, 그 코멘트와 관련된 자식 코멘트, 또는 답글도 또한 삭제될 수도 있다. 따라서, 삭제된 코멘트와 관련된 앵커(230) 및 힌트(225)와 자식 코멘트와 관련된 앵커 및 힌트도 또한 삭제될 수도 있다. 일 실시형태에 따르면, 코멘트와 그 답글이 삭제될 것이라는 것을 유저에게 경고하기 위해 경고 다이얼로그가 제공될 수도 있다.
응답 커맨드(910)는 코멘트(210) 또는 답글(220)에 응답하는 데 활용될 수도 있다. 일 실시형태에 따라 답글 커맨드(910)의 선택을 통해 코멘트에 답글을 다는 방법의 설명을 위해 다시 도 7과 방법(700)을 참조할 수도 있다. 완료 커맨드(915)의 선택은 선택된 코멘트(410)의 상태를 완료된 것으로 변경할 수도 있다. 예를 들면, 문서(105)의 단어 스펠링을 수정할 것을 한 코멘트가 제안하면, 유저(130)는 그 단어의 스펠링을 수정할 때, 그/그녀는 그 코멘트가 완료된 것으로 마킹할 수도 있다. 선택된 코멘트(410)가 자식 코멘트를 가지면, 또는 선택된 코멘트와 관련된 답글(220)을 가지면, 그리고 선택된 코멘트가 완료된 것으로 마킹되면, 도 9b에 예시된 바와 같이 그 코멘트와 관련된 답글도 또한 완료된 것으로 마킹될 수도 있다. 일 실시형태에 따르면, 또한 도 9b에 예시된 바와 같이, 완료된 것으로 선택된 코멘트(210) 또는 답글(220)은, 그것을 완료된 것으로 선택되지 않은 다른 코멘트 및 답글과 구분하기 위해, 희미하게 되거나(grayed out) 또는 종래 기술에서 공지된 다른 방식으로 수정될 수도 있다. 완료 커맨드(915)는 코멘트 또는 답글의 상태를 미완료로 변경하기 위해 재선택될 수도 있다.
도 3, 도 4a, 및 도 4b의 예시 및 논의는 코멘트 창(205)에서의 코멘트의 선택을 통해 코멘트(210)를 선택하는 방법을 설명한다. 다른 실시형태에 따르면, 그리고 도 10 및 도 11에 관해 설명된 바와 같이, 코멘트와 관련된 선택가능한 힌트 아이콘(225)의 선택을 통해 코멘트(210)가 선택될 수도 있다. 이제 도 10을 참조하면, 힌트(225)의 선택을 통해 코멘트(210)를 선택하는 방법(1000)은 동작 1005에서 시작한다. 유저(130)는 힌트(225)를 선택할 수도 있고(1010), 예를 들면, 유저는 도 11에 예시된 바와 같이 마우스를 통해 힌트를 클릭할 수도 있다. 코멘트 창(205)이 현재 디스플레이되고 있지 않다면(1015), 동작 1020에서, 문서 이미지(140)의 한 측면에 코멘트 창이 열려서 디스플레이될 수도 있다. 실시형태에 따르면, 코멘트 창(205)은 HTML 창일 수도 있다. 코멘트 창(205)이 열리면 또는 코멘트 창이 이미 디스플레이되고 있다면, 코멘트 창은 선택된 힌트(225)와 관련된 제 1의 코멘트(210)로 스크롤될 수도 있고, 코멘트가 선택될 수도 있다(1025). 따라서, 선택된 코멘트(410)는 하이라이팅될 수도 있고, 선택된 코멘트와 관련된 문서(105)의 엘리먼트(들) 위에 앵커(230)가 HTML 오버레이로서 디스플레이될 수도 있다. 그 방법은 동작(1095)에서 종료한다.
본원에서 설명된 실시형태 및 기능성은, 유선 및 무선 컴퓨팅 시스템, 모바일 컴퓨팅 시스템(예를 들면, 모바일 전화기, 태블릿 또는 슬레이트 타입의 컴퓨터, 랩탑 컴퓨터 등)을 포함하는 다수의 컴퓨팅 시스템을 통해 동작할 수도 있다. 또한, 본원에서 설명된 실시형태 및 기능성은 분산 시스템을 통해 동작할 수도 있는데, 분산 시스템에서, 애플리케이션 기능성, 메모리, 데이터 저장과 취출 및 다양한 프로세싱 기능은 분산 컴퓨팅 네트워크, 예컨대 인터넷 또는 인트라넷을 통해 서로 원격으로 동작할 수도 있다. 다양한 타입의 정보와 유저 인터페이스가 온보드 컴퓨팅 디바이스 디스플레이를 통해 또는 하나 이상의 컴퓨팅 디바이스와 관련된 원격 디스플레이 유닛을 통해 디스플레이될 수도 있다. 예를 들면, 다양한 타입의 정보와 유저 인터페이스는, 다양한 타입의 정보와 유저 인터페이스가 투사되는 벽 표면 상에서 디스플레이되어 상호작용될 수도 있다. 본 발명의 실시형태를 실시할 수도 있는 다수의 컴퓨팅 시스템과의 상호작용은, 키스트로크 입력, 터치스크린 입력, 음성 또는 다른 오디오 입력, 컴퓨팅 디바이스의 기능성을 제어하기 위한 유저 제스쳐를 캡쳐하고 해석하기 위한 검출(예를 들면, 카메라) 기능성을, 관련된 컴퓨팅 디바이스가 구비한 경우의 제스쳐 입력 등을 포함한다. 도 12 내지 도 14와 관련 설명은, 본 발명의 실시형태가 실시될 수도 있는 다양한 동작 환경의 논의를 제공한다. 그러나, 도 12 내지 도 14에 관해 예시되고 논의된 디바이스와 시스템은 예와 예시의 목적을 위한 것으로, 본원에서 설명된 본 발명의 실시형태를 실시하는 데 활용될 수도 있는 방대한 수의 컴퓨팅 디바이스 구성을 제한하는 것은 아니다.
도 12는, 본 발명을 실시할 수도 있는 컴퓨팅 디바이스(1200), 예컨대 클라이언트 디바이스(125) 및 서버(110)의 예시적인 물리적 컴포넌트를 예시하는 블록도이다. 기본 구성에서, 컴퓨팅 디바이스(1200)는 적어도 하나의 프로세싱 유닛(1202)과 시스템 메모리(1204)를 포함할 수도 있다. 컴퓨팅 디바이스의 타입과 구성에 따라, 시스템 메모리(1204)는 휘발성(예를 들면, 랜덤 액세스 메모리(RAM)), 불휘발성(예를 들면, 판독 전용 메모리(ROM)), 플래시 메모리, 또는 임의의 조합을 포함할 수도 있지만, 이들에 제한되는 것은 아니다. 시스템 메모리(1204)는 오퍼레이팅 시스템(1205), 하나 이상의 프로그래밍 모듈(1206)을 포함할 수도 있고, 하나 이상의 애플리케이션(1250)을 포함할 수도 있다. 예를 들면, 하나 이상의 애플리케이션(1250)은 협업 소프트웨어(112), 웹 애플리케이션(115), 웹브라우저 애플리케이션(135), 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 이메일 애플리케이션, 슬라이드쇼 프리젠테이션 애플리케이션, 웹 디자인 애플리케이션, 드로잉 애플리케이션 등을 포함할 수도 있지만, 이들에 제한되는 것은 아니다. 오퍼레이팅 시스템(1205)은, 예를 들면, 컴퓨팅 디바이스(1200)의 동작을 제어하는 데 적합할 수도 있다. 또한, 본 발명의 실시형태는 그래픽스 라이브러리, 다른 오퍼레이팅 시스템, 또는 임의의 다른 애플리케이션 프로그램과 연계하여 실시될 수도 있지만 임의의 특정한 애플리케이션 또는 시스템에 제한되는 것은 아니다. 이 기본 구성은 도 12에서 점선(1208) 내의 컴포넌트에 의해 예시된다.
컴퓨팅 디바이스(1200)는 추가적인 피쳐 또는 기능성을 구비할 수도 있다. 예를 들면, 컴퓨팅 디바이스(1200)는, 예를 들면, 자기 디스크, 광학 디스크, 또는 테이프와 같은 추가적인 데이터 저장 디바이스(착탈식 및/또는 비착탈식)를 또한 포함할 수도 있다. 이러한 추가적인 스토리지는 도 12에서 착탈식 스토리지(1209) 및 비착탈식 스토리지(1210)에 의해 예시된다. 컴퓨팅 디바이스(1200)는 또한, 예컨대 분산 컴퓨팅 환경에서 네트워크(120), 예를 들면 인트라넷 또는 인터넷을 통해, 디바이스(1200)가 다른 컴퓨팅 디바이스(1218)와 통신하는 것을 가능하게 할 수도 있는 통신 접속부(1216)를 포함할 수도 있다. 통신 접속부(1216)는 통신 매체의 일 예이다.
위에서 언급된 바와 같이, 오프레이팅 시스템(1205)을 포함해서, 다수의 프로그램 모듈 및 데이터 파일이 시스템 메모리(1204)에 저장될 수도 있다. 프로세싱 유닛(1202) 상에서 실행하는 동안, 프로그래밍 모듈(1206), 예컨대 애플리케이션(들)(112, 115, 135)은, 예를 들면, 위에서 설명된 바와 같은 하나 이상의 방법(300, 500, 700, 및 1000)의 동작을 포함하는 프로세스를 수행할 수도 있다. 이미 언급된 프로세스는 일 예이며, 프로세싱 유닛(1202)은 다른 프로세스를 수행할 수도 있다. 본 발명의 실시형태에 따라 사용될 수도 있는 다른 프로그래밍 모듈은 전자 메일 및 연락처 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터 보조 애플리케이션 프로그램 등을 포함할 수도 있다.
일반적으로, 본 발명의 실시형태와 양립하여, 프로그램 모듈은, 특정 태스크를 수행할 수도 있는 또는 특정한 추상적 데이터 타입을 구현할 수도 있는 루틴, 프로그램, 컴포넌트, 데이터 구조, 및 다른 타입의 구조를 포함할 수도 있다. 또한, 본 발명의 실시형태는, 핸드헬드 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반의 또는 프로그램가능 컨슈머 전자장치, 미니컴퓨터, 메인프레임 컴퓨터, 등을 포함하는 다른 컴퓨터 시스템 구성에 의해 실시될 수도 있다. 본 발명의 실시형태는, 통신 네트워크를 통해 연결된 원격 프로세싱 디바이스에 의해 태스크가 수행되는 분산 컴퓨팅 환경에서 또한 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 디바이스 둘 다에 위치될 수도 있다.
또한, 본 발명의 실시형태는, 별개의 전자 엘리먼트, 논리 게이트를 포함하는 패키지화된 또는 집적된 전자 칩, 마이크로프로세서를 활용하는 회로, 또는 전자 엘리먼트 또는 마이크로프로세서를 포함하는 싱글 칩 상에서 실시될 수도 있다. 예를 들면, 본 발명의 실시형태는, 도 12에 예시된 다수의 컴포넌트 또는 컴포넌트의 각각이 단일의 집적 회로 상에 집적될 수도 있는 시스템 온 칩(system-on-a-chip; SOC)을 통해 실시될 수도 있다. 이러한 SOC 디바이스는 하나 이상의 프로세싱 유닛, 그래픽 유닛, 통신 유닛, 시스템 가상화 유닛 및 다양한 애플리케이션 기능성을 포함할 수도 있는데, 이들 모두는 단일의 집적 회로로서 칩 기판 상에 집적(또는 "버닝")된다. SOC를 통해 동작하는 경우, 애플리케이션(들)(112, 115, 135)에 관해, 본원에서 설명된 기능성은 단일의 집적 회로(칩) 상에서 컴퓨팅 디바이스/시스템(1200)의 다른 컴포넌트와 함께 집적된 애플리케이션 특정의 로직을 통해 동작될 수도 있다. 본 발명의 실시형태는 또한, 예를 들면 AND, OR, 및 NOT와 같은 논리적 동작을 수행할 수 있는, 기계 기술, 광학 기술, 유체 기술 및 양자 기술을 포함하지만 이들에 제한되지 않는 다른 기술을 사용하여 실시될 수도 있다. 또한, 본 발명의 실시형태는 범용 컴퓨터 내에서 또는 임의의 다른 회로 또는 시스템에서 실시될 수도 있다.
본 발명의 실시형태는, 예를 들면, 컴퓨터 프로세스(방법)로서, 컴퓨터 시스템으로서, 또는 컴퓨터 프로그램 제품 또는 컴퓨터 판독가능 매체와 같은 제조 물품으로서 구현될 수도 있다. 컴퓨터 프로그램 제품은, 컴퓨터 시스템에 의해 판독될 수 있고 컴퓨터 프로세스를 실행하는 명령의 컴퓨터 프로그램을 인코딩하는 컴퓨터 저장 매체일 수도 있다.
본원에서 사용된 컴퓨터 판독가능 매체라는 용어는 컴퓨터 저장 매체를 포함할 수도 있다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 불휘발성의 착탈식 및 비착탈식 매체를 포함할 수도 있다. 시스템 메모리(1204), 착탈식 스토리지(1209), 및 비착탈식 스토리지(1210)는 모두 컴퓨터 저장 매체 예들이다(즉, 메모리 스토리지이다). 컴퓨터 저장 매체는 RAM, ROM, EEPROM(electrically erasable read-only memory; 전자적 소거가능 판독전용 메모리), 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disks; 디지털 다기능 디스크) 또는 다른 광학적 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스, 또는 정보를 저장하기 위해 사용될 수 있으며 컴퓨팅 디바이스(1200)에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있지만, 이들에 제한되는 것은 아니다. 임의의 이러한 컴퓨터 저장 매체는 디바이스(1200)의 일부일 수도 있다. 컴퓨팅 디바이스(1200)는 또한, 키보드, 마우스, 펜, 사운드 입력 디바이스, 터치 입력 디바이스 등과 같은 입력 디바이스(들)(1212)를 구비할 수도 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 디바이스(들)(1214)가 또한 포함될 수도 있다. 상기 언급된 디바이스는 예시이며 다른 것들이 사용될 수도 있다.
본원에서 사용된 컴퓨터 판독가능 매체라는 용어는 통신 매체를 또한 포함할 수도 있다. 통신 매체는 일반적으로 컴퓨터 판독가능 명령들, 데이터 구조들, 프로그램 모듈들, 또는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호에서의 다른 데이터에 의해 구체화될 수도 있고, 임의의 정보 전송 매체를 포함할 수도 있다. "변조된 데이터 신호"는 하나 이상의 특성 세트를 구비하거나 또는 신호에 정보를 인코딩하는 방식으로 변경된 신호를 설명할 수도 있다. 비제한적인 예로서, 통신 매체는 유선 네트워크 또는 직결 접속과 같은 유선 매체, 및 음향, 라디오 주파수(RF), 적외선과 같은 무선 매체 및 다른 무선 매체를 포함할 수도 있다.
도 13a 및 도 13b는 적절한 모바일 컴퓨팅 환경, 예를 들면, 모바일 전화기(1300), 스마트폰, 태블릿 퍼스널 컴퓨터, 랩탑 컴퓨터 등을 예시하는데, 이들을 통해 본 발명의 실시형태가 실시될 수도 있다. 도 13a를 참조하면, 실시형태를 구현하는 예시적인 모바일 컴퓨팅 디바이스(1300)가 예시된다. 기본 구성에서, 모바일 컴퓨팅 디바이스(1300)는, 입력 엘리먼트 및 출력 엘리먼트 둘 다를 구비하는 핸드헬드 컴퓨터이다. 입력 엘리먼트는 유저가 모바일 컴퓨팅 디바이스(1300)에 정보를 입력하는 것을 가능하게 하는 입력 버튼(1310) 및 터치스크린 디스플레이(1305)를 포함할 수도 있다. 모바일 컴퓨팅 디바이스(1300)는 또한, 추가적인 유저 입력을 가능하게 하는 옵션적 측면 입력 엘리먼트(1315)를 내장할 수도 있다. 옵션적 측면 입력 엘리먼트(1315)는 로터리 스위치, 버튼, 또는 임의의 다른 타입의 수동 입력 엘리먼트일 수도 있다. 대안적인 실시형태에서, 모바일 컴퓨팅 디바이스(1300)는 더 많은 또는 더 적은 입력 엘리먼트를 내장할 수도 있다. 예를 들면, 디스플레이(1305)는 몇몇 실시형태에서 터치스크린이 아닐 수도 있다. 또 다른 대안적인 실시형태에서, 모바일 컴퓨팅 디바이스는 휴대형 전화 시스템, 예컨대 디스플레이(1305) 및 입력 버튼(1315)을 구비하는 셀룰러 폰이다. 모바일 컴퓨팅 디바이스(1300)는 또한 옵션적 키패드(1335)를 포함할 수도 있다. 옵션적 키패드(1335)는 물리적 키패드 또는 터치스크린 디스플레에 상에 생성된 "소프트" 키패드일 수도 있다.
모바일 컴퓨팅 디바이스(1300)는, 그래픽 유저 인터페이스(graphical user interface; GUI)를 디스플레이할 수 있는 출력 엘리먼트, 예컨대 디스플레이(1305)를 내장한다. 다른 출력 엘리먼트는 스피커(13525) 및 LED 라이트(1320)를 포함한다. 추가적으로, 모바일 컴퓨팅 디바이스(1300)는, 유저에게 이벤트를 통지하도록 모바일 컴퓨팅 디바이스(1300)가 진동하게 하는 진동 모듈(도시되지 않음)을 내장할 수도 있다. 또 다른 실시형태에서, 모바일 컴퓨팅 디바이스(1300)는 출력 신호를 제공하는 다른 수단을 제공하기 위해 헤드폰 잭(도시되지 않음)을 내장할 수도 있다.
본원에서 모바일 컴퓨팅 디바이스(1300)와 연계하여 설명되었지만, 대안적 실시형태에서, 본 발명은, 예컨대 데스크탑 환경, 랩탑 또는 노트북 컴퓨터 시스템, 멀티프로세서 시스템, 마이크로프로세서 기반의 또는 프로그램가능한 컨슈머 전자장치, 네트워크 PC, 미니 컴퓨터, 메인프레임 컴퓨터 등에서, 임의의 수의 컴퓨터 시스템과 조합하여 사용된다. 본 발명의 실시형태는 또한, 분산 컴퓨팅 환경에서 실시될 수도 있는데, 분산 컴퓨팅 환경에서는, 태스크는 분산 컴퓨팅 환경에서 통신 네트워크를 통해 연결된 원격 프로세싱 디바이스에 의해 수행되고; 프로그램은 로컬 및 원격 메모리 저장 디바이스 둘 다에 위치될 수도 있다.
도 13b는, 도 13a에서 도시된 컴퓨팅 디바이스와 같은, 일 실시형태에서 사용되는 모바일 컴퓨팅 디바이스의 컴포넌트를 예시하는 블록도이다. 즉, 모바일 컴퓨팅 디바이스(1300)는 몇몇 실시형태를 구현하기 위해 시스템(1302)을 내장할 수 있다. 예를 들면, 시스템(1302)은, 예를 들면, 브라우저, 이메일, 스케줄링, 인스턴트 메시징, 및 미디어 플레이어 애플리케이션과 같은, 데스크탑 또는 노트북 컴퓨터의 애플리케이션들과 유사한 하나 이상의 애플리케이션을 구동할 수 있는 "스마트폰"을 구현하는 데 사용될 수도 있다. 몇몇 실시형태에서, 시스템(1302)은, 통합 PDA(personal digital assistant) 및 무선 전화기와 같은 컴퓨팅 디바이스로서 통합된다.
하나 이상의 애플리케이션 프로그램(1350), 예를 들면, 웹브라우저 애플리케이션(135)은 메모리(1362)로 로딩되어 오퍼레이팅 시스템(1364) 상에서 또는 오퍼레이팅 시스템(1364)과 관련하여 구동될 수도 있다. 애플리케이션 프로그램의 예들은, 이메일 프로그램, PIM(personal information management; 개인 정보 관리) 프로그램, 전자 메일 및 연락처 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터 보조 애플리케이션 프로그램, 메시징 프로그램 등을 포함할 수도 있다. 시스템(1302)은 또한 메모리(1362) 내에 불휘발성 스토리지(1368)를 포함한다. 불휘발성 스토리지(1368)는, 시스템(1102) 전원이 다운되어도 손실되지 않아야 하는 영구적 정보를 저장하는 데 사용될 수도 있다. 애플리케이션(1350)은, 불휘발성 스토리지(1368)의 정보, 예컨대 이메일 애플리케이션에 의해 사용되는 이메일 또는 다른 메시지 등을 사용하고 저장할 수도 있다. 또한, 동기화 애플리케이션(도시되지 않음)이 시스템(1302) 상에 존재하는데, 동기화 애플리케이션은, 불휘발성 스토리지(1368)에 저장된 정보의 호스트 컴퓨터에 저장된 대응하는 정보와의 동기화를 유지하기 위해, 호스트 컴퓨터 상에 존재하는 대응하는 동기화 애플리케이션과 상호작용하도록 프로그래밍된다. 다른 애플리케이션이 메모리(1362)에 로딩되어 디바이스(1300) 상에서 구동될 수도 있음이 인식되어야 한다.
시스템(1302)은, 하나 이상의 배터리로서 구현될 수도 있는 전원(1370)을 구비한다. 전원(1370)은 배터리를 보충하거나 배터리를 충전시키는 AC 어댑터 또는 전원이 연결된 도킹 크래들과 같은 외부 전원을 더 포함할 수도 있다.
시스템(1302)은 또한, 라디오 주파수 통신을 송수신하는 기능을 수행하는 라디오(1372)를 포함할 수도 있다. 라디오(1372)는 통신 캐리어 또는 서비스 공급자를 통해 "외부 세계"와 시스템(1302) 사이의 무선 연결성(wireless connectivity)을 용이하게 한다. 라디오(1372)로의 그리고 라디오(1372)로부터의 송신은 OS(1364)의 제어하에서 수행된다. 다시 말하면, 라디오(1372)에 의해 수신된 통신은 OS(1364)를 통해 애플리케이션 프로그램(1350)으로 전달될 수도 있고, 그 반대일 수도 있다.
라디오(132)는 시스템(1302)이, 예컨대 네트워크를 통해 다른 컴퓨팅 디바이스와 통신하는 것을 가능하게 한다. 라디오(1372)는 통신 매체의 일 예이다. 통신 매체는 통상적으로 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호에서의 다른 데이터에 의해 구체화될 수도 있고, 임의의 정보 전달 매체를 포함할 수도 있다. "변조된 데이터 신호"는 하나 이상의 특성 세트를 구비하거나 또는 신호에 정보를 인코딩하는 방식으로 변경된 신호를 의미할 수도 있다. 예로서, 통신 매체는 유선 네트워크 또는 직결 접속과 같은 유선 매체, 및 음향, RF, 적외선과 같은 무선 매체 및 다른 무선 매체를 포함할 수도 있으며, 이들에 제한되는 것은 아니다. 본원에서 사용된 바와 같은 컴퓨터 판독가능 매체는 저장 매체 및 통신 매체 양자를 포함할 수도 있다.
시스템(1302)의 이 실시형태는 2개의 타입의 통지 출력 디바이스(시각적 통지를 제공하는 데 사용될 수 있는 LED(1320)와 오디오 통지를 제공하기 위해 스피커(1325)와 함께 사용될 수 있는 오디오 인터페이스(1374))를 갖는 것으로 도시된다. 이들 디바이스는, 활성화시 프로세서(1360) 및 다른 컴포넌트가 배터리 전력을 절약하기 위해 셧다운될 수도 있지만 통지 메커니즘에 의해 지시된 기간 동안 이들 디바이스가 온 상태로 유지되도록, 전원에 직접적으로 연결될 수도 있다. LED(1320)는, 유저가 디바이스의 파워 온 상태를 표시하는 액션을 취할 때까지 무기한 온 상태로 유지되도록 프로그래밍될 수도 있다. 오디오 인터페이스(1374)는 유저에게 청각적 신호를 제공하고 유저로부터 청각적 신호를 수신하기 위해 사용된다. 예를 들면, 스피커(1325)에 연결되는 것에 추가하여, 오디오 인터페이스(1374)는, 또한, 가청 입력을 수신하기 위해, 예컨대 전화 대화를 용이하게 하기 위해 마이크에 연결될 수도 있다. 본 발명의 실시형태에 따르면, 마이크는 통지의 제어를 용이하게 하기 위한 오디오 센서로서 또한 기능할 수도 있는데, 이것은 하기에 설명될 것이다. 시스템(1302)은, 온보드 카메라(1330)의 동작이 스틸 이미지, 비디오 스트림 등을 기록하는 것을 가능하게 하는 비디오 인터페이스(1376)를 더 포함할 수도 있다.
시스템(1302)을 구현하는 모바일 컴퓨팅 디바이스는 추가적인 피쳐 또는 기능성을 가질 수도 있다. 예를 들면, 디바이스는, 자기 디스크, 광학 디스크, 또는 테이프와 같은 추가적인 데이터 저장 디바이스(착탈식 및/또는 비착탈식)를 또한 포함할 수도 있다. 이러한 추가적인 스토리지는 도 13b에서 스토리지(1368)에 의해 예시된다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈, 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 불휘발성의 착탈식 및 비착탈식 매체를 포함할 수도 있다.
디바이스(1300)에 의해 생성되거나 또는 캡쳐되고 시스템(1302)을 통해 저장된 데이터/정보는, 위에서 설명된 바와 같이 디바이스(1300) 상에 로컬하게 저장될 수도 있거나, 또는, 데이터는, 디바이스(1300)와 관련된 별개의 컴퓨팅 디바이스, 예를 들면, 분산 컴퓨팅 네트워크(120)에서의 서버 컴퓨터(110)와 디바이스(1300) 사이의 유선 접속, 예컨대 인터넷을 통해 또는 라디오(1372)를 통해 디바이스에 의해 액세스될 수도 있는 임의의 수의 저장 매체 상에 저장될 수도 있다. 인식되어야 하는 바와 같이, 이러한 데이터/정보는 디바이스(1300)를 통해 라디오(1372)를 통해 또는 분산 컴퓨팅 네트워크(120)를 통해 액세스될 수도 있다. 마찬가지로, 이러한 데이터/정보는, 전자 메일 및 협업 데이터/정보 공유 시스템(112)을 포함하는 공지의 데이터/정보 전송 및 저장 수단에 따른 사용 및 저장을 위해 컴퓨팅 디바이스 사이에서 쉽게 전송될 수도 있다.
도 14는, 위에서 설명된 바와 같이, 씬 클라이언트(135)를 통해 코멘트 다는 것을 가능하게 하기 위해 컨텐츠를 저장하고 업데이트하는 시스템 아키텍쳐를 예시한다. 개발된(developed), 애플리케이션(115)과 상호작용된, 또는 애플리케이션(115)과 관련하여 편집된 컨텐츠는 상이한 통신 채널 또는 다른 스토리지 타입에 저장될 수도 있다. 예를 들면, 다양한 컨텐츠 아이템은 그 다양한 컨텐츠 아이템을 개발시킨 정보와 함께 디렉토리 서비스(1422), 웹 포털(1424), 메일박스 서비스(1426), 인스턴트 메시징 스토어(1428) 및 소셜 네트워킹 사이트(1430)를 사용하여 저장될 수도 있다. 시스템(1418)은, 본원에서 설명된 바와 같은 코멘트를 다는 기능성을 제공하기 위해 임의의 이들 타입의 시스템 등을 사용할 수도 있다. 서버(110)는 애플리케이션(115)을 구동시키고 클라이언트(1125)로 아이템을 전달하기 위한 요청을 수신할 수도 있다. 일 예로서, 서버(110)는 웹을 통해 컨텐츠를 제공하는 웹 서버일 수도 있다. 서버(110)는 네트워크(120)를 통해 클라이언트 디바이스(125)로 웹 상에서 컨텐츠를 제공할 수도 있다. 컨텐츠를 포함하는 클라이언트의 예는 컴퓨팅 디바이스(1200)를 포함하고, 컴퓨팅 디바이스(1200)는 임의의 범용 퍼스널 컴퓨터, 태블릿 컴퓨팅 디바이스(1405) 및/또는 스마트폰을 포함할 수도 있는 모바일 컴퓨팅 디바이스(1300)를 포함할 수도 있다. 이들 디바이스 중 임의의 것은 스토어(108)로부터 컨텐츠를 획득할 수도 있다.
본 발명의 실시형태는, 예를 들면, 본 발명의 실시형태에 따른 방법, 시스템, 및 컴퓨터 프로그램 제품의 블록도 및/또는 동작예를 참조로 위에서 설명되었다. 블록들에서 언급된 기능/액트(acts)는 임의의 흐름도에서 도시된 바와 같은 순서 외에서 발생할 수도 있다. 예를 들면, 수반되는 기능성/액트에 따라, 연속하여 도시된 두 개의 블록은 사실 거의 동시에 실행될 수도 있거나 또는 그 블록은 가끔 역순서로 실행될 수도 있다.
본 발명의 어떤 실시형태가 설명되었지만, 다른 실시형태가 존재할 수도 있다. 또한, 본 발명의 실시형태가 메모리 및 다른 저장 매체에 저장된 데이터와 관련하는 것으로 설명되었지만, 데이터는 또한, 다른 타입의 컴퓨터 판독가능 매체, 예컨대 하드디스크, 플로피디스크, 또는 CD-ROM과 같은 2차 저장 디바이스, 인터넷으로부터의 반송파, 또는 다른 형태의 RAM 또는 ROM 상에 저장되거나 이들로부터 판독될 수도 있다. 또한, 개시된 방법의 단계는, 본 발명으로부터 벗어나지 않으면서, 단계를 재순서화하고 및/또는 단계를 삽입하거나 삭제하는 것을 포함해서, 임의의 방식으로 수정될 수도 있다.
본 발명의 취지와 범위를 벗어나지 않으면서 본 발명에서 다양한 수정예 또는 변형예가 이루어질 수도 있다는 것을 당업자는 인식할 것이다. 본원에서 개시된 본 발명의 상세 및 실시를 고려하면, 본 발명의 다른 실시형태가 당업자에게 자명할 것이다.

Claims (20)

  1. 클라이언트 애플리케이션을 통해 코멘트하기 위해 컴퓨터 프로세서에 의해 실행되는 방법으로서,
    상기 클라이언트 애플리케이션상에 문서의 이미지를 디스플레이하는 단계와,
    유저가 상기 문서의 이미지에 코멘트를 추가하는 것을 가능하게 하는 유저 인터페이스 컴포넌트를 제공하는 단계와,
    상기 코멘트 및 상기 코멘트와 연관된 상기 문서의 이미지내의 위치를 수신하는 단계와,
    상기 코멘트 및 상기 코멘트와 연관된 상기 위치를 상기 문서의 이미지에 저장하는 단계와,
    상기 코멘트를 나타내는 선택가능한 제어를 상기 문서의 이미지의 오버레이로서 디스플레이하는 단계 - 상기 선택가능한 제어는 상기 위치에 기초하여 결정된 위치에 디스플레이됨 - 와,
    상기 문서의 이미지에 근접하여 디스플레이되는 코멘트 창을 디스플레이하는 단계를 포함하되,
    상기 코멘트 창에서 상기 코멘트를 선택하는 것은 상기 문서의 이미지가 상기 코멘트와 연관된 상기 위치를 포함하는 상기 문서의 이미지의 부분으로 이동하도록 하고,
    상기 선택가능한 제어는 하이퍼텍스트 마크업 랭귀지 아이콘이며, 상기 선택가능한 제어를 선택하는 것은 상기 코멘트 창이 상기 문서의 이미지와 연관된 적어도 일부 코멘트를 지나 상기 선택가능한 제어와 연관된 상기 코멘트까지 스크롤하도록 하는
    코멘트하기 위한 방법.
  2. 제 1항에 있어서,
    상기 코멘트를 나타내는 상기 선택가능한 제어를 선택하는 것은 상기 코멘트 창이 상기 코멘트 창 내에 상기 코멘트를 디스플레이하도록 하는
    코멘트하기 위한 방법.
  3. 제 2항에 있어서,
    상기 코멘트 창 내의 상기 코멘트는 다른 코멘트와 구별될 수 있는
    코멘트하기 위한 방법.
  4. 제 2항에 있어서,
    상기 코멘트 창 내의 상기 코멘트는 하이라이트되는
    코멘트하기 위한 방법.
  5. 삭제
  6. 제 1항에 있어서,
    상기 코멘트 창은 상기 문서의 이미지의 우측에 디스플레이되는
    코멘트하기 위한 방법.
  7. 제 1항에 있어서,
    상기 코멘트 창 내의 상기 코멘트에 답글을 다는(reply) 선택가능한 커맨드(selectable command)를 디스플레이하는 단계를 더 포함하는
    코멘트하기 위한 방법.
  8. 제 7항에 있어서,
    상기 코멘트에 답글 달기의 선택을 수신하면, 상기 코멘트 밑에 코멘트 편집 박스를 디스플레이하는 단계를 더 포함하는
    코멘트하기 위한 방법.
  9. 제 7항에 있어서,
    상기 코멘트에 답글 달기의 선택을 수신하면, 상기 코멘트에 대한 이전의 답글 밑에 코멘트 편집 박스를 디스플레이하는 단계를 더 포함하는
    코멘트하기 위한 방법.
  10. 클라이언트 애플리케이션을 통해 코멘트하기 위한 컴퓨팅 장치로서,
    컴퓨터 프로세서와,
    상기 컴퓨터 프로세서에 의해 실행될 때 상기 컴퓨터 프로세서로 하여금 상기 클라이언트 애플리케이션을 제공하도록 하는 컴퓨터 판독가능 인스트럭션을 포함하는 메모리를 포함하고,
    상기 클라이언트 애플리케이션은
    상기 클라이언트 애플리케이션상에 문서의 이미지를 디스플레이하고,
    상기 문서의 이미지에 코멘트를 추가하는 유저 인터페이스를 디스플레이하고,
    상기 코멘트 및 상기 코멘트와 연관된 상기 문서의 이미지내의 위치를 수신하고,
    상기 코멘트 및 상기 코멘트와 연관된 상기 위치를 상기 문서의 이미지에 저장하고,
    상기 코멘트를 나타내는 선택가능한 제어를 상기 문서의 이미지의 오버레이로서 디스플레이 - 상기 선택가능한 제어는 상기 위치에 기초하여 결정된 위치에 디스플레이됨 - 하고,
    상기 문서의 이미지에 근접하여 디스플레이되는 코멘트 창을 디스플레이하도록 구성되되,
    상기 코멘트 창에서 상기 코멘트를 선택하는 것은 상기 문서의 이미지가 상기 코멘트와 연관된 상기 위치를 포함하는 상기 문서의 이미지의 부분으로 이동하도록 하고, 상기 선택가능한 제어는 하이퍼텍스트 마크업 랭귀지 아이콘이며, 상기 선택가능한 제어를 선택하는 것은 상기 코멘트 창이 상기 문서의 이미지와 연관된 적어도 일부 코멘트를 지나 상기 선택가능한 제어와 연관된 상기 코멘트까지 스크롤하도록 하는
    컴퓨팅 장치.
  11. 제 10항에 있어서,
    상기 코멘트 창 내의 상기 코멘트는 다른 코멘트와 구별가능한
    컴퓨팅 장치.
  12. 제 10항에 있어서,
    상기 코멘트 창 내의 상기 코멘트는 하이라이트되는
    컴퓨팅 장치.
  13. 삭제
  14. 제 10항에 있어서,
    상기 코멘트 창은 상기 문서의 이미지의 우측에 디스플레이되는
    컴퓨팅 장치.
  15. 제 10항에 있어서,
    상기 클라이언트 애플리케이션은 상기 코멘트 창 내의 상기 코멘트에 답글을 다는(reply) 선택가능한 커맨드(selectable command)를 디스플레이하도록 더 구성되는
    컴퓨팅 장치.
  16. 제 15항에 있어서,
    상기 클라이언트 애플리케이션은 상기 컴퓨팅 장치가 상기 코멘트에 답글 달기의 선택을 수신하면, 상기 코멘트 밑에 코멘트 편집 박스를 디스플레이하도록 더 구성되는
    컴퓨팅 장치.
  17. 제 15항에 있어서,
    상기 클라이언트 애플리케이션은 상기 컴퓨팅 장치가 상기 코멘트에 답글 달기의 선택을 수신하면, 상기 코멘트에 대한 이전의 답글 밑에 코멘트 편집 박스를 디스플레이하도록 더 구성되는
    컴퓨팅 장치.
  18. 컴퓨터에 의해 실행되면 상기 컴퓨터로 하여금 클라이언트 애플리케이션을 통해 코멘트하기 위한 방법을 실행하도록 하는 컴퓨터 실행가능 인스트럭션을 포함하는 컴퓨터 판독가능 저장 매체로서, 상기 방법은
    상기 클라이언트 애플리케이션상에 문서의 이미지를 디스플레이하는 단계와,
    유저가 상기 문서의 이미지에 코멘트를 추가하는 것을 가능하게 하는 유저 인터페이스 컴포넌트를 디스플레이하는 단계와,
    상기 코멘트 및 상기 코멘트와 연관된 상기 문서의 이미지내의 위치를 수신하는 단계와,
    상기 코멘트 및 상기 코멘트와 연관된 상기 위치를 상기 문서의 이미지에 저장하는 단계와,
    상기 코멘트를 나타내는 선택가능한 제어를 상기 문서의 이미지의 오버레이로서 디스플레이하는 단계 - 상기 선택가능한 제어는 상기 위치에 기초하여 결정된 위치에 디스플레이됨 - 와,
    상기 문서의 이미지에 근접하여 디스플레이되는 코멘트 창을 디스플레이하는 단계를 포함하되,
    상기 선택가능한 제어는 하이퍼텍스트 마크업 랭귀지 아이콘이고, 상기 코멘트 창에서 상기 코멘트를 선택하는 것은 상기 문서의 이미지가 상기 코멘트와 연관된 상기 위치를 포함하는 상기 문서의 이미지의 부분으로 이동하도록 하고, 상기 코멘트를 나타내는 상기 선택가능한 제어를 선택하는 것은 상기 문서의 이미지와 연관된 모든 코멘트를 지나 상기 선택가능한 제어와 연관된 상기 코멘트까지 스크롤하도록 하는
    컴퓨터 판독가능 저장 매체.
  19. 제 18항에 있어서,
    상기 코멘트와 연관된 선택가능한 커맨드를 디스플레이하는 단계를 더 포함하고, 상기 선택가능한 커맨드는 상기 코멘트에 답글을 달고 상기 코멘트를 삭제하는 옵션을 포함하는
    컴퓨터 판독가능 저장 매체.
  20. 제 19항에 있어서,
    상기 코멘트에 답글을 다는 선택을 수신하면, 텍스트 입력을 수신하기 위하여 상기 코멘트의 밑에 코멘트 편집 박스를 디스플레이하는 단계를 더 포함하는
    컴퓨터 판독가능 저장 매체.
KR1020147020586A 2012-01-23 2013-01-21 웹 애플리케이션에서의 협업 통신 기법 KR102122104B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/356,224 2012-01-23
US13/356,224 US9064237B2 (en) 2012-01-23 2012-01-23 Collaborative communication in a web application
PCT/US2013/022354 WO2013112391A1 (en) 2012-01-23 2013-01-21 Collaborative communication in a web application

Publications (2)

Publication Number Publication Date
KR20140125361A KR20140125361A (ko) 2014-10-28
KR102122104B1 true KR102122104B1 (ko) 2020-06-11

Family

ID=48798267

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147020586A KR102122104B1 (ko) 2012-01-23 2013-01-21 웹 애플리케이션에서의 협업 통신 기법

Country Status (6)

Country Link
US (2) US9064237B2 (ko)
EP (1) EP2807577A4 (ko)
JP (2) JP2015513134A (ko)
KR (1) KR102122104B1 (ko)
CN (1) CN104094251B (ko)
WO (1) WO2013112391A1 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9064237B2 (en) 2012-01-23 2015-06-23 Microsoft Technology Licensing, Llc Collaborative communication in a web application
US9292192B2 (en) * 2012-04-30 2016-03-22 Blackberry Limited Method and apparatus for text selection
AU2013204289A1 (en) * 2012-06-01 2013-12-19 Kwik Cv Pty Limited A System and Method for Collaborating over a Communications Network
US20140047332A1 (en) * 2012-08-08 2014-02-13 Microsoft Corporation E-reader systems
JP2014112335A (ja) * 2012-12-05 2014-06-19 Fuji Xerox Co Ltd 情報処理装置及びプログラム
US9922020B2 (en) 2013-02-13 2018-03-20 International Business Machines Corporation Providing content using dynamic action templates
US10712936B2 (en) * 2013-03-18 2020-07-14 Lenovo (Beijing) Co., Ltd. First electronic device and information processing method applicable to first or second electronic device comprising a first application
US9674260B2 (en) * 2013-07-09 2017-06-06 John Henry Page System and method for exchanging and displaying resource viewing position and related information
US20150134725A1 (en) * 2013-11-13 2015-05-14 Adrian Cesena, Jr. Computer-implemented methods, computer readable medium and systems for virtual application execution
US9407596B2 (en) * 2013-11-20 2016-08-02 International Business Machines Corporation Interactive splitting of entries in social collaboration environments
JP2015156209A (ja) * 2014-01-17 2015-08-27 株式会社リコー 情報処理システム
US10216714B2 (en) * 2014-09-30 2019-02-26 Apple Inc. Text character and formatting changes in collaborative contexts
JP5908046B1 (ja) * 2014-10-21 2016-04-26 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 複数領域を結合して表示する方法、装置及びプログラム。
CN105630757B (zh) * 2014-11-07 2019-11-26 珠海金山办公软件有限公司 一种数据编辑方法及装置
CN104391984B (zh) * 2014-12-11 2017-10-03 南京大学 一种中英文混合的网络用户评论的推荐度评分方法
CN104504131A (zh) * 2014-12-31 2015-04-08 广州爱书旗信息技术有限公司 基于划线实现用户评论的方法、装置、终端设备及系统
US11797172B2 (en) 2015-03-06 2023-10-24 Alibaba Group Holding Limited Method and apparatus for interacting with content through overlays
US20160344677A1 (en) 2015-05-22 2016-11-24 Microsoft Technology Licensing, Llc Unified messaging platform for providing interactive semantic objects
US10216709B2 (en) * 2015-05-22 2019-02-26 Microsoft Technology Licensing, Llc Unified messaging platform and interface for providing inline replies
USD769258S1 (en) * 2015-07-01 2016-10-18 Microsoft Corporation Display screen with graphical user interface
CN106407199A (zh) 2015-07-27 2017-02-15 广州市动景计算机科技有限公司 网络文章评论处理方法及装置
US10606941B2 (en) 2015-08-10 2020-03-31 Open Text Holdings, Inc. Annotating documents on a mobile device
US20170129870A1 (en) * 2015-11-11 2017-05-11 Mohan Murali Alapati Compositions and methods for the treatment of neurological diseases
US10078627B2 (en) 2015-11-20 2018-09-18 Microsoft Technology Licensing, Llc Collaboration cards for communication related to a collaborated document
US10225291B2 (en) * 2016-03-04 2019-03-05 Microsoft Technology Licensing, Llc Managing messages between users for collaborative editing of electronic documents
US9965475B2 (en) 2016-03-31 2018-05-08 Microsoft Technology Licensing, Llc User interface for navigating comments associated with collaboratively edited electronic documents
US9824288B1 (en) * 2016-05-04 2017-11-21 Bank Of America Corporation Programmable overlay for negotiable instrument electronic image processing
US10339211B1 (en) * 2016-05-31 2019-07-02 Google Llc Systems and methods for synchronizing comments to an electronic document across platforms
US10198413B2 (en) * 2016-12-30 2019-02-05 Dropbox, Inc. Image annotations in collaborative content items
US10491658B2 (en) * 2016-12-30 2019-11-26 Dropbox, Inc. In-collaborative content item notifications in shared collaborative content items
US10303420B2 (en) * 2017-05-02 2019-05-28 Microsoft Technology Licensing, Llc Proactive staged distribution of document activity indicators
KR101891582B1 (ko) * 2017-07-19 2018-08-27 네이버 주식회사 컨텐츠 내 하이라이트 댓글을 처리하기 위한 방법 및 시스템
US11106862B2 (en) * 2017-07-28 2021-08-31 Cisco Technology, Inc. Combining modalities for collaborating while editing and annotating files
KR101933558B1 (ko) 2017-09-14 2018-12-31 네이버 주식회사 동영상 내 하이라이트 댓글을 처리하기 위한 방법 및 시스템
WO2019202411A1 (en) * 2018-04-18 2019-10-24 Dropbox, Inc. New comment navigation in a mobile document interface
US10868784B2 (en) 2018-04-18 2020-12-15 Dropbox, Inc. Comment thread navigation in a mobile document interface
US11030395B2 (en) * 2018-05-30 2021-06-08 Microsoft Technology Licensing, Llc Top-align comments: just-in-time highlights and automatic scrolling
US10778631B2 (en) * 2018-06-29 2020-09-15 Dropbox, Inc. Mobile notifications for comment threads
WO2020023065A1 (en) 2018-07-23 2020-01-30 Google Llc Intelligent document notifications based on user comments
US10657318B2 (en) * 2018-08-01 2020-05-19 Microsoft Technology Licensing, Llc Comment notifications for electronic content
US11010040B2 (en) 2019-02-28 2021-05-18 Microsoft Technology Licensing, Llc Scrollable annotations associated with a subset of content in an electronic document
US11127171B2 (en) * 2019-03-07 2021-09-21 Microsoft Technology Licensing, Llc Differentiating in-canvas markups of document-anchored content
US20200334326A1 (en) * 2019-04-18 2020-10-22 Microsoft Technology Licensing, Llc Architectures for modeling comment and edit relations
CN110659828B (zh) * 2019-09-23 2022-03-08 上海海事大学 一种基于评论数据的软件特征评价方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522935A (ja) * 2007-03-29 2010-07-08 アマゾン テクノロジーズ インコーポレイテッド デジタル著作物に関する注釈の提供
JP2011501847A (ja) * 2007-10-17 2011-01-13 アイティーアイ・スコットランド・リミテッド コンピュータで実現される方法
JP2011141616A (ja) * 2010-01-05 2011-07-21 Fujifilm Corp ドキュメント閲覧システム及びドキュメント配信装置

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313877A (ja) * 1992-05-13 1993-11-26 Kodo Eizo Gijutsu Kenkyusho:Kk プログラム編集装置およびそのプログラム表示方法
US5666490A (en) * 1994-05-16 1997-09-09 Gillings; Dennis Computer network system and method for managing documents
US5826025A (en) * 1995-09-08 1998-10-20 Sun Microsystems, Inc. System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups
US6134566A (en) * 1997-06-30 2000-10-17 Microsoft Corporation Method for controlling an electronic mail preview pane to avoid system disruption
US6438564B1 (en) * 1998-06-17 2002-08-20 Microsoft Corporation Method for associating a discussion with a document
US6865713B1 (en) * 1998-08-07 2005-03-08 International Business Machines Corporation Apparatus, program product and method of annotating a hypertext document with comments
US6958981B1 (en) * 1999-05-24 2005-10-25 Ncr Corporation Synchronized web scrolling
US7559034B1 (en) * 2000-10-19 2009-07-07 DG FastChannel, Inc. Method and system for using a hyperlink, banner, or graphical icon to initiate the overlaying of an object on a window
JP3943824B2 (ja) * 2000-10-31 2007-07-11 株式会社東芝 情報管理方法および情報管理装置
US20020059343A1 (en) * 2000-11-10 2002-05-16 Masahiro Kurishima Client apparatus and recording medium that records a program thereof
US6593681B2 (en) 2000-12-15 2003-07-15 Matsushita Electric Industrial Co., Ltd. Polarization apparatus and polarization method of coaxial flexible piezoelectric cable
US7346841B2 (en) * 2000-12-19 2008-03-18 Xerox Corporation Method and apparatus for collaborative annotation of a document
US7107518B2 (en) 2001-04-03 2006-09-12 Microsoft Corporation Automating a document review cycle
US7641864B2 (en) 2001-06-15 2010-01-05 Avure Technologies Incorporated Thermal sensor connector for pressure vessel
US20040205541A1 (en) * 2001-08-07 2004-10-14 D'amico Mario Web browser with annotation capability
US7171468B2 (en) 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
US7496841B2 (en) * 2001-12-17 2009-02-24 Workshare Technology, Ltd. Method and system for document collaboration
US7356537B2 (en) 2002-06-06 2008-04-08 Microsoft Corporation Providing contextually sensitive tools and help content in computer-generated documents
US7370285B1 (en) * 2002-07-31 2008-05-06 Opinionlab, Inc. Receiving and reporting page-specific user feedback concerning one or more particular web pages of a website
US20040041843A1 (en) * 2002-08-30 2004-03-04 Yong Cui Inserting complex comments in a document
US8046259B1 (en) 2002-10-23 2011-10-25 Amazon Technologies, Inc. Method and system for conducting a chat
US7818678B2 (en) * 2002-10-31 2010-10-19 Litera Technology Llc Collaborative document development and review system
US7703000B2 (en) 2003-02-13 2010-04-20 Iparadigms Llc Systems and methods for contextual mark-up of formatted documents
US7218783B2 (en) * 2003-06-13 2007-05-15 Microsoft Corporation Digital ink annotation process and system for recognizing, anchoring and reflowing digital ink annotations
US7620648B2 (en) * 2003-06-20 2009-11-17 International Business Machines Corporation Universal annotation configuration and deployment
US7640506B2 (en) * 2003-06-27 2009-12-29 Microsoft Corporation Method and apparatus for viewing and managing collaboration data from within the context of a shared document
US7418656B1 (en) * 2003-10-03 2008-08-26 Adobe Systems Incorporated Dynamic annotations for electronics documents
WO2005103929A1 (en) * 2004-04-20 2005-11-03 Pluck Corporation Method, system, and computer program product for sharing information within a global computer network
US7346846B2 (en) * 2004-05-28 2008-03-18 Microsoft Corporation Strategies for providing just-in-time user assistance
US7284192B2 (en) * 2004-06-24 2007-10-16 Avaya Technology Corp. Architecture for ink annotations on web documents
US7562068B2 (en) * 2004-06-30 2009-07-14 Microsoft Corporation System and method for ranking search results based on tracked user preferences
US7707249B2 (en) 2004-09-03 2010-04-27 Open Text Corporation Systems and methods for collaboration
US7702730B2 (en) 2004-09-03 2010-04-20 Open Text Corporation Systems and methods for collaboration
US20060080432A1 (en) 2004-09-03 2006-04-13 Spataro Jared M Systems and methods for collaboration
US20060053195A1 (en) 2004-09-03 2006-03-09 Schneider Ronald E Systems and methods for collaboration
US20060282762A1 (en) 2005-06-10 2006-12-14 Oracle International Corporation Collaborative document review system
US7734692B1 (en) 2005-07-22 2010-06-08 Oracle America, Inc. Network collaboration system with private voice chat
US7623643B2 (en) 2005-07-26 2009-11-24 Microsoft Corporation Augmenting a call with context
JP4839715B2 (ja) * 2005-07-27 2011-12-21 富士ゼロックス株式会社 シンクライアントシステム
GB0523703D0 (en) 2005-11-22 2005-12-28 Ibm Collaborative editing of a document
GB0524742D0 (en) 2005-12-03 2006-01-11 Ibm Methods and apparatus for remote monitoring
US7913162B2 (en) 2005-12-20 2011-03-22 Pitney Bowes Inc. System and method for collaborative annotation using a digital pen
US7735101B2 (en) * 2006-03-28 2010-06-08 Cisco Technology, Inc. System allowing users to embed comments at specific points in time into media presentation
GB0610116D0 (en) 2006-05-20 2006-06-28 Ibm A method, apparatus and computer program for collaborative editing of a document
US8407670B2 (en) * 2006-06-02 2013-03-26 Microsoft Corporation Collaborative code conflict detection, notification and resolution
US8910060B2 (en) 2006-06-22 2014-12-09 Rohit Chandra Method and apparatus for highlighting a portion of an internet document for collaboration and subsequent retrieval
CN101110073A (zh) * 2006-07-20 2008-01-23 朗迅科技公司 用于对网络web页面内容加亮并添加注释的方法和系统
WO2008031625A2 (en) * 2006-09-15 2008-03-20 Exbiblio B.V. Capture and display of annotations in paper and electronic documents
US7958453B1 (en) * 2006-09-29 2011-06-07 Len Bou Taing System and method for real-time, multi-user, interactive and collaborative environments on the web
US8086960B1 (en) 2007-05-31 2011-12-27 Adobe Systems Incorporated Inline review tracking in documents
US20090006568A1 (en) 2007-06-28 2009-01-01 Microsoft Corporation Network-based collaboration record
US8484578B2 (en) * 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US8762880B2 (en) * 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
WO2009023896A1 (en) 2007-08-21 2009-02-26 Remarkspdf Pty Ltd A document markup tool
US8572199B2 (en) * 2007-09-26 2013-10-29 Microsoft Corporation Dynamic instant comments
US9170997B2 (en) * 2007-09-27 2015-10-27 Adobe Systems Incorporated Commenting dynamic content
US7950064B2 (en) 2007-11-16 2011-05-24 International Business Machines Corporation System and method for controlling comments in a collaborative document
US20090249224A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US8533238B2 (en) * 2008-04-30 2013-09-10 Microsoft Corporation Sharing information about a document across a private computer network
US20100095198A1 (en) 2008-10-15 2010-04-15 Apple Inc. Shared comments for online document collaboration
US8656266B2 (en) * 2008-12-18 2014-02-18 Google Inc. Identifying comments to show in connection with a document
US9292481B2 (en) * 2009-02-27 2016-03-22 Adobe Systems Incorporated Creating and modifying a snapshot of an electronic document with a user comment
US20100251092A1 (en) * 2009-03-25 2010-09-30 Sun Jun-Shi Method and System for Processing Fixed Format Forms Online
WO2011019296A1 (en) * 2009-08-12 2011-02-17 Google Inc. User interface for web comments
JP5586932B2 (ja) 2009-12-11 2014-09-10 キヤノン株式会社 データ処理装置、画像形成装置、データ処理装置の制御方法、画像形成装置の制御方法、及びプログラム
US8589815B2 (en) * 2010-03-10 2013-11-19 Microsoft Corporation Control of timing for animations in dynamic icons
US8793598B2 (en) * 2010-04-14 2014-07-29 Microsoft Corporation Cross-browser web dialog platform
CN101894168B (zh) * 2010-06-30 2013-02-06 优视科技有限公司 移动终端网页页面的排版显示方法及系统
US8484569B2 (en) 2010-06-30 2013-07-09 International Business Machines Corporation Saving and restoring collaborative applications in context
US8843832B2 (en) 2010-07-23 2014-09-23 Reh Hat, Inc. Architecture, system and method for a real-time collaboration interface
US20120084215A1 (en) 2010-10-05 2012-04-05 Accenture Global Services Limited Electronic Process-Driven Collaboration System
US9367530B2 (en) 2011-01-21 2016-06-14 Jive Software Distributed document co-authoring and processing
US8996985B1 (en) 2011-03-16 2015-03-31 Google Inc. Online document processing service for displaying comments
US20120284618A1 (en) 2011-05-06 2012-11-08 Microsoft Corporation Document based contextual communication
US9015576B2 (en) * 2011-05-16 2015-04-21 Microsoft Technology Licensing, Llc Informed partitioning of data in a markup-based document
US20130111391A1 (en) * 2011-11-01 2013-05-02 Microsoft Corporation Adjusting content to avoid occlusion by a virtual input panel
US9064237B2 (en) 2012-01-23 2015-06-23 Microsoft Technology Licensing, Llc Collaborative communication in a web application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010522935A (ja) * 2007-03-29 2010-07-08 アマゾン テクノロジーズ インコーポレイテッド デジタル著作物に関する注釈の提供
JP2011501847A (ja) * 2007-10-17 2011-01-13 アイティーアイ・スコットランド・リミテッド コンピュータで実現される方法
JP2011141616A (ja) * 2010-01-05 2011-07-21 Fujifilm Corp ドキュメント閲覧システム及びドキュメント配信装置

Also Published As

Publication number Publication date
JP2015513134A (ja) 2015-04-30
WO2013112391A1 (en) 2013-08-01
CN104094251A (zh) 2014-10-08
US10528653B2 (en) 2020-01-07
JP6763899B2 (ja) 2020-09-30
US20130191720A1 (en) 2013-07-25
EP2807577A1 (en) 2014-12-03
KR20140125361A (ko) 2014-10-28
US9064237B2 (en) 2015-06-23
EP2807577A4 (en) 2016-01-06
CN104094251B (zh) 2017-03-22
JP2018136951A (ja) 2018-08-30
US20150286624A1 (en) 2015-10-08

Similar Documents

Publication Publication Date Title
KR102122104B1 (ko) 웹 애플리케이션에서의 협업 통신 기법
US10684769B2 (en) Inset dynamic content preview pane
US10635540B2 (en) Modern document save and synchronization status
US10282392B2 (en) Interacting with data from a document via document an application pages
US10535043B2 (en) Navigating a calendar
US10248439B2 (en) Format object task pane
TW201346596A (zh) 使用文件註解來追蹤共同編輯之衝突
KR20150021500A (ko) 리본을 사용하여 애플리케이션 사용자 인터페이스에 액세스하는 기법
US20150286349A1 (en) Transient user interface elements
US20150135054A1 (en) Comments on Named Objects
US10210483B2 (en) Creating recurring appointments
EP3108381B1 (en) Encoded associations with external content items
KR102267925B1 (ko) 작성 애플리케이션 확장판 활성화 기법
US20140365879A1 (en) Using aliases for date entry
US20140075277A1 (en) Tap-To-Open Link Selection Areas

Legal Events

Date Code Title Description
N231 Notification of change of applicant
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
X701 Decision to grant (after re-examination)