KR20080002815A - 전자 정보의 탐색, 내비게이션 및 검색 - Google Patents

전자 정보의 탐색, 내비게이션 및 검색 Download PDF

Info

Publication number
KR20080002815A
KR20080002815A KR1020077022970A KR20077022970A KR20080002815A KR 20080002815 A KR20080002815 A KR 20080002815A KR 1020077022970 A KR1020077022970 A KR 1020077022970A KR 20077022970 A KR20077022970 A KR 20077022970A KR 20080002815 A KR20080002815 A KR 20080002815A
Authority
KR
South Korea
Prior art keywords
navigation
user
search
attribute
information
Prior art date
Application number
KR1020077022970A
Other languages
English (en)
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 KR20080002815A publication Critical patent/KR20080002815A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

컴퓨터 시스템 내비게이션 도구는 여러가지 서로 다른 파일, 리스트, 폴더, 및/또는 기타 저장 요소(7C)로의 "링크"를 제공하고, 사용자로 하여금, 예를 들어, 계층적 속성, 리스트, 자동 리스트, 폴더, 기타 등등에 의해 파일들을 조직화할 수 있게 해준다(5). 이러한 시스템 및 방법은, 사용자로 하여금 (선택에 따라서는, 계층적 방식으로) 파일에 속성을 할당하고(3), 할당된 속성을 변경하며, 할당된 속성, 기타 등등에 기초하여 정보를 탐색, 보기 및 검색할 수 있게 해준다.
탐색, 내비게이션, 검색, 전자 정보, 폴더

Description

전자 정보의 탐색, 내비게이션 및 검색{SEARCHING, NAVIGATING, AND RETRIEVING ELECTRONIC INFORMATION}
본 발명은 일반적으로 전자 데이터 및 기타 정보를 컴퓨터 시스템 또는 네트워크 상에 저장, 탐색, 내비게이션 및 검색하는 시스템, 방법 및 컴퓨터 실행가능 명령어를 그 위에 저장하고 있는 컴퓨터 판독가능 매체는 물론, 이들 기능과 연관되어 있고 이들 기능을 수행하는 데 이용가능한 사용자 인터페이스의 측면에 관한 것이다.
엄청난 분량의 정보가 컴퓨터 시스템 및 네트워크 상에 저장되어 있고 및/또는 이들을 통해 이용가능하며, 이 정보는 다양한 서로 다른 목적을 위해 컴퓨터 사용자가 이용가능하게 될 수 있다. 컴퓨터가 이러한 풍부한 정보를 사용자에게 제공할 수 있을지라도, 이 정보는 사용자가 원하는 정보를 시스템 또는 네트워크로부터 신뢰성있게 찾아내고 검색할 수 있는 경우에만 사용자에게 가치있고 유용하다. 이 저장된 정보는, 그 정보가 상당한 탐색 시간, 노력 및/또는 좌절이 없이 용이하게 찾아내고 및/또는 검색될 수 없는 경우, 사용자에게 거의 또는 전혀 가치가 없다.
본 발명의 측면들은 컴퓨터, 그의 운영 체제, 네트워크, 기타 등등의 저장 시스템에 대한 내비게이션 도구(navigation tool)를 제공하는 시스템, 방법 및 사용자 인터페이스에 관한 것이다. 본 발명의 적어도 몇몇 예들에 따르면, 다수의 서로 다른 윈도우, 응용 프로그램, 기타 등등에 내비게이션 도구 및/또는 그의 대응하는 사용자 인터페이스 및 디스플레이가 제공될 수 있다. 본 발명의 적어도 몇몇 예들에서, 내비게이션 도구 및/또는 그의 대응하는 사용자 인터페이스 및 디스플레이 패널(들)은 여러가지 서로 다른 파일, 리스트, 폴더, 페이지 및/또는 다른 저장 요소에 대한 "링크(link)"를 포함하는 창(window 또는 pane)을 포함할 수 있다. 원하는 경우, 서로 다른 응용 프로그램에 대해, 응용 프로그램의 일부분에 대해, 운영 체제의 일부분에 대해, 서로 다른 사용자에 의해, 기타 등등에 의해(예를 들어, 컴퓨터 운영 체제를 제공하는 독립적인 소프트웨어 제공자에 의해) 본 발명의 적어도 몇몇 측면들에 따른 내비게이션 도구는 그 일련의 파일, 기타 등등에 관한 및/또는 그 사용자에 관한 정보를 찾아가는 것에 더 적합하도록 또는 그를 위해 커스터마이즈될 수 있다. 본 발명의 적어도 몇몇 예들에 따른 내비게이션 도구는 또한 예를 들어 계층적 속성, 리스트, 자동 리스트(auto list), 폴더, 기타 등등에 의해 사용자의 파일에 관한 정보를 구성 및/또는 디스플레이하는 유용한 방식들을 제공할 수 있다. 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 또한, 선택에 따라서는 계층적 속성의 사용에 의해, 사용자가 속성을 파일에 할당하는 것, 파일과 연관되어 있는 할당된 속성을 변경하는 것, 기타 등등이 쉽도록 해줄 수 있다. 게다가, 본 발명의 적어도 몇몇 예들에 따르면, 예를 들어 질의-기반 파일 및/또는 검색 시스템에서, 저장된 또는 액세스가능한 파일에 관한 정보의 검색, 찾아내기 및 보기(view)를 위해 내비게이션 도구(navigation tool)가 제공될 수 있다.
본 발명의 부가적인 측면들은, 컴퓨터 저장 시스템에 위치하고 및/또는 상기한 바와 같이 컴퓨터 시스템을 통해 액세스가능한 파일에 관한 정보의 구성, 검색, 찾아내기 및/또는 디스플레이를 위해 내비게이션 도구를 갖는 시스템 및 방법을 비롯하여, 여러가지 방법을 수행하기 위해 및/또는 여러가지 시스템을 동작시키기 위한 컴퓨터-실행가능 명령어가 저장되어 있는 컴퓨터 판독가능 매체에 관한 것이다(이에 대해서는 이하에서 보다 상세히 기술함).
도 1은 본 발명의 어떤 측면들이 구현될 수 있는 범용 디지털 컴퓨팅 환경의 개략도.
도 2A 및 도 2B는 각각 본 발명의 적어도 몇몇 예들에 따른 허용(permitted) 및 비허용(non-permitted) 계층적 속성 경로(hierarchical property path)의 예들을 나타낸 도면.
도 3은 본 발명의 예들에 따른, 연관된 계층적 속성을 갖는 새로운 항목(예를 들어, 파일)을 저장하는 사용자 인터페이스의 일례를 나타낸 도면.
도 4는 본 발명의 예들에 따른, 저장된 항목(예를 들어, 디지털 사진 파일)에 관한 정보를 포함하는 예시적인 "미리보기 패널(preview panel)"을 나타낸 도면.
도 5은 본 발명의 일례에 따른, 계층적 속성의 계층적 배열을 변경하는 예를 나타낸 도면.
도 6은 본 발명의 몇몇 예들에 따른, 내비게이션 패널(navigational panel)을 갖는 예시적인 사용자 인터페이스를 나타낸 도면.
도 7A 및 도 7B는 본 발명의 예들에 따른, 내비게이션 및 디스플레이 동작 동안에 사용될 수 있는 서로 다른 유효범위(scope)의 예들을 나타내는 도면.
도 8 내지 도 18은 본 발명의 예들에 따른, 내비게이션 및 디스플레이 동작에서 다중 속성 또는 기타 정보 선택 동안의 사용자 인터페이스, 디스플레이, 및 동작의 예를 나타낸 도면.
도 19 내지 도 26은 본 발명의 예들에 따른, 내비게이션 및 디스플레이 동작에서 항목들(예를 들어, 전자 파일들)의 그룹화, 스태킹(stacking) 및 필터링 동안의 사용자 인터페이스, 디스플레이, 및 동작의 예를 나타낸 도면.
본 발명의 여러가지 목적, 특징 및 이점은 첨부 도면과 관련하여 기술된 이하의 상세한 설명으로부터 보다 쉽게 분명하게 되고 또 보다 완전하게 이해될 것이다.
상기한 바와 같이, 본 발명의 측면들은 컴퓨팅 시스템 및/또는 네트워크 내에 있는 또한 이를 통해 이용가능한 전자 정보를 저장, 탐색, 내비게이션 및/또는 검색하는 시스템, 방법 및 컴퓨터 판독가능 매체에 관한 것이다. 서브섹션은 용어, 본 발명의 여러가지 측면의 개괄적 설명, 예시적인 하드웨어, 본 발명에 따른 예시적인 시스템, 방법 및 컴퓨터 판독가능 매체, 및 결론을 포함한다.
I. 용어
이하의 용어들이 본 명세서에서 사용될 수 있으며, 달리 언급되거나 문맥으로부터 분명하지 않는 한, 이들 용어는 이하에 제공된 의미를 갖는다.
"계층적 속성(Hierarchical Property)" - 고유의 문자열을 분류하는 순서화된 컬렉션(ordered collection)을 포함할 수 있는 값을 갖는 일종의 속성. 각각의 문자열은 예를 들어 그것이 지정되는 경로에 의해 특정될 수 있으며, 이 경로는 또한 각각의 속성값이 속하는 카테고리를 정의하는 데 사용될 수 있다.
"부모 속성값" - 하나 이상의 가능한 자식 속성값을 갖는 속성값.
"자식 속성값" - 다른 속성값의 자식인 속성값.
"자동 리스트" - 사전 선택된 일련의 필터 조건에 일치하는 고정된 유효범위에 걸쳐 정보에 대한 질의로부터 얻어지는 파일 또는 기타 데이터의 리스트. "자동 리스트"의 예는 파일 생성 일자, 파일 생성 시간, 마지막 편집 일자, 마지막 편집 시간, 파일 등급 데이터, 파일 저작자 리스트, 마지막 사용 = 어제, 마지막 사용 = 지난주, 기타 등등을 포함하지만, 이에 한정되는 것은 아니다. 이하에 기술하는 바와 같이, "내비게이션 패널(navigation panel)"은 하나 이상의 "자동 리스트"를 포함할 수 있다.
"리스트" - 자동 리스트, 파일, 파일 컬렉션(file collection), 폴더, 기타 등등에 대한 단축키 또는 "링크". 이하에 기술하는 바와 같이, "내비게이션 패널"은 하나 이상의 "리스트"를 포함할 수 있다.
"페이지" - 특정의 폴더, 가상 폴더, 리스트, 자동 리스트, 기타 등등. "페 이지"는, 본 발명의 측면들에 따른 내비게이션 도구로부터, 예를 들어, 메뉴로부터 항목을 선택하는 등에 의해, 사용자가 내비게이션할 수 있는 계층적 테이블로 노드를 구성할 수 있다. 저장 시스템에 있는 및/또는 컴퓨터 시스템 또는 네트워크를 통해 이용가능한 여러가지 레벨에서의 개개의 "페이지" 또는 "페이지"의 리스트는, 이하에서 보다 상세히 기술하는 바와 같이, 내비게이션 패널 및/또는 디스플레이 패널에 나타날 수 있다.
"컴퓨터 판독가능 매체" - 컴퓨터 상에서 사용자에 의해 액세스될 수 있는 임의의 이용가능한 매체. 제한이 아닌 예로서, "컴퓨터 판독가능 매체"는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. "컴퓨터 저장 매체"는, 컴퓨터 판독가능 명령어, 데이터 구조체, 프로그램 모듈 또는 기타 데이터 등의, 임의의 정보 저장 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 이동불가식 매체를 포함한다. "컴퓨터 저장 매체"는 RAM, ROM, EEPROM, 플래쉬 메모리, 또는 기타 메모리 기술, CD-ROM, DVD, 또는 기타 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용될 수 있고 또 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이에 한정되는 것은 아니다. "통신 매체"는 일반적으로 컴퓨터-판독가능 명령어, 데이터 구조체, 프로그램 모듈 또는 기타 데이터를, 반송파 또는 다른 전송 메카니즘 등의 피변조 데이터 신호로 구현하며, 임의의 정보 전달 매체를 포함한다. 용어 "피변조 데이터 신호"는 그 신호에 정보를 인코딩하는 방식으로 그 신호의 특성 중 하나 이상을 설정 또는 변경시킨 신호를 의미한다. 제한이 아닌 예로서, 통 신 매체는 유선 네트워크 또는 다이렉트 유선 접속 등의 유선 매체, 및 음향, RF, 적외선 및 기타 무선 매체 등의 무선 매체를 포함한다. 상기한 것들 중 임의의 것의 조합도 역시 "컴퓨터 판독가능 매체"의 범위 내에 포함되어야 한다.
II. 본 발명의 여러가지 측면의 개괄적 설명
A. 계층적 관계로 속성을 저장
본 발명의 측면들은 데이터 구조체가 그 위에 저장되어 있는 컴퓨터 판독가능 매체에 관한 것이다. 본 발명의 적어도 몇몇 예들에 따른 데이터 구조체는 (a) 전자 파일의 내용 중 적어도 일부를 포함하는 제1 데이터 집합(data set), 및 (b) 전자 파일과 연관된 속성 데이터를 포함하는 제2 데이터 집합을 포함할 수 있다. 이 제2 데이터 집합은 전자 파일과 연관된 제1 속성을 나타내는 제1 단층 경로 문자열(flat path string)을 포함할 수 있으며, 여기서 제1 단층 경로 문자열은 속성 데이터의 계층적 구조를 나타낸다. 선택에 따라서는, 원하는 경우, 제2 데이터 집합은, 예를 들어, 계층적 구조체에서, 전자 파일과 연관된 다수의 속성을 나타내는 데이터의 다수의 단층 경로 문자열을 포함할 수 있다. 제2 데이터 집합은 임의의 원하는 방식으로, 예를 들어, 제1 데이터 집합에 포함되고 및/또는 그와 연관되어 있는 메타데이터로서 제공될 수 있다. 물론, 원하는 경우, 부가적인 속성 데이터를 포함하는 제3 데이터 집합(또는 심지어 더 많은 데이터 집합)이 전자 파일에 포함되고 및/또는 그와 연관될 수 있으며, 여기서 제3 데이터 집합(또는 부가의 데이터 집합)은 전자 파일과 연관된 다른 속성을 나타내는 다른 단층 경로 문자열을 포함하고, 이 부가적인 단층 경로 문자열은 제3(또는 부가적인) 데이터 집합에서의 속성 데이터의 계층적 구조를 나타낸다.
본 발명의 부가의 예시적인 측면은 계층적 속성 정보를 포함하는 전자 데이터를 저장하는 시스템 및 방법에 관한 것이다. 이러한 시스템 및 방법은 (a) (하나 이상의 컴퓨터 프로세싱 시스템을 사용하여) 컴퓨터 판독가능 매체 상에 저장하기 위한 전자 데이터를 포함하는 전자 파일을 생성하는 단계, (b) (예를 들어, 마우스, 펜, 디지타이저, 키보드, 네트워크 접속, 디스크 드라이브, 기타 등등을 통해) 전자 파일의 일부로서 포함되거나 전자 파일과 연관될 제1 속성값을 나타내는 입력 데이터를 수신하는 단계 - 제1 속성값은 제1 속성값을 나타내는 제1 단층 경로 문자열을 포함하는 제1 데이터 집합을 포함하고, 제1 단층 경로 문자열은 제1 속성값의 계층적 구조를 나타냄 -, 및 (c) 전자 파일을 그 안에 포함되거나 그와 연관된 제1 단층 경로 문자열과 함께 (예를 들어, 전자 메모리 장치에) 저장하는 단계 - 제1 단층 경로 문자열은, 예를 들어, 링크 정보를 통해, 파일의 일부로서, 메타데이터로서, 기타 등등으로, 임의의 원하는 방식으로 저장되거나 전자 파일과 연관됨 - 를 포함할 수 있다. 선택에 따라서는, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 또한 전자 파일의 일부로서 포함되거나 전자 파일과 연관될 제2 속성값을 나타내는 입력 데이터를 수신할 수 있으며, 제2 속성값은 제2 속성값을 나타내는 제2 단층 경로 문자열을 포함하는 제2 데이터 집합을 포함하고, 제2 단층 경로 문자열은 제2 속성값의 계층적 구조를 나타내며, 전자 파일의 저장은 전자 파일을 그 안에 포함되거나 그와 연관된 제2 단층 경로 문자열과 함께 저장하는 것을 포함한다. 임의의 수의 속성값이 본 발명에 따라 이러한 방식으로 전자 파일 에 저장 및/또는 전자 파일과 연관될 수 있다.
본 발명의 또다른 부가적인 예시적인 측면은 전자 데이터와 연관된 계층적 속성 정보를 포함하는 전자 데이터를 처리하는 시스템 및 방법에 관한 것이다. 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 (a) 컴퓨터 시스템 또는 네트워크를 통해 (예를 들어, 컴퓨터 시스템의 메모리 또는 네트워크의 메모리로) 복수의 정의된 속성값의 계층적 구조를 나타내는 데이터를 수신하는 단계 - 각각의 정의된 속성값은 계층적 구조에서의 다른 정의된 속성값 전부와 비교하여 그와 연관된 고유의 단층 경로 데이터 문자열을 가짐 -, (b) (예를 들어, 마우스, 펜, 디지타이저, 키보드, 네트워크 접속, 디스크 드라이브, 기타 등등을 통해) 계층적 구조에서의 사용자 요망 장소에 포함될 새로운 속성값을 나타내는 사용자 입력을 수신하는 단계, 및 (c) 계층적 구조에서의 사용자 요망 장소에 기초하여, 새로운 속성값이 계층적 구조에 존재하는 다른 단층 경로 데이터 문자열 전부와 다른 단층 경로 데이터 문자열을 갖는지를 판정하는 단계를 포함할 수 있다. 새로운 속성값에 대한 단층 경로 데이터 문자열은, 예를 들어, 적어도 제1 부모 속성 부분 및 제1 자식 속성 부분을 포함할 수 있다(선택에 따라서는, 제1 부모 속성 부분 또는 제1 자식 속성 부분 중 적어도 하나는 계층적 구조에서 적어도 하나의 다른 정의된 속성값의 일부분과 동일할 수 있음). 이 방법은 또한 새로운 속성값에 대한 단층 경로 데이터 문자열이 계층적 구조에 존재하는 속성들에 대한 다른 단층 경로 데이터 문자열 전부와 다르다고 판정되는 경우 사용자 요망 장소에서 새로운 속성값을 계층적 구조에 추가하는 단계를 포함할 수 있다.
본 발명의 예들에 따른 여러가지 시스템 및 방법의 사용에서, 사용자는 탐색 질의(search query)를 나타내는 입력을 시스템에 입력할 수 있고, 이 탐색 질의는 계층적 속성 구조에서의 속성값을 포함하는 탐색 속성의 선택을 포함한다. 탐색 질의가 입력되면, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 (선택에 따라서는, 탐색될 파일의 유효범위를 제한하는 탐색 유효범위(search scope)를 갖는) 컴퓨터 시스템 또는 네트워크에 저장되어 있거나 이를 통해 이용가능한 어느 전자 파일이 탐색 질의를 만족시키는지를 판정할 수 있고, 탐색 질의를 만족시키는 것으로 판정된 전자 파일은 그 안에 저장되어 있거나 그와 연관된 제1 탐색 속성을 포함한다. 다른 예로서, 탐색 질의는 계층적 구조에서의 다수의 속성의 사용자 선택을 포함할 수 있으며, (선택에 따라서는, 제한된 탐색 유효범위 내에서) 컴퓨터 시스템 또는 네트워크 상에 저장되거나 이를 통해 이용가능한 어느 전자 파일이 탐색 질의를 만족시키는지의 판정은 선택된 속성들 중 적어도 하나를 포함하는 전자 파일의 ID(identification)를 포함할 수 있다.
본 발명의 예들에 따른 컴퓨터 판독가능 매체, 시스템 및 방법에 포함된 속성 데이터는 본 발명을 벗어나지 않고 임의의 적당한 또는 원하는 방식으로, 예를 들어, 속성 데이터 집합 내의 속성 데이터의 계층적 구조를 나타내도록 하는 방식으로 저장될 수 있다. 예로서, 속성 데이터 구조체는 이하의 형식, 즉 부모 속성값 - 구분자 - 자식 속성값, 부모 속성값 - 구분자 - 자식 속성값 - 구분자 - 손자 속성값, 자식 속성값 - 구분자 - 부모 속성값, 및/또는 자식 속성값 - 구분자 - 부모 속성값 - 구분자 - 조부모 속성값 중 하나를 가질 수 있다. 물론, 단층 경로 데이터 문자열에서의 데이터 구조 및 속성 계층 구조에서의 임의의 수의 레벨이 본 발명을 벗어나지 않고 제공될 수 있다.
본 발명의 부가적인 측면은, 상기한 여러가지 방법을 수행하고 및/또는 여러가지 시스템을 동작시키기 위한 컴퓨터 판독가능 매체를 비롯하여, 계층적 속성 데이터를 제공하고 및/또는 계층적 속성 데이터를 사용하기 위한, 예를 들어 전자 파일 및 관련 정보를 저장, 탐색, 내비게이션, 및/또는 검색하기 위한, 그 위에 저장된 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체에 관한 것이다.
B. 다중 속성 선택
본 발명의 다른 측면은, 전자 파일 속성 데이터의 다중 선택을 비롯하여, 다수의 사용자 선택을 포함하는 입력 데이터를 처리하는 방법 및 시스템에 관한 것이다. 이러한 시스템 및 방법은, 예를 들어, (a) (예를 들어, 마우스, 펜, 디지타이저, 키보드, 네트워크 접속, 디스크 드라이브, 기타 등등의 사용자 입력 장치를 통해) 복수의 탐색 요소를 포함하는 계층적 구조로부터 제1 탐색 매개변수를 선택하는 단계, (b) (예를 들어, 마우스, 펜, 디지타이저, 키보드, 네트워크 접속, 디스크 드라이브, 기타 등등의 사용자 입력 장치를 통해) 계층적 구조로부터 제2 탐색 매개변수를 선택하는 단계, 및 (c) (예를 들어, 컴퓨터 프로세싱 시스템을 사용하여) 제1 탐색 매개변수가 계층적 구조에서 제2 탐색 매개변수와 동일한 요소 집합 내에 위치하는지를 판정하는 단계를 포함할 수 있다. 제1 탐색 매개변수가 제2 탐색 매개변수와 동일한 요소 집합 내에 위치하는 것으로 판정되는지 여부에 따라 여러가지 디스플레이가 컴퓨터 프로세싱 시스템에 의해 (예를 들어, 컴퓨터 디스플레 이 장치 상에) 생성될 수 있다. 본 발명의 적어도 몇몇 예들에 따르면, 제1 탐색 매개변수가 계층적 구조에서 제2 탐색 매개변수와 동일한 요소 집합 내에 위치하는 것으로 판정되는 경우, 제1 탐색 매개변수 또는 제2 탐색 매개변수를 만족시키는 전자 파일들의 합집합을 나타내는 탐색 결과가 디스플레이될 수 있다. 이에 부가하여 또는 다른 대안으로서, 제1 탐색 매개변수가 계층적 구조에서 제2 탐색 매개변수의 요소 집합 밖에 위치하는 것으로 판정되는 경우, 제1 탐색 매개변수 및 제2 탐색 매개변수 둘다를 만족시키는 전자 파일의 교집합을 나타내는 탐색 결과가 디스플레이될 수 있다.
본 발명의 적어도 몇몇 예들에 따르면, 여러가지 탐색 요소의 계층적 구조(들)은 계층적 방식으로 배열된 복수의 속성을 포함할 수 있다. 탐색 매개변수들 중 적어도 하나는 이들 정의된 속성값들 중 하나를 포함할 수 있다. 선택에 따라서는, 적어도 몇몇 예들에서, 탐색 요소들 중 적어도 하나는 계층적 구조에서 폴더 요소, 리스트 요소, 자동 리스트 요소, 또는 임의의 다른 원하는 요소를 구성하게 된다. 본 발명의 적어도 몇몇 예들의 또다른 부가적인 특징은, 선택에 따라서는, 탐색 요소의 계층적 구조 및/또는 탐색 유효범위를 위해 계층적 구조의 일부분을 선택하는 사용자 입력에 적어도 부분적으로 기초하여, 탐색 활동에 대한 유효범위를 결정 또는 정의하는 것을 포함할 수 있다.
본 발명의 부가적인 측면은, 상기한 것들과 같은 시스템 및 방법을 비롯하여, 여러가지 탐색 방법을 수행하고 및/또는 여러가지 탐색 시스템을 동작시키기 위한, 그 위에 저장된 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체에 관한 것이다.
C. 디스플레이 패널에서의 그룹화 및 스태킹
본 발명의 또다른 부가의 예시적인 측면은 컴퓨터 시스템 또는 네트워크 상에 저장되거나 그를 통해 이용가능한 전자 파일을 탐색하는 사용자 인터페이스를 제공하는 컴퓨터 디스플레이에 관한 것이다. 본 발명의 적어도 몇몇 예들에 따른 사용자 인터페이스는 (a) 탐색 요소들의 계층적 구조를 디스플레이하는 내비게이션 패널 - 계층적 구조에서의 적어도 몇몇 개별적인 탐색 요소는 계층적 구조에 하나 이상의 자식 탐색 요소를 디스플레이하기 위해, 선택에 따라서는, 사용자 입력에 응답하여 확장(expand)될 수 있고, 내비게이션 패널은 하나 이상의 탐색 요소에 관한 사용자 입력을 수신함 -, 및 (b) 적어도 부분적으로 전자 파일의 탐색으로부터 획득된 탐색 결과에 관한 정보를 디스플레이하는 디스플레이 패널 - 이 탐색 결과는, 적어도 부분적으로, 내비게이션 패널을 통해 수신된 사용자 입력에 기초하여 결정됨 - 을 포함할 수 있다. 확장되어 있는 경우, 내비게이션 패널의 계층적 구조에서의 개개의 탐색 요소는, 탐색 결과가 디스플레이 패널에서 디스플레이되는 방식(예를 들어, 스태킹 방식(stacked manner), 그룹화 방식(grouped manner), 그룹화 및 스태킹 결합 방식(combined grouped and stacked manner), 기타 등등)에 상관없이, 계층적 구조로 자식 요소를 디스플레이하기 위해 확장된 채로 있을 수 있다. 계층적 구조에서의 여러가지 탐색 요소는, 예를 들어, 속성값, 리스트 요소, 자동 리스트 요소, 폴더 요소, 기타 등등을 포함할 수 있고, 계층적 구조는 적어도 부분적으로 개개의 사용자 입력에 의해 정의될 수 있다.
본 발명에 따른 사용자 인터페이스의 적어도 몇몇 예들에 따르면, 내비게이션 패널의 계층적 구조에서 자식 탐색 요소를 선택하거나 다른 방식으로 탐색 요소를 변경하는 사용자 입력은 사용자 인터페이스의 디스플레이 패널에 디스플레이되는 탐색 결과에서의 대응하는 변경을 생성 및/또는 추진하게 된다.
본 발명의 다른 예시적인 측면은 컴퓨터 시스템 또는 네트워크 상에 저장되거나 그를 통해 이용가능한 전자 데이터를 내비게이션하는 시스템 및 방법에 관한 것이다. 이러한 시스템 및 방법은 (a) (예를 들어 컴퓨터 프로세싱 시스템을 사용하여) 내비게이션 요소의 계층적 구조를 디스플레이하는 내비게이션 패널을 제공하는 단계 - 계층적 구조에서의 적어도 몇몇 개별적인 내비게이션 요소는 계층적 구조에 자식 내비게이션 요소를 디스플레이하기 위해, 선택에 따라서는, 사용자 입력에 응답하여 확장될 수 있음 -, (b) 내비게이션 패널을 통해, 내비게이션 요소들 중 하나 이상을 선택하는 사용자 입력을 (예를 들어, 마우스, 펜, 디지타이저, 키보드, 네트워크 접속, 디스크 드라이브, 기타 등등의 사용자 입력 장치를 통해) 수신하는 단계, 및 (c) 적어도 부분적으로 전자 데이터의 탐색으로부터 획득된 탐색 결과에 관한 정보를, 예를 들어, 디스플레이 장치 상에 디스플레이하는 단계 - 탐색 결과는 (예를 들어, 컴퓨터 프로세싱 시스템을 사용하여), 적어도 부분적으로, 내비게이션 패널을 통해 수신된 사용자 입력에 기초하여 결정되고, 이 정보는 내비게이션 패널의 디스플레이와 동시에 디스플레이 장치 상에 디스플레이됨 - 를 포함할 수 있다. 게다가, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 또한 (예를 들어, 상기한 입력 시스템을 통해) 계층적 구조로부터의 하나 이상의 새로운 내비게이션 요소를 선택하는 새로운 사용자 입력을, 내비게이션 패널을 통해, 수신하는 단계, 및 (예를 들어, 컴퓨터 프로세싱 시스템을 사용하여) 선택된 새로운 내비게이션 요소 또는 요소들에 적어도 부분적으로 기초하여, 디스플레이된 정보를 변경하는 단계 - 변경된 정보는 내비게이션 패널과 동시에 디스플레이 장치 상에 디스플레이됨 - 를 포함할 수 있다. 새로운 사용자 입력은, 적어도 몇몇 예들에서, 최초로 선택된 내비게이션 요소로부터 계층적 구조에서의 자식 내비게이션 요소를 구성할 수 있으며, 그에 따라 디스플레이된 정보를 필터링하여 축소시킬 수 있다. 다시 말하면, 계층적 구조에서의 여러가지 탐색 요소는 예를 들어 속성값, 리스트 요소, 자동 리스트 요소, 폴더 요소, 기타 등등을 포함할 수 있고, 계층적 구조는, 적어도 부분적으로, 개개의 사용자 입력에 의해 정의될 수 있다.
본 발명의 적어도 몇몇 예들에 따른 또다른 부가의 시스템 및 방법은 컴퓨터 시스템 또는 네트워크 상에 저장되어 있거나 이를 통해 이용가능한 전자 데이터에 관한 정보를 디스플레이하는 시스템 및 방법을 포함할 수 있다. 이러한 시스템 및 방법은, 예를 들어, (a) 예를 들어, 디스플레이 장치(컴퓨터 프로세싱 시스템을 사용하여 생성됨) 상에, 내비게이션 요소의 계층적 구조를 디스플레이하는 내비게이션 패널을 제공하는 단계 - 계층적 구조에서의 개개의 내비게이션 요소들 중 적어도 몇몇은 폴더 요소를 포함함 -, (b) (예를 들어, 상기한 바와 같은 사용자 입력 장치를 사용하여) 내비게이션 패널을 통해, 적어도 하나의 폴더 요소를 선택하는 사용자 입력을 수신하는 단계, 및 (c) 적어도 부분적으로, 전자 데이터의 탐색으로부터 획득된 탐색 결과에 관한 정보를 디스플레이 장치 상에 디스플레이하는 단계 - 탐색 결과는 (예를 들어, 컴퓨터 프로세싱 시스템을 사용하여) 내비게이션 패널을 통해 수신된 사용자 입력에 적어도 부분적으로 기초하여 결정되고, 이 정보는 내비게이션 패널의 디스플레이와 동시에 디스플레이되며, 이 정보는 선택된 폴더 요소 아래에 제공되는 임의의 서브폴더가 스택(stack)으로서 디스플레이되도록 디스플레이됨 - 를 포함할 수 있다. 본 발명의 예들에 따른 적어도 몇몇 시스템 및 방법의 부가적인 특징은, 내비게이션 패널을 통해, 계층적 구조로부터의 하나 이상의 새로운 내비게이션 요소를 선택하는 새로운 사용자 입력을 (예를 들어, 사용자 입력 장치를 통해) 수신하는 단계, 및 (디스플레이를 생성하기 위해 컴퓨터 프로세싱 시스템을 사용하여) 선택된 새로운 내비게이션 요소 또는 요소들에 적어도 부분적으로 기초하여, 디스플레이된 정보를 변경하는 단계를 포함할 수 있다. 새로운 사용자 입력은 계층적 구조에서 속성값을 선택하는 데 사용될 수 있으며, 디스플레이된 정보는, 적어도 부분적으로, 그와 연관된 선택된 속성값을 갖는 전자 데이터에 대응할 수 있다.
본 발명의 또다른 부가의 측면은 사용자 인터페이스를 제공하고, 여러가지 탐색 및/또는 디스플레이 방법을 수행하며, 및/또는 여러가지 탐색 및/또는 디스플레이 시스템을 동작시키는 컴퓨터 실행가능 명령어를 그 위에 저장하고 있는 컴퓨터 판독가능 매체에 관한 것으로서, 상기한 것들과 같이 사용자 인터페이스를 제공하고, 여러가지 검색 및/또는 디스플레이 방법을 수행하며, 및/또는 여러가지 시스템을 동작시키는 것을 비롯하여, 계층적 탐색 및 내비게이션 요소의 사용을 포함한다.
III. 예시적인 하드웨어
도 1은 본 발명의 여러가지 측면들을 구현하는 데 사용될 수 있는 범용 디지털 컴퓨팅 환경의 개략도를 나타낸 것이다. 도 1에서, 컴퓨터(100)는 처리 장치(110), 시스템 메모리(120), 및 시스템 메모리(120)를 비롯한 각종 시스템 구성요소들을 처리 장치(110)에 연결시키는 시스템 버스(130)를 포함한다. 시스템 버스(130)는 메모리 버스 또는 메모리 컨트롤러, 주변 장치 버스, 및 각종 버스 아키텍처 중 임의의 것을 이용하는 로컬 버스를 비롯한 몇몇 유형의 버스 구조 중 어느 것이라도 될 수 있다. 시스템 메모리(120)는 판독 전용 메모리(ROM)(140) 및 랜덤 액세스 메모리(RAM)(150)를 포함할 수 있다.
시동 중과 같은 때에, 컴퓨터(100) 내의 구성요소들 사이의 정보 전송을 돕는 기본 루틴을 포함하는 기본 입/출력 시스템(BIOS)(160)은 ROM(140)에 저장되어 있다. 컴퓨터(100)는 또한 하드 디스크(도시 생략)에 기록을 하거나 그로부터 판독을 하는 하드 디스크 드라이브(170), 이동식 자기 디스크(190)에 기록을 하거나 그로부터 판독을 하는 자기 디스크 드라이브(180), CD-ROM 또는 기타 광 매체 등의 이동식 광 디스크(199)에 기록을 하거나 그로부터 판독을 하는 광 디스크 드라이브(191)를 포함한다. 하드 디스크 드라이브(170), 자기 디스크 드라이브(180) 및 광 디스크 드라이브(191)는 각각 하드 디스크 드라이브 인터페이스(192), 자기 디스크 드라이브 인터페이스(193), 및 광 디스크 드라이브 인터페이스(194)를 통해 시스템 버스(130)에 연결된다. 이들 드라이브들 및 이들과 관련된 컴퓨터-판독가능 매체는, 퍼스널 컴퓨터(100)를 위해, 컴퓨터 판독가능 명령어, 데이터 구조, 프 로그램 모듈, 및 기타 데이터의 비휘발성 저장을 제공한다. 당업자라면, 자기 카세트, 플래쉬 메모리 카드, DVD, 베르누이 카트리지, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM) 등의, 데이터를 저장할 수 있고 또 컴퓨터에 의해 액세스가능한 기타 유형의 컴퓨터-판독가능 매체도 역시 예시적인 운영 환경에서 사용될 수 있다는 것을 잘 알 것이다.
운영 체제(195), 하나 이상의 애플리케이션 프로그램(196), 기타 프로그램 모듈(197) 및 프로그램 데이터(198)를 비롯한 다수의 프로그램 모듈이 하드 디스크(170), 자기 디스크(190), 광 디스크(199), ROM(140) 또는 RAM(150) 상에 저장될 수 있다. 사용자는 키보드(101) 및 포인팅 장치(102)(마우스 등) 등의 입력 장치를 통해 컴퓨터(100)에 명령 및 정보를 입력할 수 있다. 기타 입력 장치(도시 생략)는 마이크, 조이스틱, 게임 패드, 위성 안테나, 스캐너 등을 포함할 수 있다. 이들 및 기타 입력 장치는 종종 시스템 버스(130)에 결합된 직렬 포트 인터페이스(106)를 통해 처리 장치(110)에 연결되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus, 범용 직렬 버스) 등의 다른 인터페이스에 의해 접속될 수도 있다. 게다가, 이들 장치는 적절한 인터페이스(도시 생략)를 통해 시스템 버스(130)에 직접 연결될 수 있다.
모니터(107) 또는 기타 유형의 디스플레이 장치도 비디오 어댑터(108) 등의 인터페이스를 통해 시스템 버스(130)에 연결될 수 있다. 모니터(107) 이외에, 퍼스널 컴퓨터는 일반적으로 스피커 및 프린터 등의 기타 주변 출력 장치(도시 생략)를 포함한다. 일례에서, 손으로 그린 입력(freehand input)을 디지털적으로 캡처 하기 위해 펜 디지타이저(165) 및 부속 펜 또는 스타일러스(166)가 제공된다. 펜 디지타이저(165)와 직렬 포트 인터페이스(106) 사이의 연결이 도 1에 도시되어 있지만, 실제로 펜 디지타이저(165)는 처리 장치(110)에 직접 연결될 수 있거나, 기술 분야에 공지된 바와 같이, 병렬 포트 또는 다른 인터페이스 및 시스템 버스(130) 등을 통해 임의의 적합한 방식으로 처리 장치(110)에 연결될 수 있다. 게다가, 도 1에서 디지타이저(165)가 모니터(107)로부터 떨어져 도시되어 있지만, 디지타이저(165)의 사용가능한 입력 영역이 모니터(107)의 디스플레이 영역과 동일한 공간에 걸쳐 있을 수 있다(co-extensive). 더욱이, 디지타이저(165)는 모니터(107)에 통합될 수 있거나 모니터(107) 상부에 있는 또는 다른 방식으로 그에 부착된 별도의 장치로서 존재할 수 있다.
컴퓨터(100)는 원격 컴퓨터(109)와 같은 하나 이상의 원격 컴퓨터로의 논리적 접속을 사용하여 네트워크화된 환경에서 동작할 수 있다. 원격 컴퓨터(109)는 서버, 라우터, 네트워크 PC, 피어 장치 또는 다른 공통 네트워크 노드일 수 있고, 간단함을 위해 단지 메모리 저장 장치(111)만이 도 1에 도시되어 있지만, 통상적으로 컴퓨터(100)와 관련하여 상술된 구성요소의 대부분 또는 그 전부를 포함한다. 도 1에 도시된 논리적 연결로는 LAN(112) 및 WAN(113)이 있다. 이러한 네트워킹 환경은, 유선 및 무선 접속 둘다를 사용하는, 사무실, 전사적 컴퓨터 네트워크(enterprise-wide computer network), 인트라넷 및 인터넷에서 일반적인 것이다.
LAN 네트워킹 환경에서 사용될 때, 컴퓨터(100)는 네트워크 인터페이스 또는 어댑터(114)를 통해 LAN(112)에 접속된다. WAN 네트워킹 환경에서 사용될 때, 퍼 스널 컴퓨터(100)는 통상적으로 인터넷과 같은 WAN(113)을 통해 통신 링크를 설정하기 위한 모뎀(115) 또는 기타 수단을 포함한다. 컴퓨터(100)에 대해 내장형 또는 외장형일 수 있는 모뎀(115)은 직렬 포트 인터페이스(106)를 통해 시스템 버스(130)에 접속될 수 있다. 네트워크화된 환경에서, 퍼스널 컴퓨터(100) 또는 그의 일부와 관련하여 기술된 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다.
도시된 네트워크 접속이 예시적인 것이며 이 컴퓨터들 사이에 통신 링크를 설정하는 기타 기술들이 사용될 수 있다는 것을 이해할 것이다. TCP/IP, 이더넷, FTP, HTTP, UDP, 기타 등등의 여러가지 잘 알려진 프로토콜 중 임의의 것이 존재하는 것으로 가정되며, 본 시스템은 사용자가 웹-기반 서버로부터 웹 페이지를 검색할 수 있게 해주기 위해 사용자-서버 구성으로 동작될 수 있다. 여러가지 종래의 웹 브라우저 중 임의의 것이 웹 페이지 상에 데이터를 디스플레이하고 이를 조작하기 위해 사용될 수 있다.
도 1 환경이 예시적인 환경을 나타내고 있지만, 다른 컴퓨팅 환경도 사용될 수 있다는 것을 이해할 것이다. 예를 들어, 본 발명의 하나 이상의 예들은 도 1에 도시되고 이상에서 설명한 여러가지 측면들 전부보다 적은 것을 갖는 환경을 사용할 수 있으며, 이들 측면은 당업자에게는 명백하게 될 여러가지 컴비네이션(combination) 및 서브컴비네이션(subcombination)으로 나타날 수 있다.
이제부터, 본 발명의 여러가지 예시적인 특징 및 측면들을 예시하는 데 도움이 되고 또 본 발명을 설명하는 데 도움이 되는 나머지 도면들과 관련하여 본 발명 이 기술될 것이다. 이 상세한 설명에 포함된 특정의 숫자 및 정보가 본 발명을 제한하는 것으로 해석되어서는 안된다.
IV. 본 발명에 따른 예시적인 시스템, 방법 및 컴퓨터-판독가능 매체
최근의 컴퓨터 운영 체제 및 그 운영 체제에서 유용한 응용 프로그램에서, 많은 파일 내비게이션(file navigation), 탐색(search), 열거(listing), 및/또는 검색(retrieval) 동작은 질의 동작을 통해 행해지는데, 그 이유는 시스템이 여러가지 질의 매개변수를 만족시키는 항목들(저장된 전자 파일 또는 기타 데이터 등)을 찾아내려고 시도하기 때문이다. 본 발명의 측면들은, 적어도 몇몇 예에서, 항목 배치 및 파일 저장을 위해서도 사용될 수 있는 내비게이션 도구를 제공하며, 이 도구는 사용자의 이들 파일 내비게이션, 탐색, 열거, 및/또는 검색 노력에 도움을 준다.
본 발명의 예시적인 측면에 따르면, 사용자는, 내비게이션 컨트롤 메뉴에서 임의의 페이지로 내비게이션하고 및/또는 그 페이지에 관한 정보를 찾아내고, 내비게이션 컨트롤 메뉴 또는 리스트에 페이지를 추가하며, 임의의 집합(속성 집합, 자동 리스트 집합, 리스트 집합, 폴더 집합, 기타 등등)에 항목을 추가하고, 기존의 및/또는 시스템 폴더(예를 들어, "내 문서" 폴더, 기타 등등)의 내용을 보며, 폴더 내의 확장된 서브폴더를 보고, 파일 또는 기타 항목에, 심지어 자동 리스트 또는 시스템 생성 리스트(system generated list)에 저장된 파일 또는 항목에 속성 또는 기타 데이터를 (예를 들어, 선택에 따라서는, 계층적 방식으로) 추가하는 등을 위해, 본 발명에 따른 내비게이션 도구를 사용할 수 있다. 게다가, 본 발명의 적어 도 몇몇 예시적인 측면들에 따르면, 사용자 및/또는 독립 소프트웨어 벤더는 서로 다른 응용 프로그램에서, 서로 다른 뷰에서, 서로 다른 동작 모드에서, 및/또는 기타 등등에서 사용하기 위해 시스템 내비게이션 도구를 커스터마이즈할 수 있다. 원하는 경우, 사용자는 또한 내비게이션 패널을 이전의 상태로 또는 그의 원래의 상태로 복원시키기 위해 여러가지 도구를 제공받을 수 있다.
보다 구체적인 예로서, 원하는 경우, 본 발명의 예들에 따른 내비게이션 도구는 사용자가 관심의 페이지에 관한 정보를 신속하게 찾아내고 볼 수 있게 해주는 리스트 및/또는 자동 리스트로 설계 또는 커스터마이즈될 수 있다. 예를 들어, 원하는 경우, 시스템은 사용자가 여러가지 문서들에 대해 이름 명기된 주저작자(underlying author)에 기초하여(사용자는, 예를 들어 특정의 저작자에 의한 특정의 문서를 찾아내기 위해, 원하는 경우, 스택(stack)에 추가적으로 파고 들어갈(drill down) 수 있음) 및/또는 파일들에 생성, 저장, 편집, 다운로드, 수정, 기타 등등이 행해질 때 그 파일과 연관된 속성에 기초하여 수집된 파일의 "스택"을 보여주는 뷰(view)로 신속하게 점프할 수 있게 해주기 위해 "저작자별로 스태킹된 문서"(기타 등등)로 명명된 리스트 또는 자동 리스트를 가질 수 있다. 스택의 다른 잠재적인 그룹 또는 리스트는 "중요한 문서", "최근 문서", "좋은 음악", "최근에 사용됨", "최근에 획득됨", 기타 등등의 리스트를 포함할 수 있다.
이하에서 본 발명의 여러가지 측면에 대한 보다 상세한 설명을 한다. 당업자라면 본 설명이 본 발명의 여러가지 측면의 예를 포함할 뿐이며 본 발명을 제한하지 않는다는 것을 잘 알 것이다.
A. 계층적 관계로 속성을 저장
상기한 바와 같이, 본 발명의 어떤 예시적인 측면들은 일반적으로 컴퓨터 시스템 또는 네트워크 상의 저장된 및/또는 이를 통해 이용가능한 개개의 파일 또는 데이터와 관련하여 "속성"을 저장 및 사용하는 시스템 및 방법에 관한 것이다. 일반적으로, PC, PC의 네트워크, 서버, 기타 등등의 컴퓨터 시스템 또는 네트워크에 새 파일을 저장할 때, 사용자는 일반적으로 파일에 "속성"을 할당할 수 있다. 이러한 "속성"의 예는 코멘트(Comment), 저작자ID, 키워드, 기타 등등을 포함한다. 이 기능이 유용하고 또 어떤 경우에(예를 들어, 단지 적은 일련의 속성만이 관여되어 있는 경우) 적절할 수 있지만, 이러한 종래에 이용가능한 "평면" 속성 구조(flat property structure)는 시간의 경과에 따라 관리 및/또는 사용하기 어렵게 될 수 있다(예를 들어, 왜냐하면 이용가능한 속성의 전체 수가 증가하기 때문임). 또한, 이 평면 속성 데이터 구조체에 있어서, 사용자는 각각의 원하는 속성을 개별적으로 입력시켜야 하고 및/또는 이를 개개의 파일과 연관시켜야만 한다. 이것은 시간이 많이 걸리는 작업일 수 있다. 게다가, 속성을 각자의 파일과 정확하게 및/또는 완전하게 연관시키지 못하면 나중에 원하는 데이터를 탐색, 찾아내기 및/또는 검색할 수 있는 사용자의 능력을 제한할 수 있다. 예를 들어, 서로 다른 개별적인 이용가능한 속성의 수가 증가함에 따라, 사용자가, 탐색 질의에서, 파일과 연관된 개개의 속성들 중 하나 이상을 정확하게 지명해야만 하는 경우, 사용자가 항목들을 신뢰성있게 검색하는 것이 더욱 어렵게 된다.
본 발명에 따른 적어도 몇몇 예시적인 측면들은 사용자에게 전자 파일과 함 께 적어도 몇몇 파일 "속성" 데이터를, 예를 들어 메타데이터로서, 할당 및 저장할 수 있게 해주며, 여기서 할당된 속성 데이터는 계층적 구조의 일부이다. 사용자가 (예를 들어, 새로운 속성의 사용자 지정 및/또는 사용자 정의를 통해) 점점 더 많은 속성을 이용할 수 있게 됨에 따라, 본 발명의 예들에 따른 계층적 구조로 속성을 제공하는 것에 의해 사용자는 간단한 한번의 속성 할당 동작을 통해 다수의 속성을 파일에 신속하게 할당할 수 있게 된다. 본 발명의 예들에 따른 계층적 속성의 이용가능성 및 사용은 또한 사용자가 그의 속성값에 순서를 부여하는 것에 대해 더 많은 제어를 할 수 있게 해주고(예를 들어, 계층 구조의 디스플레이에서, 가장 통상적이거나 중요한 요소를 계층 구조에서 위쪽에 제공하는 등을 할 수 있게 해주고), 이는 사용자가 속성의 값들 간의 관계를 표현할 수 있게 해주고 또 항목을 검색할 때 또는 항목에 값을 할당할 때 이들 관계가 반영될 수 있게 해준다. 본 발명의 예들에 따른 계층적 속성의 이용가능성 및 사용은 또한 속성에 생성된 값들을 구성하고 또 이 구성을 사용하여 그의 항목들을 브라우징 및 검색하는 매력적인 방식을 사용자에게 제공한다. 본 발명의 예들에 따른 계층적 속성의 사용은, 이하에서 보다 상세히 설명하는 바와 같이, (심지어, 적어도 몇몇 경우에, 검색에 사용된 속성이 사용자에 의해 파일에 명시적으로 할당되지 않고 사용자에 의해 할당된 속성의 계층구조의 일부에 불과한 경우에도) 사용자가 서로 다른 속성에 걸쳐 파일들을 보다 용이하게 내비게이션하고, 원하는 파일을 찾아내며 및/또는 단일의 속성을 사용하여 파일들을 검색할 수 있게 해준다.
도 2A는 디지털 사진, 음악, 비디오, 전자 문서, 기타 등등의 여러가지 전자 파일과 관련하여 사용될 수 있는 "키워드" 속성에 대한 예시적인 속성 계층 구조(200)를 나타낸 것이다. 이 예에서, 예를 들어 파일이 처음으로 저장, 생성, 다운로드될 때, 수정, 편집, 이동, 기타 등등이 행해질 때, 사용자는 파일에 속성을 할당하는 데 사용될 수 있는 계층 구조(200)를 정의하였다. 이 계층 구조(200)에서, "사람들" 노드는 계층 구조(200)에서 부모 레벨 노드를 구성한다. "사람들" 노드는 3개의 직계 자식 노드(즉, "친구", "가족" 및 "동료")를 포함하며, 이들 자식 노드 각각은, 도면에 도시된 바와 같이, 추가의 개별적인 자식 노드를 포함한다. 사용에 있어서, 파일에 키워드를 할당하는 것(예를 들어, 전자 파일과 연관된 메타데이터에 키워드를 포함시키는 것)은 그 특정의 키워드를 파일과 연관시킬 뿐만 아니라 계층 구조에서의 연관된 키워드의 임의의 상위 부모 키워드를 그 파일과 연관시킨다. 도 2A에 기초한 보다 구체적인 예로서, 이 예시적인 시스템 및 방법에서 키워드 "아빠"를 전자 파일에 할당하면 역시 자동적으로 키워드 "가족" 및 "사람들"을 그 파일과 연관시키는데, 그 이유는 이들 키워드가 할당된 키워드 "아빠"와 연관된 계층적 경로에 존재하기 때문이다(즉, 이 예에서 적용된 전체적인 계층적 키워드 데이터는 아빠 > 가족 > 사람들이다). 따라서, 3개의 용어 "아빠", "가족" 및/또는 "사람들" 중 임의의 하나를 포함하는 탐색 질의는 이 파일에 대한 히트(hit)를 반환한다. 본 발명의 이 예에 따른 계층 구조가 없는 경우, 사용자가 각각의 키워드를 파일과 연관시키고자 하고 및/또는 이들 키워드 중 임의의 것에 기초하여 파일에 관한 정보를 검색할 수 있기를 원하는 경우, 사용자는 이들 키워드 전부를(예를 들어, "아빠", "가족", 및 "사람들" 각각) 개별적으로 파일에 적용 해야만 한다.
본 발명의 부가적인 측면들은 속성들 간에 존재할 수 있는 계층 구조(예를 들어, 사용자 정의 계층 구조, 자동적으로 생성된 계층 구조, 기타 등등)를 입력하거나 포착하는 시스템 및 방법에 관한 것이다. 원하는 경우, 이 계층적 속성 정보는, 여러가지 상업적으로 이용가능한 시스템 및 방법(마이크로소프트사로부터 입수가능한 여러가지 운영 체제 및 응용 프로그램에서 이용가능한 폴더를 갖는 시스템 및 방법 등)에서 계층적 폴더가 저장되는 방식과 유사하게, 예를 들어 전자 파일 자체에 포함되고 및/또는 그와 연관되어 있는 메타데이터로서, 단층 경로(flat path)로서 저장될 수 있다. 보다 구체적으로는, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 전자 파일에 대한 하나 이상의 계층적 속성을 단층 경로 문자열(공지의 단층 폴더 경로 문자열과 유사함)로서 저장하게 되며, 이는 폴더 구조를 이용하는 여러가지 종래의 시스템 및 방법에서 현재 폴더 계층구조가 내비게이션 및/또는 처리될 수 있는 것과 동일한 또는 유사한 방식으로, 쉘 운영 체제가 계층적 속성을 사용하여 저장된 파일에 관한 정보를 정확하게 스태킹, 필터링, 그룹화, 및/또는 다른 방식으로 내비게이션 또는 처리할 수 있게 해준다. 이와 마찬가지로, 속성에 대한 계층적 데이터 구조를 제공하면, 사용자가 공지의 종래의 폴더 시스템에서 서브폴더로 파고 들어갈 수 있는 방식과 유사한 방식으로, 사용자는 계층구조에서 보다 아래쪽의 자식 속성 레벨에 도달하기 위해 서브-속성으로 파고 들어갈 수 있게 된다.
이 데이터 구조에서(예를 들어, 파일과 연관된 메타데이터 등에서와 같이 데 이터 집합 또는 필드에서), 여러가지 속성값은 상기한 단층 경로 문자열 등의 경로에 의해 구분될 수 있다. 이와 같이, 동일한 노드 이름 또는 값으로의 경로가 그 이름이 나타나는 각각의 장소에서 다르기만 하다면, 개개의 값(예를 들어, 개개의 노드 이름)이 계층구조에서 여러번 나타날 수 있다. 도 2A는 일례를 나타낸 것이다. 구체적으로는, 도 2A에 나타낸 바와 같이, 값 "Jim"은 "가족" 노드 및 "동료" 노드 둘다의 아래 쪽에 나타난다. 이들 2개의 "Jim" 값으로의 경로가 서로 다르기 때문에(즉, 사람들>가족>Jim 대 사람들>동료>Jim), 동일한 궁극적인 최종 이름(선택에 따라서는, 도 2A에 나타낸 바와 같이 동일한 계층 레벨에 있음)을 포함하는 이들 2개의 값은 어려움을 야기하지 않고 계층 구조에 공존할 수 있다. 특정의 노드 이름 또는 값은, 각각의 경우에서 그것으로의 경로가 동일한 이름 또는 값으로의 모든 기타 경로와 다르기만 하다면, 계층 구조에서 여러번 나타날 수 있다.
본 발명의 부가의 예시적인 측면은 동일한 이름 또는 노드 값을 이용하는 계층적 구조의 서로 다른 분기(branch)에 있는 속성들 간을 명확하게 구분해주는 프로세스에 관한 것이다. 도 2A와 관련하여 상기한 예에서, 이름 "Jim"은 가족 구성원 및 동료 둘다와 연관되어 있다. 이들 2가지 경우를 구분하기 위해, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 문제의 값들이 희귀한 부모 속성, 노드 또는 경로를 갖는지를 판정하기 위해, 문제의 2가지 경우에 대한 계층 구조의 상위 레벨에 있는 값들을 비교하기만 하면 된다. 상기 예를 사용하여, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 각각의 "Jim" 노드의 부모 노드를 살펴봄으로써 계층 구조에서 2개의 공통의 노드 이름을 구별할 수 있다. 이 조사는 한 쪽의 "Jim" 노드는 부모 노드로서 "가족"을 가지는 반면, 다른쪽의 "Jim" 노드는 그의 부모 노드로서 "동료"를 갖는다. 이들의 직계 부모 노드가 서로 다르고 구별가능하기 때문에, 이들 2개의 "Jim" 노드는 속성 계층 구조(200)에서 공존할 수 있다. 물론, 서로 다른 부모 노드 이름이 고려 중인 노드(들)의 직계 부모 노드에 위치할 필요는 없다(예를 들어, 서로 다른 이름을 갖는 부모 노드가 조부모 노드 레벨에, 훨씬 더 상위의 노드 레벨에, 및/또는 계층적 구조에서 서로 다른 노드 레벨에 위치하고 있을 수 있다).
그렇지만, 도 2B에 나타낸 계층적 구조(250)가 일반적으로 본 발명에 따른 적어도 몇몇 예시적인 시스템 및 방법에서는 허용되지 않는다. 보다 구체적으로는, 도시된 바와 같이, 도 2B의 계층적 구조(250)는, 최하위 레벨에 있는 어떤 노드들에 관한 것을 제외하고는, 도 2A의 계층적 구조(200)와 유사하다. 도 2B에서, "가족" 노드는 동일한 계층 레벨 상에 동일한 이름을 갖는 2개의 자식 노드(즉, 2개의 "Jim" 노드)를 포함한다. 이들 "Jim" 노드 각각에 대한 단층 경로 문자열이 동일하기(즉, 사람들>가족>Jim이기) 때문에, 운영 체제 및/또는 응용 프로그램이 한쪽 노드를 다른쪽 노드와 구별하는 것이 가능하지 않으며, 따라서 단층 경로 문자열 "사람들>가족>Jim"이 사용될 때마다 모호성이 존재한다. 사용자가 도 2B의 예에 나타낸 바와 같이 2개의 동일한 속성 경로를 설정하려고 시도하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 에러 메시지를 디스플레이하고, 대화 상자를 제공하며, 새로운 이름의 입력을 요청하고, 및/또는 이 이름 또는 값이 계층적 구조에서의 이 위치에서 허용되지 않는다는 것을 사용자에게 다른 방 식으로 알려준다.
속성값은 본 발명을 벗어나지 않고 임의의 원하는 방식으로 및/또는 임의의 원하는 시간에 개개의 파일에 할당되고 및/또는 그 파일과 연관될 수 있다. 예를 들어, 새 파일이 사용자의 컴퓨터 시스템 또는 네트워크로 다운로드 및/또는 그에 저장될 때, 사용자는 파일에 속성값을 할당할 기회를 부여받을 수 있다. 도 3은 예시적인 사용자 인터페이스(300)를 나타낸 것으로서, 이 인터페이스를 통해 사용자는 파일을 그의 컴퓨터 시스템 또는 네트워크에 저장할 수 있고, 원하는 경우, 이 인터페이스를 통해 사용자는 하나 이상의 속성을 파일에 할당할 수 있다. 도시된 바와 같이, 사용자 인터페이스(300)는 (예를 들어, 새 파일에 관한 정보가 입력 패널(304)에서, "프로필 편집(edit profile)" 절차에서, 및/또는 임의의 다른 원하는 시간에 입력될 때) 파일과 연관되고 및/또는 파일에 할당될 수 있는 속성 또는 기타 정보의 적어도 일부를 디스플레이하는 내비게이션 패널(302)을 포함한다. 주목할 만한 것은, 내비게이션 패널(302)에서의 속성이 계층적 방식으로 정렬된다는 것이다. 예를 들어, 속성 이름을 내비게이션 패널(302)로부터 입력 패널(304)에서의 적절한 장소로 "드래그" 및 "드롭"하는 등에 의해, 입력 패널(304)에서의 적절한 위치에(예를 들어, "키워드" 입력 박스에) 노드 이름을 타이핑 또는 기입함으로써, 여러가지 속성이 임의의 원하는 방식으로 파일에 할당 및/또는 그와 연관될 수 있다. 다른 예로서, 원하는 경우, 파일의 아이콘 또는 기타 표현을 (예를 들어, 파일 리스트로부터) 내비게이션 패널(302)에서의 원하는 값 또는 노드 이름 상으로 드래그하고 그 아이콘 또는 기타 표현을 그 위치에 드롭함으로써 속성이 할당될 수 있다(원하는 경우, 내비게이션 패널(302)에서의 계층구조는, 아이콘 또는 기타 파일 표현을 부모 속성값 상으로 드래그하고 이를 그 속성값 상에 유지(드롭하지 않음)시키면 부모 속성값을 (가능한 경우) 계층 구조의 적어도 그 다음 레벨까지 (예를 들어, 몇몇 폴더가 현재 이용가능한 시스템 및 프로그램에서 "자동 확장"하는 것과 동일한 방식으로) 확장시키는, "자동-확장 거동(auto-expand behavior)"을 나타낼 수 있다). 도 3에 나타낸 바와 같이, 내비게이션 패널(302)을 통해 속성값을 파일에 할당하는 것 이외에, 본 발명의 적어도 몇몇 예들에 따른 계층적 속성 시스템의 사용자는 그의 계층구조를 내비게이션 또는 검색할 수 있고, 그의 계층 구조를 관리 및/또는 편집할 수 있으며, 및/또는 이하에서 보다 상세히 기술하는 바와 같이, 다른 행동을 취할 수 있다.
본 발명의 적어도 몇몇 예들에 따르면, 파일 또는 다른 항목이 다른 속성값의 자식인 속성값을 할당받을 때(예를 들어, 도 3에서 값 "플레이오프"), 그 파일 또는 기타 항목은 또한 할당받은 속성값과 연관된 모든 부모 속성값(예를 들어, 이 특정의 예에서 "스포츠 사진>야구")을 자동적으로 상속받는다. 게다가, 그 속성값이 그 아래에 하나 이상의 자식 속성값을 갖는 경우에도, 원하는 경우, 부모 속성값이 파일 또는 항목에 할당될 수 있다(예를 들어, 파일에 "야구" 속성을 할당할 수 있다). 이러한 경우에, 본 발명에 따른 적어도 몇몇 예시적인 시스템 및 방법에서, 부모 속성이 파일에 할당되지만, 그의 자식 속성값들(이 예에서, "연습" 또는 "플레이오프") 중 어느 것도 (그의 부모 속성이 할당되어 있을지라도) 자동적으로 파일 또는 항목에 할당되지 않는다. 물론, 원하는 경우, 시스템 및 방법은 또 한 본 발명을 벗어나지 않고 이 상황에서 자식 속성을 자동적으로 할당 또는 자식 속성을 파일과 자동적으로 연관시키도록 설정될 수 있다.
이하에서 보다 상세히 기술하는 바와 같이, 본 발명의 적어도 몇몇 예들에 따르면, 탐색 요소 또는 매개변수로서 부모 속성값을 포함하는 파일 열거, 탐색 또는 기타 질의는 지정된 부모 속성값 및 그의 자식 속성값들 중 임의의 것 둘다가 첨부된 모든 항목을 반환한다. 이와 같이, 본 발명의 예들에 따른 저장 시스템 및 방법은 (예를 들어, 계층 구조의 하위 레벨에서) 사용자가 비교적 적은 고도로 한정된 설명적 속성을 항목에 용이하게 첨부할 수 있게 해주지만, 계층적 구조에서 점점 더 폭넓은 부모 노드 아래에 속성들을 정렬함으로써, 비교적 폭넓은 탐색 질의에 응답해서도, 첨부된 항목들이 용이하게 나타나도록 해줄 수 있다. 원하는 경우, 본 발명의 적어도 몇몇 예들에 따르면, 탐색 결과, 파일 열거 결과, 또는 파일 미리보기 결과가 탐색 질의에 응답하여 디스플레이되는 경우, 파일에 할당되는 1차적인 값(예를 들어, 사용자에 의해 할당된 실제값)이 하이라이트되고 및/또는 어떤 방식으로 사용자에게 알려지거나 사용자가 이용가능하게 된다.
이용가능한(예를 들어, 사용자, 시스템 또는 다른 것에 의해 이전에 정의된) 및/또는 저장된 계층적 속성이, 본 발명을 벗어나지 않고, 본 발명의 예들에 따른 시스템 및 방법에 의해 임의의 원하는 시간에 및/또는 임의의 원하는 장소에 디스플레이될 수 있다. 예를 들어, 도 3에 도시된 바와 같이, 속성은 "저장" 또는 "다른 이름으로 저장" 동작 동안에 (예를 들어, 내비게이션 패널(302)에) 디스플레이될 수 있다. 이들은 또한 파일 "탐색", "열거" 또는 "보기" 동작 동안에, 예를 들 어 도 3의 내비게이션 패널(302)에 나타낸 동일한 계층적 트리 레이아웃에, 디스플레이될 수 있다. 또한, 원하는 경우, 본 발명의 예들에 따른 계층적 속성은 종래의 속성이 현재 애플리케이션 프로그램 및/또는 운영 체제에 의해 나타내어지고 있는 임의의 및/또는 모든 위치에 (예를 들어, "리스트 보기(list view)" 디스플레이에 나타낸 속성으로서, "항목 상세(item details)" 디스플레이에 나타낸 속성으로서, 파일 "미리보기" 디스플레이에 나타낸 속성으로서, 기타 등등) 디스플레이될 수 있다. 또한, 원하는 경우, 본 발명의 예들에 따른 계층적 속성은, 속성을 지원하는 트리 컨트롤에서와 같이, 속성을 내비게이션하는 데 사용되는 임의의 컨트롤에 디스플레이될 수 있다.
도 3은 트리 컨트롤 화면(예를 들어, 내비게이션 패널(302))에 계층적 속성을 디스플레이하는 것의 예를 나타낸 것이다. 도 4는, 반면에, 항목 또는 파일 "미리보기" 화면(400)에 속성 정보를 디스플레이하는 것의 예를 나타낸 것이다. 도 4에 나타낸 바와 같이, 이 예시적인 항목 또는 파일 "미리보기" 화면(400)은 항목의 썸네일 또는 아이콘 디스플레이(402)(이 예에서, 예를 들어, 파일에 포함된 사진의 소형 버전)는 물론, 파일 이름, 그의 저장 시간/일자, 파일 크기, 및 사용자 입력 "캡션" 정보 등의, 파일에 관한 어떤 시스템 및/또는 기타 실제 정보를 포함한다. 게다가, 이 항목 또는 파일 "미리보기" 화면(400)은, 할당된 키워드(단층 경로 문자열 포맷으로 디스플레이됨), 사진 주제 ID, 사용자 입력 등급 정보, 기타 등등을 비롯한, 사용자에 의해 입력된 어떤 "속성" 정보를 디스플레이한다. 물론, 본 발명을 벗어나지 않고 이러한 화면에 임의의 수의 속성이 열거될 수 있다(선택 에 따라서는, 임의의 디스플레이되지 않은 속성들에 관한 정보를 디스플레이할 수 있음).
본 발명을 벗어나지 않고 임의의 원하는 시간에 및 임의의 원하는 방식으로 속성 정보가 입력되고 및/또는 개개의 파일과 연관될 수 있다. 파일이 최초로 컴퓨터 시스템 또는 네트워크에 저장될 때 파일에 속성 정보를 포함시키는 것 이외에, 개개의 파일과 연관된 속성이, "프로필 편집(edit profile)", 또는 "속성 편집(edit properties)" 명령, 기타 등등에 응답하여 파일의 열기, 편집 또는 사용이 있을 때마다와 같이, 기타 원하는 시간에 추가, 삭제 및/또는 수정될 수 있다. 속성은 타이핑을 통해(선택에 따라서는, 일치하는 문자열의 "자동 완성"으로, 선택에 따라서는, 계층 구조에서의 임의의 레벨로부터), 드래그/드롭 동작을 통해, "우측 클릭(right-click)" 동작을 통해, 펜 "길게 누르기(press-and-hold)" 동작을 통해, 기타 등등을 통해 입력될 수 있다. 특정의 파일과 연관된 속성을 설정, 편집 및/또는 삭제하는 데 유용한 임의의 도구도 역시 본 발명을 벗어나지 않고 미리보기 화면(400)에서 액세스 및 사용될 수 있다.
게다가, 계층적 구성에서의 속성의 실제 내용은, 본 발명을 벗어나지 않고, 사용자에 의해 임의의 원하는 시간에 및/또는 임의의 원하는 방식으로, 예를 들어, 종래의 애플리케이션 프로그램 및 운영 체제에서 종래의 "폴더" 구조가 추가, 삭제 및/또는 다른 방식으로 편집되는 방식으로 변경될 수 있다. 예로서, 새로운 속성이 기존의 속성 아래에 추가될 수 있고 및/또는 기존의 속성이 "우측 클릭" 마우스 버튼 동작(이는 적절한 사용자 인터페이스, 예를 들어 "새 속성 삽입", "기존의 속 성 삭제", "노드 레벨 또는 위치 변경", 잘라내기, 복사, 붙여넣기, 또는 다른 적절한 동작을 포함하는 메뉴를 디스플레이할 수 있음)을 통해 또는 임의의 다른 원하는 방식으로 삭제될 수 있다. 다른 예로서, 원하는 경우, 계층적 구조에서의 기존의 속성의 장소가 변경될 수 있다, 예를 들어, 도 5에 나타낸 바와 같이, "드래그 및 드롭" 동작에 의해 이동될 수 있다. 보다 구체적으로는, 도 5는, 예를 들어, 디지털 사진을 저장 및 편집하는 응용 프로그램에 대한, 계층적 속성 리스트를 디스플레이하는 내비게이션 패널(302)을 나타낸 것이다. 도 5의 좌측은 사용자가 키워드 "대양"에 대한 아이콘을, 드래그 및 드롭 동작(화살표(502)로 나타냄)을 통해 "캠핑" 부모 노드 아래로부터 "키워드" 노드 바로 아래의 계층 레벨로, 이동시키는 것을 나타낸 것이다. 드래그 동작을 통해(예를 들어, 좌측 마우스 버튼을 누른 상태에서) 원하는 장소에(이 예에서 "키워드" 노드 바로 위에) 배치되면, "대양" 노드는 이 "대양" 노드를 그 위치에 드롭함으로써(예를 들어, 마우스의 왼쪽 버튼을 놓음으로써) 계층 구조에서 재배치될 수 있다. 이 동작은 도 5의 우측에 나타낸 바와 같이 노드 "대양"을 재배치한다. 원하는 경우, 사용자는 부가적인 드래그 및 드롭 동작을 통해 "대양" 노드와 함께 있도록 이전의 자식 노드 "태평양" 및 "대서양"을 이동시킬 수 있다. 다른 대안으로서, 원하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 노드를 재배치한 결과 그의 자식 노드(있는 경우)의 자동적인 재배치도 이루어지도록, 동작할 수 있다. 원하는 경우, 본 발명의 적어도 몇몇 예들에 따르면, 사용자는, (예를 들어, 붙여넣기 명령을 사용하여) 속성값의 또하나의 복사본(및, 선택에 따라서는, 그의 자식 속성값)이 다른 속성값 아래에 나타나도록 하기 위해, 속성값을 이와 같이 드래그하는 동안 "Control(컨트롤)" 버튼을 누를 수 있다. 물론, 노드 및/또는 그의 각자의 자식 노드를 잘라내기, 복사 및/또는 재배치하기 위한 기타 방식 및 프로토콜이 본 발명을 벗어나지 않고 사용될 수 있다(예를 들어, 축소된 자식들(collapsed children)을 갖는 노드를 재배치하는 것은 그 노드 및 그의 자식들 전부를 한 동작으로 재배치하는 데 사용될 수 있지만, 그의 자식이 완전히 확장되어 디스플레이되어 있는 노드를 재배치하는 것은 그의 자식, 기타 등등 없이 부모 노드만을 재배치하는 데 사용될 수 있다). 본 발명을 벗어나지 않고 시스템 및 방법에서 노드를 이동시키는 기타의 기본(default) 방법 및 방식이 사용될 수 있다.
적어도 몇몇 경우에, 본 발명에 따른 시스템 및 방법의 구체적인 특성에 따라, 이 재배치 동작 동안에, 예를 들어 동일한 속성 이름이 이동된 속성에 대한 새로운 경로 또는 위치에 2번 이상 나타나는 경우 에러가 발생될 수 있다. 본 발명의 예들에 따른 시스템 및 방법은 임의의 원하는 방식으로, 예를 들어 원하는 이동을 완료하지 않음으로써, 사용자가 그 경로 내의 이름을 변경할 수 있게 해주는 인터페이스를 제공함으로써, 문제점을 교정하는 여러가지 옵션과 함께 문제점을 사용자에게 알려주는 대화상자를 디스플레이함으로써, 기타 등등에 의해 이러한 상황을 처리할 수 있다. 다른 예로서, 원하는 경우, 동일한 전체 단층 경로 문자열 이름을 갖는 다수의 노드를 생성하려는 시도가 행해지지 않는 한, 이러한 에러가 나타나지 않도록, 경로 내에서 단일의 이름을 여러번 사용하는 것(예를 들어, 장소>뉴욕>뉴욕)을 허용하는 시스템 및 방법이 개발될 수 있다.
본 발명의 예들에 따른 계층적 속성 특성을 이용하는 사용자는, 완전히 확장되었을 때 전체적인 계층적 구조가 내비게이션 패널(302)에서의 이용가능한 공간 및/또는 그의 디스플레이 화면의 높이보다 더 길게 뻗어 있을 정도로, 속성에 대한 비교적 큰 계층적 구조를 개발할 수 있다. 이 상황은 본 발명을 벗어나지 않고 임의의 원하는 방식으로, 예를 들어 내비게이션 패널 내에 스크롤 바를 제공함으로써, 자식 노드가 그의 부모 노드 아래에 축소될 수 있게(또한, 예를 들어 계층적 폴더 구조가 종래에 이용가능한 시스템 및 방법에서 확장 및 축소하는 방식과 유사한 방식으로, 사용자 입력에 기초하여 완전히 확장 또는 축소될 수 있게) 해줌으로써, 기타 등등에 의해 처리될 수 있다. 열려 있을 때, 도 3 및 도 5에 예시된 유형의 내비게이션 패널(302)은, 항상 계층적 구조의 최상단 위치에, 계층적 구조에서 가장 빈번하게 사용되는 위치에, 계층적 구조에서 가장 최근에 사용된 위치에, 계층적 구조에서 열린 문서(있는 경우)를 포함하는 위치에, 완전히 확장된 상태에서, 완전히 축소된 상태에서, 가장 최근에 사용된 상태에서, 기타 등등의, 계층적 구조 내의 임의의 원하는 장소에 및/또는 임의의 원하는 확장/축소 상태에서 열려 있을 수 있다. 또한, 내비게이션 패널(302)은, 예를 들어, 사용자 선호, 기본값(default), 기타 등등에 기초하여 좌측 또는 우측 등의, 디스플레이 화면 상의 임의의 원하는 장소에 나타날 수 있다.
원하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 출하될 때, 기본적인 계층적 구조를 포함할 수 있고, 이 기본적인 구조는 보다 완전하고 풍부한 계층 구조, 예를 들어 그 자신의 용도에 더 잘 맞고 또 그 용도에 커스터마 이즈되어 있는 것를 작성하는 시작점으로서 사용자에 의해 사용될 수 있다. 예를 들어, 디지털 사진, 오디오, 비디오 또는 기타 사용자 데이터를 저장하기 위한 이러한 미리 정해진 기본적인 계층적 구조의 예는 키워드, 이벤트, 장소, 사람들(예를 들어, 아마도 저작자, 사진가, 실험대상 사람들(Subject People) 등의 자식 노드를 가짐), 날짜, 내 그림, 내 음악, 내 문서, 내 비디오, 기타 등등의 기본 노드(base node)를 포함할 수 있다. 임의의 원하는 정보가, 본 발명을 벗어나지 않고, 이 기본적인 계층 구조에 포함될 수 있다.
도 6은, 예를 들어, "파일 열거", 탐색, 질의, 내비게이션 또는 기타 적절한 명령에 응답하여 나타날 수 있는, 예시적인 디스플레이 화면(600)을 나타낸 것이다. 주목할 만한 것은, 이 예시적인 디스플레이 화면(600)의 좌측이 계층적 속성(이 아래에 사용자의 파일들 중 적어도 일부가 저장되어 있음)에 대한 내비게이션 패널(602)을 포함하고 있다는 것이다(예를 들어, 이 예에서는 디지털 사진 저장/편집 시스템에 관한 것임). 본 발명에 따른 시스템 및 방법의 적어도 몇몇 예들에서, 내비게이션 패널(602)을 갖는 디스플레이 화면(600)은 사용자를 위한 계층적 속성의 1차적인 입력 및 상호작용 장소일 수 있다. 이러한 화면(600)으로부터, 사용자는 파일을 볼 수 있고, 탐색 질의를 제공할 수 있으며, 및/또는 생성된 여러가지 계층적 카테고리는 물론 파일과 연관된 기타 저장된 데이터에 기초하여 그의 파일들을 필터링할 수 있다. 도 6에 도시된 바와 같이, (예를 들어, 좌측 마우스 버튼 클릭 동작에 의해) 계층구조에서 노드 "키워드"를 하이라이트하면 사용자 파일들에 할당된 또는 그와 연관된 키워드를 갖는 사용자 파일들의 전체 리스트를 풀 업(pull up)한다. 이 예시적인 시스템 및 방법에서, 이 동작은 화면(600)의 디스플레이 부분(606)에 개개의 파일들을 나타내는 썸네일 아이콘 또는 사진(604)을 포함하는 디지털 사진 파일들의 리스트를 풀업한다. 이 예에서, 개개의 파일은 하이라이트된 검색어 바로 아래에 있는 계층구조에서의 개개의 자식 레벨에 기초하여 그룹화된다(즉, 이 예시된 예에서 "스포츠 사진", "여름" 및 "캠핑" 그룹으로서 그룹화되고, 계층 구조에서의 기타 레벨(즉, "꽃"과 "대양")은 디스플레이 부분(606) 크기 제약으로 인해 나타나지 않음). 물론, 본 발명을 벗어나지 않고 탐색 또는 리스트 보기 결과를 디스플레이하는 많은 방식이 가능하다.
본 발명을 벗어나지 않고 개개의 파일들과 함께 계층적 속성을 저장 또는 표현하기 위해 임의의 원하는 형태 또는 형식이 사용될 수 있다. 예를 들어, 자식 속성값이 파일에 할당되어 있는 경우, 계층적 구조를 통해 그 속성값으로의 경로는 (예를 들어, 그 파일에 포함된 및/또는 그 파일과 연관된 메타데이터로서) 실제 파일의 일부로서 저장되고 및/또는 실제 파일과 연관될 수 있다. 예로서, 계층적 구조의 표현 또는 데이터 구조체는 적어도 (부모 속성값) [구분자] (자식 속성 1) [구분자] (자식 속성 2)...를 포함할 수 있다. 도 6에 나타낸 보다 구체적인 예로 돌아가면, 파일과 연관된 개개의 속성 "축구" 및 "참가 경기"와 함께 저장된 그 파일은, 적어도 몇몇 경우에, 예를 들어, "키워드/스포츠 사진/축구" 및 "키워드/스포츠 사진/참가 경기"의 형태로 그 파일에 관한 정보와 함께 디스플레이되는(예를 들어 도 4에 도시한 바와 같음), 그 파일과 연관된 메타데이터를 가질 수 있다. 이들 예에서, 부모 속성값은 "키워드"이고, 각각의 경우에서의 제1 자식 속성값은 "스포츠 사진"이며, 제2 속성값은 각각 "축구" 및 "참가 경기"이고, 구분자는 슬래쉬 "/"이다(구분자는 속성 이름을 분리시키는 데 사용되는 특수 문자일 수 있고, 이 구분자는, 시스템에서의 혼동을 피하기 위해, 속성 이름에 포함되지 않을 수 있다). 물론, 본 발명을 벗어나지 않고 임의의 수의 자식 속성 레벨이 단층 경로 데이터 문자열에 포함될 수 있다.
내비게이션 패널, 예를 들어 패널(602)에 열거된 속성들은, 적어도 부분적으로, 여러가지 공지의 운영 체제 및 응용 프로그램에서 종래의 폴더가 거동하는 방식과 유사한 방식으로 거동할 수 있다. 예를 들어, 내비게이션 패널(602)에서 계층적 속성을 확장 및/또는 축소시키는 방식은 유사한 폴더 내비게이션 패널 또는 컨트롤에서 폴더를 확장 및/또는 축소시키는 것과 유사할 수 있다. 보다 구체적인 예로서, 부모 속성 아래의 자식 속성값을 보고 또 디스플레이하기 위해, 사용자는 속성의 좌측에 제공된 "위젯(widget)"을 클릭할 수 있다(예를 들어, 도 6의 "여름" 키워드에 대한 "+" 기호를 갖는 위젯(이 예시적인 시스템에서, 위젯에서의 "+" 기호는 하나 이상의 부가의 디스플레이되지 않은 자식 속성의 존재를 나타내고, 위젯에서의 "-" 기호는 특정의 속성이 이미 확장되어 있음을 나타냄)에 유의할 것). 적어도 몇몇 예들에서, 속성 또는 노드가 자식을 갖지 않는 경우, 그 좌측에 있는 위젯이 생략될 수 있거나, 위젯이 부가의 표시자(예를 들어, "+" 또는 "-" 기호, 기타 등등)를 포함하지 않을 수 있거나, 위젯이 다른 표시자를 포함할 수 있거나, 또는 다른 원하는 방식으로 자식 노드가 없음이 표시될 수 있다. 예를 들어, 도 6에 나타낸 바와 같이, 계층적 구조를 보다 잘 나타내는 데 도움이 되도록 들여쓰기 방식(indentation scheme)도 역시 사용될 수 있다. 주목할 만한 것은, 개개의 파일이 그와 연관된 다수의 속성을 가질 수 있기 때문에, 디스플레이 패널(606)에서 동일한 파일 또는 항목이 다수의 그룹에 나타날 수 있다는 것이다(예를 들어, 사진(13, 44)이 도 6에서 "스포츠 사진" 그룹 및 "여름" 그룹 둘다에 나타남에 유의).
본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 사용자가 계층적 속성 구조를 변경, 수정 및/또는 사용하는 또다른 방식을 지원할 수 있다. 일례로서, 디스플레이 패널(606) 내의 어떤 항목도 선택되지 않은 경우에 내비게이션 패널(602)에서의 속성값이 우측 클릭 동작을 통해 선택되는 상황에서, 사용자는 (예를 들어, 인터페이스를 통해) 우측 클릭 선택된 노드 아래에 새로운 계층적 속성을 자식으로서 추가하는 옵션을 제공받을 수 있다(예를 들어, 사용자가 새로운 속성값을 타이핑(또는 다른 방식으로 입력)할 수 있게 해주기 위해, 편집가능 텍스트박스를 갖는 새로운 노드가 계층적 구조에서 새로운 속성값의 장소에 나타날 수 있다). 사용자가, 개개의 노드, 노드 및 그의 자식 노드 전부, 기타 등등의, 계층구조의 임의의 원하는 부분을 삭제할 수 있게 해주기 위해, "삭제" 기능 또는 옵션이, 예를 들어 우측 마우스 버튼 클릭을 통해, 제공될 수 있다. 예를 들어, 사용자가 속성값을 선택하고 이를 (선택에 따라서는, 그 자신의 자식값들 전부와 함께) 계층 구조에서 각각 한 레벨 위로 또는 아래로 이동시킬 수 있게 해주기 위해, "격상(promote)" 및 "격하(demote)" 기능이 제공될 수 있다(예를 들어, 격상은 선택된 노드가 이제 그의 이전의 직계 부모 노드에 대한 피어(peer)로서 나타나도록 하는 레벨로 이동시킨다). 또다른 예로서, 사용자가 임의의 속성값 또는 노드에 다른 이름을 줄 수 있도록 해주는 "이름바꾸기(rename)" 기능이, 예를 들어, 우측 마우스 버튼 클릭을 통해 제공될 수 있다(선택에 따라서는, 상기한 바와 같이, 동일한 이름이 경로에서 2번 사용되는 경우 및/또는 2개의 동일한 단층 경로 이름이 제공되는 경우, 제한이 있음). 파일이 디스플레이 패널(606)에서 선택될 때, 예를 들어, 우측 마우스 버튼 클릭을 통해, 본 발명의 예들에 따라 제공될 수 있는 잠재적인 기능은 하나 이상의 속성을, 파일과 함께 저장된 및/또는 그와 연관된 메타데이터 또는 기타 데이터로부터 제거 및/또는 그에 추가하는 데 사용될 수 있는 "속성 제거(remove property)" 기능 및 "속성 추가(add property)" 기능을 포함한다. 물론, 본 발명에서 벗어나지 않고 상기 기능들을 수행하는 기타 기능 및/또는 기타 방식이 제공될 수 있다. 필요한 경우, 상기한 여러가지 기능을 통해 변경되는 주어진 속성 및/또는 경로가 첨부된 모든 파일 또는 항목은 경로 및/또는 속성에 대해 사용자가 행한 변경을 반영하기 위해 갱신되는 그의 대응하는 속성 및/또는 경로 정보를 가질 수 있다.
본 발명의 적어도 몇몇 예들에 따른 부가적인 특징은, 예를 들어, 계층적 속성 데이터를 포함하는 기존의 파일이 계층적 속성 데이터를 지원하지만 새로 수신된 파일(들)에 대응하는 동일한 이용가능한 계층적 속성 구조를 반드시 가질 필요가 없는 시스템 또는 네트워크를 갖는 다른 사용자로 전송되는 경우, 계층적 속성을 공유하는 것에 관한 것이다. 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 평면 속성값(flat property value)을 갖는 파일(또는 기타 항목)이 공유되는 방식과 유사한 방식으로 계층적 속성값을 갖는 파일(또는 기타 항목)을 공유하는 것을 가능하게 해주도록 구성될 수 있다. 본 발명에 따른 시스템 및 방법의 적어도 몇몇 예들에 따르면, 파일 또는 기타 항목이 계층적 속성값을 갖는 시스템에 들어올 때의 기본 거동(default behavior)은 다음과 같다. (a) 새 파일의 계층구조는 계층적 키워드가 일반적으로 시스템 또는 네트워크에 의해 디스플레이되는 모든 영역에, 예를 들어, 새로 수신된 파일이 목표 시스템 또는 네트워크 상에서 최초로 생성된 것처럼과 동일한 방식으로, 디스플레이되고, (b) 새 파일에 대해 요구되는 것과 동일한 계층구조가 새 수신자의 시스템 또는 네트워크 상에 이미 존재하는 경우, 새로운 파일 항목은 그 자신을 시스템 또는 네트워크 상에 이미 있는 계층구조와 연관시키며, (c) 새 파일에 필요한 경로의 단지 일부만이 수신자의 시스템 또는 네트워크 상에 존재하는 경우, 새 파일을 수용하기 위한 계층구조의 나머지 부분들이 수신자의 시스템 또는 네트워크 상에 생성되고, 및/또는 (d) 새 파일에 필요한 경로 중 아무 것도 수신자의 시스템 또는 네트워크 상에 존재하지 않는 경우, 새 파일을 수용하기 위한 새로운 계층구조가 수신자의 시스템 또는 네트워크에 추가된다.
이하에서는 파일이 수신되어 새로운 사용자의 시스템 또는 네트워크에 저장되는 상황에서 속성 계층구조 공유에 대한 보다 상세한 예를 제공한다. 이 예에서, 수신자 사용자는 경로/속성값 "가족/형제/Toby"를 갖는 기존의 속성 계층구조를 갖는다. 새 파일이 수신자 사용자에 의해 (예를 들어, 이메일 첨부물로서) 수신되고, 수신자의 시스템에 저장되는 이 새 파일은 파일 송신자의 계층적 구성으로 부터의 메타데이터를 포함한다. 파일 송신자 및 파일 수신자 둘다는 본 발명의 일례에 따른 계층적 데이터 구조를 사용하여 프로그램, 시스템 및/또는 방법을 동작시킨다. 이하의 표는 수신자 사용자의 시스템이 여러가지 서로 다른 시나리오에서 새 파일의 수신을 처리할 수 있는 방식을 기술한 것이다.
새 파일의 계층적 속성값 새 파일을 수신하기 이전의 수신자 시스템의 상태 새 파일을 수신한 후의 수신자 시스템의 상태
가족/형제/Toby 가족/형제/Toby 가족/형제/Toby - 변화 없음
가족/형제/Noah 가족/형제/Toby 가족/형제/Toby, 가족/형제/Noah - (시스템은 새 파일의 계층구조를 수용하기 위해 "Noah"에 대한 자식 노드를 추가함)
친척/사촌/Toby 가족/형제/Toby 가족/형제/Toby, 친척/사촌/Toby - (시스템은 새 파일에 대한 전체적인 새로운 계층구조를 추가함)
파일과 연관된 여러가지 속성값이 본 발명을 벗어나지 않고 임의의 적절한 시간에 또 적절한 방식으로 디스플레이될 수 있다. 예를 들어, 도 4와 관련하여 전술한 바와 같이, 파일과 연관된 "미리보기" 패널에 속성 정보가 디스플레이될 수 있다. 부가의 예로서, 원하는 경우, 주어진 파일과 연관된 속성이 파일과 연관된 "속성" 페이지 또는 "속성 디스플레이" 명령과 함께 포함될 수 있다. 기존의 속성도 역시, 예를 들어 저장, 다른 이름으로 저장, 프로필 편집, 파일 열기, 또는 기타 유사한 동작 동안에, 디스플레이될 수 있다. 원하는 경우, 파일과 연관되어 있는 저장된 속성들도 역시, 파일이 열리는 중이고 및/또는 열려 있는 동안에, 예를 들어, 도구 모음(toolbar)에 디스플레이될 수 있고, 사용자는, 예를 들어, 파일을 가지고 활발히 작업하고 있는 동안에, 파일이 저장된 이후에, 파일이 열리기 이전에, 기타 등등의 때에, 속성들을 편집하는 데 이용가능한 인터페이스를 가질 수 있다. 본 발명을 벗어나지 않고 많은 기타 옵션들이 주어진 파일과 연관되어 있는 저장된 속성 데이터를 디스플레이하는 데 이용가능하다. 물론, 본 발명을 벗어나지 않고 임의의 수의 속성도 역시 주어진 파일과 연관될 수 있다.
또한, 본 발명을 벗어나지 않고 파일과 연관되어 있는 임의의 원하는 분량의 속성 데이터가 여러가지 장소에 디스플레이될 수 있다. 예를 들어, 원하는 경우, 각각의 속성(또는, 적어도 몇몇 속성)에 대해 계층적 경로 전체가, 파일과 연관되어 있는 속성들 중 하나 이상이 디스플레이되는 임의의 장소에(예를 들어, 도 4에 나타낸 것과 같이, "미리보기" 또는 "속성" 패널에) 보여질 수 있다. 다른 예로서, 원하는 경우, 할당된 속성값 자체만이 여러가지 장소에 보여질 수 있다(그리고, 나머지 계층구조는, 예를 들어, 내비게이션 패널을 통해, 커서 "올려놓기(hover)" 동작, 기타 등등 동안에는 물론, 이하에서 보다 상세히 기술될 파일 정보 스태킹 및 그룹화 기능을 통해 보여질 수 있다). 보다 구체적인 예로서, 개개의 파일(디지털 사진 등)이 이하의 계층적 키워드, 즉 "스포츠 사진>야구>연습>심장 강화 운동"이 그에 할당되어 있는 경우, 이러한 긴 단층 경로 문자열이 단지 경로에서 가장 하위의 자식 노드, 즉 "심장 강화 운동"을 제공하는 것만으로 적어도 몇몇 장소들에 표현될 수 있다. 그렇지만, 속성 리스트의 이 절단된 형식은 (예를 들어, 노드 "심장 강화 운동"이 계층구조에서 다수의 장소에 존재하는 경우) 이름 충돌(name collision)이 일어날 및/또는 사용자에게 얼마간 불명확할 위험이 있다. 이러한 상황에서, 원하는 경우, 부가의 계층적 정보가, 충돌하는 정보를 구분하기 위해, 최하위 레벨 키워드와 함께 디스플레이될 수 있다. 예를 들어, 도 2A와 관련하여 상기한 바와 같이, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법에서의 각각의 계층적 노드는 서로 다른 고유의 경로를 갖는다. 이 정보는 상기한 충돌을 해결하는 데 사용될 수 있다. 구체적으로는, 예를 들어, 상기한 유형의 충돌(시각적으로 동일한 방식으로 표현되는 2개의 계층적 속성값으로서 정의됨)이 있는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 다른 부모 속성값이 발견될 때까지 충돌 경로를 순회하며, 그 값이 (선택에 따라서는, 충돌하는 최하위 레벨 노드 정보와 함께) 디스플레이된다. 예를 들어, 포함된 계층 구조 및/또는 개개의 파일에 "스포츠 사진>야구>연습>심장 강화 운동" 및 "스포츠 사진>농구>연습>심장 강화 운동" 둘다가 첨부되어 있는 경우, 예를 들어 "미리보기" 또는 "속성" 디스플레이에 디스플레이된 속성 정보는, 정확한 계층 구조를 구별되게 보여주기 위해, 예를 들어 "심장 강화 운동...야구" 및/또는 "심장 강화 운동...농구"로서, 및/또는 어떤 기타의 적절한 방식으로 표현될 수 있다.
계층적 속성 정보의 실제 사용의 다른 예로서, 많은 사업체들이 적어도 어느 정도의 계층적 구조(예를 들어, 부(department), 국(division), 소재지, 기타 등등)로 구성되어 있다. 개개의 회사의 구조의 계층적 속성을 이용하는 이러한 사업체에 대해 본 발명의 예들에 따른 보다 적합한 운영 체제, 방법 및/또는 응용 프로그램이 개발될 수 있다. 예를 들어, 회사를 위해 저장된 데이터에 속성에 대한 미리 정의된 계층적 구조를 포함하는, 회사 직원에 의해 사용되는 컴퓨터 시스템, 네트워크, 및/또는 응용 프로그램에 대해 미리 정해진 계층구조가 제공될 수 있다. 이러한 시스템 및 방법은 회사의 데이터가 조직화되고 저장될 수 있는 회사의 시스템 및 네트워크에서 적어도 어떤 전체적인 똑똑한 계층적 구조를 가능하게 해준다.
본 발명의 측면들은 또한, 여러가지 운영 체제, 응용 프로그램 환경, 및/또는 상기한 시스템 및 방법을 포함한 여러가지 기타 시스템 및 방법에서 계층적 속성 데이터의 입력 및/또는 사용을 가능하게 해주기 위해, 그 위에 저장된 계층적 속성 데이터를 포함하는 컴퓨터 판독가능 매체 및 그 위에 저장된 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체에 관한 것이다. 컴퓨터 판독가능 매체는 상기한 컴퓨터 판독가능 매체의 여러가지 구체적인 예에 저장된 컴퓨터 실행가능 명령어를 포함할 수 있다.
B. 다중 속성 선택
상기한 바와 같이, 본 발명의 부가적인 측면들은 일반적으로, 선택에 따라서는, 상기한 계층적 속성 구조를 이용하여, 컴퓨터 시스템 또는 네트워크 상에 포함된 정보를 탐색하는 시스템 및 방법에 관한 것이다.
그의 Windows
Figure 112007072096410-PCT00001
컴퓨터 운영 체제에 있어서, 미국 워싱턴주 레드몬드 소재의 마이크로소프트사는 컴퓨터 시스템 또는 네트워크로부터 전자 정보를 저장, 구성 및 검색하기 위해 실세계 유사점, 즉 폴더를 도입하였다. 이 폴더 시스템은 엄격히 말하면 실세계 느낌을 컴퓨터 상에 저장되거나 컴퓨터를 통해 이용가능한 전자 데이터 및 정보에 제공하기 위해 도입된 최종-사용자 개념이었다. 컴퓨터 사용자는 일반적으로 그의 컴퓨터의 하드 드라이브를, 그의 파일들이 정리되어 있는 큰 파일 정리 캐비넷으로 생각한다. 그렇지만, 컴퓨터 시스템 자체에게는, 전자 파일이 단지 하드 드라이브에 자기적으로(또는 어떤 다른 방식으로) 인코딩되어 있는 일련의 비트일 뿐이며, "폴더"는 단지 컴퓨터 시스템이 그 일련의 파일을 참조하는 방식에 불과하다.
마이크로소프트사의 NT 파일 시스템("NTFS")에서, 하드 링크(hard link)를 지원하는 기능이 도입되었다. 이 특징은 사용자가 전자 파일을 다수의 폴더에 배치하는 것을 가능하게 해주었다. 물론, 물리적으로, 이 특징은 그 전자 파일을 표현하는 비트들이 컴퓨터의 하드 드라이브(또는 다른 저장 시스템) 상에 여러번, 예를 들어 파일이 배치되어 있는 각각의 폴더에 대해 한번씩 복제될 것을 요구하지 않는다. 오히려, 서로 다른 폴더들이 동일한 파일을 다시 참조한다. 그렇지만, 최초로 발표되었을 때, 이 기능은 최종 사용자에게 공개되지 않았는데, 그 이유는 하나의 파일을 다수의 폴더에 넣는 것이 사용자의 실제의 물리적 세상 개념에 부합하지 않았기 때문이다(즉, 동일한 물리적 종이가 동시에 2개의 개별적인 물리적 폴더에 위치될 수 없기 때문이다).
본 발명의 적어도 몇몇 측면들이 실시될 수 있는 적어도 몇몇 운영 체제에서, "리스트"라고 하는 새로운 최종 사용자 개념이 도입되고 있다. 물리적 유사점으로서, "리스트"를 일련의 항목(예를 들어, 전자 파일)을 참조하는 컨테이너(container)로서 생각할 수 있다. "리스트"를 보다 잘 이해하기 위해, "폴더"에 대한 보다 상세한 설명이 기술된다. "폴더"는 어떤 방식으로 서로 관련되어 있는 것으로 생각되는 항목들의 "집합" 또는 그룹으로서 생각될 수 있다(예를 들어, 동일한 "폴더"에 존재한다는 것은 집합 내의 항목들이 "관련있는" 것으로 생각될 수 있는 한가지 방식일 수 있다). 집합 또는 폴더 내의 각각의 항목 또는 파일은 (예를 들어,
Figure 112007072096410-PCT00002
등의 경로의 형태로서) "부모폴더(PARENTFOLDER)"라고 하는 속성을 포함할 수 있다. 주목할 만한 것은, 이 경로도 역시 최종 사용자 비유(end user metaphor)이고, 컴퓨터의 물리적 구조를 반드시 반영해야 하는 것은 아니다. 실제로, 드라이브 자체의 개념은 비유로서 생각될 수 있는데, 그 이유는 단일의 물리적 하드 드라이브가 c 드라이브, d 드라이브, 기타 등등의 다수의 "드라이브"로 분할될 수 있기 때문이다.
사용자가 "집합"을 정의할 수 있는 다른 방식은 "리스트"를 통해서이다. "리스트"는 "폴더"와 관련있는 것으로 생각될 수 있는데, 그 이유는 각각이 항목들의 집합을 정의하는 것으로 생각될 수 있기 때문이다. 그렇지만, "폴더"와 달리, 본 발명의 적어도 몇몇 예들에 따른 "리스트"는 상기한 바와 같이 "부모폴더" 속성을 사용하여 이 관계를 정의하지 않는다. 오히려, "리스트"는 동일한 항목(예를 들어, 전자 파일)이 다수의 장소에(예를 들어, 다수의 독립적인 "리스트"에) 존재할 수 있게 해준다. "폴더"와 같이, "리스트"도 최종 사용자 개념이다. 전자 파일 또는 기타 항목을 다수의 "리스트"에 넣는 것은 기본 데이터를 나타내는 실제의 물리적 비트가 복제되게 하지 않으며, 오히려 기본 전자 파일 또는 항목이 그 "리스트"에 의해 참조된다(또는 어떤 방식으로 그에 "링크"되어 있다). 이 설명을 다시 실세계 예제와 연계시키기 위해, 사람은 구입할 필요가 있는 물품 및 해야 할 필요가 있는 일을 추적하는 "쇼핑 리스트(Shopping List)" 및 "급한 '할 일' 리스트(Urgent 'To Do' List)"를 가질 수 있다. 이들 리스트 둘다는 "아내를 위한 생일 선물" 등의 항목을 포함할 수 있다. 사용자는 선물을 사는 것을 쇼핑 동안에 해야만 하는 어떤 것 및 꽤 긴급하게 해야만 하는 어떤 것 둘다라는 것을 알고 있다. 그렇지만, 사용자는 또한, 단지 이 항목이 그의 리스트 중 2개에 입력되어 있기 때문에, 이것이 사용자가 2개의 선물을 사야 할 필요가 있음을 의미하지 않는다는 것을 알고 있다. 오히려, 선물을 사는 하나의 행위가 사용자로 하여금 그의 각자의 리스트로부터 각각의 항목을 제거할 수 있게 해준다.
본 발명의 적어도 몇몇 측면들이 실시될 수 있는 운영 체제는 또한 "자동 리스트(Auto List)"를 포함할 수 있다. 자동 리스트"는, "리스트" 및 "폴더"와 같이, 항목들의 집합을 정의한다. 이들 항목들의 집합은 컴퓨터 시스템 상에 저장되어 있거나 그를 통해 이용가능한 항목들과 연관된 공통의 속성값에 기초하여 자동적으로 생성될 수 있다. 예를 들어, 원하는 경우, 사용자는 속성값, 등급 = 별 5개에 기초한 자동 리스트를 가질 수 있다. 이 "자동 리스트" 특징을 사용하여, 사용자는, 어느 특정의 폴더 또는 "리스트"에 그의 파일이 나타날 수 있는지에 상관없이, 별 5개로 평가된 그의 파일들 전부와 관련된 정보를 용이하게 찾아내어 볼 수 있다. 파일 또는 항목이 그와 연관된 별 5개 등급을 갖는 한, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 예를 들어, 사용자의 질의가 별 5개 자동 리스트를 보기 위해 요청을 할 때마다, 이 파일 또는 항목을 이러한 동적으로 또 자동적으로 발생된 집합의 구성요소로서 자동적으로 포함하게 된다. "자동 리스트"의 다른 예는, 예를 들어, 최근에 생성된 파일, 최근에 편집된 파일, 빈번하게 사용되는 파일, 저작자 ID, 생성 시간/일자, 편집 시간/일자, 파일 유형, 응용 프로그램 이름, 기타 등등을 포함할 수 있다.
"자동 리스트"의 내용에 관한 한가지 측면은 리스트의 유효범위(즉, "자동 리스트"를 생성하기 위해 검색되어질 일련의 파일 및/또는 장소)에 관한 것이다. "자동 리스트"의 유효범위에 대한 여러가지 제한이, 예를 들어, 컴퓨터가 위치하고 있는 환경, 사용자 선호, 컴퓨터 또는 네트워크가 사용되는 방식, 기타 등등에 따라, 설정될 수 있다. 예를 들어, "자동 리스트"의 유효범위는 특정의 기계로, 기계 또는 기계들의 네트워크 상의 특정 사용자의 파일로, 및/또는 본 발명의 측면들을 벗어나지 않고 임의의 다른 원하는 방식으로 제한될 수 있다. 보다 구체적인 예로서, "별 5개" 자동 리스트의 유효범위는 주어진 물리적 컴퓨터 상의 파일 또는 폴더 및/또는 주어진 사용자에 의해 생성된 파일 또는 폴더 등의 탐색할 일련의 특정 파일 또는 폴더로 제한될 수 있다. 그렇지만, 원하는 경우, 사용자는, 사용자의 데스크톱 또는 랩톱 컴퓨터 중 어느 하나 상에 저장된 모든 "별 5개" 파일을 찾아내는 등의, 컴퓨터 및/또는 컴퓨터를 포함하는 네트워크 상의 모든 것에 걸쳐 탐색하도록 자동 리스트 유효범위(또는 기타 탐색 유효범위)를 설정할 수 있다.
사용자가 그의 PC 상에 저장하는 파일(예를 들어, 문서, 음악, 비디오 및 사진 파일 등등)의 수가 증가함에 따라 또 네트워크화된 컴퓨터 시스템의 사용이 증가함에 따라, (과도한 관련없는 데이터(예를 들어, 기타 사용자 또는 기타 장소로부터의 데이터)의 찾아내기 및 디스플레이를 피하기 위해, 탐색 지연을 피하기 위해, 기타 등등을 위해) 사용자가 (예를 들어, 자동 리스트 또는 기타 탐색을 위해) 보다 작은 탐색 유효범위를 선택할 수 있는 것이 중요하게 될 수 있다. 보다 구체적인 예로서, 그래픽 디자이너는 그의 탐색 및 반환된 내용을 사진만(또는 선택에 따라서는, 특정 사용자의 사진만)을 포함하는 하드 드라이브 부분(예를 들어, 디렉토리, 기타 등등)으로 제한하기 위해 "자동 리스트" 탐색의 범위를 정하고자 할 수 있다. 이 사용자는 꼭 PC 상의 모든 것 및/또는 PC가 연결되어 있을 수 있는 네트워크 상의 모든 것을 탐색하려고 할 필요는 없다. 이러한 사용자는 "자동 리스트"에 대해 설정된 탐색 매개변수도 만족시킬 수 있는 기타 사용자의 파일을 보려고 하지 않을 수 있다.
따라서, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법에서, 사용자는 탐색 유효범위의 일부로서 "서브항목 도메인(sub-item domain)"을 선택 및 정의할 수 있다. "서브항목 도메인"은 컴퓨터 시스템이 탐색할 보다 작은 유효범위를 정의하는 폴더들의 집합이다. 이 서브항목 도메인은 사용자가 그의 데이터, 어떤 속성와 함께 표시된 항목, 기타 등등을 저장하는 폴더들 및/또는 서브폴더들의 집합을 포함할 수 있다.
도 7A 및 도 7B는 서브항목 도메인 유효범위 설정 측면의 예를 나타낸 것이다. 예를 들어, 도 7A는 다수의 사용자(예를 들어, 사용자 A, B 및 C)에 의해 공유되는 개개의 컴퓨터 또는 네트워크(700)를 나타낸 것으로서, 이 예시에서의 각각의 노드는 다양한 사용자에 의해 및/또는 그를 위해 생성된 폴더 또는 기타 파일 "컨테이너" 집합을 나타낸다. 상기한 바와 같이 "자동 리스트"의 생성에 관련한 활동을 비롯한 탐색 활동 동안에, 사용자는 이들 이용가능한 "폴더" 또는 기타 요소의 일부분만을 탐색하도록 시스템을 설정할 수 있다. 예를 들어, 어떤 탐색 또는 자동 리스트를 위해 "서브항목 도메인 유효범위"를 설정함으로써, 사용자는 그의 탐색을 단지 어떤 폴더 또는 파일들로 제한할 수 있다. 도 7A는 폴더 "사용자 B"를 포함한 그 아래에 있는 폴더들만을 탐색하도록 설정되어 있는, 삼각형(702)으로 표현된 "서브항목 도메인"을 나타낸 것이다. 물론, "서브항목 도메인"은 본 발명을 벗어나지 않고 네트워크(700)의 임의의 부분을 포함하도록 설정될 수 있다. 게다가, 원하는 경우, 이 유효범위는, 본 발명을 벗어나지 않고, 주어진 컴퓨터 시스템에 의해 생성된 여러가지 서로 다른 자동 리스트에 대해 서로 다를 수 있다. 도 7A에 나타낸 것 등의 서브항목 도메인 유효범위를 사용함으로써, "자동 리스트" 또는 기타 탐색 활동의 결과는 훨씬 더 관련되어 있을 수 있는데, 그 이유는 이 탐색이 어떤 지정된 소스 데이터(예를 들어, 이 예에서, 사용자 B의 데이터)만을 대상으로 하기 때문이다. 또한, 성능 속도가 증가될 수 있는데, 그 이유는 검사할 항목들의 집합이 더 작기 때문이다. 물론, 사용자가, 자동 리스트 탐색을 비롯하여, 임의의 탐색 활동에 대한 서브항목 도메인을 용이하게 조정 및 변경할 수 있도록 사용자 인터페이스가 제공될 수 있다.
이 설정가능한 "서브항목 도메인"의 내용은 단일의 폴더 또는 심지어 폴더 계층구조의 단일의 공통 분기로 제한될 필요가 없다. 오히려, 원하는 경우, 본 발명에 따른 시스템 및 방법의 적어도 몇몇 예들에 따르면, 사용자는 다수의 폴더에, 선택에 따라서는, 네트워크 또는 컴퓨터 메모리의 다수의 분기에 위치한 파일을 고려하기 위해 ("자동 리스트" 생성 탐색 유효범위 등의) 탐색 유효범위를 설정할 수 있다. 도 7B는 도 7A의 예시적인 개개의 컴퓨터 또는 네트워크(700)를 나타낸 것이지만, 이 예에서, 탐색 "서브항목 도메인"은, 서브항목 도메인 삼각형(704, 706)으로 표현된 바와 같이, 2명의 독립적인 사용자로부터 이용가능한 폴더에만 포함되어 있는 데이터(도 7B의 예시된 예에서는, 사용자 B 및 C로부터의 사진 데이터)를 탐색하도록 설정되어 있다. 다시 말하면, 이 서브항목 도메인 유효범위를 사용하여, "자동 리스트" 또는 기타 탐색 활동의 결과는 훨씬 더 관련성있을 수 있는데, 그 이유는 이 탐색이, 이 예에서, 원하는 사용자의 데이터만을 대상으로 하기 때문이며, 성능 속도가 증가될 수 있는데, 그 이유는 검사할 항목의 집합이 더 작기 때문이다.
본 발명의 부가적인 측면은 상기한 측면들로부터 더 확장된다. 본 발명에 따른 적어도 몇몇 예시적인 시스템 및 방법에서, 다수의 폴더 및/또는 속성은 컴퓨터 상에 저장된 정보의 탐색 및/또는 디스플레이를 위한 유효범위로서 사용자에 의해 선택될 수 있다. 이러한 시스템 및 방법은, 예를 들어, 도 2 내지 도 6과 관련하여 상기한 바와 같이, 계층적 방식으로 속성 및/또는 폴더를 디스플레이하는 내비게이션 패널을 이용할 수 있다.
컴퓨터 상에 저장된 항목들의 폴더를 디스플레이하는 종래의 또 현재 이용가능한 "폴더 트리"에서, 사용자는 한번에 2개 이상의 폴더를 선택할 수 없다. 사용자가 다수의 폴더의 내용을 보고자 하는 경우, 사용자는 (예를 들어, 원하는 각각의 폴더에 대해 하나씩) 다수의 창을 열어야만 하고 및/또는 원하는 폴더를 연속적으로 열어서 조사해야만 한다. 따라서, 사용자는 공통의 화면에서 다수의 폴더로부터의 모든 정보를 볼 수 없으며, 그에 의해 컴퓨터 시스템 또는 네트워크 상에 저장된 이용가능한 정보의 정확한 개요를 얻는 것이 어렵게 된다.
"리스트" 및 "자동 리스트"의 이용가능성은 이 문제를 더욱 악화시킨다. 상기한 바와 같이, 리스트 및 자동 리스트는 컴퓨터 시스템 또는 네트워크 상에 저장된 파일 및/또는 기타 항목을 정의 또는 분류하는 데 도움이 되는 속성값의 집합을 포함할 수 있다. 디스플레이된 정보가 그와 연관된 다수의 속성을 포함해야 한다는 요건에 기초하여, 사용자는 리스트 또는 자동 리스트 프로시저를 통해 제공된 정보(즉, 탐색 조건을 만족시키는 것으로 확인된 관련 파일)를 추가적으로 축소하고자 하는 경우가 많다. 예를 들어, 사용자는 특정의 사람(예를 들어, 배우자)을 포함하는 특정의 여행지(trip locale)로부터의 모든 저장된 사진을 보고자 할 수 있다. 다중 속성 선택 기술을 사용할 수 없는 경우, 사용자는 이들 2개의 독립적인 속성 조건을 만족시키는 파일들의 부분집합을 용이하게 찾지 못할 수도 있다.
본 발명의 측면들은, 예를 들어, 내비게이션 패널에 제공되어 있는 또는 다른 방식으로 사용자가 이용할 수 있게 되어 있는 속성들의 계층적 리스트로부터 탐색 조건의 일부로서 다수의 속성들이 선택될 때, 탐색의 수행, 탐색 결과의 해석, 및/또는 탐색 결과의 디스플레이를 가능하게 해주는 시스템 및 방법에 관한 것이다. 이러한 시스템 및 방법은, 예를 들어, 여러가지 리스트, 자동 리스트, 및/또는 폴더를 내비게이션, 탐색, 디스플레이, 및/또는 그와 다른 방식으로 상호작용할 때, 사용될 수 있다.
본 발명의 이 측면에 관한 한가지 특징은 다수의 속성 및/또는 기타 탐색 매개변수를 포함하는 정보 또는 파일이 탐색을 만족시키는 것으로 판정되는 방식에 관한 것이다. 보다 구체적으로는, 어떤 경우에, 사용자는 다중 속성 탐색 질의의 어느 한 특징을 만족시키는 모든 정보의 결합된 합집합을 보는 것(즉, 속성 A "OR" 속성 B 중 어느 하나를 만족시킨 정보를 디스플레이하는 것)을 선호하며, 다른 경우에, 사용자는 다중 속성 탐색 질의의 양쪽 특징을 만족시키는 정보만의 교집합을 보는 것(즉, 속성 A "AND" 속성 B를 만족시킨 정보를 디스플레이하는 것)을 선호한다. 몇몇 보다 구체적인 예로서, 사용자가 그 안에 포함된 가족의 구성원과 함께 찍은 "Maui 사진"을 포함하는 모든 파일을 식별해주는 정보의 검색을 요청하는 경우, 사용자는 탐색 시스템 및 방법이 단지 가족 구성원 AND Maui에 찍은 둘다를 포함하는 그 사진만을 검색할 것으로 기대한다. 이러한 질의에서, 사용자는 일반적으로 모든 Maui 사진(가족 구성원이 포함되어 있지 않은 모든 사진을 포함함) 및 모든 가족 사진(Maui에서 찍지 않은 사진을 포함함)을 보고자 하지 않는다. 반면에, 사용자가 별 3개 또는 별 4개 중 어느 하나로 평가되는 파일을 식별해주는 정보의 검색을 요청하는 경우, 사용자는 탐색 시스템 및 방법이 이들 등급 중 어느 하나를 갖는 파일을 검색할 것으로 기대한다(왜냐하면 적어도 대부분의 파일이 사용자에 의해 동시에 별 3개 및 별 4개로 평가되지 않기 때문이다).
따라서, 본 발명의 적어도 몇몇 측면은, 예를 들어, 계층적 방식으로 정렬되어 있는, 예를 들어, 속성 및/또는 폴더의 내비게이션 패널로부터 선택된 정보 또는 다수의 탐색 매개변수에 기초하여, 사용자가 설정된 "합집합"을 수신하고자 할 것 같은지 또는 설정된 "교집합" 정보를 수신하고자 할 것 같은지를 자동적으로 판정하는 알고리즘에 관한 것이다. 일반적으로, 이하에서 보다 상세히 설명하는 바와 같이, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 탐색된 다수의 속성, 리스트, 폴더, 항목, 및/또는 기타 매개변수가 계층구조에서의 동일한 "속성"에 속할 때, (예를 들어, "탐색", "파일 열거" 또는 기타 내비게이션 작업 동안에) 선택된 다수의 매개변수의 합집합(논리적 OR 연산)에 기초하여 파일들에 관한 정보를 반환한다. 반면에, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 탐색된 다수의 속성, 리스트, 폴더, 항목, 및/또는 기타 매개변수가 서로 다른 속성에 속하거나 또는 서로 다른 속성에 걸쳐 있을 때, (예를 들어, "탐색", "파일 열거", 또는 기타 내비게이션 작업 동안에) 선택된 다수의 매개변수의 교집합(논리적 AND 연산)에 기초하여 파일에 관한 정보를 반환한다. 이 알고리즘의 동작의 보다 상세한 예가 도 8 내지 도 18과 관련하여 이하에 기술되어 있다. 물론, 원하는 경우, 사용자는 주어진 탐색 질의에 대한 자동적으로 선택된 AND 또는 OR 연산을 무시하여 그 특정의 질의에 대한 결과를 커스터마이즈하고 목표로 정하기 위해 (예를 들어, 인터페이스 화면, 우측 마우스 버튼 클릭, 기타 등등을 통해) 옵션 및/또는 기회를 부여받을 수 있다.
1. 단일의 다중값 속성 내에서의 다중 선택
도 8은 속성, 폴더, 기타 등등(예시된 예에서, 패널(802) 내의 여러가지 노드)의 계층적 리스트를 포함할 수 있는, 내비게이션 패널(802)을 포함하는 예시적인 디스플레이 화면(800)을 나타낸 것이다. 노드의 아래에 저장된 및/또는 그와 연관된 정보는, 선택에 따라서는, (예를 들어, 자동적으로, 사용자 입력에 의해, 다른 사람의 입력에 의해, 파일이 다른 소스로부터 다운로드될 때, 기타 등등) 그 노드와 연관되는 정보의 개개의 전자 파일 또는 항목(예를 들어, 이메일 파일, 음악 파일, 디지털 사진 파일, 전자 문서, 오디오 및/또는 비디오 파일, 기타 등등)을 식별해주는 정보를 포함할 수 있다. 탐색 질의 또는 파일 열거 활동을 위해 지정된 하나 이상의 조건에 대응하는 파일들 중 적어도 일부를 식별해주는 정보가, 이 예시적인 디스플레이 화면(800)에서, 디스플레이 패널(804)에 디스플레이된다. 내비게이션 패널(802)을 사용하여, 사용자는 파일과 연관되어 있는 할당된 속성을 나타내는 계층적 노드들 중 하나 이상을 선택할 수 있고, 디스플레이 패널(804)은 사용자 지정된 속성 조건을 만족시키는 파일 또는 기타 정보 컬렉션을 식별해주는 정보를 포함한다.
도 8에 나타낸 바와 같이, 이 예에서, 사용자는 시스템이 사람_A 및 사람_D(동 도면에서 하이라이팅에 의해 나타내어져 있음)를 보여주는 사진을 포함하는 파일을 식별해주는 정보를 검색해주기를 원한다는 것을 알려주었다. 보다 일반적인 설명으로서, 이 예에서, 사용자는 계층 구조로부터 단일의 다중값 속성 내에서 다수의 값을 선택하였다(즉, 단일의 속성("사람들")로부터 사람_A를 나타내는 계층적 아이콘의 선택 및 사람_D를 나타내는 아이콘의 선택). "사람들" 속성은 "다중값" 속성(multi-valued property)라고 하는데, 그 이유는 "사람들" 속성 아래의 파일들이 다수의 개별적인 속성 엔트리를 가질 수 있기 때문이다(예를 들어, 주어진 사진은 2명 이상의 식별된 사람을 포함할 수 있고, 따라서 그와 연관된 다수의 "사람들" 자식 속성을 가질 수 있다). 이 질의, 탐색 또는 "파일 열거" 명령에 응답하여, 본 발명의 이 예에 다른 시스템 및 방법은 사람_A 또는 사람_D 중 어느 하나를 포함하는 임의의 사진들을 검색한다(검색되기 위해, 시스템은 자동적으로 또는 어떤 사람은 언젠가 (예를 들어, 상기한 바와 같이, 메타데이터로서) "사람_A" 또는 "사람_D" 속성 또는 키워드를 여러가지 사진 파일과 연관시켰어야만 하며, 그에 따라 사진 안에 포함되어 있는 사람(들)을 알려주어야만 한다). 주목할 만한 것은, 이 예시적인 탐색 질의에서, 본 발명의 이 예에 따른 시스템 및 방법은 합집합 정보, 즉 사람_A 및 사람_D 둘다를 포함하는 임의의 사진(즉, 이 예에서, 사진 ABD1, ABD2, ACD1, AD1 및 ABD3)을 비롯하여, (도 8에서의 아이콘들에 포함되어 있는 이름들에서, 문자 "A" 및 "D"로 각각 나타내어져 있는) 사람_A OR 사람_B 중 어느 하나를 포함하는 파일을 식별해주는 정보를 자동적으로 검색한다. 본질적으로, 본 발명의 이 예에 따른 시스템 및 방법은 내비게이션 패널(802)에서 사용자에 의해 지정된 입력 매개변수에 기초하여 논리적 OR 연산을 수행하였다.
따라서, 이 예로부터, 본 발명에 따른 적어도 몇몇 예시적인 시스템 및 방법에 따른 선택 알고리즘의 제1 규칙이 도출될 수 있다. 이 규칙에 의해, 단일의 다중값 속성 세트 내의 다수의 집합의 사용자 선택으로부터 반환되는 정보는 자동적으로 "합집합된(unioned)", 즉 논리적 "OR" 질의어 방식으로 반환되어진다. 물론, 원하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 사용자에게 이 규칙 및/또는 이 자동 선택 동작을 무시하는(그에 의해 "AND" 연산을 실행하는) 기능을 제공할 수 있다.
주목할 만한 것은, 예시된 디스플레이 패널(804)에서, 2개의 선택된 데이터 집합이 전체로서 보여지거나 이용가능하고 서로 분리되어 유지된다는 것이다(즉, 이 예에서, 사람_A 사진에 대한 하나의 서브패널(806) 및 사람_D 사진에 대한 하나의 서브패널(808)). 주목할 만한 것은, 단일의 리스트 항목이, 적절한 경우, 각각의 서브패널(806, 808)에 (또는 다른 것들에) 나타날 수 있다는 것이다(즉, 이 예에서, 사진 ABD1, ABD2, ACD1, AD1, 및 ABD3를 나타내는 아이콘이 각각의 서브패널(806, 808)에 나타난다). 물론, 예를 들어, 소스 속성의 표시 없이 및/또는 동일한 파일 또는 항목의 반복된 표현을 제공하지 않고 파일 또는 항목의 편집된 리스트를 디스플레이하는 것을 비롯하여, 검색된 정보를 (예를 들어, 디스플레이 패널(804)에) 디스플레이하는 많은 다른 방식이 본 발명을 벗어나지 않고 사용될 수 있다. 다른 예로서, 원하는 경우, 디스플레이 부분(804)은 또한, 논리적 AND 연산이 요망된 경우에, 이 정보를 사용자가 즉시 이용가능하도록 해주기 위해, 논리적 AND 연산의 결과(즉, 이 예에서, 사람 A 및 사람 D 둘다를 포함하는 사진)를 포함하는 디스플레이 서브패널, 기타 등등을 포함할 수 있다.
2. 단일값 속성 내의 다중 선택
상기한 바와 같이, 도 8의 예에서, "사람들" 속성은 다중값 속성이다(그 속성 아래에 저장된 정보 항목(예를 들어, 파일)이 그와 연관된 기본 자식 속성들 중 2개 이상을 가질 수 있음을 의미함). 그렇지만, 어떤 속성은 "단일값 속성(single valued property)"로 생각될 수 있는데, 이는 그 속성 아래에 저장된 각각의 정보 항목(예를 들어, 파일)이 이 속성의 기본 자식의 단지 하나의 인스턴스를 포함한다는 것을 의미한다. 단일값 속성의 예들은 크기, 등급, 기타 등등들 포함할 수 있지만, 이에 한정되는 것은 아니다. 도 9는 사용자가 (예를 들어, 파일 열거, 탐색 질의 또는 기타 동작에서) 속성들의 계층적 배열(또는 폴더, 기타 등등)을 포함하는 내비게이션 패널(902)로부터 다수의 속성을 선택한 예시적인 디스플레이 화면(900)을 나타낸 것으로서, 선택된 속성은 단일값 속성 "등급" 아래에 있다(즉, 사용자는 일반적으로 파일에 단지 하나의 등급을 제공할 수 있고 및/또는 제공하게 된다). 주목할 만한 것은, 이 예에서, 내비게이션 패널(902)에서의 하이라이팅으로부터 명백한 바와 같이, 사용자가 별 3개 또는 별 4개 등급을 갖는 모든 사진의 검색을 요청했다는 것이다.
이 질의, 탐색, 또는 "파일 열거" 명령에 응답하여, 본 발명의 이 예에 따른 시스템 및 방법은 별 3개 OR 별 4개로서 평가된 임의의 사진을 검색한다(검색되기 위해, 본 시스템은 자동적으로 또는 어떤 사람은 언젠가 (예를 들어, 상기한 바와 같이, 메타데이터로서) 등급 속성을 여러가지 파일과 연관시켜야만 했다). 주목할 만한 것은, 이 예시적인 탐색에서, 본 발명의 이 예에 따른 시스템 및 방법은 자동적으로 합집합 정보, 즉 별 3개 OR 별 4개 중 어느 하나로 평가된 파일을 식별해주는 정보를 검색한다. 본질적으로, 본 발명의 이 예에 따른 시스템 및 방법은 내비게이션 패널(902)에서 사용자에 의해 지정된 입력 매개변수에 기초하여 논리적 OR 연산을 수행하였다. 실제로, 이 예에서, "등급" 속성이 단일값 속성이기 때문에, 논리적 "AND" 연산을 수행하는 것이 의미가 없는데, 그 이유는 "AND" 연산이 각각의 경우에 공집합(empty set)을 반환하기 때문이다(즉, 각각의 파일이 단지 하나의 등급만을 포함하기 때문에, 탐색 동안에 별 3개 AND 별 4개 등급 둘다를 포함하는 파일이 없게 된다).
따라서, 이 예로부터, 본 발명에 따른 적어도 몇몇 예시적인 시스템 및 방법에 따른 선택 알고리즘의 다른 규칙이 도출될 수 있다. 이 규칙에 의해, 단일값 속성 집합 내의 다수의 집합의 사용자 선택으로부터 반환되는 정보는 자동적으로 "합집합" 방식(unioned manner)으로 또는 논리적 "OR" 질의어 방식으로 반환된다. 물론, 원하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 이 규칙 및/또는 이 자동 선택 동작을 무시할 수 있는 기능을 사용자에게 제공할 수 있다.
주목할 만한 것은, 예시된 디스플레이 패널(904)에서, 2개의 선택된 데이터 집합이 전체로서 보여지거나 이용가능하게 되고 서로 분리되어 유지되고 있다는 것이다(즉, 이 예에서, 하나의 서브패널(906)은 별 3개 등급의 사진에 대한 것이고 하나의 서브패널(908)은 별 4개 등급의 사진에 대한 것임). 주목할 만한 것은, 이 경우에, 양쪽 서브패널(906, 908)에(또는 다른 것들에) 단 하나의 리스트 항목도 없는데, 그 이유는 각각의 파일이, 이 예에서의 정의에 의해, 단일의 등급값을 포함하기 때문이다. 물론, 본 발명을 벗어나지 않고, 예를 들어, 소스 속성의 표시 없이 파일 또는 항목의 편집된 리스트를 디스플레이하는 것을 비롯하여, 검색된 정보를 (예를 들어, 디스플레이 패널(904)에) 디스플레이하는 많은 다른 방식들이 사용될 수 있다.
3. 부가의 논리적 "OR" 예
상기한 바와 같이, 상기 규칙은 폴더 구조에서 및/또는 계층적 속성 구조에서의 항목들에 적용될 수 있다. 도 10 및 도 11은 사용자 선택이 내비게이션 패널에서의 계층적 속성에 적용될 때의 몇몇 부가적인 예를 나타낸 것이다.
도 10의 디스플레이 화면(1000)에 나타낸 바와 같이, 사용자는 내비게이션 패널(1002)에 존재하는 계층적 속성 테이블에서 2개의 독립적인 엔트리, 즉 자동차>수입품>독일산 속성 및 자동차>미국산 속성을 선택하였다. 선택된 속성이 여전히 공통의 다중값 부모 속성(이 예에서, "자동차") 아래에 있기 때문에, 상기 규칙이 적용되고, 디스플레이 패널(1004)은 이 질의, 탐색, 또는 파일 열거 동작에 응답하여 2개의 선택된 속성의 합집합을 디스플레이한다. 보다 구체적으로는, 도 10에 나타낸 바와 같이, 디스플레이 패널(1004)은 논리적 OR 연산에 대응하는 모든 저장된 파일을 식별해주는 정보, 즉 어느 한 탐색 조건, 즉 독일산 수입품 자동차에 대응하는 저장된 디지털 사진 OR 미국산 자동차에 대응하는 저장된 디지털 사진을 만족시키는 정보를 포함한다. 논리적 AND 연산은 이 구체적인 실제 상황에서 의미가 별로 없거나 일어날 가능성이 별로 없는데, 그 이유는 일반적인 자동차가 "수입품" AND "미국산" 둘다인 것으로 생각되지 않기 때문이다(그렇지만, 예를 들어, 다수의 자동차가 주어진 사진에 포함되어 있고 또 속성이 사진에 있는 자동차 둘다에 대한 파일과 연관되어 있는 경우, AND 연산은 히트(hit) 반환할 수 있다).
주목할 만한 것은, 이 예에서, 계층적 구조에서의 2개의 선택된 항목(즉, 속성)이 동일한 계층 레벨에 위치하지 않았다는 것이다. 그럼에도 불구하고, 이 경우에 논리적 OR 연산이 수행되었는데, 그 이유는, 상기한 바와 같이, 선택된 속성이 공통의 부모 속성 아래에 위치하는 경우, 알고리즘의 규칙이 OR 연산이 수행될 것을 요구하기 때문이다(그렇지만, 이 공통의 부모 속성이 양쪽의 또는 어느 한쪽의 선택된 노드의 직계 부모일 필요는 없다).
주목할 만한 것은, 예시된 디스플레이 패널(1004)에서, 2개의 선택된 데이터 집합이 전체로서 주어져 있거나 이용가능하고 서로 분리되어 유지되고 있다는 것이다(즉, 이 예에서, 하나의 서브패널(1006)은 독일산 자동차 사진에 대한 것이고 하나의 서브패널(1008)은 미국산 자동차 사진에 대한 것임). 다시 말하면, 이 경우에서, 양쪽 서브패널(1006, 1008)(또는 다른 것들)에 단 하나의 리스트 항목도 나타나지 않지만, 단일의 사진이 2개 이상의 자동차를 포함할 수 있기 때문에, 서브패널(1006, 1008)에 중복하는 사진이 있을 수 있다. 물론, 예를 들어, 소스 속성의 표시 없이, 복제된 사진 리스트 없이, 파일 또는 항목의 편집된 리스트를 디스플레이하는 것을 비롯하여, 검색된 정보를 (예를 들어, 디스플레이 패널(1004)에) 디스플레이하는 많은 다른 방식들이 본 발명을 벗어나지 않고 사용될 수 있다. 또한, 원하는 경우, 논리적 AND 연산의 결과도 역시, 선택에 따라서는, 논리적 OR 연산의 결과와 함께, 디스플레이 패널(1004)에 디스플레이될 수 있다.
도 11은 내비게이션 패널(1102)에서의 다수의 계층적 속성 노드가 사용자에 의해 선택되어 있는 다른 예시적인 디스플레이 화면(1100)을 나타낸 것이다. 이 예에서, 노드 및 그의 대응하는 손자 노드들 중 하나가 사용자에 의해 선택되어 있다(즉, 자동차 노드 및 자동차>수입품>영국산 노드가 선택되었다). 이 경우에, 논리적 AND 연산은 거의 또는 전혀 의미가 없는데, 그 이유는 사용자가 영국산 수입품 자동차에만 대응하는 파일을 열거하려고 의도한 경우에, 사용자가 이 리스트를 생성하기 위해 단지 영국 노드를 선택하였을 수 있기 때문이다(다중 선택이 필요하지 않았다). 따라서, 상기 선택 규칙이 여전히 적용된다, 즉 선택된 속성이 공통 부모 속성(이 예에서, "자동차") 내에 위치하고 있기 때문에, 이 질의, 탐색, 또는 파일 열거 동작에 응답하여, 시스템은 자동적으로 검색을 하고 디스플레이 패널(1104)은 자동적으로 2개의 선택된 속성의 합집합을 디스플레이한다. 보다 구체적으로, 도 11에 도시된 바와 같이, 디스플레이 패널(1104)은 논리적 OR 연산에 대응하는 모든 저장된 파일을 식별해주는 정보, 즉 어느 한 탐색 조건을 만족시키는 정보, 즉 모든 자동차에 대응하는 저장된 디지털 사진 OR 수입된 영국산 자동차에 대응하는 저장된 디지털 사진을 포함한다.
상기한 여러가지 디스플레이 패널에서와 같이, 디스플레이 패널(1104)은 2개의 선택된 데이터 집합이 전체로서 이용가능하게 해주고 또 서로 분리되어 유지되게 해준다(즉, 이 예에서, 하나의 서브패널(1106)은 모든 자동차 사진에 대한 것이고 하나의 서브패널(1108)은 영국산 수입품 자동차 사진에 대한 것임). 이 예시적인 시스템 및 방법에서, 서브패널(1108) 내의 영국산 자동차 사진 전부는 또한 보다 일반적인 자동차 서브패널(1106) 내에 포함되어 있는데, 그 이유는 모든 영국산 자동차 사진이 자동차 부모 노드 내에 속해야 하기 때문이다(예를 들어, 계층적 속성과 관련하여 상기한 바와 같이, 자식 속성이 파일에 할당될 때, 그 파일은 또한 할당된 자식 속성에 대한 모든 부모 속성을 자동적으로 할당받는다). 물론, 예를 들어, 소스 속성의 표시 없이, 중복하는 사진의 디스플레이 없이, 기타 등등에 의해 파일 또는 항목의 편집된 리스트를 디스플레이하는 것을 비롯하여, 본 발명을 벗어나지 않고 검색된 정보를 (예를 들어, 디스플레이 패널(1104)에) 디스플레이하는 많은 다른 방식들이 사용될 수 있다.
4. 논리적 "AND" 예
도 8 내지 도 11의 상기 예들은 폴더, 계층적 속성, 기타 등등의 주어진 계층적 그룹 내에서의 다중 사용자 선택에 관한 것이다. 계층적 폴더 또는 속성 구조에서의 다중 사용자 선택에 응답하여 어느 데이터를 디스플레이할지를 결정하는 예시적인 알고리즘의 다른 규칙이 도 12 내지 도 14와 관련하여 설명된다.
일반적으로, 이 알고리즘의 이러한 "규칙"은, 서로 다른 부모 속성 집합에 걸쳐 다중 사용자 선택이 행해질 때, 탐색 결과의 "교집합"이 디스플레이될 것(즉, 논리적 AND 연산이 수행되어 그 결과가 디스플레이될 것)을 요구한다. 도 12에 예시된 예에서, 디스플레이 화면(1200)은 다중값 계층적 속성이 디스플레이되는 내비게이션 패널(1202)을 보여준다. 사용자는 최상위 레벨 부모 속성 집합들 중 2개에 걸쳐 있는 2개의 속성, 즉 장소>토론토 및 사람들>사람_D를 선택하였다. 이러한 유형의 상황에서, 사용자는 일반적으로, 디스플레이된 결과가 사람_D도 역시 포함하는 토론토에서 찍은 사진만을 포함하도록, 논리적 AND 연산이 수행될 것으로 기대한다(예를 들어, 일반적으로 이러한 유형의 탐색 질의에 있어서, 사용자는 모든 토론토 사진 또는 사람_D를 포함하는 모든 사진을 보려고 하지 않을 것이다). 따라서, 이 예에서, 디스플레이 패널(1204)에 나타낸 바와 같이, 그 결과의 디스플레이된 결과는 그 안에 사람_D를 포함하는 토론토 여행으로부터의 그 사진들만을 포함한다. 선택된 집합 둘다의 교집합이 디스플레이되기 때문에, 상기에서 도 8 내지 도 11에서 나타낸 바와 같이(즉, 디스플레이 패널(1204)에서의 각각의 항목은 장소>토론토 리스트에 또한 사람들>사람_D 리스트에 존재하게 된다), 각각의 사용자 선택된 집합으로부터의 결과를 따로따로 보여줄 이유가 없지만, 원하는 경우(예를 들어, 사용자가 개개의 집합 둘다를 보고자 할 경우를 포함하기 위해), 이들 개개의 선택된 집합도 역시 보여줄 수 있다.
물론, 본 발명을 벗어나지 않고 검색 결과를 (예를 들어, 디스플레이 패널(1204)에) 디스플레이하는 임의의 방식이 사용될 수 있다. 게다가, 원하는 경우, 사용자는 본 발명의 이 예에 따른 시스템 및 방법에 의해 생성된 자동적인 AND 연산을 무시할 수 있는 기능을 제공받을 수 있다.
논리적 AND 연산의 적용이 다중값 계층적 속성에서의 사용에 한정되지 않는다. 예를 들어, 도 12에서의 사용자 선택 중 하나 또는 둘다가 단일값 속성(내비게이션 패널(1202)에 나타낸 별 "등급" 속성들 중 하나 등)을 구성하고 다른 쪽 선택이 다른 부모 속성 집합에("사람들" 또는 "장소" 속성 집합 등에) 위치하고 있는 경우, 선택된 별 등급 속성과 선택된 사람들 또는 장소 속성의 "교집합"이 디스플레이될 것이다(즉, 논리적 AND 연산이 여전히 수행되고 결과가 디스플레이되는데, 그 이유는 이들 선택이 서로 다른 속성 집합들에 걸쳐 있기 때문이다).
논리적 AND 연산을 적용하기 위한 알고리즘의 규칙은 또한 서로 다른 계층적 속성들에 걸쳐 선택이 행해질 때, 심지어 이들 선택이 계층적 구조 내에서 서로 다른 깊이(depth)에 위치하고 있을 때도 적용된다. 도 13은 일례를 나타낸 것이다. 도 13의 디스플레이 화면(1300)에 나타낸 바와 같이, 사용자는 내비게이션 패널(1302)에서 속성 키워드>자동차>수입품 및 날짜>2004를 선택하였다. 최상위 레벨 부모 속성들이 서로 다르기 때문에, 논리적 AND 연산이 수행되고, 디스플레이 패널(1304)은 이들 2개의 속성의 교집합을 디스플레이한다(즉, 선택된 속성 둘다를 갖는 파일, 즉 2004 년도로부터의 수입품 자동차의 사진을 디스플레이한다). 선택된 노드들 중 한쪽이 다른쪽의 선택된 노드와 비교하여 서로 다른 수의 부모 노드를 갖는다(따라서 계층구조에서 전체적으로 서로 다른 레벨에 존재한다)는 사실에도 불구하고, 이 AND 연산이 수행된다.
사용자 선택된 속성들 중 하나 또는 둘다가 단일값 속성인지 다중값 속성인지에 상관없이, 이 동일한 알고리즘 규칙이 적용될 수 있고 또 유사한 교집합 결과가 획득될 수 있다.
게다가, 논리적 AND 연산을 적용하기 위한 알고리즘의 규칙은 또한 서로 다른 계층적 속성들에 걸쳐 선택이 행해질 때, 심지어 이들 선택 중 적어도 하나가 계층구조에서 하위 레벨 항목을 포함하지 않을 때에도 적용된다. 도 14는 일례를 나타낸 것이다. 도 14의 디스플레이 화면(1400)에 나타낸 바와 같이, 사용자는, 이 예에서, 내비게이션 패널(1402)에서 속성 등급>별 4개 및 사람들을 선택하였다(사람들 노드 아래의 어느 특정의 사람도 선택되지 않음). 최상위 레벨 부모 속성들이 서로 다르기 때문에, 논리적 AND 연산이 수행되고, 디스플레이 패널(1404)은 이들 2개의 속성의 교집합을 디스플레이한다(즉, 별 4개 등급의 "사람들" 속성(예를 들어, 임의의 사람)이 그 안에 포함되어 있는 파일들에 관한 정보를 디스플레이한다).
5. 폴더, 리스트 또는 기타 구조를 갖는 계층구조에서의 다중 선택의 사용
상기한 바와 같이, 계층구조에서의 다중 사용자 선택의 사용의 측면들은 또한 종래의 폴더를 포함하는 계층구조에도 적용될 수 있다(예를 들어, 사용자 선택된 요소들 중 하나 또는 둘다가 폴더 구조를 포함하는 경우에도, OR/AND 기능의 수행은 상기한 규칙을 사용하여 결정될 수 있다). 개념적으로, 본 발명의 적어도 몇몇 예시적인 측면에 따르면, "폴더"는 단일값 속성로서 취급될 수 있다. 보다 구체적으로는, 상기한 바와 같이, 개개의 파일이 하나의 종래의 폴더에만 존재하기 때문에, 본 발명의 이들 측면에 따르면 폴더가 단일값 속성로서 취급될 수 있다. 선택에 따라서는, 원하는 경우, 다중 사용자 선택은 계층적 구조에서의 폴더 요소 및 속성 요소의 선택의 혼합을 포함할 수 있다. 여러가지 예들이 이하에 있다.
도 15은 계층적 속성 및 폴더 구조 둘다가 존재하는 내비게이션 패널(1502)을 포함하는 디스플레이 화면(1500)을 나타낸 것이다. 도 15에 나타낸 예에서, 사용자는 2개의 개별적인 폴더, 즉 내 그림>여행 폴더 및 내 그림>옛날 폴더를 선택하였다. 이 2개의 선택이 계층구조에서 동일한 최상위 레벨 부모 요소(즉, 이 예에서, "내 그림" 요소) 아래에 위치하고 있기 때문에, 상기한 여러가지 알고리즘 규칙들의 적용을 통해 논리적 OR 연산이 적용되고, 디스플레이 패널(1504)에 나타낸 바와 같이, 디스플레이된 결과는 2개의 선택된 집합들의 합집합을 보여준다. 이 예시된 예에서, 이들 선택된 집합의 내용이 디스플레이 패널(1504)에 임의의 원하는 방식으로 디스플레이될 수 있는 반면, 디스플레이된 파일은, 예를 들어, 도 8 내지 도 11에서 일반적으로 상기한 바와 같이, 개별적인 서로 다른 서브패널에서 식별된다.
상기한 바와 같이, 사용자 파일은 종래의 폴더 계층구조에서 단일의 장소에 존재한다(즉, 단일의 파일 또는 기타 항목이 동시에 2개의 독립적인 별개의 폴더에 존재할 수 없다). 따라서, 도 15에 예시된 상황에서, 논리적 OR 연산이 가장 의미가 있는데, 그 이유는 논리적 AND 연산이 결과로서 공집합을 반환하기 때문이다.
도 16은 사용자의 선택이 적어도 하나의 폴더 집합을 포함하고 또 이 선택이 계층구조의 독립적이고 서로 다른 부분들(즉, 서로 다른 궁극적인 최상위 레벨 부모 노드를 갖는 부분들)에 걸쳐 있는 상황에서 OR/AND 논리적 연산 선택 규칙 및 알고리즘이 적용되는 예에서의 디스플레이 화면(1600)을 나타낸 것이다. 도 16의 계층구조 내비게이션 패널(1602)에 나타낸 바와 같이, 사용자는 등급 노드(이 예에서, 별 4개) 및 폴더 노드(이 예에서, 내 그림>옛날 폴더 노드)를 선택하였다. 상기한 여러가지 규칙 및 알고리즘을 적용하면, 선택이 계층적 구조에서 서로 다른 최상위 레벨 부모 노드를 갖기 때문에, 논리적 AND 연산이 적용되고, 이들 2개의 계층 요소들의 교집합에 관한 정보가 디스플레이 패널(1604)에 디스플레이된다. 보다 구체적으로는, 이 예에서, "별 4개" 등급을 갖는 저장된 "옛날" 사진 전부가 디스플레이 패널(1604)에 디스플레이된다. 물론, 본 발명을 벗어나지 않고 질의, 탐색 또는 파일 열거 결과를 디스플레이하는 임의의 방식이 사용될 수 있다. 또한, 원하는 경우, 디스플레이 패널(1604)은 게다가 논리적 OR 연산으로부터의 결과를 보여주도록 설계될 수 있고 및/또는 사용자는 논리적 OR 연산이 요망됨을 어떤 방식으로 시스템에 알려줄 수 있다.
본 발명의 적어도 몇몇 예들에 따르면, 동일한 OR/AND 논리 연산 선택 기능이 계층적 구조에서의 리스트 요소에 적용될 수 있다. "리스트"는 개념적으로 단지 파일, 기타 등등의 일련의 항목을 포함하는 것으로 생각될 수 있다. 도 17는 여러가지 리스트 요소가 내비게이션 패널(1702)에 나타낸 계층적 구조에 포함되어 있는 예시적인 디스플레이 화면(1700)을 나타낸 것이다. "모든 리스트" 노드 아래의 다수의 요소, 즉 "톱 이슈(Top Issues)" 노드 및 "프로젝트 Y" 노드가 사용자 선택되어 있다. 디스플레이 패널(1704)에서, 발생된 디스플레이는 이들 검색 조건 중 어느 하나를 만족시킨 리스트 항목, 즉 "톱 이슈"인 것으로 지정된 리스트 요소 OR "프로젝트 Y"에 대응하는 것으로 지정된 리스트 요소에 관한 정보를 제공한다. 주목할 만한 것은, 리스트 항목들 중 일부가 양쪽 노드에 대한 그룹 아래에 포함될 수 있다는 것이다(예를 들어, 항목 2 및 항목 4). 이들 선택된 집합의 내용이 임의의 원하는 방식으로 디스플레이 패널(1704)에 디스플레이될 수 있지만, 이 예시된 예에서, 디스플레이된 리스트 요소는, 예를 들어, 도 8 내지 도 11에서 일반적으로 상기한 바와 같이, 개별적인 별개의 서브패널에서 식별된다. 또한, 원하는 경우, 디스플레이 패널(1704)은, 이 AND 결과를 사용자가 원할 경우에 대비하기 위해, 논리적 AND 연산으로부터의 결과도 또한 보여주도록 설계될 수 있다. 또한, 상기한 바와 같이, 원하는 경우, 사용자는 자동적인 OR 연산 선택을 무시할 수 있는 기능을 제공받을 수 있다.
상기한 OR/AND 논리 연산 선택 판정 알고리즘 및 규칙은 또한 사용자가 3개 이상의 계층 요소(예를 들어, 3개 이상의 폴더, 리스트 요소, 속성, 기타 등등)를 선택하는 상황에서 적용될 수 있다. 일반적으로, 이러한 상황에서, 동일한 계층적 부모 요소 집합 아래에서 행해진 임의의 선택에 대해 논리적 OR 연산(즉, 합집합)이 수행되고, 서로 다른 계층적 부모 요소 집합들에 걸쳐 행해진 선택에 대해 논리적 AND 연산(즉, 교집합)이 수행된다. 선택에 따라서는, 주어진 계층적 부모 요소 집합 내에서의 연산(즉, OR 연산)(있는 경우)이 먼저 수행될 수 있다. 도 18은 이러한 유형의 연산의 예를 나타낸 것이다.
구체적으로는, 도 18의 디스플레이 화면(1800)에 나타낸 바와 같이, 사용자는 계층적 내비게이션 패널(1802)로부터 3개의 요소, 즉 날짜>2004 속성, 키워드>자동차>수입품 속성, 및 키워드>자동차>미국산 속성을 선택하였다. 이에 응답하여, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 이들 조건 중 어느 하나를 만족시키는 저장된 키워드 속성을 포함하는 모든 저장된 파일을 찾아내기 위해, 선택된 키워드 속성들에 대해 먼저 OR 연산을 수행한다. 이어서, 키워드 조건 중 어느 하나를 만족시키는 그 식별된 파일들 중에서, 어느 파일이 날짜 조건도 만족시키는지에 관한 판정이 (논리적 AND 연산을 적용함으로써) 행해진다. 디스플레이 패널(1804)에서의 디스플레이된 결과는 이어서 수입된 자동차 사진 및 2004로부터의 미국산 자동차 사진을 보여준다. 이들 선택된 집합의 내용이, 이 예시된 예에서, 임의의 원하는 방식으로 디스플레이 패널(1804)에 디스플레이될 수 있지만, 파일에 관한 디스플레이된 정보는, 예를 들어, 도 8 내지 도 11에서 일반적으로 상기한 바와 같이, 서로 다른 "OR" 선택들에 관한 개별적인 별개의 서브패널들에 제공된다.
상기한 규칙 및 다중 사용자 선택에 논리적 OR 연산을 수행할지 또는 논리적 AND 연산을 수행할지를 판정함에 있어서의 이들 규칙의 적용이 유익한데, 그 이유는 사용자가 컴퓨터 시스템 또는 네트워크로부터 정보를 저장, 탐색 및 검색하기 위해 계층적 속성, 폴더, 리스트, 또는 기타 구조를 사용할 때, 이들이 예측가능한 논리적 결과를 생성하기 때문이다. 물론, 원하는 경우, 상기한 바와 같이, 사용자는 사용자가 이들 자동적인 검색 규칙을 언제라도, 예를 들어, 이들 규칙이 임의의 개개의 경우에 원하지 않는 결과를 생성하는 경우, 무시할 수 있게 해주는 인터페이스를 제공받을 수 있다. 새로운 정보가 컴퓨터 시스템 또는 네트워크에 유입될 때, 새로운 정보가 기존의 계층구조에 포함될 수 있는지 새로운/부가적인 계층구조를 필요로 하는지에 상관없이, 상기 규칙이 계속하여 새로 추가된 정보에 적용될 수 있다. 어떤 방식으로 계층적 구조에 배치되었으면, 여러가지 선택이 주어진 속성 내에 있는지 기타 계층구조 요소 레벨에 있는지 및/또는 이들이 서로 다른 최상위 레벨 부모 속성 또는 기타 계층구조 요소 레벨들에 걸쳐 있는지를 판정함으로써 상기 OR/AND 논리 연산 선택 절차가 수행될 수 있다.
6. 컴퓨터 판독가능 매체
본 발명의 부가적인 측면들은 또한 여러가지 다중 속성 또는 기타 값 선택 방법을 수행하기 위한 및/또는 다중 속성 또는 기타 값 선택 방법을 포함하는 여러가지 시스템(상기한 시스템 및 방법을 포함함)에서 사용하기 위한 그 위에 저장되어 있는 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체에 관한 것이다. 이 컴퓨터 판독가능 매체는 상기한 컴퓨터 판독가능 매체의 여러가지 특정의 예에 저장되어 있는 컴퓨터 실행가능 명령어를 포함할 수 있다.
C. 디스플레이 패널에서의 그룹화 및 스태킹
현재 Windows
Figure 112007072096410-PCT00003
기반 컴퓨터 운영 체제(예를 들어, 미국 워싱턴주 레드몬드 소재의 마이크로소프트사로부터 입수가능함)에서, (예를 들어, 탐색 질의 또는 파일 열거 명령으로부터의) 일련의 파일을 그룹으로 조직화하는 것이 가능하다. 예를 들어, 탐색 영역 내의 모든 PowerPoint
Figure 112007072096410-PCT00004
프리젠테이션을 한 그룹으로 및/또는 모든 디지털 사진을 또하나의 그룹 내에 배치하기 위해, 파일 "유형"별로 그룹화하는 것이 사용될 수 있다. 그렇지만, 사용자가 효율적으로 또 효과적으로 많은 일련의 항목을 처리하는 것이 어려울 수 있는데, 그 이유는 사용자가 추가적으로 고려하고자 하는 파일을 궁극적으로 찾아내기 위해 사용자가 여전히 정확한 그룹을 찾아내야 하기 때문이다. 예를 들어, 사용자가 그 안에 100,000개 파일을 포함하고 있는 폴더를 가지고 있는 경우, 이들 파일을 그룹화하는 것은 일들을 분류하는 데 얼마간 도움이 될 수 있지만, 사용자가 원하는 특정의 파일을 찾아내는 것이 여전히 어려울 수 있다(예를 들어, 키워드 탐색 또는 기타 탐색 기술이 그룹화된 파일의 범위를 축소시키는 데 효과적이지 않은 경우에 특히 그렇다).
본 발명의 적어도 몇몇 예들에 따른 응용 프로그램 및/또는 운영 체제에서, 사용자는 파일들을 집합으로 시각적으로 조직화하기 위한 새로운/부가적인 방식으로서 "스태킹"하는 기능을 이용할 수 있다. 예를 들어, 시스템 및 방법이 "파일 유형"별로 스태킹하는 경우, 사용자는 그의 파일들 전부가 개별적인 집합, 예를 들어, PowerPoint
Figure 112007072096410-PCT00005
프리젠테이션 파일에 대한 집합, 스프레드쉬트에 대한 집합, 디지털 사진에 대한 집합, 기타 등등으로 스태킹되어 있는 것을 볼 수 있다. 이들 집합 각각은, 예를 들어, 컴퓨터-발생된 디스플레이에, 개념적으로 그 집합의 항목들에 대한 가상 컨테이너(virtual container)로서 역할하는 스택 아이콘(stack icon)에 의해 표현될 수 있다. 스태킹은 사용자가 관심을 가지고 있는 일련의 항목의 범위를 축소시키는 데 도움이 되는 아주 유용한 방식인데, 그 이유는 스태킹이 여러가지 이용가능한 스택 옵션을 명확하게 열거하여 사용자에게 알려주기 때문이다.
보다 구체적인 실세계 예에 적용될 때, 스태킹은 개념적으로 자동차 렌트 장소에 가서 차고지에 어느 컬러의 자동차가 있는지를 말해주도록 요청하는 것으로 생각될 수 있다. 오늘은 청색 및 적색 자동차를 이용할 수 있다고 당신에게 말해줄지 모른다. 개념적으로, 이것은 사용자가 그의 파일을 속성별로 스태킹할 때, 즉 사용자가 그 속성의 각각의 고유한 값에 대한 스택을 획득할 수 있을 때 일어나는 일이다.
이 스태킹 기능(또한 다른 디스플레이 기능)은 예를 들어 도 6 및 도 8 내지 도 18과 관련하여 상기한 것과 같은 사용자 인터페이스에 적용될 수 있다. 이러한 사용자 인터페이스에서, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 리스트, 자동 리스트, 폴더, 및, 예를 들어, 사용자 정의된 속성을 비롯한 속성 등의 것들을 포함하는 정보를 보여줄 수 있다. 각각의 자동 리스트는 사용자가 여러가지 방식으로, 예를 들어, 어떤 속성별로 그의 파일을 식별해주는 정보를 보는 방법을 제공하도록 설계될 수 있다. 보다 구체적인 예로서, 음악 자동 리스트는, 예를 들어, 연주하는 음악가별로 스태킹될 수 있으며, 이 연주하는 음악가 속성별로 탐색하는 것은 사용자로 하여금 음악 컬렉션에 포함된 모든 음악가, 예를 들어, Bjork, Madonna, 기타 등등으로 식별된 스택을 볼 수 있게 해준다. 그렇지만, 단지 이 자동 리스트에의 단축키를 보여주는 것에서의 한가지 문제는, 컴퓨터 시스템이 그에 저장된 많은 다른 음악가의 음악을 가지고 있고 또 보기에서 이용가능한 경우, 사용자가 원하는 개개의 음악가 및/또는 원하는 개개의 앨범, CD 또는 노래(들)를 찾아내는 것이 여전히 어려울 수 있다는 것이다.
본 발명의 예들에 따른 시스템 및 방법의 한 측면은 이용가능한 자동 리스트의 스태킹 구조를, 그와 연관된 내비게이션 패널 및/또는 디스플레이 패널에서 서브노드로서 보여주는 것에 관한 것이다. 한가지 보다 구체적인 예로서, 상기한 "음악가" 자동 리스트 상황에 있어서, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 사용자가 내비게이션 패널 및/또는 디스플레이 패널에서 "음악가" (또는 기타) 노드를 확장할 수 있게 해줌으로써 사용자가 컴퓨터, 네트워크 또는 시스템 상에 저장된 모든 고유의 음악가(또는 기타 노드)를 제어하고 및/또는 볼 수 있게 해줄 수 있다.
본 발명의 다른 측면들은 그룹에 관한 정보 및 정보의 스택이, 예를 들어, 이러한 정보를 제공하는 사용자 인터페이스의 내비게이션 패널 및/또는 디스플레이 부분에서, 처리 및/또는 조작되는 방식에 관한 것이다. 보다 구체적으로는, 본 발명의 측면들은 "그룹화되고" "스태킹된" 정보를 동일한 방식으로 처리하고 또 그룹화된 자동 리스트가 내비게이션 패널에서 계층구조를 표현할 수 있게 해준다. 환언하면, 사용자가 디스플레이 패널에 "음악가"별로 그룹화된 음악 파일의 뷰(view)를 갖는 경우, 본 발명의 예들에 따른 시스템 및 방법은 내비게이션 패널에 다양한 음악가들에 대한 서브노드를 생성하는 데 사용될 수 있다. 적어도 어떤 경우에, 이 서브노드는 실제로 다른 스택을 포함할 수 있고, 따라서 사용자가 이들 서브노드 중 하나를 클릭할 때, 그 뷰에서의 일련의 항목들은 단지 그 결과로 필터링 축소된다. 이것은 뷰에 존재하는 항목들의 빠른 인덱스(quick index)를 사용자에게 제공하고 사용자가 일련의 파일을 단지 시각적으로 또는 정신적으로 조직화하지 않고 실제로 이 일련의 파일로 범위를 축소할 수 있게 해준다.
본 발명에 따른 또다른 예시적인 측면은 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법의 사용자가 부모 폴더에 스태킹하고 그의 폴더 계층구조를 평탄화(flatten)할 수 있게 해주는 기능에 관한 것이다. 예를 들어, 사용자가 하드 드라이브 디렉토리 또는 기타 데이터 컬렉션(예를 들어, "D:\Data" 그룹)에 파일 유형별로 스태킹할 때, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 모든 서브폴더를 탐색하고 그 항목들을 가져와 이들을 스택에 배치한다. 이것은 임의의 폴더로 내비게이션하여 그의 폴더 계층구조에 의하지 않고 원하는 속성값별로 조직화된 그의 내용을 볼 수 있게 해주는 기능을 사용자에게 제공한다.
일반적으로, 본 발명의 측면들은 유용한데, 그 이유는 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법에서, 내비게이션 패널에 동적 조직 구조(dynamic organizational structure)를 생성하는 데 그룹화 및 스태킹이 사용될 수 있고 그것이 내비게이션 패널 또는 디스플레이 패널에서 한 그룹을 선택하고 그 뷰에서의 항목들을 범위 축소시켜 단지 그 세트만을 디스플레이하도록 하는 기능을 제공하기 때문이다. 본 발명의 또다른 부가의 일반적인 측면은 그룹화 및 스태킹을 자동 리스트에 대한 서브노드로서 취급하는 것 및 내비게이션 패널 및/또는 디스플레이 패널에서 그룹을 선택하고 이 선택을 통해 디스플레이된 뷰를 추가적으로 범위 축소시키는 기능에 관한 것이다. 본 발명의 이들 측면의 보다 구체적인 예에 대해 이하에서 설명한다.
상기한 바와 같이, "그룹화" 및 "스태킹"은 일련의 항목을 시각화하는 2가지 서로 다른 방식이다. 도 19는 내비게이션 패널(1902) 및 디스플레이 패널(1904)을 포함하는 디스플레이 화면(1900)(내비게이션 패널(1902)에서 수신된 입력에 기초하여 여러가지 저장된 파일 또는 항목에 관한 정보를 나타냄)을 나타낸 것이다. 주목할 것은, 도 19에서, 내비게이션 패널(1902)이 속성 또는 키워드 "Carnivora"이 선택되었음을 나타내고 또 대응하는 디스플레이 패널(1904)이 계층구조에서 Carnivora 부모 노드 바로 아래의 레벨에 개개의 자식 노드에 대한 스택을 보여준다는 것이다. 보다 구체적으로는, 도 19의 예에 나타낸 바와 같이, 디스플레이 패널(1904)은 개(Candiae)에 대한 사진의 스택 및 고양이(Felidae)에 대한 사진의 스택을 포함한다. 주목할 것은, 내비게이션 패널(1902)에서, CandiaeFelidae 노드 아래의 자식 노드가, 이들 집합이 디스플레이 패널(1904)에서 스태킹된 것으로 나타내어져 있다는 사실에도 불구하고, (그의 최하위 레벨 아래에) 완전히 디스플레이된다는 것이다.
적어도 몇몇 경우에, 스택은 디스플레이 패널(1904)에 정보를 디스플레이하는 가장 바람직한 방식을 구성하지 않을 수 있다. 예를 들어, 도 19에 나타낸 바와 같이, 스태킹이 적어도 몇몇 경우에 바람직하지 않을 수 있는데, 그 이유는 사용자가 스택 내의 내용에 관한 임의의 정보를 용이하게 볼 수 없기 때문이다(예를 들어, 도 19에 나타낸 바와 같이, 사용자는 썸네일 아이콘 또는 스택의 내용에 관한 많은 다른 디스플레이된 정보를 볼 수 없다). 정보를 디스플레이 패널(1904)에 "미스태킹된(unstacked)" 방식으로 디스플레이하지 않고, 사용자는 적어도 몇몇 경우에 최종적으로 사진(또는 특정의 파일에 관한 다른 보다 구체적인 정보)을 보기 위해 계층구조의 가장 깊은 레벨까지 "파고 들어"가야만 할지도 모른다. 이 요건은 불편할 수 있으며, 계층구조가 많은 레벨을 갖는 경우, 계층구조에 많은 파일이 포함되어 있는 경우, 및/또는 원하는 파일이 계층구조 내에서 어디에 있는지 사용자가 확신하지 않는 경우에 특히 그렇다.
도 20는 디스플레이 패널(2004)에서의 스태킹과는 달리 그룹화를 이용하는 다른 예시적인 디스플레이 화면(2000)을 나타낸 것이다. 주목할 것은, 동일한 노드(즉, 이 특정의 예에서, "Carnivora" 노드)가 내비게이션 패널(2002)에서 하이라이트된 채로 있지만, 디스플레이 패널(2004)이 선택된 부모 노드 아래의 각자의 자식 노드 아래에 그룹화된 탐색 결과를 별도의 서브패널(2006, 2008)로서 보여준다는 것이다. 게다가, 서브패널(2006, 2008) 내에서, 이 예시적인 디스플레이 화면(2000)에서의 기본적인 파일 정보는, 사용자가 계층구조 내의 기본적인 내용에 관한 정보를 빠르고 쉽게 볼 수 있도록, 미스태킹된 방식으로 나타내어진다.
주목할 것은, 도 20에 나타낸 예에서, 특정 노드(예를 들어, Candiae 노드) 아래에 포함된 항목들 모두에 관한 정보가, 그 정보가 위치하고 있는 계층구조에서의 레벨에 상관없이(예를 들어, 특정의 사진이 그와 연관된 "Candiae" 속성, "Canis" 속성, "Lupus" 속성, 또는 "Lantrans" 속성와 함께 저장되어 있는지에 상관없이), 각자의 서브패널에(예를 들어, 서브패널(2006)에) 제공된다는 것이다. 이 특징은 원하는 정보에의 보다 빠르고 쉬운 사용자 액세스 및 인식을 가능하게 해준다. 주목할 것은, 예를 들어, 사용자가 내비게이션 패널(2002)에서 CandiaeFelidae 노드 둘다를 하이라이트한 경우에, 이 동일한 디스플레이 패널(2004)이 기타 탐색 또는 파일 열거 명령의 결과로서 나타날 수 있다는 것이다.
사용자는 또한 서로 다른 그룹의 정보를 보기 위해 내비게이션 패널(2002)의 계층적 구조에서 빠르게 내비게이션할 수 있다. 잠재적인 변화의 예는 도 20과 도 21의 비교에 의해 볼 수 있다. 주목할 것은, 도 20에서, 상기한 바와 같이, Carnivora 속성이, 그 속성와 함께 저장되고 선택된 속성의 자식 노드에 기초하여 그룹화된(즉, 이 예에서, CandiaeFelidae 자식 노드에 기초하여 그룹화된) 정보의 디스플레이를 제공한 내비게이션 패널(2002)에서 사용자에 의해 선택되었다는 것이다. 도 21의 디스플레이 화면(2100)에서, 사용자는 내비게이션 패널(2102)에서의 하이라이트된 선택을 보다 구체적인 Panthera 속성(Carnivora 속성 아래의 손자 노드)로 변경하였다. 도 21에 도시한 바와 같이, 이 변경은 디스플레이 패널(2104)로 하여금 Panthera 속성 노드 아래의 자식들에 대한 그룹화, 즉 LeoTigris 속성(서브패널(2106, 2108)을 각각 참조할 것)으로 표시된 사진의 그룹을 제공하게 한다. 도 20 및 도 21로부터 명백한 바와 같이, 내비게이션 패널(2002, 2102) 및 디스플레이 패널(2004, 2104)은, 이들 패널과 관련하여 사용되는 계층적 속성과 함께, 사용자가 의미있는 방식으로 그의 저장된 데이터를 저장, 탐색 및 내비게이션하고 또 계층구조 전체에 걸쳐 이용가능한 데이터의 유용한 썸네일 또는 기타 "미리보기" 정보를 얻을 수 있게 해준다. 주목할 것은, 내비게이션 패널에서의 내용 및 사용자 입력이 디스플레이 패널에 제공되는 내용을 주도하지만, 원하는 경우, 사용자 입력이 또한 디스플레이 패널을 통해 허용될 수 있다는 것이다.
도 21 및 도 22의 디스플레이 화면(2100, 2200)의 비교는 본 발명의 적어도 몇몇 예들에 따라 존재할 수 있는 부가적인 특징을 각각 나타낸다. 내비게이션 패널(2202)에서 여러가지 서로 다른 자동 리스트들 간에(예를 들어, 도 21에서의 키워드>Mammalia>Carnivora>Felidae>Panthera에서 도 22에서 찍은 날짜로) 변경할 때, 내비게이션 패널(2202)에서의 계층적 구조는 축소되지 않으며, 오히려 사용자가 놓아둔 대로 있다(예를 들어, 예시된 예에서, Mammalia 속성에 대한 전체 계층구조 및 그의 자식들이 노출된 채로 있다). 일반적으로, 본 발명의 적어도 몇몇 예들에 따르면, 내비게이션 패널(2202)은 디스플레이 패널(2204)(예를 들어, 서브패널(2206, 2208))에 무엇이 보여지는지를 반영하지 않거나 반영하기 위해 변화되지 않고, 오히려 내비게이션 패널(2202)이 디스플레이 패널(2204)에 무엇이 제공되고 있는지를 주도한다.
내비게이션 패널(2202)의 이 "축소되지 않는(non-collapsing)" 특징은 여러가지 이유로 유용할 수 있다. 예를 들어, 사용자는 이 계층구조가, 예를 들어, 종래의 전자 파일 및/또는 폴더 시스템과의 사용자 상호작용으로, 이와 같이 노출된 채로 있을 것으로 기대한다. 다른 예로서, 예를 들어, 부가의 탐색, 내비게이션 또는 미리보기를 위해, 파일에의 속성 할당을 위해, 기타 등등을 위해, 예를 들어, 사용자가 계층 구조로 되돌아가기로 결정하는 경우, (예를 들어, 사용자에 의해 닫힐 때까지) 계층 구조를 이와 같이 열린 채로, 확장된 채로 또 이용가능한 채로 유지하는 것이 보다 편리할 수 있다. 게다가, 사용자가 내비게이션을 하고 아마도 수동으로 그 상태를 변경할 때 내비게이션 패널(2202)을 변화되지 않은 상태로 놔둠으로써, 사용자가 방문한 과거의 장소가 용이하게 이용가능한 채로 있게 되며, 따라서 원하는 경우, 사용자는 사용자가 가봤던 곳으로 빠르게 되돌아갈 수 있다.
원하는 경우, 본 발명의 적어도 몇몇 예들에 따르면, 그룹화 및 스태킹의 조합이 디스플레이 패널에서 사용될 수 있다. 그룹화 및 스태킹의 이러한 조합된 사용의 예는, 예를 들어, 도 23에 도시된 사용자 인터페이스 디스플레이 화면(2300)의 디스플레이 패널(2304)에서 볼 수 있다. 보다 구체적으로는, 도 23은 저장된 디지털 음악의 컬렉션에 관한 정보를 포함하는 내비게이션 패널(2302)을 갖는 디스플레이 화면(2300)을 나타낸 것으로서, 저장된 음악에 관한 정보의 적어도 일부는 계층적 속성을 포함한다. 이 예시적인 디스플레이(2300)에서, 사용자는 포함된 음악 데이터가 여러가지 서로 다른 장르의 음악을 포함하는 속성와 함께 저장되어 있는 "SuperMusicView"라고 하는 자동 리스트를 하이라이트하였다(예를 들어, "클래식" 음악에 대한 하나의 자식 노드, "재즈"에 대한 것, "팝"에 대한 것, "랩"에 대한 것, 기타 등등). 물론, 본 발명으로부터 벗어나지 않고 계층적 구조에 임의의 수의 장르가 포함될 수 있다.
부모 "SuperMusicView" 노드를 선택함으로써, 본 발명의 이 예에 따른 시스템 및 방법은 여러가지 장르별로 그룹화되어 있는 시스템 상의 저장된 음악에 관한 정보를 디스플레이 패널(2304)에 디스플레이한다(예를 들어, 장르 "클래식", "재즈" 및 "팝" 각각에 대한 서브패널(2306, 2308, 2310)). 이 예에서, 각각의 개별적인 장르 그룹 내에, 예를 들어, 앨범 또는 음악 선집이 발표된 10년간별로, 정보가 스태킹되어 있다. 원하는 경우, 예를 들어, 디스플레이 패널(2304) 또는 내비게이션 패널(2302)에서 스택 내에 저장된 정보에 관한 보다 상세한 정보를 보기 위해, 사용자는 계층적 구조 내로 추가적으로 "파고 들어"갈 수 있다(예를 들어, 개개의 CD 또는 앨범 타이틀, 이 예시된 예에서, 개개의 앨범을 포함하는 스택으로 그룹 또는 음악가를 연주함으로써 스태킹된 정보, 기타 등등). 본 발명의 시스템 및 방법의 적어도 몇몇 예들에서, 원하는 경우, 앨범 또는 CD에 포함된 개개의 노래 또는 트랙의 타이틀에 관한 정보를 디스플레이하기 위해, 개개의 CD 또는 앨범 타이틀에 추가적으로 파고 들어가는 것이 사용될 수 있다. 물론, 본 발명을 벗어나지 않고, 임의의 수의 스택, 그룹 및/또는 임의의 원하는 유형의 정보가 계층적 속성 구조에 포함될 수 있다.
주목할 것은, 도 23에 도시된 예시적인 내비게이션 패널(2302) 및 디스플레이 패널(2304)에서, 자동 리스트의 계층 구조의 적어도 어떤 부분이, 그룹화 또는 스태킹이 디스플레이 패널(2304)에 나타나는지 여부에 상관없이, 내비게이션 패널(2302)에 나타내어진다. 실제로, 이 예시적인 구조에서, 디스플레이 패널(2304)은 그룹화된 정보 및 스태킹된 정보 둘다를 포함한다. 일반적으로, 그룹화된 정보는 "투명한 컨테이너(transparent container)"로서 존재하며, 이는 그룹 내의 내용이 즉시 이용가능하고 뷰에서 사용자에게 보일 수 있음을 의미한다. 반면에, "스택"에 포함된 정보는 "불투명한 컨테이너(opaque container)"에 있는 것으로 생각될 수 있으며, 이는 개개의 내용의 적어도 일부가 스태킹 디스플레이로 인해 사용자에게 감추어져 있을 수 있음을 의미한다(그렇지만, 감추어진 내용은, 원하는 경우, 내비게이션 패널(2302) 및/또는 디스플레이 패널(2304)을 통해 개개의 스택을 추가적으로 하이라이트하거나 그에게로 "파고 들어"감으로써 디스플레이되거나 이용가능하게 될 수 있다).
본 발명의 예들에 따른 시스템 및 방법에 포함된 창, 디스플레이 패널, 서브패널, 기타 등등에서와 같이, 이용가능한 디스플레이 영역을 채우는 것보다 더 많은 이용가능한 정보가 있는 경우, 디스플레이되지 않은 정보에의 사용자 액세스가 임의의 원하는 방식으로, 예를 들어, 디스플레이 패널(2304)에 나타낸 바와 같은 스크롤 바의 사용을 통해, "다음 페이지/이전 페이지" 버튼 또는 아이콘을 통해, 및/또는 임의의 다른 원하는 방식으로 달성될 수 있다.
본 발명의 예들에 따른 계층적 속성 및 기타 요소, 내비게이션 패널, 및 정보의 그룹 및/또는 스택의 디스플레이는, 본 발명을 벗어나지 않고, 종래의 폴더 구조와 함께 사용될 수 있다. 일반적으로, (예를 들어, 디스플레이 패널에서) 폴더를 스태킹하는 것은 사용자에게 유용하지 않은데, 그 이유는 계층적 구조 내에서의 개개의 폴더가 크게 서로 다른 독립적인 주제를 가질 수 있고 또 폴더에 정보를 정리하는 사용자가 종종 많은 파일을 그의 폴더 계층구조의 임의의 주어진 레벨에 저장하지 않기 때문이다. 따라서, 본 발명의 적어도 몇몇 예들에 따르면, 폴더에 스태킹하는 것은 폴더 계층구조를 평탄화시키며 폴더 내에 포함된 항목들을 그 속성에 기초한 집합으로 재구성한다. 도 24는 폴더 계층 구조가 그 안에 포함되어 있는 내비게이션 패널(2402)을 포함하는 디스플레이 화면(2400)을 나타낸 것이다. 내비게이션 패널(2402)에서 "휴가" 폴더가 사용자에 의해 선택될 때, 디스플레이 패널(2404)은 기본적인 폴더 구조(즉, 이 예에서, "휴가" 폴더 아래의 "월식" 및 "오로라" 폴더)는 물론, 그들 폴더 내에 포함된 개개의 파일을 디스플레이한다(그에 의해 기본적인 정보가 사용자에게 즉시 보이고 이용가능하게 되도록 폴더 구조를 "평탄화(flattening out)시킨다"). 이것은, 예를 들어, 선택된 폴더 및 그의 서브폴더 전부를 보도록 범위가 정해진 "자동 리스트" 요소 또는 노드를 생성함으로써, 달성될 수 있다.
물론, 본 발명을 벗어나지 않고 디스플레이 패널(2400)에서 폴더로부터 정보를 제공하는 다른 방식이 가능하다. 예를 들어, 원하는 경우, 도 24에 나타낸 계층적 구조를 평탄화시키지 않고, 폴더 구조가 디스플레이 패널(2404)에 유지될 수 있으며, 하이라이트된 폴더 자체가 몇개의 레벨의 계층구조를 포함하는 상황에서 특히 그렇다. 예를 들어, 원하는 경우, 폴더가 내비게이션 패널(2402)에서 선택되는 경우, 정보는 서브폴더에서 개개의 항목을 제거하고 이들 항목을 서브폴더 이름을 딴 스택에서 보여줌으로써 디스플레이 패널(2404)에 디스플레이될 수 있다. 물론, 본 발명을 벗어나지 않고, 기타 디스플레이 기술들이 가능하다.
또한, 내비게이션 패널에서 하이라이트되거나 선택되어 있는 경우 데이터에 여러가지 조작이 행해질 수 있고 및/또는 그에 관련된 정보는 디스플레이 패널에 디스플레이된다. 도 25은 본 발명의 적어도 몇몇 예들에 따라 사용될 수 있는 및/또는 나타날 수 있는 예시적인 디스플레이 화면(2500)을 나타낸 것이다. 이 예에서, 사용자 인터페이스 디스플레이 화면(2500)은 계층적 폴더 구조가 나타나는 내비게이션 패널(2502), 및 디스플레이 패널(2504)을 포함한다. 이 예에서의 폴더 구조에서 더 깊은 계층구조로 인해, 폴더(즉, 이 예에서, "휴가" 폴더)가 내비게이션 패널(2502)에서 하이라이트될 때, 디스플레이 패널(2504)에서의 정보는 기본적인 서브폴더 구조(즉, "휴가" 폴더 아래의 폴더)로부터 제거되고 개개의 스택에 배치된다. 사용자가 이어서 (예를 들어, 내비게이션 패널(2502)에서 "장소" 아이콘 또는 기타 속성 아이콘을 클릭하고 우측 클릭 또는 드롭다운 메뉴, 기타 등등으로부터 속성을 선택함으로써) 정보를 재구성해야 하는 경우, 데이터는 도 25에 나타낸 바와 같이 위치별로 재구성 및 스태킹될 수 있다. 도 25에서의 이러한 데이터의 수정된 스태킹("휴가" 및 "장소"별로 스태킹됨)이 그 폴더에 제공된 방식으로 "휴가" 폴더의 내용에 대응하지 않기 때문에, 도 25의 내비게이션 패널(2502)에 하이라이팅이 나타나지 않는다. 사실상, 이 동작은 선택된 폴더(즉, 이 예에서, "휴가" 폴더)에 포함된 모든 정보를 평탄화(flattening out)하는 것 및 이어서 선택된 속성 아래에 포함된 자식 속성에 기초하여 이 정보를 스택으로 재구성하는 것과 유사하다.
물론, 예를 들어, 상기한 유형의 내비게이션 패널에서 사용자 명령에 응답하여 그룹화 및/또는 스태킹하기 위한 많은 옵션 및/또는 사용자 명령에 응답하는 기타 시스템 동작이, 본 발명을 벗어나지 않고, 시스템 및 방법에서 제공될 수 있다. 이하는 본 발명의 적어도 몇몇 예들에 포함될 수 있는 옵션들의 적어도 몇몇 부가적인 예들을 포함한다.
일례로서, 다중값인 속성에 의해 그룹화 또는 스태킹할 때, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은 그 속성 아래의 각각의 최상위 레벨 값에 대한 하나의 그룹 또는 스택을 제공할 수 있고, 추가의 자식 속성값은 디스플레이 패널에 노출되지 않을 수 있다(그렇지만, 원하는 경우, 이들 하위의 자식 속성값에서의 기본적인 정보가 디스플레이될 수 있고 및/또는 디스플레이를 위해 이용가능하게 될 수 있다). 이러한 시스템에서, 원하는 경우, 사용자는 여러가지 계층적 레벨 그룹으로 내비게이션함으로써, 예를 들어 계층적 내비게이션 패널을 사용함으로써, 디스플레이 패널에 제공된 스택으로 파고 들어감으로써, 기타 등등에 의해 자식 속성값을 노출시킬 수 있다.
원하는 경우, 본 발명의 적어도 몇몇 예들에 따르면, 모든 키워드(그룹화되거나 스태킹됨)를 평면 리스트(flat list)로서 보기 위한 어떤 방식도 제공될 필요가 없으며, 내비게이션 패널에 하이라이트된 정보는 디스플레이 패널에 무엇이 디스플레이되는지를 제어한다. 원하는 경우, 본 발명의 적어도 몇몇 예들에 따른 시스템 및 방법은, 예를 들어, 사용자가 "모든 스택 확장(expand all stacks)", "이 스택 확장(expand this stack)", 및/또는 기타 등등을 할 수 있게 해주는 메뉴 항목(예를 들어, 버튼, 우측 클릭 메뉴, 도구모음 메뉴, 기타 등등)을 제공함으로써, 사용자가 임의의 레벨에서 "언스태킹(unstack)"할 수 있게 해줄 수 있다.
정보가 그룹화 및/또는 스태킹되어 있는 동안, 기타 동작, 예를 들어, 그룹 및/또는 스택에 포함되어 있는 계층적 속성에 관한 동작도 역시 행해질 수 있다. 한 예는 드래그 및/또는 드롭 동작에 관한 것이다. 본 발명의 적어도 몇몇 예들에서, 항목을 한 그룹에서 다른 그룹으로 드래그할 때, 그 항목은 새로 적용된 그룹 및/또는 스택의 속성값(들)이 그 항목에 적용되도록 변경될 수 있다(즉, 드래그 및/또는 드롭 동작으로부터 "목적지" 그룹 및/또는 스택의 속성값(들)도 포함하고 또, 선택에 따라서는, 필요하고 원하는 경우, 적어도 원래의 소스 그룹 및/또는 스택의 속성값(들)을 제거하도록 변경된다). 다른 예시적인 동작은 "붙여넣기(paste)" 동작에 관한 것이다. 항목이 붙여넣기 동작에 의해 새로운 그룹 및/또는 스택에 배치될 때, 목적지 속성 및 그의 부모 속성값(들)이 새로 배치된 항목에 적용될 수 있다.
또한, 그룹 및/또는 스택으로 내비게이션하는 것에 응답하여, 많은 서로 다른 유형의 디스플레이 또는 디스플레이 내용이 제공될 수 있다. 그렇지만, 상기한 바와 같이, 본 발명의 적어도 몇몇 예들에 따르면, 그룹 타이틀 속성값(group title property value)을 갖는 모든 항목은 물론, (있는 경우) 이 그룹/부모 속성값의 자식 속성값이 첨부된 모든 항목이 초기 디스플레이에 나타날 수 있다. 원하는 경우, 계층구조에서의 항목이 자식 속성값을 디스플레이하기 위해 추가적으로 확장될 수 있음을 나타내기 위해, 어떤 유형의 표시자가 내비게이션 패널 및/또는 디스플레이 패널에 제공될 수 있다(예를 들어, 본 명세서의 도면들에 도시되어 있는 몇개의 예시된 예들에서 "+" 기호가 아이콘 또는 위젯과 함께 사용된다). 본 발명을 벗어나지 않고 동일한 규약이 필터링 메뉴에서 사용될 수 있다. 도 26은 디스플레이 화면(2600)의 디스플레이 패널(2604)에 포함된 정보의 추가적인 사용자 필터링을 가능하게 해주는 예시적인 메뉴(2602)가 (예를 들어, 우측 클릭 동작을 통해 또는 임의의 다른 적절한 방식으로) 풀업(pull up)되어 있는 예시적인 디스플레이 화면(2600)을 나타낸 것이다. 보다 구체적으로는, 이 예에서, 필터링을 위해 사용될 원하는 메뉴 항목을 클릭함으로써, 디스플레이 패널(2604)에 존재하는 정보의 변경이 행해질 수 있다. 이 예에서, 각각의 메뉴 항목의 우측 멀리 있는 삽입기호(caret structure) ">"는, 원하는 경우, 추가적인 하위 계층 레벨이 필터링될 수 있음을 나타내는 데 사용된다.
본 발명의 부가적인 측면은 또한 여러가지 그룹화 및/또는 스태킹 방법을 수행하기 위한 및/또는, 상기한 시스템 및 방법을 비롯하여, 그룹화된 방식 및/또는 스태킹된 방식으로 속성, 폴더, 리스트, 기타 등등의 정보를 디스플레이하는 여러가지 시스템에서 사용하기 위한 그 위에 저장된 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 매체에 관한 것이다. 컴퓨터 판독가능 매체는 상기한 컴퓨터 판독가능 매체의 여러가지 특정의 예에 저장되어 있는 컴퓨터 실행가능 명령어를 포함할 수 있다.
V. 결론
본 발명이 특정의 예와 관련하여 이상에 기술되어 있지만(예를 들어, 많은 예들이 사진, 음악, 전자 문서, 기타 등등에 관한 정보의 내비게이션, 저장, 및 검색에 관한 것임), 당업자라면 본 발명의 측면들이 제한없이 임의의 유형의 데이터와 관련하여 사용될 수 있다는 것을 잘 아는 것은 물론이다. 게다가, 본 발명의 여러가지 예들이 이상에서 상세히 기술되어 있지만, 당업자라면 본 발명이 그의 범위 내에 이들 예의 컴비네이션 및 서브컴비네이션 모두를 포함한다는 것을 잘 알 것이다. 또한, 당업자라면 상기한 예들이 단지 본 발명의 여러가지 측면들을 예시한 것에 불과하다는 것을 잘 알고 있다. 첨부된 청구 범위에 정의된 바와 같이, 본 발명의 정신 및 범위를 벗어나지 않고 여러가지 변경 및 수정이 행해질 수 있다.

Claims (20)

  1. 컴퓨터 시스템 또는 네트워크 상에 저장되거나 이를 통해 이용가능한 전자 파일들을 탐색하기 위한 사용자 인터페이스를 제공하는 컴퓨터 디스플레이로서,
    상기 사용자 인터페이스는,
    탐색 요소(search element)의 계층적 구조를 디스플레이하는 내비게이션 패널 - 상기 계층적 구조 내의 개개의 탐색 요소는 상기 계층적 구조에 자식 탐색 요소를 디스플레이하기 위해, 선택에 따라서는, 사용자 입력에 응답하여 확장될 수 있고, 상기 내비게이션 패널은 하나 이상의 탐색 요소에 관한 사용자 입력을 수신함 -, 및
    적어도 부분적으로, 상기 전자 파일들을 탐색하는 것으로부터 획득되는 탐색 결과에 관한 정보를 디스플레이하는 디스플레이 패널 - 상기 탐색 결과는, 적어도 부분적으로, 상기 내비게이션 패널을 통해 수신되는 상기 사용자 입력에 기초하여 결정됨 - 을 포함하는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  2. 제1항에 있어서, 상기 내비게이션 패널의 상기 계층적 구조 내의 상기 개개의 탐색 요소들은, 상기 탐색 결과가 상기 디스플레이 패널에 디스플레이되는 방식과 상관없이, 상기 계층적 구조에 상기 자식 요소들을 디스플레이하기 위해 확장된 채로 있는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  3. 제2항에 있어서, 상기 디스플레이 패널 내의 상기 탐색 결과는, 적어도 부분적으로, 스태킹된 방식으로 디스플레이되는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  4. 제2항에 있어서, 상기 디스플레이 패널 내의 상기 탐색 결과는, 적어도 부분적으로, 그룹화된 방식으로 디스플레이되는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  5. 제1항에 있어서, 상기 계층적 구조 내의 상기 개개의 탐색 요소들의 적어도 일부는, 속성값, 리스트 요소, 및 폴더로 이루어지는 그룹으로부터 선택되는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  6. 제1항에 있어서, 탐색 요소들의 상기 계층적 구조는, 적어도 부분적으로, 계층적 방식으로 배열된 복수의 속성값을 포함하는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  7. 제6항에 있어서, 상기 계층적 방식으로 배열된 상기 복수의 속성값의 적어도 일부는 사용자 정의된 계층 구조로 배열되어 있는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  8. 제1항에 있어서, 상기 내비게이션 패널의 상기 계층적 구조 내의 자식 탐색 요소들을 선택하는 사용자 입력은 상기 디스플레이 패널에 디스플레이된 상기 탐색 결과에서 대응하는 변화를 야기하는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  9. 제1항에 있어서, 상기 내비게이션 패널의 상기 계층적 구조 내의 선택된 탐색 요소들을 변경하는 사용자 입력은 상기 디스플레이 패널에 디스플레이된 상기 탐색 결과에서 대응하는 변화를 야기하는 것인, 사용자 인터페이스를 제공하는 컴퓨터 디스플레이.
  10. 컴퓨터 시스템 또는 네트워크 상에 저장되거나 이를 통해 이용가능한 전자 데이터를 내비게이션하는 방법으로서,
    내비게이션 요소(navigation element)의 계층적 구조를 디스플레이하는 내비게이션 패널을 제공하는 단계 - 상기 계층적 구조 내의 개개의 내비게이션 요소는 상기 계층적 구조에 자식 내비게이션 요소를 디스플레이하기 위해, 선택에 따라서는, 사용자 입력에 응답하여 확장될 수 있음 -,
    상기 내비게이션 패널을 통해, 상기 내비게이션 요소들 중 하나 이상을 선택하는 사용자 입력을 수신하는 단계, 및
    적어도 부분적으로, 상기 전자 데이터를 탐색하는 것으로부터 획득되는 탐색 결과에 관한 정보를 디스플레이하는 단계 - 상기 탐색 결과는, 적어도 부분적으로, 상기 내비게이션 패널을 통해 수신되는 상기 사용자 입력에 기초하여 결정되고, 상기 정보는 상기 내비게이션 패널의 디스플레이와 동시에 디스플레이 장치 상에 디스플레이됨 - 을 포함하는 것인, 전자 데이터를 내비게이션하는 방법.
  11. 제10항에 있어서, 상기 내비게이션 패널을 통해, 상기 계층적 구조로부터 하나 이상의 새로운 내비게이션 요소를 선택하는 새로운 사용자 입력을 수신하는 단계, 및
    적어도 부분적으로, 상기 선택된 새로운 내비게이션 요소 또는 요소들에 기초하여 디스플레이되는 상기 정보를 변경하는 단계 - 상기 변경된 정보는 상기 내비게이션 패널과 동시에 상기 디스플레이 장치 상에 디스플레이됨 - 를 더 포함하는, 전자 데이터를 내비게이션하는 방법.
  12. 제11항에 있어서, 상기 새로운 사용자 입력은 처음에 선택된 내비게이션 요소보다는 상기 계층적 구조 내의 자식 내비게이션 요소를 선택함으로써 디스플레이된 상기 정보를 필터링 축소(filter down)하는 것인, 전자 데이터를 내비게이션하는 방법.
  13. 제10항에 있어서, 상기 탐색 결과는, 적어도 부분적으로, 스태킹된 방식으로 디스플레이되는 것인, 전자 데이터를 내비게이션하는 방법.
  14. 제10항에 있어서, 상기 탐색 결과는, 적어도 부분적으로, 그룹화된 방식으로 디스플레이되는 것인, 전자 데이터를 내비게이션하는 방법.
  15. 제10항에 있어서, 상기 계층적 구조 내의 상기 개개의 내비게이션 요소들의 적어도 일부는, 속성값, 리스트 요소, 및 폴더로 이루어지는 그룹으로부터 선택되는 것인, 전자 데이터를 내비게이션하는 방법.
  16. 제10항에 있어서, 내비게이션 요소들의 상기 계층적 구조는, 적어도 부분적으로, 계층적 방식으로 배열된 복수의 속성값을 포함하는 것인, 전자 데이터를 내비게이션하는 방법.
  17. 제16항에 있어서, 상기 계층적 방식으로 배열된 상기 복수의 속성값의 적어도 일부는 사용자 정의된 계층 구조로 배열되어 있는 것인, 전자 데이터를 내비게이션하는 방법.
  18. 제10항에 있어서, 상기 내비게이션 패널을 통한 상기 사용자 입력은 폴더 내비게이션 요소를 선택하고,
    상기 디스플레이하는 단계는 상기 선택된 폴더 내비게이션 요소 내의 임의의 서브폴더를 스택으로서 디스플레이하는 단계를 포함하는 것인, 전자 데이터를 내비게이션하는 방법.
  19. 컴퓨터 시스템 또는 네트워크 상에 저장되거나 이를 통해 이용가능한 전자 데이터에 관한 정보를 디스플레이하는 방법으로서,
    내비게이션 요소들의 계층적 구조를 디스플레이하는 내비게이션 패널을 제공하는 단계 - 상기 계층적 구조 내의 상기 개개의 내비게이션 요소들의 적어도 일부는 폴더 요소를 포함함 -,
    상기 내비게이션 패널을 통해, 적어도 하나의 폴더 요소를 선택하는 사용자 입력을 수신하는 단계, 및
    적어도 부분적으로, 상기 전자 데이터를 탐색하는 것으로부터 획득되는 탐색 결과에 관한 정보를 디스플레이하는 단계 - 상기 탐색 결과는, 적어도 부분적으로, 상기 내비게이션 패널을 통해 수신되는 상기 사용자 입력에 기초하여 결정되고, 상기 정보는 상기 내비게이션 패널의 디스플레이와 동시에 디스플레이되며, 상기 선택된 폴더 요소 아래에 제공된 임의의 서브폴더가 스택으로서 디스플레이되도록 상기 정보가 디스플레이됨 - 을 포함하는 것인, 전자 데이터에 관한 정보를 디스플레이하는 방법.
  20. 제19항에 있어서, 상기 내비게이션 패널을 통해, 상기 계층적 구조로부터 하나 이상의 새로운 내비게이션 요소들을 선택하는 새로운 사용자 입력을 수신하는 단계, 및
    적어도 부분적으로, 상기 선택된 새로운 내비게이션 요소 또는 요소들에 기 초하여 디스플레이되는 상기 정보를 변경하는 단계를 더 포함하는, 전자 데이터에 관한 정보를 디스플레이하는 방법.
KR1020077022970A 2005-04-22 2005-07-28 전자 정보의 탐색, 내비게이션 및 검색 KR20080002815A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/111,962 US7162488B2 (en) 2005-04-22 2005-04-22 Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US11/111,962 2005-04-22

Publications (1)

Publication Number Publication Date
KR20080002815A true KR20080002815A (ko) 2008-01-04

Family

ID=37188270

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077022970A KR20080002815A (ko) 2005-04-22 2005-07-28 전자 정보의 탐색, 내비게이션 및 검색

Country Status (6)

Country Link
US (1) US7162488B2 (ko)
EP (1) EP1872271A4 (ko)
JP (1) JP2008537253A (ko)
KR (1) KR20080002815A (ko)
CN (1) CN101167073A (ko)
WO (1) WO2006115515A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140069121A (ko) * 2011-09-09 2014-06-09 페이스북, 인크. 계층적 형태로의 검색 결과의 제시

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8701022B2 (en) * 2000-09-26 2014-04-15 6S Limited Method and system for archiving and retrieving items based on episodic memory of groups of people
US20090254801A1 (en) * 2001-05-14 2009-10-08 The Mathworks, Inc. Model navigation
US7614081B2 (en) * 2002-04-08 2009-11-03 Sony Corporation Managing and sharing identities on a network
US7478126B2 (en) 2002-04-08 2009-01-13 Sony Corporation Initializing relationships between devices in a network
EP1477894A3 (en) * 2003-05-16 2006-10-25 Sap Ag System, method, computer program product and article of manufacture for manipulating a graphical user interface
US7818689B2 (en) * 2003-09-29 2010-10-19 Olympus Corporation Information managing method, information managing apparatus, information managing program and storage medium
JP4341408B2 (ja) * 2004-01-15 2009-10-07 パナソニック株式会社 画像表示方法及び装置
US20060224951A1 (en) * 2005-03-30 2006-10-05 Yahoo! Inc. Multiple window browser interface and system and method of generating multiple window browser interface
US9178940B2 (en) * 2005-04-12 2015-11-03 Tiversa Ip, Inc. System and method for detecting peer-to-peer network software
US7697520B2 (en) * 2005-04-12 2010-04-13 Tiversa, Inc. System for identifying the presence of Peer-to-Peer network software applications
USRE47628E1 (en) * 2005-04-12 2019-10-01 Kroll Information Assurance, Llc System for identifying the presence of peer-to-peer network software applications
US8938052B2 (en) * 2005-04-21 2015-01-20 The Invention Science Fund I, Llc Systems and methods for structured voice interaction facilitated by data channel
US7855803B2 (en) * 2005-06-20 2010-12-21 Canon Kabushiki Kaisha Printing control apparatus, information processing apparatus, control method therefor, computer program, and computer-readable storage medium
JP4708875B2 (ja) * 2005-06-20 2011-06-22 キヤノン株式会社 ファイル管理装置、ファイル管理方法、プログラム、および記憶媒体
JP4556789B2 (ja) * 2005-07-07 2010-10-06 ソニー株式会社 再生装置、再生方法および再生プログラム
US20070073770A1 (en) * 2005-09-29 2007-03-29 Morris Robert P Methods, systems, and computer program products for resource-to-resource metadata association
US7797337B2 (en) * 2005-09-29 2010-09-14 Scenera Technologies, Llc Methods, systems, and computer program products for automatically associating data with a resource as metadata based on a characteristic of the resource
US20070073751A1 (en) * 2005-09-29 2007-03-29 Morris Robert P User interfaces and related methods, systems, and computer program products for automatically associating data with a resource as metadata
US20080276171A1 (en) * 2005-11-29 2008-11-06 Itzchak Sabo Filing System
US8631114B1 (en) * 2006-01-03 2014-01-14 Emc Corporation Information roll-up in distributed environments
US20080033919A1 (en) * 2006-08-04 2008-02-07 Yan Arrouye Methods and systems for managing data
US8104048B2 (en) * 2006-08-04 2012-01-24 Apple Inc. Browsing or searching user interfaces and other aspects
EP1895391A1 (en) * 2006-08-16 2008-03-05 Siemens Aktiengesellschaft Method and system for displaying a multitude of objects on a display
JP2008108200A (ja) * 2006-10-27 2008-05-08 Canon Inc 情報抽出装置及び方法、並びにプログラム及び記憶媒体
US7778994B2 (en) * 2006-11-13 2010-08-17 Google Inc. Computer-implemented interactive, virtual bookshelf system and method
US7954065B2 (en) * 2006-12-22 2011-05-31 Apple Inc. Two-dimensional timeline display of media items
US9142253B2 (en) * 2006-12-22 2015-09-22 Apple Inc. Associating keywords to media
US8276098B2 (en) 2006-12-22 2012-09-25 Apple Inc. Interactive image thumbnails
US20080216010A1 (en) * 2007-01-29 2008-09-04 Medicomp Systems, Inc. Method and system for displaying hierarchical information
JP5153179B2 (ja) * 2007-03-27 2013-02-27 キヤノン株式会社 情報処理装置および情報処理方法
US8484579B2 (en) 2007-03-27 2013-07-09 Canon Kabushiki Kaisha Information processing apparatus and information processing method
US7991733B2 (en) * 2007-03-30 2011-08-02 Knewco, Inc. Data structure, system and method for knowledge navigation and discovery
US20080263455A1 (en) * 2007-04-09 2008-10-23 Topia Technology Graphical user interface for electronic file sharing
US8375072B1 (en) * 2007-04-12 2013-02-12 United Services Automobile Association (Usaa) Electronic file management hierarchical structure
US9183290B2 (en) * 2007-05-02 2015-11-10 Thomas Reuters Global Resources Method and system for disambiguating informational objects
US7711729B2 (en) * 2007-05-07 2010-05-04 Microsoft Corporation Searching a document based on a customer defined metadata schemata
US8375312B2 (en) * 2007-06-08 2013-02-12 Apple Inc. Classifying digital media based on content
US8185839B2 (en) * 2007-06-09 2012-05-22 Apple Inc. Browsing or searching user interfaces and other aspects
US8201096B2 (en) * 2007-06-09 2012-06-12 Apple Inc. Browsing or searching user interfaces and other aspects
US7974981B2 (en) * 2007-07-19 2011-07-05 Microsoft Corporation Multi-value property storage and query support
US20090037826A1 (en) * 2007-07-31 2009-02-05 Christopher Lee Bennetts Video conferencing system
US20090037530A1 (en) * 2007-07-31 2009-02-05 Christopher Lee Bennetts Media broadcasting system
US20090037827A1 (en) * 2007-07-31 2009-02-05 Christopher Lee Bennetts Video conferencing system and method
US7979808B2 (en) * 2007-08-24 2011-07-12 Oracle International Corporation Navigational tools for large trees
US9058337B2 (en) * 2007-10-22 2015-06-16 Apple Inc. Previewing user interfaces and other aspects
US20090125837A1 (en) * 2007-11-08 2009-05-14 International Business Machines Corporation Tab control with type ahead and thumbnail images
US7437686B1 (en) * 2007-11-16 2008-10-14 International Business Machines Corporation Systems, methods and computer program products for graphical user interface presentation to implement filtering of a large unbounded hierarchy to avoid repetitive navigation
US20090132591A1 (en) * 2007-11-20 2009-05-21 Toms Mona L Method and system for displaying and accessing music data files
AU2007254603A1 (en) * 2007-12-20 2009-07-09 Canon Kabushiki Kaisha Hierarchical tag based browsing of media collections
US8386947B2 (en) * 2008-01-18 2013-02-26 Microsoft Corporation Declaratively composable dynamic interface framework
US20090187581A1 (en) * 2008-01-22 2009-07-23 Vincent Delisle Consolidation and association of structured and unstructured data on a computer file system
US8204916B2 (en) 2008-03-06 2012-06-19 Microsoft Corporation Hierarchical presentation of search results
US8125481B2 (en) 2008-03-21 2012-02-28 Google Inc. Lightweight three-dimensional display
US8886669B2 (en) * 2008-03-21 2014-11-11 Trimble Navigation Limited File access via conduit application
US8229963B2 (en) * 2008-03-25 2012-07-24 Microsoft Corporation Schema for federated searching
US8117239B2 (en) * 2008-03-25 2012-02-14 Microsoft Corporation Aggregating schema data from multiple sources
US7987202B2 (en) * 2008-06-25 2011-07-26 Microsoft Corporation Contemporaneously sharing resources targeted by a library
US8683361B2 (en) * 2008-06-27 2014-03-25 Microsoft Corporation Presentation of headers for groups of locations in an electronic library
EP2319041A4 (en) * 2008-07-11 2013-06-05 Bby Solutions Inc EVALUATION SWITCHING FOR PORTABLE MEDIA PLAYERS
US8200669B1 (en) * 2008-08-21 2012-06-12 Adobe Systems Incorporated Management of smart tags via hierarchy
US8589402B1 (en) * 2008-08-21 2013-11-19 Adobe Systems Incorporated Generation of smart tags to locate elements of content
WO2010032402A1 (ja) * 2008-09-16 2010-03-25 パナソニック株式会社 データ表示装置、集積回路、データ表示方法、データ表示プログラム及び記録媒体
CN101358855B (zh) * 2008-09-23 2011-04-06 光庭导航数据(武汉)有限公司 基于分层双向启发式路线规划方法的导航装置
KR101528266B1 (ko) * 2009-01-05 2015-06-11 삼성전자 주식회사 휴대 단말기 및 그의 응용프로그램 제공 방법
US9767438B2 (en) * 2009-07-14 2017-09-19 Bitvore Corp. Presentation and sorting of email
CA2684540A1 (en) 2009-11-05 2011-05-05 Ibm Canada Limited - Ibm Canada Limitee Navigation through historical stored interactions associated with a multi-user view
US20110119634A1 (en) * 2009-11-16 2011-05-19 Apple Inc. Global view for digital assets
US20110131536A1 (en) * 2009-12-02 2011-06-02 Xerox Corporation Generating and ranking information units including documents associated with document environments
KR101725887B1 (ko) * 2009-12-21 2017-04-11 삼성전자주식회사 터치 스크린 디바이스의 컨텐츠 검색 방법 및 장치
US20110196888A1 (en) * 2010-02-10 2011-08-11 Apple Inc. Correlating Digital Media with Complementary Content
US8988456B2 (en) * 2010-03-25 2015-03-24 Apple Inc. Generating digital media presentation layouts dynamically based on image features
US8611678B2 (en) * 2010-03-25 2013-12-17 Apple Inc. Grouping digital media items based on shared features
US8316323B2 (en) * 2010-03-26 2012-11-20 Microsoft Corporation Breadcrumb navigation through heirarchical structures
US8793645B2 (en) 2010-04-02 2014-07-29 Microsoft Corporation Replacement of data element in a graph
JP5787639B2 (ja) * 2010-07-28 2015-09-30 キヤノン株式会社 画像を表示するための表示制御装置、表示制御方法、プログラム及び記憶媒体
WO2012018356A1 (en) * 2010-08-04 2012-02-09 Copia Interactive, Llc System for and method of determining relative value of a product
US8817053B2 (en) 2010-09-30 2014-08-26 Apple Inc. Methods and systems for opening a file
US8584015B2 (en) 2010-10-19 2013-11-12 Apple Inc. Presenting media content items using geographical data
USD774529S1 (en) 2010-11-04 2016-12-20 Bank Of America Corporation Display screen with graphical user interface for funds transfer
US8473507B2 (en) 2011-01-14 2013-06-25 Apple Inc. Tokenized search suggestions
JP5633411B2 (ja) * 2011-02-07 2014-12-03 日本電気株式会社 ファイル分類装置
USD774527S1 (en) 2011-02-21 2016-12-20 Bank Of America Corporation Display screen with graphical user interface for funds transfer
USD774526S1 (en) 2011-02-21 2016-12-20 Bank Of America Corporation Display screen with graphical user interface for funds transfer
USD774528S1 (en) 2011-02-21 2016-12-20 Bank Of America Corporation Display screen with graphical user interface for funds transfer
US8789014B2 (en) 2011-05-13 2014-07-22 Microsoft Corporation Managing a working set in an integrated development environment
US9026948B2 (en) 2011-06-29 2015-05-05 Microsoft Technology Licensing, Llc Multi-faceted relationship hubs
US9336240B2 (en) 2011-07-15 2016-05-10 Apple Inc. Geo-tagging digital images
US10289267B2 (en) 2011-09-09 2019-05-14 Facebook, Inc. Platform for third-party supplied calls-to-action
US10739932B2 (en) * 2011-10-11 2020-08-11 Semi-Linear, Inc. Systems and methods for interactive mobile electronic content creation and publication
JP2013089140A (ja) * 2011-10-20 2013-05-13 Canon Inc 文書管理装置およびその制御方法、並びにプログラム
US8977978B2 (en) * 2011-12-12 2015-03-10 Inkling Systems, Inc. Outline view
US10318092B2 (en) * 2012-03-13 2019-06-11 Koninklijke Philips N.V. Medical records visualization system for displaying related medical records in clusters with marked interrelationships on a time line
US9658672B2 (en) 2012-07-30 2017-05-23 Sap Se Business object representations and detail boxes display
US9483086B2 (en) 2012-07-30 2016-11-01 Sap Se Business object detail display
US20140059488A1 (en) * 2012-08-21 2014-02-27 Sap Ag System and method for viewing selected descendant nodes in a tree hierarchy displayed in tabular form
USD770478S1 (en) 2012-09-07 2016-11-01 Bank Of America Corporation Communication device with graphical user interface
JP2014067192A (ja) * 2012-09-25 2014-04-17 Dainippon Screen Mfg Co Ltd ページデータ生成装置、プログラムおよびページデータ生成方法
US9250781B2 (en) 2012-10-17 2016-02-02 Sap Se Method and device for navigating time and timescale using movements
USD752070S1 (en) * 2012-11-13 2016-03-22 Karl Storz Imaging, Inc. Medical imaging display screen or portion thereof with graphical user interface
CN103809893A (zh) * 2012-11-14 2014-05-21 腾讯科技(深圳)有限公司 触控设备的列表界面管理方法及装置
JP2014157390A (ja) * 2013-02-14 2014-08-28 Sony Corp 情報処理装置及び記憶媒体
CN105074641A (zh) 2013-04-01 2015-11-18 索尼公司 显示控制装置、显示控制方法和显示控制程序
US9632689B2 (en) 2013-04-02 2017-04-25 Facebook, Inc. Interactive elements in a user interface
US8671352B1 (en) * 2013-05-07 2014-03-11 Axure Software Solutions, Inc. Variable dimension version editing for graphical designs
CN103399882B (zh) * 2013-07-18 2018-06-19 司法部司法鉴定科学技术研究所 一种能力验证数据平台
US20150052450A1 (en) * 2013-08-13 2015-02-19 Mimecast North America Inc. Displaying Hierarchies of Artifacts
JP6152779B2 (ja) 2013-10-31 2017-06-28 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
US20150242377A1 (en) * 2014-02-24 2015-08-27 Autodesk, Inc. Logical structure-based document navigation
US10175856B2 (en) * 2014-06-25 2019-01-08 Oracle International Corporation Drawer for displaying hierarchical data
US20200159400A1 (en) * 2014-07-04 2020-05-21 Qing Quinton Graphical user interface for non-hierarchichal file system
CN104182458B (zh) * 2014-07-17 2019-02-01 百度在线网络技术(北京)有限公司 图片的关联存储方法和查询方法以及装置
US10963126B2 (en) 2014-12-10 2021-03-30 D2L Corporation Method and system for element navigation
CN105022624A (zh) * 2015-01-12 2015-11-04 西安卡奔软件开发有限责任公司 可一次设置复合参数的条件设置装置
US10452755B2 (en) * 2015-03-10 2019-10-22 Microsoft Technology Licensing, Llc Hierarchical navigation control
US10650085B2 (en) * 2015-03-26 2020-05-12 Microsoft Technology Licensing, Llc Providing interactive preview of content within communication
JP6350879B2 (ja) * 2015-08-27 2018-07-04 京セラドキュメントソリューションズ株式会社 電子機器及び電子機器の操作表示方法
US11853690B1 (en) 2016-05-31 2023-12-26 The Mathworks, Inc. Systems and methods for highlighting graphical models
WO2018007855A1 (en) * 2016-07-07 2018-01-11 Private Universe Sa A method and apparatus for cataloguing an electronic document
USD934269S1 (en) 2016-08-23 2021-10-26 Workiva Inc. Display screen or portion thereof with animated graphical user interface
US10241848B2 (en) 2016-09-30 2019-03-26 Microsoft Technology Licensing, Llc Personalized diagnostics, troubleshooting, recovery, and notification based on application state
US10476768B2 (en) 2016-10-03 2019-11-12 Microsoft Technology Licensing, Llc Diagnostic and recovery signals for disconnected applications in hosted service environment
JP6620730B2 (ja) * 2016-11-18 2019-12-18 京セラドキュメントソリューションズ株式会社 情報処理装置及び画像形成装置
CN107291891B (zh) * 2017-06-21 2021-05-18 深圳传音通讯有限公司 电子终端的图片管理方法及电子终端
CN107729445B (zh) * 2017-09-30 2020-02-07 长城计算机软件与系统有限公司 一种基于html5的大文本阅读定位及显示方法
US11194463B2 (en) * 2017-11-08 2021-12-07 Google Llc Methods, systems, and media for presenting offset content
CN108345626A (zh) * 2017-11-09 2018-07-31 孔朝晖 一种云系统的跨目录的数据分类资料集合
US10592589B1 (en) 2018-08-21 2020-03-17 Axure Software Solutions, Inc. Multi-view masters for graphical designs
US11199944B2 (en) * 2018-09-24 2021-12-14 Salesforce.Com, Inc. System and method for navigation within widget-sized browser panels
CN109271386A (zh) * 2018-09-27 2019-01-25 拉扎斯网络科技(上海)有限公司 数据显示方法、装置、电子设备及计算机可读存储介质
US11645047B2 (en) 2019-09-13 2023-05-09 Axure Software Solutions, Inc. Focused specification generation for interactive designs
CN111552859B (zh) * 2020-04-23 2024-04-26 京东方科技集团股份有限公司 历史信息的获取方法、存储介质、系统
CN112947816B (zh) * 2021-01-29 2024-05-14 维沃移动通信有限公司 显示方法、装置和电子设备

Family Cites Families (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241671C1 (en) 1989-10-26 2002-07-02 Encyclopaedia Britannica Educa Multimedia search system using a plurality of entry path means which indicate interrelatedness of information
US5513306A (en) 1990-08-09 1996-04-30 Apple Computer, Inc. Temporal event viewing and editing system
US5388196A (en) * 1990-09-07 1995-02-07 Xerox Corporation Hierarchical shared books with database
US5333315A (en) 1991-06-27 1994-07-26 Digital Equipment Corporation System of device independent file directories using a tag between the directories and file descriptors that migrate with the files
US5504852A (en) 1991-09-09 1996-04-02 Apple Computer, Inc. Method for creating a collection of aliases representing computer system files
JP3566720B2 (ja) 1992-04-30 2004-09-15 アプル・コンピュータ・インコーポレーテッド コンピュータ・システムにおいて情報を編成する方法と装置
EP0584913B1 (en) 1992-08-27 2000-05-03 Sun Microsystems, Inc. Method and apparatus for providing collection browsers
US5499364A (en) 1993-10-14 1996-03-12 Digital Equipment Corporation System and method for optimizing message flows between agents in distributed computations
US6243071B1 (en) 1993-11-03 2001-06-05 Apple Computer, Inc. Tool set for navigating through an electronic book
US6339767B1 (en) * 1997-06-02 2002-01-15 Aurigin Systems, Inc. Using hyperbolic trees to visualize data generated by patent-centric and group-oriented data processing
US6453311B1 (en) 1994-05-06 2002-09-17 Apple Computer, Inc. System and method for performing context checks
US5680563A (en) 1994-07-25 1997-10-21 Object Technology Licensing Corporation Object-oriented operating system enhancement for filtering items in a window
US5831606A (en) 1994-12-13 1998-11-03 Microsoft Corporation Shell extensions for an operating system
US5696486A (en) 1995-03-29 1997-12-09 Cabletron Systems, Inc. Method and apparatus for policy-based alarm notification in a distributed network management environment
US5838317A (en) 1995-06-30 1998-11-17 Microsoft Corporation Method and apparatus for arranging displayed graphical representations on a computer interface
US5929854A (en) 1995-11-30 1999-07-27 Ross; Michael M. Dialog box method and system for arranging document windows
US6014137A (en) 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US6768999B2 (en) 1996-06-28 2004-07-27 Mirror Worlds Technologies, Inc. Enterprise, stream-based, information management system
US6021262A (en) 1996-07-12 2000-02-01 Microsoft Corporation System and method for detection of, notification of, and automated repair of problem conditions in a messaging system
US5757925A (en) 1996-07-23 1998-05-26 Faybishenko; Yaroslav Secure platform independent cross-platform remote execution computer system and method
US6025843A (en) 1996-09-06 2000-02-15 Peter Sklar Clustering user interface
US5790121A (en) 1996-09-06 1998-08-04 Sklar; Peter Clustering user interface
US5878410A (en) 1996-09-13 1999-03-02 Microsoft Corporation File system sort order indexes
US6918096B2 (en) 1996-11-07 2005-07-12 Thebrain Technologies, Corp. Method and apparatus for displaying a network of thoughts from a thought's perspective
US6037944A (en) 1996-11-07 2000-03-14 Natrificial Llc Method and apparatus for displaying a thought network from a thought's perspective
US5987506A (en) 1996-11-22 1999-11-16 Mangosoft Corporation Remote access and geographically distributed computers in a globally addressable storage environment
EP1010076A1 (en) * 1996-11-27 2000-06-21 1Vision Software, L.L.C. File directory and file navigation system
US6061695A (en) 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
US5835094A (en) * 1996-12-31 1998-11-10 Compaq Computer Corporation Three-dimensional computer environment
US5933139A (en) 1997-01-31 1999-08-03 Microsoft Corporation Method and apparatus for creating help functions
US5875446A (en) 1997-02-24 1999-02-23 International Business Machines Corporation System and method for hierarchically grouping and ranking a set of objects in a query context based on one or more relationships
US6144968A (en) 1997-03-04 2000-11-07 Zellweger; Paul Method and apparatus for menu access to information objects indexed by hierarchically-coded keywords
US6317142B1 (en) 1997-04-04 2001-11-13 Avid Technology, Inc. Taxonomy of objects and a system of non-modal property inspectors
JPH10301938A (ja) 1997-04-22 1998-11-13 Canon Inc 画像処理装置およびその方法、画像処理システム、記憶媒体
US7631012B2 (en) 1997-05-22 2009-12-08 Computer Associates Think, Inc. System and method of operating a database
US5987454A (en) 1997-06-09 1999-11-16 Hobbs; Allen Method and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US5899995A (en) 1997-06-30 1999-05-04 Intel Corporation Method and apparatus for automatically organizing information
US6573907B1 (en) 1997-07-03 2003-06-03 Obvious Technology Network distribution and management of interactive video and multi-media containers
US5877766A (en) 1997-08-15 1999-03-02 International Business Machines Corporation Multi-node user interface component and method thereof for use in accessing a plurality of linked records
US6249866B1 (en) 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
US6237011B1 (en) 1997-10-08 2001-05-22 Caere Corporation Computer-based document management system
US6202061B1 (en) 1997-10-24 2001-03-13 Pictra, Inc. Methods and apparatuses for creating a collection of media
US6097389A (en) 1997-10-24 2000-08-01 Pictra, Inc. Methods and apparatuses for presenting a collection of digital media in a media container
US6061692A (en) 1997-11-04 2000-05-09 Microsoft Corporation System and method for administering a meta database as an integral component of an information server
US6275829B1 (en) 1997-11-25 2001-08-14 Microsoft Corporation Representing a graphic image on a web page with a thumbnail-sized image
US6003040A (en) 1998-01-23 1999-12-14 Mital; Vijay Apparatus and method for storing, navigating among and adding links between data items in computer databases
US6401097B1 (en) 1998-01-23 2002-06-04 Mccotter Thomas M. System and method for integrated document management and related transmission and access
US6078924A (en) 1998-01-30 2000-06-20 Aeneid Corporation Method and apparatus for performing data collection, interpretation and analysis, in an information platform
US6256031B1 (en) 1998-06-26 2001-07-03 Microsoft Corporation Integration of physical and virtual namespace
US6466238B1 (en) 1998-06-30 2002-10-15 Microsoft Corporation Computer operating system that defines default document folder for application programs
US6181342B1 (en) 1998-07-06 2001-01-30 International Business Machines Corp. Computer file directory system displaying visual summaries of visual data in desktop computer documents for quickly identifying document content
US6363377B1 (en) 1998-07-30 2002-03-26 Sarnoff Corporation Search data processor
US6324551B1 (en) 1998-08-31 2001-11-27 Xerox Corporation Self-contained document management based on document properties
US6240421B1 (en) 1998-09-08 2001-05-29 Edwin J. Stolarz System, software and apparatus for organizing, storing and retrieving information from a computer database
US6373507B1 (en) * 1998-09-14 2002-04-16 Microsoft Corporation Computer-implemented image acquistion system
US6803926B1 (en) * 1998-09-18 2004-10-12 Microsoft Corporation System and method for dynamically adjusting data values and enforcing valid combinations of the data in response to remote user input
AU6258499A (en) * 1998-09-22 2000-04-10 Science Applications International Corporation User-defined dynamic collaborative environments
US8332478B2 (en) * 1998-10-01 2012-12-11 Digimarc Corporation Context sensitive connected content
JP2000112797A (ja) 1998-10-02 2000-04-21 Nippon Telegr & Teleph Corp <Ntt> ビューディレクトリ処理方法および装置とビューディレクトリ処理プログラムを記録した記録媒体
US6341280B1 (en) 1998-10-30 2002-01-22 Netscape Communications Corporation Inline tree filters
US6823344B1 (en) 1998-12-03 2004-11-23 International Business Machines Corporation File manager system providing faster and more efficient interactive user access to files in computer displays
US6571245B2 (en) 1998-12-07 2003-05-27 Magically, Inc. Virtual desktop in a computer network
US6480835B1 (en) 1998-12-31 2002-11-12 Intel Corporation Method and system for searching on integrated metadata
US6751604B2 (en) * 1999-01-06 2004-06-15 Hewlett-Packard Development Company, L.P. Method of displaying temporal and storage media relationships of file names protected on removable storage media
US6147601A (en) 1999-01-09 2000-11-14 Heat - Timer Corp. Electronic message delivery system utilizable in the monitoring of remote equipment and method of same
US6411311B1 (en) 1999-02-09 2002-06-25 International Business Machines Corporation User interface for transferring items between displayed windows
US6636238B1 (en) 1999-04-20 2003-10-21 International Business Machines Corporation System and method for linking an audio stream with accompanying text material
JP3284543B2 (ja) 1999-04-23 2002-05-20 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム格納媒体
US6539399B1 (en) 1999-04-29 2003-03-25 Amada Company, Limited Stand alone data management system for facilitating sheet metal part production
US6526399B1 (en) 1999-06-15 2003-02-25 Microsoft Corporation Method and system for grouping and displaying a database
US6535229B1 (en) * 1999-06-29 2003-03-18 International Business Machines Corporation Graphical user interface for selection of options within mutually exclusive subsets
US6549916B1 (en) 1999-08-05 2003-04-15 Oracle Corporation Event notification system tied to a file system
US6505233B1 (en) * 1999-08-30 2003-01-07 Zaplet, Inc. Method for communicating information among a group of participants
US6430575B1 (en) 1999-09-10 2002-08-06 Xerox Corporation Collaborative document management system with customizable filing structures that are mutually intelligible
US6583799B1 (en) 1999-11-24 2003-06-24 Shutterfly, Inc. Image uploading
US6754829B1 (en) 1999-12-14 2004-06-22 Intel Corporation Certificate-based authentication system for heterogeneous environments
US6847959B1 (en) 2000-01-05 2005-01-25 Apple Computer, Inc. Universal interface for retrieval of information in a computer system
US20010039571A1 (en) 2000-01-06 2001-11-08 Atkinson Paul D. System and method for facilitating electronic commerce within public spaces
EP1117220A1 (en) * 2000-01-14 2001-07-18 Sun Microsystems, Inc. Method and system for protocol conversion
EP1259901A1 (en) * 2000-01-27 2002-11-27 Synquiry Technologies, Ltd Software composition using graph types, graphs, and agents
US6658436B2 (en) 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
DE60138884D1 (de) * 2000-03-10 2009-07-16 Herbert Street Technologies Lt Datenübertragungs- un verwaltungsverfahren
US6549217B1 (en) 2000-03-23 2003-04-15 Koninklijke Philips Electronics N.V. System and method for computer system management using bookmarks
US6636250B1 (en) 2000-04-12 2003-10-21 Emc Corp Methods and apparatus for presenting information to a user of a computer system
US7188319B2 (en) 2000-04-21 2007-03-06 Microsoft Corporation Displaying graphical information and user selected properties on a computer interface
US20010056434A1 (en) 2000-04-27 2001-12-27 Smartdisk Corporation Systems, methods and computer program products for managing multimedia content
US6430835B1 (en) * 2000-04-28 2002-08-13 Daimlerchrysler Corporation Setting fixture for door measurement
US20020049717A1 (en) 2000-05-10 2002-04-25 Routtenberg Michael D. Digital content distribution system and method
US20040133572A1 (en) * 2000-05-18 2004-07-08 I2 Technologies Us, Inc., A Delaware Corporation Parametric searching
US6745206B2 (en) 2000-06-05 2004-06-01 International Business Machines Corporation File system with access and retrieval of XML documents
US7043472B2 (en) * 2000-06-05 2006-05-09 International Business Machines Corporation File system with access and retrieval of XML documents
US6925608B1 (en) * 2000-07-05 2005-08-02 Kendyl A. Roman Graphical user interface for building Boolean queries and viewing search results
US7451099B2 (en) * 2000-08-30 2008-11-11 Kontera Technologies, Inc. Dynamic document context mark-up technique implemented over a computer network
US7130885B2 (en) * 2000-09-05 2006-10-31 Zaplet, Inc. Methods and apparatus providing electronic messages that are linked and aggregated
JP2002082745A (ja) * 2000-09-07 2002-03-22 Sony Corp 情報処理装置及び方法、並びにプログラム格納媒体
US20020062310A1 (en) 2000-09-18 2002-05-23 Smart Peer Llc Peer-to-peer commerce system
US6738770B2 (en) 2000-11-04 2004-05-18 Deep Sky Software, Inc. System and method for filtering and sorting data
US6684222B1 (en) 2000-11-09 2004-01-27 Accenture Llp Method and system for translating data associated with a relational database
US6762776B2 (en) 2000-11-10 2004-07-13 Microsoft Corporation Mouse input panel windows class list
US7242421B2 (en) * 2000-11-10 2007-07-10 Perceptive Network Technologies, Inc. Methods of establishing a communications link using perceptual sensing of a user's presence
JP2002183200A (ja) * 2000-12-14 2002-06-28 Pfu Ltd 検索システムおよびその制御方法ならびにその記録媒体
US6883146B2 (en) 2000-12-20 2005-04-19 Eastman Kodak Company Picture database graphical user interface utilizing map-based metaphors for efficient browsing and retrieving of pictures
US7020848B2 (en) 2000-12-20 2006-03-28 Eastman Kodak Company Comprehensive, multi-dimensional graphical user interface using picture metadata for navigating and retrieving pictures in a picture database
US7032182B2 (en) 2000-12-20 2006-04-18 Eastman Kodak Company Graphical user interface adapted to allow scene content annotation of groups of pictures in a picture database to promote efficient database browsing
US20020087969A1 (en) 2000-12-28 2002-07-04 International Business Machines Corporation Interactive TV audience estimation and program rating in real-time using multi level tracking methods, systems and program products
US20020089540A1 (en) 2001-01-08 2002-07-11 Freddie Geier Media editing and creating interface
US20020091679A1 (en) 2001-01-09 2002-07-11 Wright James E. System for searching collections of linked objects
US7266768B2 (en) 2001-01-09 2007-09-04 Sharp Laboratories Of America, Inc. Systems and methods for manipulating electronic information using a three-dimensional iconic representation
US6839721B2 (en) 2001-01-12 2005-01-04 Hewlett-Packard Development Company, L.P. Integration of a database into file management software for protecting, tracking, and retrieving data
US7437363B2 (en) 2001-01-25 2008-10-14 International Business Machines Corporation Use of special directories for encoding semantic information in a file system
JP2002304403A (ja) * 2001-02-01 2002-10-18 Hitachi Ltd データベース管理方法およびシステム並びにその処理プログラムおよびその処理プログラムを格納した記録媒体
US6831655B2 (en) 2001-02-20 2004-12-14 Sun Microsystems, Inc. Method and apparatus for determining display element attribute values
US7302634B2 (en) 2001-03-14 2007-11-27 Microsoft Corporation Schema-based services for identity-based data access
US7925513B2 (en) * 2001-03-15 2011-04-12 Versata Development Group, Inc. Framework for processing sales transaction data
US20020156895A1 (en) * 2001-04-20 2002-10-24 Brown Michael T. System and method for sharing contact information
EP1407386A2 (en) * 2001-06-21 2004-04-14 ISC, Inc. Database indexing method and apparatus
US6944647B2 (en) 2001-06-29 2005-09-13 International Business Machines Corporation Methods and apparatus for bookmarking and annotating data in a log file
US6865568B2 (en) 2001-07-16 2005-03-08 Microsoft Corporation Method, apparatus, and computer-readable medium for searching and navigating a document database
US6801919B2 (en) * 2001-07-27 2004-10-05 Hewlett-Packard Development Company, L.P. Object oriented database interface encapsulation that allows for chronologically overlapping transactions in a multi-threaded environment
US7610218B2 (en) * 2001-07-31 2009-10-27 Lightsurf Technologies, Inc. Integrated shopping cart for sale of third party products and services via the internet
US7171468B2 (en) * 2001-11-10 2007-01-30 Kabushiki Kaisha Toshiba System and method for accessing a document management repository
US6876996B2 (en) 2001-11-14 2005-04-05 Sun Microsystems, Inc. Method and apparatus for using a shared library mechanism to facilitate sharing of metadata
US20030105745A1 (en) * 2001-12-05 2003-06-05 Davidson Jason A. Text-file based relational database
US20030233419A1 (en) * 2002-01-08 2003-12-18 Joerg Beringer Enhanced email management system
US6961734B2 (en) * 2002-01-17 2005-11-01 International Business Machines Corporation Method, system, and program for defining asset classes in a digital library
US6922709B2 (en) 2002-02-19 2005-07-26 International Business Machines Corporation Method for maintaining consistent dual copies of vital product data in a dual accessor library of portable data storage media
US20040030731A1 (en) * 2002-04-03 2004-02-12 Liviu Iftode System and method for accessing files in a network
US7068291B1 (en) 2002-04-11 2006-06-27 Bellsouth Intellectual Property Corp. Video display screen segmentation
US7574488B2 (en) * 2002-05-31 2009-08-11 Hitachi, Ltd. Method and apparatus for peer-to-peer file sharing
US20030227487A1 (en) * 2002-06-01 2003-12-11 Hugh Harlan M. Method and apparatus for creating and accessing associative data structures under a shared model of categories, rules, triggers and data relationship permissions
JP4308587B2 (ja) * 2002-06-24 2009-08-05 株式会社リコー 文書群管理装置
US20040098379A1 (en) * 2002-11-19 2004-05-20 Dan Huang Multi-indexed relationship media organization system
US7386529B2 (en) * 2002-12-19 2008-06-10 Mathon Systems, Inc. System and method for managing content with event driven actions to facilitate workflow and other features
JP4102199B2 (ja) * 2003-01-06 2008-06-18 オリンパス株式会社 撮像システム、カメラ、外部機器、撮像プログラム、記録媒体、および撮像方法
US20040230917A1 (en) * 2003-02-28 2004-11-18 Bales Christopher E. Systems and methods for navigating a graphical hierarchy
US7487460B2 (en) * 2003-03-21 2009-02-03 Microsoft Corporation Interface for presenting data representations in a screen-area inset
US7769794B2 (en) * 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7627552B2 (en) * 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7587411B2 (en) * 2003-03-27 2009-09-08 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7526483B2 (en) * 2003-03-27 2009-04-28 Microsoft Corporation System and method for virtual folder sharing including utilization of static and dynamic lists
US7536386B2 (en) * 2003-03-27 2009-05-19 Microsoft Corporation System and method for sharing items in a computer system
JP4333184B2 (ja) * 2003-03-31 2009-09-16 富士ゼロックス株式会社 電子データ管理システム
US7853895B2 (en) * 2004-05-11 2010-12-14 Sony Computer Entertainment Inc. Control of background media when foreground graphical user interface is invoked

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140069121A (ko) * 2011-09-09 2014-06-09 페이스북, 인크. 계층적 형태로의 검색 결과의 제시

Also Published As

Publication number Publication date
US20060242121A1 (en) 2006-10-26
WO2006115515A1 (en) 2006-11-02
CN101167073A (zh) 2008-04-23
JP2008537253A (ja) 2008-09-11
EP1872271A1 (en) 2008-01-02
EP1872271A4 (en) 2009-01-07
US7162488B2 (en) 2007-01-09

Similar Documents

Publication Publication Date Title
KR20080002815A (ko) 전자 정보의 탐색, 내비게이션 및 검색
US8688750B2 (en) Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US20060242122A1 (en) Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
KR101203274B1 (ko) 파일 시스템 쉘
JP4861988B2 (ja) ファイルシステムシェルブラウザを実現するコンピュータ・プログラム
RU2536634C2 (ru) Система и способ, использующие виртуальные папки
KR100984400B1 (ko) 공통 요소에 기초하여 아이템들을 필터링하고 편성하기위한 시스템 및 방법
US7587411B2 (en) System and method for filtering and organizing items based on common elements
JP4685186B2 (ja) 様々なタイプおよび様々な物理位置からのアイテムを表示するためのファイルシステム
US7496583B2 (en) Property tree for metadata navigation and assignment
CA2469163C (en) File system shell
US20080313158A1 (en) Database file management system, integration module and browsing interface of database file management system, database file management method

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid