KR101137170B1 - 단층화된 계층적 구조에서 의미 있는 이름의 생성 - Google Patents

단층화된 계층적 구조에서 의미 있는 이름의 생성 Download PDF

Info

Publication number
KR101137170B1
KR101137170B1 KR1020050025860A KR20050025860A KR101137170B1 KR 101137170 B1 KR101137170 B1 KR 101137170B1 KR 1020050025860 A KR1020050025860 A KR 1020050025860A KR 20050025860 A KR20050025860 A KR 20050025860A KR 101137170 B1 KR101137170 B1 KR 101137170B1
Authority
KR
South Korea
Prior art keywords
node
meaningful
nodes
data
delete delete
Prior art date
Application number
KR1020050025860A
Other languages
English (en)
Other versions
KR20060044905A (ko
Inventor
세재리 마크잔
Original Assignee
마이크로소프트 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 코포레이션 filed Critical 마이크로소프트 코포레이션
Publication of KR20060044905A publication Critical patent/KR20060044905A/ko
Application granted granted Critical
Publication of KR101137170B1 publication Critical patent/KR101137170B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

단층화된 데이터 구조에 대한 의미 있는 이름 생성을 위한 구조. 이 구조는 계층적 데이터 구조와 연관된 사용자 활동을 관측하고, 파일 및 폴더 이름으로부터 파생된 의미 있는 이름 또는 사용자가 탐색하고 이해하기 쉬운 다른 문자열 데이터를 생성하는 시스템을 포함한다. 이 시스템은 데이터 구조의 각 노드에 평가 행렬을 적용하는 것을 용이하게 하는 평가 구성요소를 포함한다. 명명 구성요소는 선택 구성요소로부터 선택된 노드 정보를 수신하고 처리하여 주어진 사용자를 위한 하나 이상의 노드에 대한 이름(들)을 생성한다. 명명 구성요소의 출력은 데이터 구조에 대한 의미 있는 이름(들)의 형태로 단층화된 표현이다.
계층적 데이터 구조, 의미 있는 이름, 평가, 명명, 단층화된 표현

Description

단층화된 계층적 구조에서 의미 있는 이름의 생성{GENERATION OF MEANINGFUL NAMES IN FLATTENED HIERARCHICAL STRUCTURES}
도 1은 본 발명에 따른 명명 시스템(naming system)을 도시하는 도면.
도 2는 본 발명의 평가 프로세스의 흐름도를 도시하는 도면.
도 3은 계층적 파일 구조의 더 구체적인 예를 위한 본 발명의 명명 프로세스를 도시하는 도면.
도 4는 본 발명에 따라 인공 지능을 사용하는 명명 시스템을 도시하는 도면.
도 5는 본 발명에 따라 인공 지능을 사용하여 행렬 정보를 학습하는 프로세스의 흐름도를 도시하는 도면.
도 6은 본 발명에 따라 의미 있는 이름을 생성하는 프로세스의 흐름도를 도시하는 도면.
도 7은 개시된 구조를 실행하는 것이 가능한 컴퓨터의 블록도를 도시하는 도면.
도 8은 본 발명에 따른 예시적인 컴퓨팅 환경의 개략적인 블록도를 도시하는 도면.
<도면의 주요 부분에 대한 부호의 설명>
102: 계층적 데이터 구조 110: 평가 표시
112: 평가 구성요소 114: 선택 구성요소
116: 설명 구성요소 118: 이름(들) 출력
본 발명은 데이터 저장 구조에 관한 것이며, 더욱 구체적으로는, 이러한 데이터 구조를 더욱 의미 있는 방식으로 표현하기 위한 기법에 관한 것이다.
현존하는 네트워크 파일 공유는 내포된(nested) 폴더 및 파일에 의해 표현되는 계층적 저장 기법을 이용하는데, 이로 인해 탐색(navigation)에 문제가 야기된다. 공유 콘텐트의 구성은 동일 공유부분의 서브 섹션을 관리하는 개인들 간에서뿐만 아니라, 서로 다른 공유부분 간에 서로 이질적(heterogeneous)이다. 이렇게 불일치가 있는 상황에서는, 효율적인 탐색을 위해 공유부분을 깊이 알고 있어야 하는 경우가 종종 있다. 더욱 번거로운 문제는 폴더 명명 규칙도 공유부분을 사용하는 다양한 사용자들에 따라 대개 다르다는 것이다. 공유부분이 기록보관소(archives)로서는 유용할지라도, 관련된 것을 매우 급하게 찾는 사람이 대량의 파일 및 폴더들 속을 헤치고 다녀야하는 부작용이 존재한다.
컴퓨터 네트워크 공유를 위한 새로운 탐색 방법은, 특정한 사람과 연관된(최근 이들에 의해 개방되거나 생성된), 더 관련된 파일 또는 더 새로운 파일을 보여주는 것과 같이 공유된 공간의 더 의미 있는 뷰(view)를 제시하기 위하여, 수집된 공유 활동상의 정보를 이용한다. 이러한 유형의 개선으로도, 프로젝트 이름이 알 려진 경우조차도, 공유된 공간에서의 탐색은 어렵다. 대개는 복잡한 폴더 구조에 위치한 많은 수의 파일들이 존재하며, 이러한 폴더 구조는 폴더 구조 및 파일에 대하여 다양한 명명 규칙을 사용하는 다수의 사람들에 의해 유지되는 서브 섹션들을 갖는다.
이러한 계층적 구조를 보이기 위하여 의미 있는 이름을 사용하는 개선된 기법이 요구된다.
본 발명의 일부 양상에 대한 기초적 이해를 제공하기 위하여, 다음의 발명은 본 발명의 간략한 요약을 제시한다. 이러한 요약이 본 발명의 광범위한 개요는 아니다. 본 발명의 핵심/결정적 구성요소를 식별하거나 본 발명의 범위를 한정하고자 하는 것도 아니다. 그 유일한 목적은 이후에 제시될 더 상세한 설명의 도입부로서 간략한 형태로 본 발명의 일부 개념을 제시하기 위함이다.
일 양상에 따라, 본 명세서에 개시되고 청구된 본 발명은, 계층적 데이터 구조와 연관된 사용자 활동을 관측하고, 파일 및 폴더 이름으로부터 파생된 의미 있는 이름 또는 사용자가 이해하고 탐색하기 더 쉬운 다른 문자열 데이터를 생성하는 시스템을 포함한다. 본 발명은 수집된 공유부분 활동 데이터에 기초하여 프로젝트 뷰(project views)를 생성함으로써, 이러한 공간의 검색(browsing)을 단순화한다. 일반적으로, 데이터베이스는 다른 필드에 더 기초하여 다른 유형의 계층 구조를 가질 수 있다. 디렉터리 구조의 폴더는 프로젝트의 표현이다. 추가적인 필드가 존재할 수 있는데, 예를 들면, 프로젝트를 상술하는 파일, 프로젝트를 표현하는 이미 지, 또는 프로젝트에 더 특유한 일부 다른 데이터와 같다. 이러한 필드를 봄으로써, 의미 있는 명명 프로세스(meaningful naming process)가 더욱 지능화될 수 있다. 일부 서브디렉터리는 별도의 엔터티(entity)로서 프로젝트가 아닌, 프로젝트 내 파일들의 수집일 수 있으며, 이는 의미 있는 이름(들)을 생성하는데 사용될 수 있다. 임의의 형태의 메타데이터(metadata)는 이름 생성을 용이하게 하는데 사용될 수 있다. 많은 유형의 행렬이 사용될 수 있는데, 이러한 유형으로는 최신성(recency), 재발생(reoccurrence)(동일한 데이터 위치로 되돌아오는 사용자의 수) 및 (두 개의 항목이 동시에 개방되거나 그리고/또는 편집되는 상황이 발생하는 시간 주기와 연관된) 분류 유형을 포함하되, 이에 제한되는 것은 아니다. 복잡한 질의의 결과로서 생성된 단층 뷰(flat views)는, 예를 들어, 운영 체제에서, 데이터 구조를 빠르게 이해하고 탐색하기 위한 중요한 수단을 제공한다. 이러한 뷰는 운영 체제의 일부분인 풍부한 데이터베이스에 질의를 한 결과일 수 있다.
위와 같은 것들을 지원하기 위하여, 상기 시스템은 데이터 구조의 각 노드에 평가 행렬을 적용하는 것을 용이하게 하는 평가 구성요소를 포함한다. 평가 과정은 다수의 소정 조건에 따라 수행될 수 있다. 또한, 시스템은 명명 프로세스를 위하여 하나 이상의 노드를 선택하는 선택 구성요소를 포함한다. 명명 구성요소는 선택 구성요소로부터 선택된 노드 정보를 수신하고 처리하며, 주어진 사용자를 위해 하나 이상의 노드에 대하여 이름(들)을 생성한다. 명명 구성요소의 출력은 데이터 구조에 대한 의미 있는 이름(들)의 형태로 단층화된 표현이다. 이 출력은 단순히 다양한 노드로부터 생성된 의미 있는 이름의 표 목록일 수 있다. 구조에 대 한 상세한 지식의 필요 없이 이러한 공유된 공간에 대한 보다 직관적인 뷰가 사용자에게 제공되며, 이에 의해 원하는 데이터 위치를 탐색하기 위한 이름 또는 이름 문자열을 사용자가 빠르게 검토하고 선택하도록 해준다. 사용 데이터의 수집을 위하여 주어진 공유부분상의 활동을 감시하기 위한 구성요소가 사용된다. 일 실시예에서는, 단층화된 공간에 의미 있는 이름을 생성하는 것과 마찬가지로, 복잡한 계층적 구조의 단층화 과정에서 활동 데이터가 사용된다.
본 발명의 또 다른 양상에 따르면, 다양한 사용자 활동으로부터 학습 및 자동화에 인공 지능이 제공된다. 더욱이, 자동화는 데이터 유형 및, 학습된 행렬과 같이 다른 소정의 사용자 정의 행렬에 기초할 수 있다.
상기 목적 및 관련된 목적의 성취를 위하여, 이하의 설명 및 첨부된 도면과 함께 본 명세서에서는 본 발명의 일정한 도시적인 양상이 설명된다. 이러한 양상은 본 발명의 원리가 사용될 수 있는 다양한 방식의 일부를 나타내며, 본 발명은 이러한 양상들 및 이들의 균등물 모두를 포함하고자 한다. 본 발명의 다른 장점 및 신규 특징들은 도면과 함께 본 발명의 이하 상세한 설명으로부터 명백해질 것이다.
이제 도면을 참조하여 본 발명을 설명하며, 동일한 참조 번호는 동일한 구성요소를 지칭하는 것으로 본 명세서에서 사용된다. 이하, 설명을 위하여 본 발명의 완전한 이해를 제공하기 위한 다수의 구체적인 세부 사항들을 개시한다. 그러나 본 발명은 이러한 구체적인 세부 사항들 없이도 실시될 수 있음이 분명할 것이다. 다른 실시예들에서, 주지의 구조 및 장치가 블록도의 형태로 개시되며, 이는 본 발명의 설명을 용이하게 하기 위함이다.
본 출원에서 사용된 바와 같은, "구성요소" 및 "시스템"이라는 용어는 컴퓨터 관련 엔터티인 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어 또는 실행중인 소프트웨어를 지칭하고자 한다. 예를 들어, 구성요소는 프로세서상에 실행중인 프로세스, 프로세서, 객체, 실행가능(executable), 실행 스레드(thread of execution), 프로그램 및/또는 컴퓨터가 될 수 있으나, 이에 제한되는 것은 아니다. 도시한 바대로, 서버에서 실행되고 있는 응용 프로그램 및 서버 모두가 컴퓨터 구성요소가 될 수 있다. 하나 이상의 구성요소들이 프로세스 및/또는 실행 스레드 내에 존재할 수 있으며, 하나의 구성요소가 하나의 컴퓨터 및/또는 둘 이상의 컴퓨터들 간에 분산되어 배치될 수 있다.
본 명세서에서 사용된 바와 같은, "추론하다(infer)" 또는 "추론(inference)"이라는 용어는 일반적으로, 이벤트 및/또는 데이터를 통해 수집된 바와 같은 관측 집합으로부터 사용자, 환경, 및/또는 시스템의 상태를 지칭하거나 이에 관하여 추리하는(reasoning) 프로세스를 지칭한다. 예를 들어, 추론은 구체적인 컨텍스트(context) 또는 동작(action)을 식별하는데 사용되거나, 상태에 관한 확률 분포를 생성할 수 있다. 추론은 확률적일 수 있다 - 즉, 데이터 및 이벤트에 기초한 문제가 되는 상태에 대한 확률 분포의 계산이다. 또한, 추론은 이벤트 및/또는 데이터의 집합으로부터 보다 상위-레벨 이벤트를 구성하기 위하여 사용되는 기술을 지칭할 수도 있다. 이러한 추론의 결과는 관측된 이벤트 및/또는 저장된 이벤트 데이터의 집합으로부터 새로운 이벤트 또는 동작을 구성하는 것이며, 이는 이벤트가 일시적으로 아주 근접하게 상관되어 있든지 아니든지, 이벤트 및 데이터가 하나 이상의 이벤트 및 데이터 소스로부터 오든지 아니든지 간에 그러하다.
이제 도 1을 참조하면, 본 발명에 따른 명명 시스템(naming system; 100)이 도시되어 있다. 본 발명에 따라 단층화되고(flattened) 명명되어야(named) 하는 통상적인 계층적 데이터 구조(102)의 부분적인 샘플이 제공되어 있다. 구조(102)는 NODE1,…,NODEN으로 표시된 복수의 부모 노드(parent nodes)를 포함하며, 각각의 부모 노드는 이로부터 분기하는(branching) 하나 이상의 자식 노드(child nodes)를 가질 수 있으나 반드시 요구되는 것은 아니다. 이러한 일반적 설명을 위하여, 제1 부모 노드(104)는 (NODE11으로 표시된) 제1 자식 노드(106)를 가지며, 제1 자식 노드(106)는 (NODE111으로 표시된) 제2 자식 노드(108)에 대하여 또한 부모 노드이다.
구조(102)의 각 노드에는 평가 표시(valuation indicia; 110)(제1 부모 노드(104)에는 V1으로, 제1 부모 노드(104)의 한 가지 가능한 경로의 자식 노드들에는 V11,V111,…으로 표시됨)가 할당되는데, 이는 그 노드까지의 경로에 대한 명명(naming)에 궁극적으로 도달하는데 사용하기 위한 그 노드의 중요성 표시를 제공한다. 이러한 평가 표시는 다수의 서로 다른 소정의 기준(criteria)에 따라 파생된다. 예를 들어, 기준은 몇 가지 이름하여, 노드가 생성된 시간, 액세스된(accessed) 시간, 수정된 시간, 노드와 연관된 데이터를 위해 복사 프로세스가 수 행된 시간, 노드 액세스 빈도, 독점 사용자의 수 및 노드와 연관된 데이터의 유형을 포함할 수 있다. 어느 경우든지, 일단 평가가 결정되고 노드에 할당되면, 의미 있는 이름 생성의 준비로 노드 선택이 발생할 수 있다.
위와 같은 것들을 지원하기 위하여, 시스템(100)은 평가 표시(110)를 데이터 구조(102)의 각 노드에 적용하는 것을 용이하게 하는 평가 구성요소(112)를 포함한다. 평가 프로세스는 다수의 소정 조건에 따라 수행될 수 있다. 예를 들어, 데이터 구조가 단지 클라이언트 컴퓨터상에만 존재하는 상황에서, 평가 프로세스는 컴퓨터의 시작 후 또는 컴퓨터와 사용자의 상호작용에 따라 수행될 수 있다. 택일적으로, 평가는 이전 세션에서의 것으로 될 수 있으며, 평가의 갱신은 사용자에 의한 수동 개시(initiation)에 따라 발생한다. 데이터 구조(102)가 원격 데이터 노드를 포함하는 경우에는, 평가 프로세스는 사용자 로그인 프로세스 또는 네트워크에 따라 자동적으로 수행될 수 있다. 수동적으로 또는 자동적으로 생성되든 간에 어떠한 경우이든, 트리거 유발(triggering) 이벤트에 따라 때를 맞춘 일정 시점에 평가 프로세스가 수행된다. 상기 나타낸 바와 같이, 각 노드에 대한 평가에 도달하기 위하여 다수의 기준이 사용될 수 있으며, 이러한 기준은 평가 구성요소(112)를 이용하여 사용될 수 있다.
또한, 시스템(100)은 명명 프로세스를 위하여 하나 이상의 노드를 선택하는 선택 구성요소(114)를 포함한다. 설명 구성요소(116)는 선택 구성요소(114)로부터 선택된 노드 정보를 수신하고 처리하며, 주어진 사용자를 위하여 하나 이상의 노드에 대한 설명을 생성한다. 설명 구성요소(116)의 출력(118)은 데이터 구조(102)에 대한 의미 있는 설명의 형태로 단층화된 표현이다. 이러한 출력(118)은 단순히 다양한 노드로부터 생성된 설명의 표 목록일 수 있으며, 대응하는 데이터 노드로 쉽게 탐색할 수 있도록 각각 또는 임의의 설명이 하이퍼링크될 수 있다. 그 후, 사용자는 원하는 데이터 위치로 빠르게 탐색하기 위하여 설명 또는 설명 문자열을 빠르게 검토 및 선택할 수 있다. 평가 구성요소(112), 선택 구성요소(114) 및 설명 구성요소(116)는 개개의 기능 모두를 수행하는 단일의 구성요소로 결합될 수 있음을 본 기술분야의 당업자는 알 수 있을 것이다.
이제 도 2를 참조하면, 본 발명의 평가 프로세스의 흐름도가 도시되어 있다. 설명의 간략함을 위하여, 예를 들어 흐름도의 형태와 같이, 본 명세서에 도시된 하나 이상의 방법은 일련의 행동(act)으로서 도시되고 설명되지만, 본 발명은 본 발명에서와 같은 행동의 순서에 제한되는 것은 아니며, 본 명세서에 도시되고 설명된 바와는 다른 순서로 또는 다른 행동과 동시에 발생할 수 있음을 이해하고 받아들일 수 있을 것이다. 예를 들어, 상태도(state diagram)와 같이 서로 관계가 있는 일련의 상태 또는 이벤트로서 대안적으로 표현하는 방법이 있을 수 있음을 본 기술분야의 당업자는 이해하고 받아들일 것이다. 더욱이, 본 발명에 따른 방법을 구현하는데 도시된 행동 모두가 요구되지 않을 수도 있다.
단계(200)에서, 평가 행렬이 결정되고 데이터 구조의 각 노드에 할당된다. 이러한 기준은, 예를 들어, 생성 시간, 액세스 시간, 수정된 시간, 데이터가 수정되었는지 여부, 복사된 시간, 액세스 빈도, 수정 빈도, 독점 사용자의 수, 노드와 연관된 데이터의 유형, 노드의 가중 계수(weighting factors) 및 지연 시간을 포함 할 수 있다. 단계(202)에서, 원하는 평가 데이터에 따라 노드가 선택된다. 단계(204)에서, 선택된 노드의 데이터를 사용하여, 사용자에게 제시하기 위한 의미 있는 설명을 생성한다. 그 후, 프로세스는 종료 블록에 도달한다.
이제 도 3을 참조하면, 계층적 파일 구조(300)의 더 구체적인 예를 위한 본 발명의 명명 프로세스가 도시되어 있다. 본 발명은 관측된 사용자 활동에 기초하여 계층적 구조를 단층화하고 (예를 들어, 목록, 플레이 목록 등의 형태로) 단순화된 1차원 뷰를 제시하기 위한 효과적인 방법을 제공한다. 도 3의 예는 네트워크 파일 공유를 사용하는 상황을 설명하고 있다. 컴퓨터 파일 시스템은 더욱 데이터베이스 중심으로 되어 가고 있으며, 이는 파일 시스템에 포함된 메타데이터를 구성하는데 있어서 소프트웨어 설계자에게 더 큰 유연성(flexibility)을 준다. 계층적 구조에서의 활동을 관측하는 시스템은 사용자의 탐색과 이해를 더 쉽게 해주는 단층화된 구조의 이름을 유도하는데 사용된다.
도 3은 (예를 들어, 최신성 및 액세스 빈도에 기초한) 일부 선택된 측정의 값을 갖는 계층적 네트워크 파일 공유 구조(300)의 단순화된 뷰를 도시한다. 이름 생성 시스템(302)은, 사용 데이터의 수집을 위해 사용되는 주어진 공유 구조(300)상에서의 사용자 활동을 감시한다. 시스템(302)은 평가 구성요소(112), 선택 구성요소(114)(도 1에서 앞서 설명됨) 및 명명 구성요소(303)를 포함한다. 구조(300)의 일부 노드는 기록보관소의 목적으로 사용될 수 있으며, 반면에 다른 노드는 아주 최근의 활동을 위해 사용될 수 있다. 시스템(302)은 데이터 구조의 자세한 지식에 대한 필요 없이 이러한 공유 공간에 대한 보다 의미 있는 뷰를 사용자에게 제 공한다. 활동 데이터는 복잡한 계층적 구조를 단층화하는 프로세스에 사용될 수 있으며, 마찬가지로 단층화된 공간에서 의미 있는 이름의 생성을 위해서도 사용된다.
도 3의 도시에서, (괄호 내의) 평가 데이터가 생성되고 구조(300)의 각 노드와 연관된다. 예를 들어, 뿌리 노드(root node)로부터 제1 레벨에 A 노드가 생성되었고 이에 1399의 평가가 연관되어 있다. 이러한 예에서 노드에 대하여 대문자를 사용하는 것은 본 발명의 일반적 동작을 설명하기 위한 것이다. 그러나 실제로는, 시스템(302)의 출력에서 명백하게 될 것인 바와 같이, 각 노드에서 문자는 사용자 정의 이름으로 교체될 것이다. 그러나 사용자는 이러한 노드(즉, 폴더, 서브 폴더 등)를 예에서와 같이, 문자로서 명명할 수 있으며, 그리고 이를 위해 의미 있는 이름이 단층화된 출력으로서 생성될 수 있음을 알 수 있을 것이다. 단층화된 구조를 위하여 생성된 의미 있는 이름은 단지 그 사용자에게만 의미가 있을 수 있다. 즉, 출력이 단어 또는 단어들의 형태가 아닐지라도, 주어진 사용자에게 의미를 가질 수 있는 문자열이다. 본 명세서에서 설명되는 바와 같이, 이는 또한 명명 시스템(302)이 동일한 데이터 구조(300)로부터 서로 다른 사용자를 위한 서로 다른 의미 있는 이름을 가진 단층화된 구조를 생성하는데 사용될 수 있음을 의미할 수 있다.
도 3에 대하여 계속하면, 볼 수 있는 바와 같이, A 노드의 최고 평가는 A-AB-ABA-ABAA를 따라 정의되는 경로와 연관되어 있으며, 이 경로 상의 노드는 각각 1399, 1340, 1290 및 1234의 평가를 갖는다. 따라서, 이러한 표현에 대한 단층화 된 출력은 A-ABAA 이다. 유사한 방식으로, B 노드에 대한 최고 평가는 B-BA-BAA-BAAA를 따른 경로를 정의하며, 이 경로 상의 노드는 각각 2712, 2370, 2345 및 2290의 평가를 갖는다. 이러한 표현에 대한 단층화된 출력은 B-BAAA이다. 따라서, 이러한 작은 구조(300)에 대하여, 단층화된 출력은 A-ABAA 및 B-BAAA의 목록이다.
상기 예에서의 문자열은 특정 임계값을 초과하는 높이 평가된 노드들을 결합함에 의해 생성된다. 실제로 이 이름은, Chicago-Design Specifications 또는 Company-Legal-Justice Dept.와 같이, 더 의미 있는 이름으로 변환될 수 있으며, 이러한 이름들 중 하나를 선택함으로써 사용자는 그 위치까지의 경로를 즉시 찾게 될 것이다. 따라서, 명명 구성요소(303)는 의미 있는 표현을 위해 결국 사용될 이름을 생성한다.
앞서 나타낸 바와 같이, 동일한 데이터 구조(300)에 대한 의미 있는 이름은 사용자의 희망에 따라 생성될 수 있다. 제1 사용자는 구조(300)를 A-ABAA 및 B-BAAA와 같이 표현하도록 선택할 수 있으며, 이는 암호처럼 보일지라도, 제1 사용자에게는 의미 있는 것일 수 있다. 그러나 동일한 문자로 지정된 동일한 노드를 가진 동일한 구조(300)를 "보는(looking)" 제2 사용자는, 다른 방식으로 표현된 단층화된 출력(118)을 갖도록 선택할 수 있다. 즉, 제2 사용자는 시스템(302)이 각 노드에 문자 설명을 생성하여 그 결과로, Chicago-Design Specifications 또는 Company-Legal-Justice Dept.와 유사한 형태의 명명을 출력하도록 선택할 수 있으며, 이것이 제2 사용자에게 더 의미 있을 수 있다. 동일한 데이터 구조를 보는 제 3 사용자는, 예를 들어, 영숫자 문자열(alphanumeric strings)과 단어의 조합의 형태로 그들에게 더 의미 있는 명명 출력을 요구할 수 있다. 따라서, 본 발명은 단지 단어로서만 의미 있는 이름을 출력하는 것으로 제한되지 않으며, 사용자에게 의미 있는 임의의 방법을 사용할 수 있다.
위와 같은 것들을 지원하기 위하여, 명명 시스템(302)은 문자열 대신에 단어로서 단층화된 출력을 보기를 원하는 제2 사용자를 위하여, 도 3에 도시된 문자가 있는 노드에 단어를 추출하는 능력을 제공한다. 예를 들어, 시스템(302)은 주어진 단일 또는 다중 문자 노드와 연관된 폴더에서 데이터를 조사하고, (관사, 대명사 등을 제외한) 다른 것들에 비해 더욱 빈번하게 사용된 단어(또는 단어들)를 추출하여, 그 노드를 설명하는데 이 단어를 사용할 수 있다. 택일적으로, 시스템은 폴더 내에 현존하는 더 빈번하게 사용된 다수의 단어를 선택하여, 이러한 단어를 제2 사용자에게 제시하여 이들 중 하나 이상을 그 노드를 설명하기 위한 것으로 제2 사용자가 선택하게 할 수 있다. 그 후, 시스템(302)은 이러한 사용자 선택 단어(user-selected words)에 기초하여, 단층화된 출력(118)을 더 생성할 수 있다.
이제 도 4를 참조하면, 본 발명에 따라 인공 지능을 사용하는 명명 시스템(400)이 도시되어 있다. 본 발명은 (예를 들어, 선택 및 이름 생성과 관련하여) 본 발명의 다양한 양상을 수행하기 위한 기법에 기초하여 다양한 인공 지능을 사용할 수 있다. 예를 들어, 어떠한 유형의 의미 있는 명명 기법이 사용되어야 하는지를 결정하기 위한 프로세스는 자동 분류 시스템 및 프로세스(402)를 통해 용이해질 수 있다. 더욱이, 데이터 구조(102)가 전적으로 사용자 컴퓨터 지역에 있지 않고, 몇몇의 지역에 분산되어 데이터가 존재하는 경우에는, 예를 들어 구조(102)에서 지배적인 데이터 유형에 기초하여 어떤 명명 기법이 사용되어야 하는지를 결정하는데 분류기(classifier; 402)가 사용될 수 있다.
분류기는 입력 속성 벡터 x = (x1, x2, x3, x4, xn)를, 이 입력이 한 부류(class)에 속한다는 확실성(confidence), 즉, f(x) = confidence(class)에 대응시키는 함수이다. 이러한 분류는, 사용자가 자동적으로 수행되기를 원하는 동작을 예지하거나 추론하는데에, 확률적 및/또는 통계-기반 분석(예를 들어, 유용성과 비용을 분석에 포함)을 이용할 수 있다.
지원 벡터 기계(support vector machine; SVM)는 사용될 수 있는 분류기의 예이다. SVM은 가능한 입력의 공간에서 하이퍼서페이스(hypersurface)를 검색함으로써 동작하며, 하이퍼서페이스는 트리거 유발(triggering) 기준을 트리거 비유발(non-triggering) 이벤트로부터 분리시키려 시도한다. 직관적으로, 이는 근접한 테스팅 데이터(testing data)에 대해서는 분류를 정확하게 만들어 주나, 트레이닝 데이터(training data)에 대해서는 동일하지 않다. 다른 지시된(directed) 그리고 지시 없는(undirected) 모델 분류 접근법은, 예를 들어, Naive Bayes, Bayesian Networks, 의사결정 나무(decision trees) 및 다른 독립적인 패턴을 제공하는 확률적 분류 모델을 포함한다. 또한, 본 명세서에서 사용된 분류는 우선권의 모델을 개발하는데 이용되는 확률적 회귀(regression)를 포함한다.
본 명세서로부터 쉽게 알 수 있는 바와 같이, 본 발명은 명시적으로 트레인된(예를 들면, 일반적 트레이닝 데이터를 통해) 분류기를 사용할 수 있으며, 암시 적으로 트레인된(예를 들면, 사용자의 행동 관측, 외부의 정보 수신을 통해) 것도 마찬가지이다. 예를 들어, SVM은 분류기 구성자 및 특징 선택 모듈의 내에서 학습 또는 트레이닝 단계(phase)를 통해 구성된다. 따라서, 분류기는 다수의 기능을 자동적으로 수행하는데 사용될 수 있으며, 이러한 기능으로는, 어떻게 노드에 평가를 할당하는지; 어떤 행렬이 평가를 정할 때 포함되어야 하는지; 노드에 대한 평가를 생성하는데 가중 기법을 사용하는지; 사용자에 기초한 특정 평가 기법을 사용하는지 여부; 이름 출력을 생성하기 위하여 어떤 문자열 또는 텍스트를 사용하는지를 소정의 기준에 따라 결정하고; 일반적으로 학습된 중요하지 않은 용어 및 문자(예를 들면, 관사, 대명사 및 문자열)를 무시하며; 노드에 있는 다수의 용어로부터, 단일 단어(또는 문자나 이미지) 또는 단어의 조합(또는 문자들이나 이미지들) 중 어느 것을 사용하는지; 사용자에게 제시하기 위해, 어디서 폰트 또는 문자 채색이 사용될 수 있는지, 문자 및/또는 단어의 단일 또는 조합에 어떤 색 또는 색들의 조합이 사용될 수 있는지; 의미 있는 이름 용어, 문자들에 어떤 소리가 연결될 수 있는지 등을 결정하는 기능을 포함하나, 이에 제한되는 것은 아니다.
이제 도 5를 참조하면, 본 발명에 따라 인공 지능을 사용하여 행렬 정보를 학습하는 프로세스의 흐름도가 도시되어 있다. 단계(500)에서, 임의의 주어진 노드에서 평가를 결정하기 위하여 사용될 행렬의 초기 집합을 사용자가 결정한다. 단계(502)에서, 데이터 구조의 많은 노드에 행렬을 적용하여, 단계(504)의 노드 평가에 도달한다. 단계(506)에서, 시스템은 측정에 따라 사용될 수 있는 새로운 행렬을 갖고 있는지 여부를 결정한다. 만약 갖고 있다면, 단계(508)에서, 시스템은 관측된 평가 행렬을 학습한다. 단계(510)에서, 시스템은 현존하는 평가 기준의 집합을 적절히 갱신한다. 이 단계는, 예를 들어, 소정의 시간 간격에 걸쳐 더 이상 관측되지 않는 평가 행렬의 집합으로부터 하나 이상의 기준을 제거하는 "노화 제거(aging out)" 프로세스를 포함할 수 있다. 택일적으로, 갱신 프로세스는 의미 있는 명명 프로세스를 더 강화하기 위하여, 현존하는 기준의 집합에 하나 이상의 기준을 추가하는 것을 포함한다. 단계(512)에서, 원하는 평가를 갖는 노드가 선택된다. 단계(514)에서 이제, 노드 또는 노드 경로에 대하여 의미 있는 이름(또는 단어의 조합)이 생성된다. 그 후 프로세스는 종료 블록에 도달한다.
만약 시스템이 새로운 행렬을 관측하지 않으면, 흐름은 단계(506)로부터 단계(512)로 이동하여, 원하는 평가를 가진 노드를 선택하고, 그 후 의미 있는 이름에 도달하도록 처리한다.
평가는 최고값이어야 할 필요가 없으며, 상한값, 중간값, 또는 하한값이 있는 범위 내에 존재하는 평가를 갖는 노드일 수 있다는 것은 본 기술분야의 당업자는 알 수 있을 것이다. 예를 들어, 사용자는 최소한의 활동이 관측되는(평가의 낮은 범위), 또는 중간 정도의 활동이 관측되는(평가의 중간 범위) 데이터 구조의 일부분에 대하여 의미 있는 이름이 생성되기를 희망할 수 있다.
이제 도 6을 참조하면, 본 발명에 따라 의미 있는 이름을 생성하는 프로세스의 흐름도가 도시되어 있다. 단계(600)에서, 명명 프로세스를 위하여 노드가 선택된다. 이 과정은 단일 상위-레벨 노드 또는 자식 노드를 포함할 수 있으며, 자식 노드의 경로 정보는 의미 있는 이름 결과를 생성하기 위하여 처리될 필요가 있는 다수의 용어와 연관되어 있다. 단계(602)에서, 시스템은 경로 정보 처리를 시작하도록 동작한다. 단계(604)에서, 제1 노드로부터 노드 식별자 데이터가 획득된다. 단계(606)에서, 노드 평가가 명명을 위한 임계값을 만족하는지 여부가 결정된다. 만약 만족한다면, 단계(608)에서, 그 노드 식별자 데이터가 단어 텍스트인지 문자열인지 여부가 결정된다. 만약 텍스트라면, 흐름은 관사 또는 대명사 등과 같은 중요하지 않은 텍스트를 여과하기 위하여 필터가 사용되는 단계(610)로 이동한다. 그러나 여과의 레벨과 여과되는 텍스트의 유형은 사용자가 희망하는 임의의 단어를 포함하거나 배제하도록 조정될 수 있음에 주목할 필요가 있다. 이러한 특징은 시스템이 노드 식별자 데이터를 테스트하는데 대조할 수 있는 단어들의 사전 사용을 추론한다. 이러한 사전은, 분류기에 의해 수행된 바와 같은 의미 있는 이름 정보 결과에 따라 자동적으로 갱신될 수 있다. 단계(612)에서, 설명적인 텍스트는 그 노드를 위하여 선택된다. 이는 단일 단어 또는 단어들의 조합을 포함할 수 있다. 단계(614)에서, 이것이 처리되어야 하는 마지막 노드인지 여부가 결정된다. 만약 마지막이라면, 의미 있는 이름이 생성되고 출력되는 단계(616)로 흐름은 이동한다. 그 후 프로세스는 종료 블록에 도달한다.
만약 이것이 처리되어야 하는 마지막 노드가 아니라면, 흐름은 단계(614)로부터 단계(618)로 이동하여, 다음 노드를 처리한다. 그 후, 흐름은 단계(606)로 되돌아가서, 다음 노드가 임계값을 만족하는지 여부를 결정한다. 만약 노드가 명명을 위한 임계값을 만족하지 않는다면, 흐름은 단계(606)로부터 단계(620)로 이동하여, 그 노드를 무시한다. 단계(618)에서, 다음 노드가 처리되고, 흐름은 이에 따라 진행한다.
만약 노드 식별자 데이터(또는 설명 데이터)가 텍스트가 아닌, 문자열 또는 이미지나 오디오 데이터라고 결정된다면, 흐름은 단계(608)로부터 단계(622)로 이동하여, 그 노드를 위한 대표적인 식별자 문자열, 오디오 및/또는 이미지 데이터를 유도한다. 단계(614)에서, 다시, 이것이 마지막 노드인지 여부가 결정된다. 만약 마지막이라면, 연관된 문자열 데이터, 오디오 및/또는 이미지 데이터 중 임의의 것을 사용하여 의미 있는 이름이 생성될 수 있다.
이제 도 7을 참조하면, 개시된 구조를 실행하는 것이 가능한 컴퓨터의 블록도가 도시되어 있다. 본 발명의 다양한 양상을 위한 추가적인 상황(context)을 제공하기 위하여, 도 7 및 이하의 논의는, 본 발명의 다양한 양상이 구현될 수 있는 적합한 컴퓨팅 환경(700)의 간단하고 일반적인 설명을 제공하고자 한다. 비록 본 발명이 하나 이상의 컴퓨터상에서 실행할 수 있는 컴퓨터 실행가능 명령어의 일반적 컨텍스트(context)로 상기 설명되었을지라도, 본 발명은 또한 하드웨어와 소프트웨어의 조합과 같은 다른 프로그램 모듈과 조합되어 구현될 수 있음을 본 기술분야의 당업자는 인식할 것이다.
일반적으로, 프로그램 모듈은 특정 작업을 수행하거나 특정 추상 데이터 유형을 구현하는, 루틴, 프로그램, 구성요소, 데이터 구조 등을 포함한다. 더욱이, 본 발명의 방법은, 개인용 컴퓨터, 휴대용(hand-held) 컴퓨팅 장치, 마이크로 프로세서-기반 또는 프로그램가능 소비자 전자장치 등과 마찬가지로, 단일-프로세서 또는 멀티프로세서 컴퓨터 시스템, 미니컴퓨터, 메인프레임 컴퓨터 등으로 이들 각각 은 하나 이상의 연관된 장치와 연결되어 동작할 수도 있는 것들을 포함하는 다른 컴퓨터 시스템 구성과 함께 실시될 수도 있음을 본 기술분야의 당업자는 인정할 것이다.
또한, 본 발명의 도시된 양상은, 통신 네트워크를 통하여 연결된 원격 프로세싱 장치에 의해서 특정 작업이 수행되는 분산 컴퓨팅 환경에서 실시될 수도 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 지역 및 원격 메모리 저장 장치 모두에 위치할 수 있다.
컴퓨터는 일반적으로 다양한 컴퓨터 판독가능 매체를 포함한다. 컴퓨터 판독가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능 매체가 될 수 있으며, 휘발성 및 비휘발성 매체, 착탈식 및 고정식 매체 모두를 포함한다. 제한이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는, 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된, 휘발성 및 비휘발성, 착탈식 및 고정식 매체를 모두 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital video disks) 또는 다른 광 디스크 저장 매체, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하는데 사용할 수 있고 컴퓨터에 의해 접근 가능한 임의의 다른 매체를 포함하되, 이에 제한되는 것은 아니다.
통신 매체는 일반적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모 듈, 또는 반송파(carrier wave)와 같이 다른 전송 기법으로 변조된 데이터 신호로 된 다른 데이터를 구현하고, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"와 같은 용어는, 정보를 신호로 인코드하는 것과 마찬가지 방식으로 변경되거나 설정된 특성을 하나 이상 갖는 신호를 의미한다. 제한이 아닌 예로서, 통신 매체는 유선 네트워크 또는 직접 유선 연결과 같은 유선 매체와 음향, RF, 적외선과 같은 무선 매체 및 기타 다른 무선 매체를 포함한다. 또한, 상기 중 임의의 조합들도 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
다시 도 7을 참조하면, 본 발명의 다양한 양상을 구현하기 위한 컴퓨터(702)를 포함하는 예시적인 환경(700)이 도시되어 있으며, 컴퓨터(702)는 프로세싱 유닛(704), 시스템 메모리(706) 및 시스템 버스(708)를 포함한다. 시스템 버스(708)는 시스템 메모리(706)를 포함하는, 그러나 이에 제한되지 않는, 시스템 구성요소를 프로세싱 유닛(704)에 연결한다. 프로세싱 유닛(704)은 다양한 상용 프로세서 중 임의의 것이 될 수 있다. 또한, 이중(dual) 마이크로프로세서 및 다른 멀티프로세서 구조가 프로세싱 유닛(704)으로서 사용될 수 있다.
시스템 버스(708)는 몇몇 버스 구조 유형 중 임의의 것이 될 수 있으며, 이러한 버스 구조는 (메모리 제어기가 있거나 없는) 메모리 버스, 주변장치 버스 및 다양한 상용 버스 구조 중 임의의 것을 사용하는 지역 버스에 더 연결될 수 있다. 시스템 메모리(706)는 ROM(read only memory; 710) 및 RAM(random access memory; 712)을 포함한다. 기본 입출력 시스템(BIOS)은 ROM, EPROM, EEPROM과 같은 비휘발성 메모리(710)에 저장되며, 시동하는 동안과 같이 컴퓨터(702) 내에서 구성요소 간 정보를 전송하는데 도움을 주는 기본 루틴을 BIOS가 포함한다. 또한, RAM(712)은 데이터 캐싱을 위한 정적(static) RAM과 같은 고속 RAM을 포함할 수 있다.
컴퓨터(702)는 내부 HDD(internal hard disk drive; 714)(예를 들어, EIDE, SATA), (예를 들어, 착탈식 디스켓(718)으로 읽고 쓰는) 자기 FDD(magnetic floppy disk drive; 716) 및 (예를 들어, CD-ROM 디스크(722)를 읽거나 또는 DVD와 같은 다른 고용량 광 매체로 읽고 쓰는) 광 디스크 드라이브(720)를 포함하며, 내부 HDD(714)는 또한, (도시되지 않은) 적합한 섀시(chassis)로 외부 사용을 위한 구성이 될 수도 있다. 하드 디스크 드라이브(714), 자기 디스크 드라이브(716) 및 광 디스크 드라이브(720)는, 각각 하드 디스크 드라이브 인터페이스(724), 자기 디스크 드라이브 인터페이스(726) 및 광 드라이브 인터페이스(728)에 의해 시스템 버스(708)에 연결될 수 있다. 외부 드라이브 구현을 위한 인터페이스(724)는 USB(Universal Serial Bus)와 IEEE 1394 인터페이스 기술 중 최소한 하나 또는 둘 모두를 포함한다.
드라이브들과 이들과 연관된 컴퓨터 판독가능 저장 매체는 데이터, 데이터, 구조, 컴퓨터 실행가능 명령어 등에 대한 비휘발성 저장 공간을 제공한다. 컴퓨터(702)를 위하여, 드라이브와 매체는 임의의 데이터를 적합한 디지털 형식으로 저장하는데 편의를 제공한다. 비록 상기 컴퓨터 판독가능 매체에 관한 설명은 HDD, 착탈식 자기 디스켓, 및 CD 또는 DVD와 같은 착탈식 광 매체를 참조하고 있으나, 지프 드라이브(zip drives), 자기 카세트, 플래시 메모리 카드, 카트리지 등 컴퓨터에 의해 판독가능한 다른 유형의 매체 또한 예시적인 운영 환경에서 사용될 수 있 으며, 나아가 임의의 이러한 매체는 본 발명의 방법을 수행하기 위한 컴퓨터 실행가능 명령어를 포함할 수 있음을, 본 기술분야의 당업자는 알 수 있을 것이다.
운영 체제(730), 하나 이상의 응용 프로그램(732), 다른 프로그램 모듈(734) 및 프로그램 데이터(736)를 포함하는 다수의 프로그램 모듈이 드라이브 및 RAM(712)에 저장될 수 있다. 또한, 운영 체제, 응용 프로그램, 모듈 및/또는 데이터의 전부 또는 일부가 RAM(712)에 캐시될 수도 있다.
본 발명은 다양한 상용 운영 체제 또는 운영 체제의 조합과 함께 구현될 수 있음을 알 수 있을 것이다.
사용자는 하나 이상의 유선/무선 입력 장치를 통하여 컴퓨터(702)에 명령 및 정보를 입력할 수 있으며, 입력 장치는 예를 들어, 마우스(740)와 같은 위치지정 도구 및 키보드(738)와 같은 장치이다. (도시되지 않은) 다른 입력 장치로는 마이크로폰, IR 원격 제어, 조이스틱, 게임 패드, 스타일러스 펜(stylus pen), 터치 스크린 등을 포함할 수 있다. 이들 및 여타 입력 장치들은 대개 시스템 버스(708)에 연결된 입력 장치 인터페이스(742)를 통하여 프로세싱 유닛(704)에 연결되나, 병렬 포트, IEEE 1394 직렬 포트, 게임 포트, USB 포트, IR 인터페이스 등과 같은 다른 인터페이스에 의해 연결될 수도 있다.
모니터(744) 또는 다른 유형의 디스플레이 장치도 비디오 어댑터(746)와 같은 인터페이스를 통해 시스템 버스(708)에 연결된다. 컴퓨터는 모니터(744) 외에도 스피커 및 프린터 등과 같은 (도시되지 않은) 다른 주변 출력 장치들을 일반적으로 포함한다.
컴퓨터(702)는, 원격 컴퓨터(들)(748)와 같은, 하나 이상의 원격 컴퓨터로 유선 및/또는 무선 통신을 통해 논리적 연결을 사용하는 네트워크 환경에서 작동될 수 있다. 원격 컴퓨터(들)(748)는 워크스테이션, 서버 컴퓨터, 라우터, 개인용 컴퓨터, 휴대용 컴퓨터, 마이크로프로세서 기반 오락 기구, 피어 장치(peer device) 또는 다른 공용 네트워크 노드(common network node)일 수 있으며, 비록 간결함을 위해서 단지 메모리 저장 장치(750)만이 도시되어 있으나, 일반적으로 컴퓨터(702)와 관련 있는 상기 설명된 구성요소들의 대부분 또는 모두를 포함한다. 도시된 논리적 연결은 근거리 통신망(local area network; LAN; 752) 및/또는 예를 들어 광역 통신망(wide area network; WAN; 754)과 같은 더 큰 네트워크로의 유선/무선 연결을 포함한다. 이러한 LAN 및 WAN 네트워크 환경은 사무실 및 기업에서 흔하며, 인트라넷과 같은 기업 컴퓨터 네트워크(enterprise-wide computer networks)를 용이하게 하고, 이러한 모든 것들은, 예를 들어, 인터넷과 같은 글로벌 통신 네트워크로 연결할 수 있다.
컴퓨터(702)는 LAN 네트워크 환경에서 사용되는 경우, 유선 및/또는 무선 통신 네트워크 인터페이스 또는 어댑터(756)를 통해 지역 네트워크(752)에 연결된다. 어댑터(756)는 LAN(752)으로의 유선 또는 무선 통신을 용이하게 할 수 있으며, LAN 은 무선 어댑터(756)와의 통신을 위해 배치된 무선 액세스 포인트를 포함할 수 있다. 컴퓨터(702)가 WAN 네트워크 환경에서 사용되는 경우, 컴퓨터(702)는 모뎀(758)을 포함하거나, 또는 LAN 상의 통신 서버에 연결되거나, 또는 인터넷과 같은 WAN(754)에서의 통신 설정을 위한 다른 수단을 포함할 수 있다. 내장형 또는 외장 형, 및 유선 또는 무선 장치가 될 수 있는 모뎀(758)은 직렬 포트 인터페이스(742)를 통하여 시스템 버스(708)에 연결된다. 네트워크 환경에서, 컴퓨터(702)와 관련하여 또는 그 일부와 관련하여 도시된 프로그램 모듈은 원격 메모리/저장 장치(750)에 저장될 수 있다. 도시된 네트워크 연결은 예시적인 것이며, 컴퓨터 간에 통신 연결을 설정하기 위하여 다른 수단들이 사용될 수도 있다는 것을 알 수 있을 것이다.
컴퓨터(702)는 예를 들어, 프린터, 스캐너, 데스크톱(desktop) 및/또는 휴대용 컴퓨터, 휴대용 데이터 단말기(portable data assistant), 통신 위성, 무선 감지 태그와 연관된 임의의 장비 또는 위치(예를 들어, 키오스크(kiosk), 신문 판매점, 화장실) 및 전화와 같이 무선 통신으로 동작하는 엔티티(entity) 또는 임의의 무선 장치와 통신할 수 있다. 이는 최소한 Wi-Fi 및 Bluetooth™ 무선 기술을 포함한다. 따라서, 통신은 전통적인 네트워크 또는 단순히 최소한 두 장치 간의 애드 혹(ad hoc) 통신과 같은 소정의 구조가 될 수 있다.
Wi-Fi(Wireless Fidelity)는 가정의 소파, 호텔방의 침대 또는 일터의 회의실로부터 인터넷까지의 통신을 무선으로 가능하게 해준다. Wi-Fi는 예를 들어, 컴퓨터와 같은 장치가 기지국의 범위 내 어디에서든지, 실내외에서 데이터를 송수신할 수 있도록 해주는 이동 전화와 유사한 무선 기술이다. Wi-Fi 네트워크는 IEEE 802.11(a, b, g등)로 불리는 무선 기술을 사용하여, 안전하고 신뢰할 수 있으며 빠른 무선 연결을 제공한다. Wi-Fi 네트워크는 컴퓨터를 서로, 인터넷으로, 또는 (IEEE 802.3 또는 이더넷(Ethernet)을 사용하는) 무선 네트워크로 연결하는데 사용 될 수 있다. Wi-Fi 네트워크는 무면허의 2.4 및 5 GHz 무선 대역에서, 11 Mbps(802.11b) 또는 54 Mbps(802.11a)의 자료 전송률로, 또는 두 대역을 모두 포함하는(이중 대역) 제품과 동작하며, 따라서 Wi-Fi 네트워크는 많은 사무실에서 사용되는 기본 10BaseT 유선 이더넷 네트워크와 유사한 실상의 성능을 제공할 수 있다.
이제 도 8을 참조하면, 본 발명에 따른 예시적인 컴퓨팅 환경(800)의 개략적인 블록도가 도시되어 있다. 시스템(800)은 하나 이상의 클라이언트(들)(802)를 포함한다. 클라이언트(들)(802)는 하드웨어 및/또는 소프트웨어(예를 들면, 스레드, 프로세스, 컴퓨팅 장치)일 수 있다. 예를 들어, 클라이언트(들)(802)는 본 발명을 사용함으로써, 쿠키(들)(kookie(s)) 및/또는 연관된 문맥 정보(contextual information)를 수용할 수 있다. 또한, 시스템(800)은 하나 이상의 서버(들)(804)를 포함한다. 또한, 서버(들)(804)는 하드웨어 및/또는 소프트웨어(예를 들어, 스레드, 프로세스, 컴퓨팅 장치)일 수 있다. 예를 들어, 서버(804)는 본 발명을 사용함으로써, 변환을 수행하는 스레드를 수용할 수 있다. 클라이언트(802)와 서버(804) 간의 한가지 가능한 통신은 둘 이상의 컴퓨터 프로세스들 간에 전송되도록 적응된 데이터 패킷의 형태일 수 있다. 예를 들어, 데이터 패킷은 쿠키 및/또는 연관된 문맥 정보를 포함할 수 있다. 시스템(800)은 클라이언트(들)(802)와 서버(들)(804) 간의 통신을 용이하게 하는데 사용될 수 있는 통신 프레임워크(806)(예를 들어, 인터넷과 같은 글로벌 통신 네트워크)를 포함한다.
(광 섬유를 포함한) 유선 및/또는 무선 기술을 통하여 통신이 용이해질 수 있다. 클라이언트(들)(802)는 클라이언트(들)(802) 지역에 정보(예를 들어, 쿠키( 들) 및/또는 연관된 문맥 정보)를 저장하는데 사용할 수 있는 하나 이상의 클라이언트 데이터 저장장치(들)(808)에 연결되어 동작한다. 유사하게, 서버(들)(804)는 서버(804) 지역에 정보를 저장하는데 사용할 수 있는 하나 이상의 서버 데이터 저장장치(들)(810)에 연결되어 동작한다.
상기 설명된 것은 본 발명의 예들을 포함한다. 물론, 본 발명의 설명을 목적으로, 생각할 수 있는 모든 구성요소들 또는 방법론들의 조합을 설명하는 것이 가능하지 않으며, 그러나 본 발명의 많은 조합 및 치환이 가능하다는 것을 본 기술분야의 당업자라면 인식할 것이다. 따라서, 본 발명은 첨부된 청구범위의 본질 및 범위에서 벗어나지 않는 한, 이러한 모든 변경, 수정 및 변화를 포함하고자 한다. 더욱이, "포함한다"라는 용어가 발명의 상세한 설명 또는 청구범위에서 사용되는 범위까지, 이러한 용어는 포괄적인 것으로 하고자하는 것이며, 이는 "구성하는"이라는 용어가 청구범위에서 과도기적인 단어로서 사용될 때 해석되는 바와 유사한 방식이다.
본 발명은 계층적 데이터 구조에 대한 상세한 지식의 필요 없이 공유된 공간에 대한 보다 직관적인 뷰가 사용자에게 제공되며, 이에 의해 원하는 데이터 위치를 탐색하기 위한 이름 또는 이름 문자열을 사용자가 빠르게 검토하고 선택하도록 해준다.

Claims (37)

  1. 단층화된(flattened) 데이터 구조에 대한 의미 있는 설명의 생성을 용이하게 하는 컴퓨터 구현된 시스템으로서,
    복수의 데이터 노드들을 갖는 데이터 구조를 저장하는 기록 매체;
    미리 정해진 행렬(metric)에 따라 상기 데이터 노드들 중 하나 이상의 데이터 노드에 평가를 할당하기 위한 수단 - 상기 행렬은 상기 노드가 액세스된 시간, 상기 노드가 수정된 경우 상기 노드가 수정된 시간, 상기 노드가 복사된 경우 상기 노드가 복사된 시간, 액세스 빈도, 또는 상기 노드에 액세스한 독점 사용자들의 수 중 적어도 하나임 - ; 및
    상기 행렬에 따라 선택된 상기 하나 이상의 데이터 노드들 중 적어도 하나를 표현하는 설명을 생성하기 위한 수단 - 의미 있는 이름들의 제1 세트가 제1 사용자에 대하여 생성되고 의미 있는 이름들의 제2 세트가 제2 사용자에 대하여 생성되며, 상기 의미 있는 이름들의 제1 세트 및 제2 세트는 동일한 데이터 구조로부터 생성됨 -
    을 포함하는 시스템.
  2. 제1항에 있어서,
    뷰잉(viewing)을 위하여 상기 하나 이상의 데이터 노드 중 어느 것이 처리되는지를 선택하기 위한 수단을 더 포함하는 시스템.
  3. 제1항에 있어서,
    상기 설명을 대응하는 데이터 노드에 하이퍼링크함(hyperlinking)으로써, 연관된 데이터 노드를 탐색하는데 상기 설명이 사용될 수 있는 시스템.
  4. 제1항의 시스템을 수행하기 위한 컴퓨터 실행가능 명령어들이 저장된 컴퓨터 판독가능 기록 매체.
  5. 제1항에 있어서,
    상기 하나 이상의 데이터 노드들과 연관된 상기 행렬에 최소한 기초하여 추론을 함으로써, 상기 의미 있는 설명의 상기 생성을 위한 선택된 동작들의 자동화를 용이하게 하는 분류기를 더 포함하는 시스템.
  6. 데이터 구조에 대한 의미 있는 이름들의 생성을 용이하게 하는 컴퓨터 구현된 시스템으로서,
    복수의 데이터 노드들을 갖는 계층적 데이터 구조를 저장하는 기록 매체;
    관측된 활동에 최소한 기초한 하나 이상의 미리 정해진 행렬에 따라 상기 데이터 노드들 중 하나 이상의 데이터 노드에 평가를 할당하기 위한 수단 - 상기 행렬은 상기 노드가 액세스된 시간, 상기 노드가 수정된 경우 상기 노드가 수정된 시간, 상기 노드가 복사된 경우 상기 노드가 복사된 시간, 액세스 빈도, 또는 상기 노드에 액세스한 독점 사용자들의 수 중 적어도 하나임 - ;
    원하는 평가를 갖는 상기 하나 이상의 데이터 노드들 중 적어도 하나를 선택하기 위한 수단; 및
    상기 하나 이상의 미리 정해진 행렬에 따라 선택된 상기 데이터 노드들 중 적어도 하나를 표현하는 하나 이상의 이름들을 생성하기 위한 수단 - 의미 있는 이름들의 제1 세트가 제1 사용자에 대하여 생성되고 의미 있는 이름들의 제2 세트가 제2 사용자에 대하여 생성되며, 상기 의미 있는 이름들의 제1 세트 및 제2 세트는 동일한 데이터 구조로부터 생성됨 -
    를 포함하는 시스템.
  7. 제6항에 있어서,
    상기 데이터 노드는 1차원 뷰로 제시된 하나 이상의 의미 있는 이름들에 의해 표현된 시스템.
  8. 제6항에 있어서,
    상기 선택된 데이터 노드는 데이터 경로와 연관되어 있으며, 상기 데이터 경로는 하나 이상의 노드 지정(node designations)을 각각 갖는 다수의 데이터 노드들에 의해 정의되며, 상기 하나 이상의 노드 지정은 상기 선택된 노드의 1차원 표현을 생성하기 위하여 상기 생성하기 위한 수단에 의해 처리되는 시스템.
  9. 제6항에 있어서,
    상기 생성하기 위한 수단은 상기 할당된 평가에 따라 선택된 다수의 노드들에 대응하는 복수의 단층화된 1차원의 의미 있는 이름 출력들을 생성하는 시스템.
  10. 데이터 구조의 의미 있는 이름들을 생성하는 방법을 수행하기 위한 컴퓨터 실행가능 명령어들을 포함하는 컴퓨터 판독가능 기록 매체에 있어서, 상기 방법은
    복수의 노드들을 갖는 데이터 구조를 수신하는 단계;
    상기 복수의 노드들과 연관되어 관측된 사용자 활동을 처리하는 단계;
    상기 복수의 노드들 각각에 평가를 할당하는 단계 - 상기 평가는 상기 노드가 액세스된 시간, 상기 노드가 수정된 경우 상기 노드가 수정된 시간, 상기 노드가 복사된 경우 상기 노드가 복사된 시간, 액세스 빈도, 또는 상기 노드에 액세스한 독점 사용자들의 수 중 적어도 하나에 의해 결정됨 - ;
    미리 정해진 평가 제한과 연관된 상기 복수의 노드들 중 하나 이상을 선택하는 단계;
    상기 하나 이상의 선택된 노드들과 연관된 노드 메타데이터를 추출하는 단계; 및
    상기 각각의 노드 메타데이터에 기초하여 상기 하나 이상의 선택된 노드들 각각에 대한 의미 있는 이름을 생성하는 단계 - 의미 있는 이름들의 제1 세트가 제1 사용자에 대하여 생성되고 의미 있는 이름들의 제2 세트가 제2 사용자에 대하여 생성되며, 상기 의미 있는 이름들의 제1 세트 및 제2 세트는 동일한 데이터 구조로부터 생성됨 -
    를 포함하는 컴퓨터 판독가능 기록 매체.
  11. 제10항에 있어서,
    상기 방법은 1차원 뷰로서 상기 의미 있는 이름을 출력하는 단계를 더 포함하는 컴퓨터 판독가능 기록 매체.
  12. 제10항에 있어서,
    상기 방법은,
    상기 복수의 노드들과 연관되어 새롭게 관측된 사용자 활동을 학습하는 단계; 및
    상기 복수의 노드들 각각에 대하여 새로운 평가를 할당하는 단계
    를 더 포함하는 컴퓨터 판독가능 기록 매체.
  13. 제10항에 있어서,
    상기 방법은
    상기 노드 메타데이터의 형식을 감지하는 단계; 및
    상기 형식과 동일한 형식, 다른 형식, 및 동일한 형식과 다른 형식의 조합 형식 중 적어도 하나의 형식으로 상기 의미 있는 이름을 생성하는 단계
    를 더 포함하는 컴퓨터 판독가능 기록 매체.
  14. 데이터 구조에 대한 의미 있는 이름들의 생성을 용이하게 하는 컴퓨터 구현된 시스템으로서,
    복수의 노드들을 갖는 계층적 데이터 구조를 수신하기 위한 수단;
    상기 복수의 노드들과 연관되어 관측된 사용자 활동을 처리하기 위한 수단;
    상기 복수의 노드들 각각에 평가를 할당하기 위한 수단 - 상기 평가는 상기 노드가 액세스된 시간, 상기 노드가 수정된 경우 상기 노드가 수정된 시간, 상기 노드가 복사된 경우 상기 노드가 복사된 시간, 액세스 빈도, 또는 상기 노드에 액세스한 독점 사용자들의 수 중 적어도 하나에 의해 결정됨 - ;
    미리 정해진 평가 제한과 연관된 상기 복수의 노드들 중 하나 이상을 선택하기 위한 수단;
    상기 하나 이상의 선택된 노드들과 연관된 노드 메타데이터를 추출하기 위한 수단; 및
    상기 각각의 노드 메타데이터에 기초하여 상기 하나 이상의 선택된 노드들 각각에 대하여 1차원 뷰의 형식으로 의미 있는 이름을 생성하기 위한 수단 - 의미 있는 이름들의 제1 세트가 제1 사용자에 대하여 생성되고 의미 있는 이름들의 제2 세트가 제2 사용자에 대하여 생성되며, 상기 의미 있는 이름들의 제1 세트 및 제2 세트는 동일한 데이터 구조로부터 생성됨 -
    을 포함하는 시스템.
  15. 제14항에 있어서,
    상기 선택된 노드와 연관된 하나 이상의 파일들 및 파일 이름들의 설명들을 분석하기 위한 수단; 및
    상기 파일들 및 파일 이름들과 연관된 상기 설명들에 기초하여 의미 있는 이름을 생성하기 위한 수단
    을 더 포함하는 시스템.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
KR1020050025860A 2004-03-29 2005-03-29 단층화된 계층적 구조에서 의미 있는 이름의 생성 KR101137170B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/811,653 US7343378B2 (en) 2004-03-29 2004-03-29 Generation of meaningful names in flattened hierarchical structures
US10/811,653 2004-03-29

Publications (2)

Publication Number Publication Date
KR20060044905A KR20060044905A (ko) 2006-05-16
KR101137170B1 true KR101137170B1 (ko) 2012-04-19

Family

ID=34939053

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050025860A KR101137170B1 (ko) 2004-03-29 2005-03-29 단층화된 계층적 구조에서 의미 있는 이름의 생성

Country Status (5)

Country Link
US (1) US7343378B2 (ko)
EP (1) EP1594079A3 (ko)
JP (1) JP4837934B2 (ko)
KR (1) KR101137170B1 (ko)
CN (1) CN100504861C (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213018B2 (en) * 2002-01-16 2007-05-01 Aol Llc Directory server views
US7082573B2 (en) * 2003-07-30 2006-07-25 America Online, Inc. Method and system for managing digital assets
CN1667607A (zh) * 2004-03-11 2005-09-14 国际商业机器公司 用于文档浏览的个性化分类处理方法及系统
US7656804B2 (en) * 2004-08-16 2010-02-02 Motorola, Inc. Method and apparatus for operating an AD-HOC communication system
US20060234681A1 (en) * 2005-04-18 2006-10-19 Research In Motion Limited System and method for data and message optimization in wireless communications
JP2007148574A (ja) * 2005-11-24 2007-06-14 Fuji Xerox Co Ltd ツリー構造表示プログラム、ツリー構造表示方法、ツリー構造表示装置
US8996592B2 (en) * 2006-06-26 2015-03-31 Scenera Technologies, Llc Methods, systems, and computer program products for identifying a container associated with a plurality of files
EP1990987A1 (en) 2007-05-11 2008-11-12 Research In Motion Limited Method for storing media captured using a portable electronic device
US7870092B2 (en) 2007-05-11 2011-01-11 Research In Motion Limited Method for storing media captured using a portable electronic device
US9659073B2 (en) * 2008-06-18 2017-05-23 Oracle International Corporation Techniques to extract and flatten hierarchies
JP5451411B2 (ja) 2010-01-14 2014-03-26 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム
CN102117333B (zh) * 2011-03-11 2013-01-02 北京神舟航天软件技术有限公司 多视图浏览树形结构数据的方法
JP6008693B2 (ja) * 2012-10-30 2016-10-19 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
US20140257687A1 (en) * 2013-03-08 2014-09-11 Qualcomm Incorporated Pyramid mapping data structure for indoor navigation
JP6565565B2 (ja) * 2015-10-05 2019-08-28 富士通株式会社 情報処理装置、名称決定方法、および名称決定プログラム
US10437564B1 (en) 2016-09-16 2019-10-08 Software Tree, LLC Object mapping and conversion system
US10033625B2 (en) * 2016-12-07 2018-07-24 Mediatek Singapore Pte. Ltd. Loop avoidance in repeater networks
US10121109B2 (en) * 2017-04-07 2018-11-06 International Business Machines Corporation Flexible and self-adaptive classification of received audio measurements in a network environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970066862A (ko) * 1996-03-05 1997-10-13 아오이께 히또시 병렬 분산처리 시스템 및 그 방법
KR20010020544A (ko) * 1997-06-27 2001-03-15 카멜레온 시스템즈, 인크 고급 프로그래밍 언어 컴파일 방법
KR20020091066A (ko) * 2000-01-14 2002-12-05 어드밴스드 마이크로 디바이시즈, 인코포레이티드 프로세서에서 동작 모드의 확립
KR20040013097A (ko) * 2001-07-04 2004-02-11 코기줌 인터메디아 아게 카테고리 기반의 확장가능한 대화식 문서 검색 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6230157B1 (en) 1997-11-25 2001-05-08 International Business Machines Corporation Flattening complex data structures in Java/Javascript objects
NO983175L (no) * 1998-07-10 2000-01-11 Fast Search & Transfer Asa Soekesystem for gjenfinning av data
US6415283B1 (en) * 1998-10-13 2002-07-02 Orack Corporation Methods and apparatus for determining focal points of clusters in a tree structure
US6505197B1 (en) 1999-11-15 2003-01-07 International Business Machines Corporation System and method for automatically and iteratively mining related terms in a document through relations and patterns of occurrences
JP4468530B2 (ja) * 1999-12-28 2010-05-26 富士フイルム株式会社 ファイル管理システム、ファイル管理方法、および記憶媒体
US6745206B2 (en) 2000-06-05 2004-06-01 International Business Machines Corporation File system with access and retrieval of XML documents
US6748395B1 (en) 2000-07-14 2004-06-08 Microsoft Corporation System and method for dynamic playlist of media
US7437363B2 (en) 2001-01-25 2008-10-14 International Business Machines Corporation Use of special directories for encoding semantic information in a file system
US7162480B2 (en) * 2001-12-26 2007-01-09 Sbc Technology Resources, Inc. Usage-based adaptable taxonomy
JP2003216538A (ja) * 2002-01-21 2003-07-31 Michihiro Nabeta ユーザー管理システム及びユーザー情報発信システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970066862A (ko) * 1996-03-05 1997-10-13 아오이께 히또시 병렬 분산처리 시스템 및 그 방법
KR20010020544A (ko) * 1997-06-27 2001-03-15 카멜레온 시스템즈, 인크 고급 프로그래밍 언어 컴파일 방법
KR20020091066A (ko) * 2000-01-14 2002-12-05 어드밴스드 마이크로 디바이시즈, 인코포레이티드 프로세서에서 동작 모드의 확립
KR20040013097A (ko) * 2001-07-04 2004-02-11 코기줌 인터메디아 아게 카테고리 기반의 확장가능한 대화식 문서 검색 시스템

Also Published As

Publication number Publication date
US20050216430A1 (en) 2005-09-29
EP1594079A3 (en) 2005-12-21
JP2005285127A (ja) 2005-10-13
JP4837934B2 (ja) 2011-12-14
KR20060044905A (ko) 2006-05-16
US7343378B2 (en) 2008-03-11
CN100504861C (zh) 2009-06-24
CN1677395A (zh) 2005-10-05
EP1594079A2 (en) 2005-11-09

Similar Documents

Publication Publication Date Title
KR101137170B1 (ko) 단층화된 계층적 구조에서 의미 있는 이름의 생성
KR101120681B1 (ko) 메타데이터 편집 제어 방법 및 시스템
KR101029403B1 (ko) 자동 질의 클러스터링
US11461286B2 (en) Fair sampling in a hierarchical filesystem
US7149983B1 (en) User interface and method to facilitate hierarchical specification of queries using an information taxonomy
JP4732358B2 (ja) 静的および動的リストの使用を伴う仮想フォルダおよび項目共有のためのシステムおよび方法
RU2427896C2 (ru) Аннотирование документов в совместно работающих приложениях данными в разрозненных информационных системах
KR100991027B1 (ko) 파일 시스템 셸
US20070233647A1 (en) Sharing Items In An Operating System
JP2006107509A (ja) 自動ビュー選択
WO2004023310A1 (ja) ネットワーク構造によるファイル管理方法、操作対象表示制限プログラムおよび記録媒体
KR20080002815A (ko) 전자 정보의 탐색, 내비게이션 및 검색
KR20050117476A (ko) 공통 요소에 기초하여 아이템들을 필터링하고 편성하기위한 시스템 및 방법
MX2010012866A (es) Compaginacion de datos jerarquicos.
JP2006114033A (ja) データを編成することを円滑にするシステム
JP3707912B2 (ja) グラフィカル・ユーザー・インターフェース
US11151168B2 (en) Hierarchical search folders for a document repository
JP5757187B2 (ja) ファイル格納先候補決定装置、ファイル格納先候補の決定方法、ファイル格納先決定支援システム、並びにコンピュータ・プログラム
RU2351981C2 (ru) Расширяемое создание и редактирование объединенных наборов
JP2007521540A (ja) 統合コレクションの拡張可能な作成および編集
Freund File Systems and Usability—the Missing Link
JP2008090677A (ja) データ管理装置、データ管理方法、およびコンピュータプログラム
JPH10116216A (ja) データ管理システム及び記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee