JP5405469B2 - 階層データセットに対するブレッドクラムリストの追加 - Google Patents

階層データセットに対するブレッドクラムリストの追加 Download PDF

Info

Publication number
JP5405469B2
JP5405469B2 JP2010523050A JP2010523050A JP5405469B2 JP 5405469 B2 JP5405469 B2 JP 5405469B2 JP 2010523050 A JP2010523050 A JP 2010523050A JP 2010523050 A JP2010523050 A JP 2010523050A JP 5405469 B2 JP5405469 B2 JP 5405469B2
Authority
JP
Japan
Prior art keywords
node
breadcrumb
data set
hierarchical data
hierarchical
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2010523050A
Other languages
English (en)
Other versions
JP2010538369A5 (ja
JP2010538369A (ja
Inventor
ライト ドーン
ジョシ シャーマ
ワン サミュエル
ヤシンスキー アーロン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2010538369A publication Critical patent/JP2010538369A/ja
Publication of JP2010538369A5 publication Critical patent/JP2010538369A5/ja
Application granted granted Critical
Publication of JP5405469B2 publication Critical patent/JP5405469B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/54Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/64Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/904Browsing; Visualisation therefor

Landscapes

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

Description

本発明は、階層データセットに対するブレッドクラムリストの追加に関する。
コンピューティングの多くのエリアには、階層的に編成されたデータセット、ならびにそのようなデータセットの表示およびナビゲーションのための技法が関連する。階層的に編成されるそのようなデータアイテムはノードとしても知られ、該階層的に編成されたデータアイテムのセットは、ルートノードとして知られる最上レベルにある1つまたは複数のアイテムを用いて編成され得る。各ノードは、子ノードとして知られる任意の数の下位アイテムを含むことができ、該子ノードも同じく任意の数の下位アイテムを含むことができる。ノードは子ノードを含まなくともよく、従ってリーフノードの役割を果たすこともある。この編成構造は包含関係の階層を提供し、ルートノードを除く各ノードは、1つ上のレベルのノード(親ノードとして知られる)内に含まれる。
階層的データ編成を幾つかのコンテキストで使用することができる。一例として、XML(Extensible Markup Language)スキーマに準拠する形式で格納されたデータは階層的に編成されており、XMLデータセットは多くとも1つのルートノードを含み、ルートノード以外の各データアイテムはちょうど1つ上のレベルのXMLデータアイテムに含まれる。本例では、包含関係は入れ子(nesting)を表し、完全な入れ子型の厳密に階層的なデータセットがもたらされる。
階層的データセットはしばしば、個々のノードを開閉してその中に含まれる子ノードを(それぞれ)表示または隠蔽することができる、ツリービュー・グラフィカル・ユーザコントロールを通じて表示される。図1A〜1Bに図示される例示的なツリービューは、それぞれ、同じ階層データセットのツリービューを2つの異なるビュー状態で表している。図1Aは、階層の唯一の最上レベルを成し、他のノードの全てを直接的または間接的に含む、ノードAと名づけたルートノード12を含む、階層データセット10を示している。例えば、ノードA12はノードB14、ノードC16、ノードF22、およびノードK32を直接含み、これらはいずれも第2階層レベルを成す。ノードC16はさらにノードD18およびノードE20を含み、ノードF22はさらにノードG24、ノードH26、およびノードJ30を含み、ここでノードH26はさらにノードI28を含む。
ツリービュー・ユーザコントロールを使用して、無数のノードから成る非常に大きな階層データセットを表示することができるが、該ノードの全てを表示すると、ユーザのナビゲーションには扱いにくいものとなる。したがって、ツリービューは、各ノードを開状態または閉状態で表示できるようにし、開状態のノード(「−」記号で示される)は、全ての子ノードとともに示され、閉状態のノード(「+」記号で示される)は、子ノードを隠蔽した状態で示される。ツリービューにおけるノードの開状態または閉状態を、ユーザが切り替える(toggle)ことができる(例えば、ノードの左側の「+」記号または「−」記号をマウスなどのポインティング・デバイスでクリックすることによって)。図1Bに示されるツリービュー10は、図1Aのツリービューと同じデータセットを図示するが、ノードC16、ノードH26、ノードJ30、およびノードK32は閉状態で図示されている(したがって、ノードC16内に含まれるノードDおよびE、ならびにノードH26に含まれるノードIは隠蔽されている)。図1Bのツリービューで図示された階層データセット10は、依然としてノードD、E、およびIを含むが、これらの子ノードは、ツリービュー10の現在の状態では隠蔽されており、それぞれの親ノードを開くことによって再び示すことができる。
データセットの階層編成により、ノードに到達するためにトラバースする各経路(path)に従ってノードを記述することができる。例えば、図1Aでは、ノードH26をノードF22の子ノードとして記述することができ、ノードF22は同じくノードA12の子ノードである。逆方向では、ノードA12で開始して(ノードA12の子ノードの中で)ノードF2へナビゲートし、(ノードF22の子ノードの中で)ノードH26へナビゲートすることによって、図1Aに図示された階層データセット10をトラバースすることでノードH26に到達することができる。このシーケンスは、ノードA:ノードF:ノードHという階層的経路を形成し、該経路を使用して階層データセット10内のノードH26の編成を記述することができる。
ユーザが階層データセットをトラバースするとき、このシーケンスを、ブレッドクラムリスト(パンくずリスト)(breadcrumb list)として、例えばユーザが現在のノードへ到達するためにナビゲートした階層的な一連のノードとして提示することもできる。図1Cは、図1Aの階層データセット内のノード毎のブレッドクラムリストを図示している。図1Cの例示的なブレッドクラムリスト40では、階層データセットの各ノード42が選択されると、各ノード42は、階層データセットのルートノードから該選択ノード(selected node)への経路内の各位置を表すブレッドクラム(breadcrumb)46を含む、ブレッドクラムリスト44に関連付けられる。図1Cの例示的なブレッドクラムリスト44において、ブレッドクラム46は、ルートノードから選択ノードまでの順で表示される。したがって、表示されるブレッドクラムリスト44は、階層データセットを介して選択ノードへ到達する経路を、ユーザに表示する。さらに、一部の実装形態では、ブレッドクラムリスト44のブレッドクラム46を(例えば、マウスなどのポインティング・デバイスでブレッドクラムをクリックすることによって)アクティブ化して、アクティブ化されたブレッドクラムで表されたノードへ(例えば、同じ階層データセットを表示しているツリービューに、アクティブ化されたブレッドクラムによって表されたノードへジャンプさせることによって)移動する。
この発明の概要の記載を、以下の発明を実施するための形態においてさらに説明される概念の選択を簡潔な形で紹介するために提供する。この発明の概要の記載は、特許請求される主題の主要な要素または本質的な特徴を特定するようには意図されておらず、特許請求される主題の範囲を限定するようにも意図されていない。
本開示では、階層データセットの表現について論ずる。上述したタイプのブレッドクラムリストは、階層データセット内のノードの位置に関する何らかの有用な情報を提供することができ、これらの階層内のナビゲーションを容易にすることができる。しかしながら、より大きな階層データセット(多数のノードを有する階層データセット)内におけるナビゲートには、所望のノードに到達するために階層データセットの多くのレベルを掘り下げる(drill down)など多くのナビゲーション・ステップが必要となることがあり、これはユーザにとっては扱いにくいものである。
階層データセットの他の所望の部分へナビゲートするために、さらなるナビゲーション支援をブレッドクラムリストのコンテキストで提供することができる。ルートノードから選択ノードへの経路内またはその経路外のいずれかで、階層内の好適な位置(preferred location)にポイントする1つまたは複数の補足ブレッドクラム(supplemental breadcrumb)を含むように、ブレッドクラムリストに追加することができる。好適な位置の例の一部には、階層データセット内の以前に訪問された位置(previously visited location)、ユーザが頻繁に訪れている階層データセット内の位置、選択ノードをナビゲートする際にユーザがよく訪れることを好む階層データセット内の位置が含まれる。これらの好適な位置を「補足」ブレッドクラムとしてブレッドクラムリストに(例えば、リストの末端に)含めることによって、ユーザインタフェースは、階層データセット内のユーザのナビゲーションを容易にすることができる。
前述の目的および関連する目的を達成するために、以下の説明および添付の図面では、ある特定の例示的な態様および実装を説明する。これらは、1つまたは複数の態様を利用する様々な方法のうちの一部を示すものにすぎない。本開示の他の態様、利点、および新規の特徴は、添付図面とともに検討すると、以下の発明を実施するための形態から明らかになるであろう。
例示的な階層データセットに対する例示的なツリービュー・ユーザインタフェースコンポーネントを示す図である。 例示的な階層データセットに対する例示的なツリービュー・ユーザインタフェースコンポーネントを示す図である。 図1A〜1Bで図示される例示的な階層データセット内の様々なノードに対するブレッドクラムリストを示すテーブルである。 例示的な方法を示す流れ図である。 図1Aに図示される例示的な階層データセットの例示的なナビゲーション履歴を表す、例示的なブレッドクラム経路のセットを示すテーブルである。 図1Aに図示される例示的な階層データセットの例示的なナビゲーション履歴を表す、例示的なブレッドクラム経路の別のセットを示すテーブルである。 図1Aに図示される例示的な階層データセット内の様々なノードに対する例示的なブレッドクラム経路のセットを示すテーブルである。 図1Aに図示される例示的な階層データセット内の様々なノードに対する例示的なブレッドクラム経路の別のセットを示すテーブルである。 図1Aに図示される例示的な階層データセット内の様々なノードに対する例示的なブレッドクラム経路の別のセットを示すテーブルである。 例示的なスコープ化された階層データセットに対する例示的なツリービュー・ユーザインタフェースコンポーネントを示す図である。 図4Aに図示される例示的なスコープ化された階層データセット内の様々なノードに対するブレッドクラムリストのテーブルである。 図4Aに図示される例示的なスコープ化された階層データセットの例示的なナビゲーション履歴を表す、例示的なブレッドクラム経路の別のセットを示すテーブルである。 図4Aに図示される例示的なスコープ化された階層データセット内の様々なノードに対する例示的なブレッドクラム経路のセットを示すテーブルである。 本明細書で説明される視覚的態様のブレッドクラムリストを示す図である。 本明細書で説明した視覚的態様の別のブレッドクラムリストを示す図である。 本明細書で説明した視覚的態様のさらに別のブレッドクラムリストを示す図である。 本明細書で説明した視覚的態様のさらに別のブレッドクラムリストを示す図である。 例示的なシステムを示すコンポーネント図である。 本明細書で開示されるようなブレッドクラムリストを備える例示的な統合開発環境を示す図である。 本明細書で開示されるような方法を実行するように構成されるプロセッサ実行可能命令を備えた例示的なコンピュータ読取可能媒体を示す図である。
次に、図面を参照して特許請求される主題を説明するが、図面では、その全体を通じて同じ参照番号を使用して同じ要素を示している。以下の記述では、説明の目的で、特許請求される主題の完全な理解を提供するために多数の具体的な詳細を説明している。しかしながら、これらの具体的な詳細を用いずに特許請求される主題を実施することができることは明らかであろう。他の事例では、特許請求される主題の説明を容易にするために、公知の構造および装置をブロック図の形式で示している。
本開示は、階層データセットを表現するための技法に関し、具体的には、階層データセット内をナビゲートするためのブレッドクラムリストに関する。ツリービュー・コントロールは非常に大きな階層データセットに関連付けられるが、ツリービュー・コントロールにとって、該階層データセットに含まれる情報の量は扱いにくいものとなり得る。特に、大きな階層データセットをナビゲートするには、ユーザが、低レベルのノードに到達するためにツリービュー内の多数のノードの開閉を管理しなければならないことがあるので、非常に時間がかかる可能性がある。ルートノードまでの親のリストを示すブレッドクラムリストは、一部のナビゲーション・パターンにとっては有用である可能性があるが、他のナビゲーション・パターンは、そのようなブレッドクラムリストではあまり容易にならない可能性もある。一例として、ユーザがいくつかのノードを繰り返し訪れる必要があり、特に、そのノードが階層データセットの異なる部分に存在し、ルートノードからかなり異なる経路で到達されるノードである場合、それらのノード各々に到達するために同じノード・シーケンスを繰り返し辿ってナビゲートする必要がある。別の例として、ユーザが特定のノードを頻繁に訪れる必要がある場合、または、階層内の多くの深いレベルにあるが該階層の複数のユーザが頻繁に訪れるノードを、該ユーザが訪れる必要がある場合、上述のブレッドクラムリストでは、そのようなナビゲーションを大幅に促進させることはできないことがある。
代替的なブレッドクラムリストのユーザインタフェースコンポーネントは、ブレッドクラムリストの様々な部分を、関連する情報のグループとして提示することができる。上述のナビゲーション・パターンの予測において、選択ノードのブレッドクラムリストを、ルートノードに戻るブレッドクラムを用いて生成することができ、次いで、階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを追加することができる。一例として、補足ブレッドクラムは、ユーザが階層データセットをナビゲートする間に以前に訪れた位置(特に、選択ノードより下位にある位置)を表すことができる。別の例として、補足ブレッドクラムは、ユーザが階層データセットをナビゲートする間に頻繁に訪れた位置を表すことができる。第3の例として、補足ブレッドクラムは、階層データセットの他のユーザが(特に、選択ノードをナビゲートする間に)頻繁に訪れる位置を表すことができる。少なくとも1つの補足ブレッドクラムをブレッドクラムリストに追加することにより(例えば、ブレッドクラムリストに付加することにより)、階層データセットに対するグラフィカルユーザインタフェースは、好適な位置へのショートカットを提供することによって階層データセット内のユーザのナビゲーションを容易にすることができる。
図2は、階層データセットに関するブレッドクラムリストに対して補足ブレッドクラムを使用することに関連する例示的な方法を示す流れ図を提示する。この図は、階層データセット内のナビゲーションを容易にする方法50を図示している。方法50は52で開始し、階層データセット内のルートノードから選択ノードへの経路を表す、ブレッドクラムリストを生成すること54を含む。方法50は、階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムをブレッドクラムリストに追加すること56も含む。方法50は、該ブレッドクラムリストを表示すること58も含む。このタイプのブレッドクラムリストを生成して、1つまたは複数の補足ブレッドクラムを追加し、ブレッドクラムリストをユーザに対して表示することによって、方法50は、階層データセット内のユーザのナビゲーションを容易にし、この結果が達成されると、本方法は60で終了する。
図3A〜3Eは、様々な好適な位置を表す補足ブレッドクラムを有するブレッドクラムリストに関する一部の実施形態を示す。図1Aに図示された階層データセットが、図3A、3B、および3E、ならびにこれらの図で示される概念の基礎となっている。図3Cは、図1Aの階層データセットを若干修正したものを図示しており、この修正版は図3Dおよび図3Dで提示される概念の基礎となる。したがって、図3A〜3B、および図3D〜3E、ならびにこれらの図で示される概念を完全な理解には、図1Aおよび図3Cを参照するのが有用であろう。また、これらの例示的なブレッドクラムリストにおいて、補足ブレッドクラムは、ルートノードから選択ノードへの経路を備えたブレッドクラム(白色)と比較されるように異なる色(灰色)で示されており、補足ブレッドクラムは、上記経路を備えているブレッドクラムに付加されている。しかしながら、補足ブレッドクラムを視覚的に様式化する態様には多数の変形が可能であり、そのような変形形態の一部を以下の図3A〜3Eの議論でより詳細に論ずる。
図3Aは、例示的なナビゲーション履歴(navigation history)を考慮した、図1Aの例示的な階層データセットの様々なノードに対する例示的なブレッドクラムリストのテーブルを提示しており、ユーザは階層データセットのノードを特定の順序で訪れる(例えば、最初にノードA、次にノードC、その次にノードE、次いでノードCに戻るなど)。図3Aに図示される例示的なナビゲーション履歴は、階層データセットを単一のステップでナビゲートすることを特徴とするが、ユーザが階層データセットのノードを任意の順序で訪問することも可能であることは認識されよう。この例示的なナビゲーション履歴70内のナビゲーション毎に、ユーザに、選択ノードに対するブレッドクラムのリストが提示される。本明細書で説明される1つまたは複数の技法によると、ブレッドクラムリストは、ルートノード(この場合、ノードA)から選択ノード(例えば、72、74、76)への経路を表すブレッドクラムを、好適な位置を表す1つまたは複数の補足ブレッドクラムとともに備えている。図3Aの例示的なブレッドクラムリストでは、補足ブレッドクラムは階層データセット内の以前に訪問されたノードを表す。最初の3回のナビゲーションでは、ユーザは、連続してブレッドクラムの経路を備えるノード(それぞれ、72、74、76)を訪れる(例えば、選択する)。4回目のナビゲーションでは、ユーザは、親ノードC78へ上方にナビゲートし、その結果、以前に訪問された子ノードEは、ルートノードAから選択ノードC78へのブレッドクラム経路にはもはや含まれない。本明細書で説明される技法に関する本実施形態では、ノードEは、該ユーザが以前に訪れたノードであるため該階層内における好適な位置であり、したがって、ブレッドクラム経路内の補足ブレッドクラム80として表される。同様に、5回目のナビゲーションでは、階層データセットのノードCを含む部分から、ノードFを含む別の部分へ移動し、したがって、このナビゲーションに対するブレッドクラムリストは、ルートノードAから選択ノードFへの経路を表すブレッドクラム、ならびに、ノードC82およびノードE84などの以前に訪問された位置を表す補足ブレッドクラムを含む。
図3Aのブレッドクラムリストが、以前に訪問されたノードを含む好適な位置を表す補足ブレッドクラムを含むことは認識されよう。補足ブレッドクラムを生成するための本技法を、各々が様々な利点を有する多数の実装形態で具現化することができる。一例として、図3Aに図示されるように、以前に訪問された位置がルートノードから選択ノードへの経路に含まれる場合は、以前に訪問された位置は補足ブレッドクラムとして追加されない。例えば、10回目のナビゲーションにおいて、以前に訪問されたノードC86は(それが9回目のナビゲーションでは補足ブレッドクラムとして含まれているにも関わらず)、補足ブレッドクラムから省略されているが、これは、ノードCが既に、ルートノードAから選択ノードC86への経路を含むブレッドクラム88として提示されているからである。別の例として、補足ブレッドクラムの数に、絶対的に(例えば、補足ブレッドクラムの数は3つを超えない)またはブレッドクラムリストのサイズとの関連で(例えば、ブレッドクラムリスト内のブレッドクラムの数は8つを超えない)、上限を定めることができる。本明細書で説明される技法に従って動作しうる他の変形形態も当業者によって考案され得るであろう。
図3Bは、図3Aと同じ例示的なナビゲーション履歴を考慮した、図1Aの例示的な階層データセットの様々なノードに対する例示的なブレッドクラムリストの別のテーブルを図示している。この実装は、補足ブレッドクラムに対する好適な位置の選択に関してさらなる限定を特徴とする点で、図3Aに示される実装とは異なる。図3Aと同様に、好適な位置は、前に訪れたが未だブレッドクラム経路の一部ではないノードであり、さらに、当該位置は、階層データセット内の選択ノードより下位である(例えば、ツリービュー内でさらに下にある)。例えば、3回目のナビゲーションでは、ノードEは、好適な位置を表す補足ブレッドクラム92として含まれるが、これはノードEが、現在のノードC90より下位にあるからである。しかしながら、ノードFへの5回目のナビゲーションでは、以前に訪問されたノードCも以前に訪問されたノードEも補足ブレッドクラムとしては含まれない。なぜならば、ノードCもノードEもノードF94の下位にないからである。この例示的な選択技法は、補足ブレッドクラムのセットを、選択ノードにより関連するものに限定する際に、階層データセットの他の(無関係である可能性がある)部分を表すものを隠蔽することによって、有利なものとなる可能性がある。
図3Bによって表される別の変形では、階層データセットのノードは下位ノード訪問メモリ(subordinate node visit memory)を備える。ユーザが、階層データセットをナビゲートすると、ノードは下位ノード訪問メモリに、ユーザが訪れた下位ノード(例えば、子ノード、孫ノードなど)を記録することができる。下位ノード訪問メモリは、下位ノードへの訪問に関する他の詳細(例えば、訪問の新しさ(recency)、訪問の頻度、下位ノードが選択された時間など)を含むこともできる。ユーザが後にあるノードを選択するとき、該選択ノードの下位ノード訪問メモリにアクセスして、該ユーザが訪れた該選択ノードの下位ノードを決定することができ、補足ブレッドクラムを生成して、該補足ブレッドクラムを、以前に訪問された下位ノードのブレッドクラムリストに挿入することができる。さらに、このような補足ブレッドクラムを様々な方法でソートすることができ、該補足ブレッドクラムは、下位ノードの訪問に関して記録された追加の情報に基づくものとすることができる。例えば、下位ノード訪問メモリから生成された補足ブレッドクラムを、子ノードの階層レベル(例えば、最初に全ての子ノード、次に全ての孫ノードなど)や、訪問の新しさ若しくは頻度、下位ノードが選択されていた時間などに従って、ソートすることができる。本明細書で説明される技法に従って動作しうる他の変形形態も当業者によって考案され得るであろう。例えば、図3Bでは、ノードF94は、最初は空である下位ノード訪問メモリを備えている。ユーザが(ノードF94の下位である)ノードHおよびIを訪れると、ルートノードF94は、その下位ノードの訪問を下位ノード訪問メモリに記録することができる。後でノードF94を選択すると(例えば、9回目の訪問で)、ノードF94の下位ノード訪問メモリを利用して、以前に訪問された上記下位ノードに対する補足ブレッドクラムを生成することができる。
図3Cは、図1Aの階層データセットではあるが、階層データセット10のユーザが頻繁に訪問したとして識別される2つのノード(ノードE96およびノードJ98)を有するという追加の特徴を含む階層データセットを図示している。例えば、メディア・コレクションを備える階層データセットでは、ノードE96およびノードJ98は、該メディア・コレクションのユーザが最も頻繁に再生したメディアアイテム(例えば、メディア・セット内の最新のヒット)を表すことができる。これらの識別子はまた、階層データセット内の好適な位置と見なされる。したがって、図3Dは、例示的な階層データセットの様々なノードに対する例示的なブレッドクラムリストの別のテーブル70を図示しており、該テーブルでは、好適な位置(例えば、階層データセットのユーザが最も頻繁に訪れるノード)が補足ブレッドクラムとして含まれている。したがって、ノードEおよびJは、該ノードの一方がブレッドクラムリストに既に含まれている場合を除いて、ナビゲーション毎に補足ブレッドクラム(それぞれ、100および102)としてブレッドクラムリストに追加される(例えば、3回目のナビゲーションでは、ノードEが既にブレッドクラムリスト内にあるので、ノードEは補足ブレッドクラムとして含まれない)。本実装形態の項目を図3Bに図示される実装形態の項目と組み合わせて、参照される位置が選択ノードの下位にあるときのみ、頻繁に訪問されるノードを補足ブレッドクラムとして含むようにすることも可能である。
図3Eは、図3Aと同じ例示的なナビゲーション履歴を考慮した、図1Aの例示的な階層データセットの様々なノードに対する例示的なブレッドクラムリストのさらに別のテーブルを図示している。本実装形態は、階層データセットのトラバース中にユーザがノードの各々を訪れた頻度に基づいて補足ブレッドクラムに対する好適な位置を選択する、という点で異なる。本実施形態では、システムは、階層データセットの各ノードへの訪問の数を追跡して、ルートノードから選択ノードへの経路を表す、ブレッドクラムリストに含まれない以前のノードに対する補足ブレッドクラムを表示する。例えば、ノードE106への最初の訪問の後に、ノードEは、1度訪問された位置を表す補足ブレッドクラム110として表示される。同様に、ノードC104、108への最初の2回の訪問の後、ノードCは、2度訪問された位置を表す補足ブレッドクラム112として表示される。さらに、補足ブレッドクラムを、訪問の頻度に従ってソートすることができる。訪問頻度を、各補足ブレッドクラム内に表示することができ(例えば、5回目のナビゲーションには、ノードCを参照し、このノードがユーザによって2度訪問されたことを示す、補足ブレッドクラムが含まれる)、あるいは単に訪問頻度を、補足ブレッドクラムのセットを選択および/またはソートするのに使用することができる。以前に訪問されたノードは、該ノードがブレッドクラムリストの一部である場合は、補足ブレッドクラムとして表示されないことにも留意されたい。例えば、ノードFは、該ノードFが、ルートノード(ノードA)から選択ノード(ノードH)への経路を表すブレッドクラムリストに含まれるため、6回目のナビゲーションでは補足ブレッドクラムとして含まれない。
補足ブレッドクラムによって表される好適な位置に関する実施形態のさらなるセットには、スコープ化された(scoped)階層データセットの概念が含まれる。具体的には、ユーザは低レベルのノードに到達するためにツリービュー内の多数のノードの開閉を管理しなければならないことがあるので、多くのレベルを有する階層データセットをナビゲートするには非常に時間がかかる可能性がある。同様に、低レベルのコントロールのためには、ブレッドクラムリストが面倒なほど長くなる可能性がある(例えば、階層データセットとする米国連邦法典において、特定の特許規則への参照が、全部で7つのブレッドクラムから成る「United States Code : Chapter 35 : Section (103) : Paragraph (b) : Subparagraph (3) : Subsubparagraph (A) : Subsubsubparagraph (iii)」(合衆国法典:第35章第103条第b項第3サブパラグラフ第Aサブサブパラグラフ第iiiサブサブサブパラグラフ)などのブレッドクラムリストとして表される可能性がある)。従来のブレッドクラムリストにおける複数の深さレベルの表示は、あまりに多くの情報によりユーザを圧倒させる可能性があり、このために、各ユーザインタフェースコンポーネントのナビゲーションのユーティリティが低下している。これらの欠点は、可搬性が改良された小型LCDスクリーンを特徴とするスマート携帯電話およびウルトラモバイルPC(UMPC:ultramobile PC)などの小型ディスプレイ付きの装置では悪化する可能性がある。
代替的なブレッドクラムリストのユーザインタフェースコンポーネントは、ブレッドクラムリストの様々な部分を、関連する情報のグループとして提示することができる。概念的にリンクされた様々なレベルの階層を1つのブレッドクラムとして集約して提示することができ、ユーザが階層をより深くナビゲートするにつれて集約度を高めることができる。例えば、上で参照した米国特許法の一部は、全部で3つのブレッドクラム、すなわち「United States Code, Chapter 35 : Section(103), Paragraph(b), Subparagraph(3) : Subsubparagraph(A), Subsubsubparagraph(iii)」(合衆国法典、第35章第103条、第b項、第3サブパラグラフ第Aサブサブパラグラフ、第iiiサブサブサブパラグラフ)を含むブレッドクラムリストとして、より都合よく記述することができ、同じ規則を表すスコープ化されていないブレッドクラムリストの7つのブレッドクラムと比較して簡略化されている。これらの特定のスコープ化されたブレッドクラムは、「35 U.S.C.」(合衆国法典第35章)を表す第1のブレッドクラムと、「Section 103(b)(3)」(第130条(b)(3))を表す第2のブレッドクラムと、「A(iii)」を表す第3のブレッドクラムとして引用されることが多い。この簡略化されたブレッドクラムリストは、同種の情報の集約に応じて、より少ない数のブレッドクラムを表示する。
何らかの概念的基準に従って様々なレベルの階層データセットをリンクさせることを「スコープ化(scoping)」と呼ぶ。この手法では、例えば、階層データセットの或る特定の部分内のいくつかのレベルを、あるスコープを共有しているものとして示すことができ、該階層のこれらのレベル内またはこれらのレベルより下位をナビゲートすることにより、ブレッドクラムリスト内に、そのスコープ内の複数のレベルのノードを参照する、集約されたブレッドクラムを生成する。ブレッドクラムリストのコンテキストでは、スコープ化により、複数のブレッドクラム/ノードを単一のブレッドクラムまたは1つの原子的単位(atomic unit)に集約して、より効率的なデータのナビゲーションおよび/または管理を促進することができる。
スコープ化された階層データセットの概念は図4Aに図示されており、図4Aは、図1Aのスコープ化されていない階層データセット10と同じノード編成を含むが以前の階層の一部のノードがスコープにグループ化されている、例示的なスコープ化された階層データセット120を示している。図4Aには2つのスコープが図示されている。すなわち、一方は、第2レベルのノードB124およびC126と、ノードC126内の第3レベルのノードD128およびE130とを含むスコープ、もう一方は、第2レベルのノードF132と、第3レベルのノードG134、H136、およびJ140とを含むスコープである。これらのスコープは例示的な目的でハッシングおよびシェーディングして示されているが、階層スコープは概念的な関係であって、スコープ化された階層を示すユーザインタフェースに1つまたは複数の特徴的な視覚スタイルを組み込むことができるが、視覚的な提示は本技法の必須の要素ではないことは認識されよう。図4Aから、特定のノードの子ノードは必ずしも同じスコープとはならないことがわかるであろう。例えば、ノードA122は子ノードとして、(あるスコープの)ノードB124およびC126の両方と、(別のスコープの)ノードF132と、(スコープ化されていない)ノードK142とを含む。また、あるスコープに関連付けられたノードが、別のスコープに関連付けられた子ノードまたはスコープに関連付けられていない子ノードを含むこともあり得ることがわかるであろう。例えば、ノードF132、G134、およびJ140と同じスコープのノードH136は、スコープ化されていないノードI138を含む。最後に、各スコープが、親ノード/子ノードの階層関係を有する少なくとも1つのノードの対(例えば、ノードE130対ノードC126)を備えることにより、そのようなノードを、スコープ化されたブレッドクラムに集約することが可能になるという利点を有することもわかるであろう。
図4Bは、図4Aに図示したスコープ化された階層データセット120の様々なノードに対するスコープ化されたブレッドクラムを有するブレッドクラムリストを図示している。図4Bの例示的なブレッドクラムリスト150では、階層データセットの各ノードが選択されると、該各ノードは、階層データセットのルートノードから選択ノード152への経路内の各位置を表すブレッドクラムを備えるブレッドクラムリスト154に、関連付けられる。さらに、このテーブル150で提示されるブレッドクラムリスト154は、有利には、ノードの階層的なスコープ化を階層データセット120内に組み込んでいる。ノードC、D、およびEは階層スコープを共有しているので、これらのノードを参照するブレッドクラムは、集約されてスコープ化されたブレッドクラム156を生成する。したがって、ノードDのブレッドクラムリストは、ノードCとDの両方を備えるスコープ化されたブレッドクラム156を特徴とし、ノードEのブレッドクラムリストは、ノードCとEの両方を含むスコープ化されたブレッドクラム158を特徴とする。図4Aの議論で述べたように、あるスコープを有するノードは、異なるスコープの子ノードまたはスコープを有さない子ノードを含むことができる。例えば、図4Aの例示的な階層データセット120では、ノードI138は、スコープをノードF132と共有するノードH136のスコープ化されていない子ノードであり、したがって、この階層データセットに関連付けられたブレッドクラムリスト150においてノードFとHは、1つのスコープ化されたブレッドクラム160に集約されており、一方ノードIは、該ブレッドクラムリストにおいてスコープ化されていないブレッドクラム162として提示される。図4Bに図示されるスコープ化されたブレッドクラムリスト150と、図1Cに図示されるスコープ化されていないブレッドクラムリスト40との比較により、スコープ化されていないブレッドクラムリストに対して、スコープ化されたブレッドクラムリストは相対的に短縮されていることが示される。
スコープ化された階層データセットのコンテキストでは、補足ブレッドクラムの包含は、ブレッドクラムによって表されるノードのスコープを考慮すると、階層データセット内のユーザのナビゲーションをさらに容易にすることができる。図4Cは、図1Aの例示的なスコープ化されていない階層データセットを介した図3Bのナビゲーション履歴と同じ例示的なナビゲーション履歴を考慮した、図4Aの例示的なスコープ化された階層データセットの様々なノードに対する例示的なブレッドクラムリストの別のテーブル150を示す。図4Cに示される実装形態は、以前に訪問されたノードであって、ルートノードから選択ノードへのブレッドクラム経路の一部ではなく、かつ階層スコープを選択ノードと共有しているノードを含む、好適な位置の補足ブレッドクラムを備えるブレッドクラムリストを表示する。例えば、4回目のナビゲーションでは、ノードEは選択ノードC164より下位にあるので、該ノードEは、好適な位置を表す補足ブレッドクラム166として含まれる。しかし、ノードFへの5回目のナビゲーションでは、以前に訪問されたノードCおよび以前に訪問されたノードEの両方とも、選択ノードF168の下位にはないので、該ノードCおよび該ノードEの両方とも補足ブレッドクラムとして含まれない。さらに、階層スコープを共有する類似のタイプのブレッドクラムは、1つのスコープ化されたブレッドクラムに集約される。例えば、8回目のナビゲーションでは、(各ノードがノードAから選択ノードHへの経路内にある)ノードFおよびHは、階層スコープを共有し、したがって1つのスコープ化されたブレッドクラム172に集約される。しかしながら、ノードIのブレッドクラム174は補足ブレッドクラムであるので、該ノードIは、ノードFおよびHを表すブレッドクラム172とは集約されない。ある実施形態では、補足ブレッドクラムを、同じ階層スコープの他の補足ブレッドクラムと集約するが、ルートノードから選択ノードへの経路を含むブレッドクラムとは集約しないように(階層スコープを共有するか否かに関わらず)、構成することができる。例えば、ノードHおよびIは、図4Aではスコープを共有するようには示されていないが、説明のために9回目のナビゲーションでは、このナビゲーションでは補足ブレッドクラムであるノードHおよびIが、階層スコープを共有しているかのようにスコープ化されたブレッドクラム176に集約されている。
図4Dは、図4Aの例示的なスコープ化された階層データセットの様々なノード152に対する例示的なブレッドクラムリスト154の別のテーブル150を示し、ここでは、好適な位置(例えば、階層データセットのユーザが最も頻繁に訪れるノード)が補足ブレッドクラムとして含まれているが、これは該好適な位置が選択ノード152の階層スコープを共有するときのみである。図3Cと同様に、ノードEおよびJを、図4Aの例示的な階層データセット120内の頻繁に訪問される位置(frequently visited location)と見なす。さらに、ノードEはまた、ノードB、C、およびDと同じ階層スコープを共有し、そしてノードJは、ノードF、G、およびHと同じ階層スコープを共有する。したがって、図4Dのナビゲーション履歴において、ノードEは、選択ノード152がノードB、C、またはDであるとき(2回目、4回目、および10回目のナビゲーションのように)、補足ブレッドクラム178としてブレッドクラムリストに追加される。同様に、ノードJは、選択ノード152がノードF、G、またはHであるとき(5回目、6回目、8回目、および9回目のナビゲーションのように)、補足ブレッドクラム180としてブレッドクラムリストに追加される。このように、ブレッドクラムリスト154は、階層データセットのユーザ間で好適に関心が示される階層スコープの部分へのユーザのナビゲーションを容易にすることができる。
本明細書で述べたように、ブレッドクラムリストは、ユーザに対して表示される。ブレッドクラムリストの表示は、多数の方法で行なわれ、いくつかの利点が提示される多数の態様によって異なるものとすることができる。図5A〜5Dは、ブレッドクラムリストを表示する幾つかの係る可変な態様を示す。一例として、図5Aに図示されるように、ブレッドクラムリスト190には、特にルートノードから選択ノードへの経路を表すブレッドクラム192と比較すると特徴的な視覚スタイルで表示された、補足ブレッドクラム194が提示されている。図5Aでは、補足ブレッドクラム194は、ブレッドクラムリスト190において該補足ブレッドクラム194を他のブレッドクラム192と区別するシェーディングスタイルで表示される。補足ブレッドクラムに対する特徴的な視覚スタイルには、異なるサイズ、形状(shape)、フォント、フォント・スタイル、色など、またはそれらの任意の組合せが含まれる。変更することが可能な表示の別の態様は、ブレッドクラムリストへの補足ブレッドクラムの追加に関連する。以前の例(図3A〜3B、図3D〜3E、および図4B〜4D)では、補足ブレッドクラムはブレッドクラムリストに付加されている。しかしながら、ブレッドクラムリストの先頭への追加(プリペンd)、補足ブレッドクラムリストの他のブレッドクラムとのインタリーブなど、他の方法で補足ブレッドクラムを追加することも可能である。図5Bに図示される例示的なブレッドクラムリスト190は、補足ブレッドクラム194を他のブレッドクラム192の下に表示することによって、該補足ブレッドクラム194がブレッドクラムリストに追加されているように示している。図5Cは、補足ブレッドクラムの表示の第3の態様を示しており、好適な位置(例えば、頻繁に訪問される位置)の補足ブレッドクラムが、簡略化された補足ブレッドクラムインジケータ196内に表示されており、該簡略化された補足ブレッドクラムインジケータ196を使用して補足ブレッドクラムをアクティブにすることができるが、該補足ブレッドクラムの詳細は省略されている。例えば、簡略化された補足ブレッドクラムインジケータは、頻繁に訪問される位置(例えば、階層データセットのユーザがしばしば訪れることを望む選択ノードの下位にあるノード)を表すことができ、該簡略化された補足ブレッドクラムインジケータを使用して、ブレッドクラムリスト内の使用空間を削減しつつ、表されるノードの識別と利用可能性を示すことができる。図5Dは、補足ブレッドクラムの表示の第4の態様を示し、該態様は、少なくとも1つの補足ブレッドクラム194の表示を切り替えるように構成される補足ブレッドクラムインジケータ198を、ブレッドクラムリスト190内に表示することを含む。したがって、ブレッドクラムリスト190は、ルートノードから選択ノードへの経路を表すブレッドクラム192を含むことができ、および好適な位置を表す1つまたは複数の補足ブレッドクラム194を含むこともできるが、ブレッドクラムリスト190を表示する際、最初は補足ブレッドクラム194を、該補足ブレッドクラム194の包含を示すために含まれている補足ブレッドクラムインジケータ198で隠すことができる。補足ブレッドクラムインジケータ198のユーザによるアクティブ化(例えば、マウスなどのポインティング・デバイスで補足ブレッドクラムインジケータをクリックすること)により、補足ブレッドクラム194の表示と隠蔽との間を切り替えることができる。本明細書で提示した技法に従って動作し得るブレッドクラムリストの表示に関する多くのこのような態様が、当業者によって考案され変形され得るであろう。
1つまたは複数の補足ブレッドクラムをブレッドクラムリスト内に含める技法を、階層データセット内のナビゲーションを容易にするためのシステムなどのシステムとして実装することもできる。この性質のシステムは、階層データセットを表すように構成されるメモリと、階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成するように構成され、およびブレッドクラムリストに階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを追加するように構成されるブレッドクラム化コンポーネント(breadcrumbing component)と、ブレッドクラムリストを表示するように構成される表示コンポーネントとを備ることができる。このようなシステムによって生成されるブレッドクラムリストは、選択ノードの親ノードだけでなく、階層データセット内の他の好適な位置(例えば、以前に訪問された位置および/または頻繁に訪問される位置)へのナビゲーション・アクセス(navigation access)を提供することによって、階層データセットにおけるユーザのナビゲーションを容易にすることができる。上述の補足ブレッドクラムに対する好適な位置を選択するための代替を、例えばブレッドクラム化コンポーネントによって実装することができる。
これらの概念を具現化するシステムを多数の変形で組み立てることができる。一例として、ブレッドクラムリストは、これらの技法に従ってブレッドクラムリストを生成するように構成される、FPGA(field-programmable gate array)などのハードウェアを備えることができる。代替または追加として、ブレッドクラム化コンポーネントは、デスクトップ・プロセッサなどの汎用のハードウェアで実行するためにエンコードされ、好適な位置を表す1つまたは複数の補足ブレッドクラムを有するブレッドクラムリストを生成するように構成される、ソフトウェア命令を備えることができる。同様に、表示コンポーネントは、(例えば)LCDモニタ、CRTモニタ、プロジェクタ、またはプリンタなどの視覚表示装置を備えることができる。表示コンポーネントは、例えば、表示アダプタ、ビデオメモリバッファ、ソフトウェアドライバ、および/またはビジュアルプログラミング・インタフェースなどの、ブレッドクラム化コンポーネントと視覚表示装置との間で通信するためのインタフェースを備えることもできる。また、表示コンポーネントを、上で論じた特定の実施形態のいずれかまたは一部を組み込むように構成することもできる。一例として、表示コンポーネントを、補足ブレッドクラムの表示を切り替えるように構成された補足ブレッドクラムインジケータを表示するように構成することができる。別の例として、例えば、様々なタイプの補足ブレッドクラムを他の補足ブレッドクラムから区別し、およびルートノードへの経路を含むブレッドクラムから区別する、特徴的な色および/またはシェーディングなどの特徴的な視覚スタイルで補足ブレッドクラムを表示するように、表示コンポーネントを構成することができる。本明細書で提示した技法に従って動作し得るように構成される多くのそのようなシステムが、当業者によって考案され得るであろう。
本明細書で説明した概念に従って実装されるシステムの他の実施形態は、追加のコンポーネントを含むことができる。そのような実施形態のあるセットでは、システムは、キーボードまたはマウスなどの、ブレッドクラムリストに関連するユーザ入力を受け入れるように構成される入力コンポーネントを備えることができる。一例として、入力コンポーネントを、ブレッドクラムのアクティブ化を表すユーザ入力を受け入れるように構成し、表示コンポーネントを、該アクティブのブレッドクラム内のノードをユーザインタフェースコンポーネント(例えば、アクティブ化されたブレッドクラム内のノードを表示するように構成されたビューワ(viewer))で提示するように構成することができる。本明細書で提示される技法に従って動作し得るように構成されたシステムのコンテキストで、多くそのような入力コンポーネントが当業者によって考案され得るであろう。
図6は、補足ブレッドクラムを特徴とするブレッドクラムリストを生成するための例示的なシステムを示し、このシステム200には、本明細書で説明される態様のいくつかが組み込まれている。この例示的な図においてシステム200は、階層データセットのデータ表現(data representation)206を含んでいるモリ204と動作可能に結合された、ブレッドクラム化コンポーネント202を備える。システム200は、階層データセット206内の選択ノード(図6では、階層データセットのツリービューとして表示されている)に対して、ブレッドクラム化コンポーネント202によって生成された補足ブレッドクラムを含む、ブレッドクラムリスト212を表示するように構成された表示コンポーネント208も備える。システム200はまた、ブレッドクラムリスト212に関連してユーザ入力を受け入れるように構成された2つの入力装置、すなわちキーボード214とマウス216を備える。これらのコンポーネントはともに、階層データセット206に対する1つまたは複数の補足ブレッドクラムを有するブレッドクラムリスト212を生成および表示するためのシステム200を構成し、階層データセット206とのユーザの対話(例えば、階層データセット206のノードのナビゲーションを容易にすること)を可能にする。この例示的なシステム200では、メモリ204は、ノードB、C、D、およびEに対する階層スコープと、ノードF、G、H、およびJに対する別の階層スコープとを有するスコープ化された階層データセット206のデータ表現を含む。この例示的なシステムにおいて表示コンポーネント208は、ノードHが選択されているツリービュー210と、ルートノードAから選択ノードHへの経路(および、ノードFとノードHによって共有される階層スコープを反映している、スコープ化されたブレッドクラム)を表すブレッドクラムリスト212とを図示している。このブレッドクラムリスト212はまた、選択ノードHの階層を共有するノードJを、補足ブレッドクラムとして表している。この補足ブレッドクラムが表す位置(ノードJ)は以前に訪問されているので、またはこの補足ブレッドクラムがこの例示的なスコープ化された階層データセット206内で頻繁に訪問されるノードを表すので、この補足ブレッドクラムを含むことができる。
補足ブレッドクラムをブレッドクラムリスト内に含む技法を統合開発環境(integrated development environment)で利用することもできる。このような環境内では、グラフィカルユーザインタフェース(GUI:graphical user interface)アプリケーションがしばしば作成され、ボタン、テキストボックス、およびリストボックスなどの様々なグラフィカルコントロールを用いて豊富なユーザインタフェースを設計し、グラフィカルユーザインタフェースを備える上記のようなコントロールを介してユーザと対話するソフトウェアを書くための、高度なツールのセットを提供する。このようなアプリケーションの1つの共通の特徴は、グラフィカルユーザインタフェース・アプリケーション(「フォーム(form)」)を階層データセットとして表現することであり、この場合、フォームを表すルートノードは様々なグラフィカルコントロールを含み、当該グラフィカルコントロールは他のコントロール(例えば、ボタンのセットを含むパネル)および多数の構成可能なプロパティを含むことができる。しかしながら、近年では、ユーザコントロールの取り合わせは高度かつ複雑に開発されてきた。現代の統合開発環境はプログラマに、ボタンおよびリストボックスなどのグラフィカルユーザインタフェース・アプリケーション、ならびにメディアプレイヤ、グラフィカル・チャート・コンポーネント、複雑なデータベース対話コンポーネント、および予めパッケージ化されたニューラル・ネットワークなどの高まりつつあるより複雑なコンポーネントの取り合わせを構築するための多数の単純なツールを提供している。
グラフィカルユーザインタフェース・アプリケーションを備えることができるコンポーネントの多様性と複雑性が増すにつれて、プログラマに対して上記コントロールの取り合わせおよび詳細を記述する情報の階層データセットのサイズも増大してきた。プログラマが、アプリケーションを設計しながら広大な階層データセットをナビゲートするのは困難な可能性がある。ブレッドクラムリストを使用したとしても、ナビゲーションを容易にすることはできないが、これは、コントロールとプロパティが階層データセット内の数レベルの深さに置かれることがあり、したがってオブジェクトを記述するには、扱いにくいブレッドクラムリストが必要となるからである(例えば、6つの入れ子ノードの深さを有し、したがって6つのスコープ化されていないブレッドクラムを有する「Application Form : Controls : Media Player : Media Control Panel : Progress Slider : Scrollbar」というブレッドクラムリストが、メディアプレイヤ・アプリケーション内のプログレッシブ・スクロールバーを記述する)。階層スコープをグラフィカルユーザインタフェースコンポーネントの階層データセットに適用することが可能であり、スコープ化されたブレッドクラムリストを生成して表示することによって、選択ノードを記述することができる(例えば、「Application Form, Controls : Media Player, Media Control Panel : Progress Slider, Scrollbar」は、3つのスコープ化されたブレッドクラムのみを有する)。ナビゲーションは、ユーザインタフェースの要素を表すスコープ化された階層データセットのノードについて、ブレッドクラムリスト内に補足ブレッドクラムを含むことによって容易にすることもできる。
したがって、本明細書で提示される技法を、統合開発環境内の少なくとも1つのユーザインタフェースコンポーネントを表すスコープ化された階層データセット内のナビゲーションを容易にする方法として具現化することができる。本方法は、スコープ化された階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成することと、該スコープ化された階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムをブレッドクラムリストに追加することと、ブレッドクラムリストを統合開発環境内で表示することとを含む。
この階層データセットでは、階層データセット(例えば、グラフィカルユーザインタフェース・アプリケーションを備えるコンポーネントおよびプロパティを表すデータセット)内のオブジェクトのいくつかの概念的に関連するセットを関連付けてグループ化する、階層スコープを適用することができる。一例として、「コントロールテンプレート」要素、例えばコントロールを含む要素を関連付けてグループ化するための階層スコープを、適用することができる(例えば、メディアプレイヤ・コンポーネントを、ストップボタン、プレイボタン、プログレスバーなどを指定するコントロールテンプレートによって定義することができる)。別の例として、例えば、1つまたは複数のグラフィカル・コンポーネントに適用される視覚スタイル(例えば、グラフィカル・ユーザコントロールに適用されるフォント、フォント・スタイル、背景色、および枠色)を定義するプロパティ集合など、「コントロールスタイル」を含むプロパティを論理的にグループ化するための階層スコープを適用することができる。第3の例として、例えば、グラフィカルユーザインタフェース・アプリケーションおよびそのプロパティ(例えば、そのデフォルトのスタイル)を表すルートノードなど、「ルートシーン(root scene)」要素を論理的にグループ化するための階層スコープを適用することができる。これらの階層スコープを、開発中のグラフィカルユーザインタフェース・アプリケーションの構造を定義する階層データセットに適用することによって、統合開発環境は、スコープ化されたブレッドクラムリストを介したアプリケーションの要素に対するプログラマのナビゲーションを容易にすることができる。
図7は、グラフィカルユーザインタフェース・アプリケーションを定義する複雑な要素をナビゲートするために生成されたスコープ化されたブレッドクラムリストに、補足ブレッドクラムを追加することを特徴とする例示的な統合開発環境220を示す。メディアプレイヤ・アプリケーションを作成するために使用中の例示的な統合開発環境220が図示されている。該アプリケーションの要素は、ツリービュー222内に表示された階層ノードとして示されており、概念的に関連するノードをグループ化するための様々な階層スコープが図示されている。例えば、階層データセットのルートノードはフォーム、例えば、グラフィカルユーザインタフェース・アプリケーションを備え、かつアプリケーション内のグラフィカル・ユーザコントロールの全てを含んでいるクラスを表す。ルートノードは、objPlayer224およびlstAllTracks230などのいくつかのコントロールを含み、該コントロールはそれぞれ、各コントロールをそのコントロール内に組み込まれたサブ・コントロールの一部と概念的に結合する「コントロールテンプレート」スコープを用いて設計される。例えば、「objPlayer」224(メディアプレイヤ・コンポーネントのインスタンス)は、該メディアプレイヤ・コンポーネントが含む2つのサブ・コントロール、すなわち、現在再生しているトラックを表示するためのリストボックス(listbox)コントロール226、およびいくつかのメディア再生コントロール(巻戻し、停止、再生、早送り、取出し)を含むパネル228と、階層スコープを共有する。同様に、「lstAllTracks」230(リストボックス・コントロールのインスタンス)は、キャプション用の文字列(string)232、リスト用のスクロールバー(scrollbar)234、およびリストボックス・コントロール用の枠(border)236などのその構成コンポーネントの一部と、階層スコープを共有する。前の例と同様に、この例示的な図の階層スコープは、表現的なシェーディング(メディア・プレイヤ・コントロール224、226、228を表す階層スコープ用のストライプのシェーディング、およびリストボックス・コントロール230、232、234、236、238を表す階層スコープ用の点描のシェーディング)によって表されている。
これらの階層スコープを、グラフィカルユーザインタフェース・アプリケーションの要素を表す階層データセット222に含めることによって、図7に図示される例示的な統合開発環境220は、ナビゲーションを容易にするスコープ化されたブレッドクラムリストを構築することができる。この例示的な環境では、開発者は、グラフィカルユーザインタフェース・アプリケーションの2つの部分を編集している。すなわち、フォーム(frmMyMediaPlayerと名づけられている)と、現在のトラックのリストを含むリストボックス・コントロールの枠(bdrListboxという名前を有する枠の部分、およびlstAllTracksという名前を有するリストボックス・コントロール)とを編集している。フォーム・エディタ240は、該エディタ・ウインドウ240の下部に、フォーム(例えば、階層データセットのルートノード)を表すブレッドクラム244を含む第1のブレッドクラムリスト242を表示している。このブレッドクラムリストはまた、2つの補足ブレッドクラムを含む。すなわち、フォームのタイトルを含む、strTitleを表す第1の補足ブレッドクラム246と、「全てのトラック」リストボックス・コントロールのキャプションを含む、lstAllTracks:strCaptionを表す第2の補足ブレッドクラム248とを含む。これらの補足ブレッドクラム246、248は、コントロール・セット内の以前に訪問または編集されたプロパティ、コントロール・セット内の頻繁に訪問または編集されるプロパティ、これらのコントロールの共通的に編集される機能などを含む、好適な位置への参照として含まれている。リストボックス・コントロールの枠のプロパティもまた、枠プロパティ・エディタ250内で編集されており、第2のブレッドクラムリスト252が、枠スタイル(border style)プロパティ用のエディタ・ウインドウの下部に表示される。ルートノード(例えば、フォーム)から選択ノード(例えば、枠プロパティ・オブジェクト)への経路を含むブレッドクラム254、256に加えて、この第2のブレッドクラムリスト252は、(例えば、リストボックス・コントロールに対して)階層スコープ内の以前に訪問された位置としての好適な位置、リストボックス・コントロールに対して共通的に編集されるプロパティなどとして識別される、リストボックス・コントロールのキャプションを表す補足ブレッドクラム258も含むことができる。この説明から、ブレッドクラムリスト内への補足ブレッドクラムの追加によって、現在の選択ノードに論理的に関連付けられた好適な位置への複雑な階層内のナビゲーションが容易になることは明らかであろう。
本明細書で論じた技法を、本明細書で論じたようにブレッドクラムリストを生成するよう構成されたプロセッサ実行可能命令を含むコンピュータ読取可能媒体として具現化することもできる。これらの方法で考案されうる例示的なコンピュータ読取可能媒体が図8に図示されており、図8において実装形態260は、コンピュータ読取可能データ264がエンコードされるコンピュータ読取可能媒体262(例えば、CD−R、DVD−R、または円盤状のハード・ディスク・ドライブ)を備えている。このコンピュータ読取可能データ264は、本明細書で説明される原理に従って動作するように構成されたプロセッサ実行可能命令266のセットを含む。このような一実施形態では、プロセッサ実行可能命令266を、図2の流れ図に図示される方法のように、ブレッドクラムリストを生成し、少なくとも1つの補足ブレッドクラムを追加し、ブレッドクラムリストを表示することによって、階層データセット内のナビゲーションを容易にする方法を実行するように構成することができる。別のこのような実施形態では、プロセッサ実行可能命令266を、図6のコンポーネント図に図示されるシステムのように、階層データセット内のナビゲーションを容易にするためのシステムを実装するように構成することができる。さらに別のこのような実施形態では、プロセッサ実行可能命令266を、図7に図示される統合開発環境などの統合開発環境内において、少なくとも1つのユーザインタフェースコンポーネントを表す階層データセット内のナビゲーションを容易にする方法268を実装するように構成することができる。本明細書で提示される技法に従って動作するように構成される多くのこのようなコンピュータ読取可能媒体が、当業者によって考案されうるであろう。
本主題を構造的特徴および/または方法論的動作に特有の言葉で説明してきたが、添付の特許請求の範囲で定義される主題は、必ずしも上述の特定の特徴または動作に限定されないことを理解されたい。むしろ、上述の特定の特徴および動作は、特許請求の範囲を実装する例示形態として開示されている。
本出願で使用されるとき、用語「コンポーネント」、「モジュール」、「システム」、「インタフェース」などは、通常、コンピュータに関連するエンティティ、すなわち、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかを指すように意図されている。例えば、コンポーネントは、プロセッサ上で稼動するプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/またはコンピュータとすることができるが、これらには限定されない。例として、コントローラ上で稼動するアプリケーションおよびコントローラの両方がコンポーネントとなりうる。1つまたは複数のコンポーネントが、プロセスおよび/または実行スレッド内に存在することがあり、あるコンポーネントを1つのコンピュータ上に局所化すること、および/または2つまたはそれ以上のコンピュータ間に分散させることができる。
さらに、特許請求される主題を、方法として、装置として、あるいは開示された主題を実装するようにコンピュータを制御するソフトウェア、ファームウェア、ハードウェア、またはこれらの任意の組合せを生成するための標準的なプログラミングおよび/または製造技術を使用して製品として実装することができる。本明細書で使用されるとき「製品(article of manufacture)」という用語は、任意のコンピュータ読取可能装置、キャリア、または媒体からアクセス可能なコンピュータ・プログラムを網羅するように意図されている。例えば、コンピュータ読取可能媒体には、磁気記憶装置(例えば、ハード・ディスク、フロッピ・ディスク、磁気ストライプなど)、光ディスク(例えば、CD(compact disk)、DVD(digital versatile disk)など)、スマート・カード、およびフラッシュメモリデバイス(例えば、カード、スティック、キードライブなど)が含まれるが、これらには限定されない。さらに、搬送波を利用して、電子メールの送受信の際、あるいはインターネットまたはLAN(local area network)などのネットワークへのアクセスの際に使用されるようなコンピュータ読取可能な電子データを運ぶことができる。当然、本主題の範囲および精神を逸脱せずに、この構成に対して多くの修正が可能であることが当業者には認識されよう。
さらに、「例示的」という単語は、本明細書において、例、事例、または例示としての役割を果たすことを意味するように使用されている。「例示的」として本明細書で説明される任意の態様または設計は、必ずしも他の態様または設計に対して好適または有利であると解釈されるべきではない。むしろ、例示的という単語の使用は、概念を具体的に提示するように意図されている。本出願で使用されるとき「または」という用語は、排他的な「または」ではなく、包括的な「または」を意味するように意図されている。すなわち、特に明記しない限り、あるいは文脈から明らかでない限り、「XはAまたはBを利用する」とは、自然な包括的順列のうちのいずれかを意味するように意図されている。すなわち、XがAを利用する、XがBを利用する、あるいはXがAおよびBの両方を利用するとき、「XはAまたはBを利用する」は、前述の例のいずれも満たす。さらに、本出願および添付の特許請求の範囲で使用されるとき、冠詞「a」および「an」は通常、単数形を指すと特に明記しない限り、またはそれが文脈から明らかでない限り、「1つまたは複数」を意味するように解釈されることがある。
また、本開示は1つまたは複数の実装形態に関連して図示され、説明されているが、当業者は本明細書および添付の図面を読んで理解すると均等の変形および修正を行うことが可能であろう。本開示は、全てのそのような修正形態および変形形態を含み、特許請求の範囲の範囲によってのみ限定される。特に、上述のコンポーネント(例えば、要素、リソースなど)によって実行される様々な機能に関連して、そのようなコンポーネントを説明するために使用される用語は、特に明記しない限り、本明細書で説明した本開示の例示的な実装形態の機能を実行する開示された構造と構造的に等価でないとしても、説明したコンポーネントの特有の機能を実行する(例えば、機能的に等価な)任意のコンポーネントに対応するように意図されている。さらに、本開示の特定の特徴が、いくつかの実装形態のうち1つのみに関連して開示されていることがあるが、そのような特徴を、任意の所与の応用または特定の応用のために望ましく有利なように、他の実装形態の1つまたは複数の他の特徴と組み合わせることもできる。さらに、用語「含む」、「有している」、「有する」、またはその変形を発明の詳細な説明または特許請求の範囲のいずれかで使用する限りにおいて、そのような用語は、用語「備える」と同様に包括的であることが意図されている。

Claims (16)

  1. 階層データセット内のナビゲーションを容易にするために、コンピュータにおいて実行される方法であって、
    前記階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成するステップであって、前記ブレッドクラムリストは、前記階層データセットを単一のステップでナビゲートするために、階層的でなく、かつ前記経路上のノードを前記選択ノード毎に含む、ステップと、
    前記階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを前記ブレッドクラムリストに追加するステップであって、前記好適な位置は、
    前記選択ノードに概念的に関連する、前記階層データセット内の少なくとも1つのノード、および
    少なくとも1のユーザとの関連を有する、前記階層データセット内の少なくとも1つのノード
    を含む好適な位置のセットから選択される、ステップと、
    前記ブレッドクラムリストを表示するステップと
    を含むことを特徴とする方法。
  2. 少なくとも1のユーザとの関連を有する前記階層データセット内の少なくとも1つのノードの前記好適な位置は、ユーザによって以前に訪問された位置を表す、前記階層データセットのノードを含むことを特徴とする請求項1に記載の方法。
  3. 前記以前に訪問された位置は、前記階層データセット内において前記選択ノードより下位にある、以前に訪問された位置を含むことを特徴とする請求項2に記載の方法。
  4. 前記階層データセットの個々のノードは、前記選択ノードの下位にある、訪問された下位ノードを下位ノード訪問メモリに記録するように構成され、
    前記ブレッドクラムリストは、前記選択ノードの前記下位ノード訪問メモリ内で表される前記訪問された下位ノードを表す、補足ブレッドクラムを備えることを特徴とする請求項3に記載の方法。
  5. 前記階層データセットは、スコープ化された階層データセットを備え、前記スコープ化された階層データセットは、任意の概念的基準にしたがって1つのブレッドクラムとして集約された、異なる階層レベルのノードを含む前記階層データセットであり、前記以前に訪問された位置を表すノードが、前記スコープ化された階層データセット内に含まれることを特徴とする請求項2に記載の方法。
  6. 前記好適な位置は、前記階層データセット内の頻繁に訪問される位置を含むことを特徴とする請求項1に記載の方法。
  7. 前記階層データセットは、スコープ化された階層データセットを備え、前記スコープ化された階層データセットは、任意の概念的基準にしたがって1つのブレッドクラムとして集約された、異なる階層レベルのノードを含む前記階層データセットであり、前記頻繁に訪問される位置を表すノードが、前記スコープ化された階層データセット内に含まれることを特徴とする請求項6に記載の方法。
  8. 前記表示するステップは、前記少なくとも1つの補足ブレッドクラムの表示を切り替えるように構成された補足ブレッドクラムインジケータを表示することを含むことを特徴とする請求項1に記載の方法。
  9. 前記選択ノードは、ユーザによって選択され、
    ユーザによって以前に訪問された前記階層データセットの前記ノードは、前記選択ノードを選択した前記ユーザによって以前に訪問された、前記階層データセットのノードを含むことを特徴とする請求項2に記載の方法。
  10. 前記ブレッドクラムリストを表示するステップは、前記少なくとも1つの補足ブレッドクラムを含むブレッドクラムの一次元のリストとして、前記ブレッドクラムリストを表示することを含むことを特徴とする請求項1に記載の方法。
  11. 階層データセット内のナビゲーションを容易にするために、プロセッサに、
    階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成するステップであって、前記ブレッドクラムリストは、前記階層データセットを単一のステップでナビゲートするために、階層的でなく、かつ前記経路上のノードを前記選択ノード毎に含む、ステップと、
    前記階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを前記ブレッドクラムリストに追加するステップであって、前記好適な位置は、
    前記選択ノードに概念的に関連する、前記階層データセット内の少なくとも1つのノード、および
    少なくとも1のユーザとの関連を有する、前記階層データセット内の少なくとも1つのノード
    を含む好適な位置のセットから選択される、ステップと、
    前記ブレッドクラムリストを表示するステップと
    を実行させるプロセッサ実行可能命令を記憶したことを特徴とするコンピュータ読取可能記憶媒体。
  12. 階層データセット内のナビゲーションを容易にするために、コンピュータにおいて実行される方法であって、
    前記階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成するステップであって、前記ブレッドクラムリストは、前記階層データセットを単一のステップでナビゲートするために、階層的でなく、かつ前記経路上のノードを前記選択ノード毎に含む、ステップと、
    前記階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを前記ブレッドクラムリストに付加するステップと、
    前記少なくとも1つの補足ブレッドクラムを付加した一次元のブレッドクラムのシーケンスとして、前記ブレッドクラムリストを表示するステップと
    を含むことを特徴とする方法。
  13. 前記少なくとも1つの補足ブレッドクラムによって表される好適な位置は、前記選択ノードと概念的に関連する、前記階層データセットの少なくとも1つのノードの位置を含むことを特徴とする請求項12に記載の方法。
  14. 前記少なくとも1つの補足ブレッドクラムによって表される好適な位置は、ユーザによって以前に訪問された位置を表す、前記階層データセットの少なくとも1つのノードの位置を含むことを特徴とする請求項12に記載の方法。
  15. 前記ブレッドクラムリストの少なくとも1つのブレッドクラムは、前記階層データセットの少なくとも2つのノードを表すことを特徴とする請求項12に記載の方法。
  16. 階層データセット内のナビゲーションを容易にするために、プロセッサに、
    前記階層データセット内のルートノードから選択ノードへの経路を表すブレッドクラムリストを生成するステップであって、前記ブレッドクラムリストは、前記階層データセットを単一のステップでナビゲートするために、階層的でなく、かつ前記経路上のノードを前記選択ノード毎に含む、ステップと、
    前記階層データセット内の好適な位置を表す少なくとも1つの補足ブレッドクラムを前記ブレッドクラムリストに付加するステップと、
    前記少なくとも1つの補足ブレッドクラムを付加した一次元のブレッドクラムのシーケンスとして、前記ブレッドクラムリストを表示するステップと
    を実行させるプロセッサ実行可能命令を記憶したことを特徴とするコンピュータ読取可能記憶媒体。
JP2010523050A 2007-09-04 2008-08-21 階層データセットに対するブレッドクラムリストの追加 Expired - Fee Related JP5405469B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/899,020 US8010910B2 (en) 2007-09-04 2007-09-04 Breadcrumb list supplementing for hierarchical data sets
US11/899,020 2007-09-04
PCT/US2008/073900 WO2009032546A1 (en) 2007-09-04 2008-08-21 Breadcrumb list supplementing for hierarchical data sets

Publications (3)

Publication Number Publication Date
JP2010538369A JP2010538369A (ja) 2010-12-09
JP2010538369A5 JP2010538369A5 (ja) 2011-09-29
JP5405469B2 true JP5405469B2 (ja) 2014-02-05

Family

ID=40409139

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010523050A Expired - Fee Related JP5405469B2 (ja) 2007-09-04 2008-08-21 階層データセットに対するブレッドクラムリストの追加

Country Status (6)

Country Link
US (1) US8010910B2 (ja)
EP (2) EP3324314A1 (ja)
JP (1) JP5405469B2 (ja)
CN (1) CN101796517A (ja)
TW (1) TWI363975B (ja)
WO (1) WO2009032546A1 (ja)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908266B2 (en) * 2007-07-18 2011-03-15 Sas Institute Inc. Systems and methods for automatically creating an SQL join expression
US20090063517A1 (en) * 2007-08-30 2009-03-05 Microsoft Corporation User interfaces for scoped hierarchical data sets
US8010910B2 (en) 2007-09-04 2011-08-30 Microsoft Corporation Breadcrumb list supplementing for hierarchical data sets
US20090327904A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Presenting dynamic folders
US8799823B2 (en) * 2009-02-26 2014-08-05 Brother Kogyo Kabushiki Kaisha Display device
CN101840695B (zh) * 2009-03-17 2012-11-21 兄弟工业株式会社 显示设备
CN101887444B (zh) * 2009-05-15 2012-12-19 国际商业机器公司 用于网页的导航方法和系统
KR101037497B1 (ko) * 2009-08-21 2011-05-26 한국과학기술원 컨텐츠 안내를 위한 3d 내비게이션 시스템 및 그 방법
US20110138339A1 (en) * 2009-12-09 2011-06-09 Richard Webster Smart tree navigation
US8943442B1 (en) * 2009-12-21 2015-01-27 Lucasfilm Entertainment Company Ltd. Controlling operations for execution
US20110179390A1 (en) * 2010-01-18 2011-07-21 Robert Paul Morris Methods, systems, and computer program products for traversing nodes in path on a display device
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
US8875025B2 (en) * 2010-07-15 2014-10-28 Apple Inc. Media-editing application with media clips grouping capabilities
US9323438B2 (en) 2010-07-15 2016-04-26 Apple Inc. Media-editing application with live dragging and live editing capabilities
JP5553726B2 (ja) * 2010-10-27 2014-07-16 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、プログラム
US8954477B2 (en) 2011-01-28 2015-02-10 Apple Inc. Data structures for a media-editing application
US8488172B2 (en) * 2011-02-01 2013-07-16 Xerox Corporation Collapsible breadcrumbs for maximizing space in a user interface
US11747972B2 (en) 2011-02-16 2023-09-05 Apple Inc. Media-editing application with novel editing tools
CA2732643C (en) * 2011-02-24 2019-03-05 Brian G. Farn Configurable hierarchical tree view
US9268828B2 (en) 2011-06-15 2016-02-23 Sas Institute Inc. Computer-implemented systems and methods for extract, transform, and load user interface processing
US8745540B2 (en) * 2012-04-13 2014-06-03 Apollo Education Group, Inc. Accordion style bread crumbing for mobile applications
CA2789936C (en) 2012-09-14 2020-02-18 Ibm Canada Limited - Ibm Canada Limitee Identification of sequential browsing operations
US20140173500A1 (en) * 2012-12-19 2014-06-19 Qnx Software Systems Limited User interface with navigation context
US9342530B2 (en) * 2013-02-22 2016-05-17 Pro Softnet Corporation Method for skipping empty folders when navigating a file system
US9542478B2 (en) * 2013-04-08 2017-01-10 Oracle International Corporation Viewing hierarchical data using a grid format
US9465523B2 (en) 2013-06-27 2016-10-11 Sap Se Visual exploration of multidimensional data
US9910835B2 (en) * 2014-04-21 2018-03-06 Inkling Systems, Inc. User interface for creation of content works
US20160070446A1 (en) * 2014-09-04 2016-03-10 Home Box Office, Inc. Data-driven navigation and navigation routing
CN105573574A (zh) * 2014-10-09 2016-05-11 阿里巴巴集团控股有限公司 应用界面的导航方法及装置
US10452755B2 (en) 2015-03-10 2019-10-22 Microsoft Technology Licensing, Llc Hierarchical navigation control
US10719220B2 (en) * 2015-03-31 2020-07-21 Autodesk, Inc. Dynamic scrolling
US10333872B2 (en) 2015-05-07 2019-06-25 Microsoft Technology Licensing, Llc Linking screens and content in a user interface
US10621526B2 (en) 2015-11-09 2020-04-14 Dassault Systemes Americas Corp. Exporting hierarchical data from a product lifecycle management (PLM) system to a source code management (SCM) system
US10621524B2 (en) 2015-11-09 2020-04-14 Dassault Systemes Americas Corp. Exporting hierarchical data from a source code management (SCM) system to a product lifecycle management (PLM) system
US10140350B2 (en) * 2015-11-09 2018-11-27 Dassault Systemes Americas Corp. Bi-directional synchronization of data between a product lifecycle management (PLM) system and a source code management (SCM) system
US10255084B2 (en) 2016-06-16 2019-04-09 Entit Software Llc Manage analytics contexts through a series of analytics interactions via a graphical user interface
US10725720B2 (en) 2016-09-26 2020-07-28 Microsoft Technology Licensing, Llc Navigation in augmented reality via a transient user interface control
US10496734B2 (en) 2016-09-26 2019-12-03 Microsoft Technology Licensing, Llc Intelligent navigation via a transient user interface control
CN108153826B (zh) * 2017-12-07 2021-10-22 北京大学 一种基于条形码树的可视化形式比较层次结构数据的方法和系统
US11126644B2 (en) * 2019-01-31 2021-09-21 Salesforce.Com, Inc. Automatic discovery of locations of translated text in localized applications
US20220091707A1 (en) 2020-09-21 2022-03-24 MBTE Holdings Sweden AB Providing enhanced functionality in an interactive electronic technical manual
US11507249B2 (en) 2020-12-30 2022-11-22 Cisco Technology, Inc. Method and apparatus for pinning a level within a breadcrumb for use in navigating between breadcrumbs
US11967317B2 (en) 2021-02-18 2024-04-23 MBTE Holdings Sweden AB Providing enhanced functionality in an interactive electronic technical manual
US11947906B2 (en) 2021-05-19 2024-04-02 MBTE Holdings Sweden AB Providing enhanced functionality in an interactive electronic technical manual
US20230110336A1 (en) * 2021-10-11 2023-04-13 MBTE Holdings Sweden AB Providing enhanced functionality in an interactive electronic technical manual

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5806077A (en) * 1993-01-15 1998-09-08 International Business Machines Corporation Hypertext display system
CA2095452C (en) 1993-05-04 1997-03-18 Phillip J. Beaudet Dynamic hierarchical selection menu
US5675752A (en) 1994-09-15 1997-10-07 Sony Corporation Interactive applications generator for an interactive presentation environment
US6112201A (en) 1995-08-29 2000-08-29 Oracle Corporation Virtual bookshelf
US5905498A (en) 1996-12-24 1999-05-18 Correlate Technologies Ltd System and method for managing semantic network display
US6233726B1 (en) 1997-02-05 2001-05-15 Sybase, Inc. Development system with reference card and parameter wizard methodologies for facilitating creation of software programs
US6154750A (en) 1998-04-01 2000-11-28 Cyberpulse Llc Method and system for navigation and data entry in heirarchically-organized database views
US6040829A (en) 1998-05-13 2000-03-21 Croy; Clemens Personal navigator system
US6484190B1 (en) 1998-07-01 2002-11-19 International Business Machines Corporation Subset search tree integrated graphical interface
US6341280B1 (en) 1998-10-30 2002-01-22 Netscape Communications Corporation Inline tree filters
US6348935B1 (en) 1998-11-30 2002-02-19 International Business Machines Corporation Programmable tree viewer graphical user interface with integrated control panel
US6631496B1 (en) 1999-03-22 2003-10-07 Nec Corporation System for personalizing, organizing and managing web information
US6633316B1 (en) * 1999-05-13 2003-10-14 International Business Machines Corporation Method and apparatus for implementing direct link selection of cached, previously visited links in nested web pages
US6489968B1 (en) 1999-11-18 2002-12-03 Amazon.Com, Inc. System and method for exposing popular categories of browse tree
KR20000018242A (ko) 2000-01-25 2000-04-06 이명우 인터넷 웹사이트 내용의 단축검색 및 관리 프로그램작성방법
US6785667B2 (en) 2000-02-14 2004-08-31 Geophoenix, Inc. Method and apparatus for extracting data objects and locating them in virtual space
US6636250B1 (en) 2000-04-12 2003-10-21 Emc Corp Methods and apparatus for presenting information to a user of a computer system
US6690391B1 (en) 2000-07-13 2004-02-10 Sony Corporation Modal display, smooth scroll graphic user interface and remote command device suitable for efficient navigation and selection of dynamic data/options presented within an audio/visual system
JP2002116857A (ja) * 2000-10-10 2002-04-19 Just Syst Corp メニュー表示装置、メニュー表示方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US7099946B2 (en) 2000-11-13 2006-08-29 Canon Kabushiki Kaishsa Transferring a media browsing session from one device to a second device by transferring a session identifier and a session key to the second device
AUPR230700A0 (en) * 2000-12-22 2001-01-25 Canon Kabushiki Kaisha A method for facilitating access to multimedia content
US7017123B2 (en) 2000-12-27 2006-03-21 National Instruments Corporation Graphical user interface including palette windows with an improved search function
US6765597B2 (en) 2001-04-19 2004-07-20 International Business Machines Corporation System and method for using layer bars to indicate levels within non-indented tree view control
US7210094B2 (en) 2001-07-11 2007-04-24 International Business Machines Corporation Method and system for dynamic web page breadcrumbing using javascript
DE60140759D1 (de) 2001-10-19 2010-01-21 Sap Ag Verfahren und Rechnersystem für Anzeigestatusanpassung von Baumknoten
US7328215B2 (en) 2002-03-01 2008-02-05 Sap Ag Hybrid and dynamic representation of data structures
US8386921B2 (en) 2002-03-01 2013-02-26 International Business Machines Corporation System and method for developing a website
US20030197738A1 (en) 2002-04-18 2003-10-23 Eli Beit-Zuri Navigational, scalable, scrolling ribbon
US20030231216A1 (en) * 2002-06-13 2003-12-18 International Business Machines Corp. Internet navigation tree with bookmarking and emailing capability
US7080326B2 (en) 2002-07-11 2006-07-18 International Business Machines Corporation Method and system for managing multi—paned windowed environments
US7275063B2 (en) 2002-07-16 2007-09-25 Horn Bruce L Computer system for automatic organization, indexing and viewing of information from multiple sources
US20040068521A1 (en) 2002-10-04 2004-04-08 Haacke E. Mark Individual and user group webware for information sharing over a network among a plurality of users
JP4051310B2 (ja) * 2003-03-20 2008-02-20 京セラ株式会社 携帯端末
US7240292B2 (en) 2003-04-17 2007-07-03 Microsoft Corporation Virtual address bar user interface control
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7526483B2 (en) 2003-03-27 2009-04-28 Microsoft Corporation System and method for virtual folder sharing including utilization of static and dynamic lists
US7188308B2 (en) 2003-04-08 2007-03-06 Thomas Weise Interface and method for exploring a collection of data
US7242413B2 (en) 2003-05-27 2007-07-10 International Business Machines Corporation Methods, systems and computer program products for controlling tree diagram graphical user interfaces and/or for partially collapsing tree diagrams
JP2005071164A (ja) * 2003-08-26 2005-03-17 Seiko Epson Corp ブックマーク管理方法
US7287234B2 (en) 2003-09-19 2007-10-23 International Business Machines Corporation Methods, systems and computer program products for use of color saturation to highlight items in a tree map visualization
US7669146B2 (en) 2003-10-14 2010-02-23 Sap Aktiengesellschaft Information organization navigation
US20050131945A1 (en) 2003-12-16 2005-06-16 International Business Machines Corporation Compact interface for the display and navigation of object hierarchies
US20050234979A1 (en) 2004-04-16 2005-10-20 Alcatel Map navigation with breadcrumb buttons
US8156448B2 (en) 2004-05-28 2012-04-10 Microsoft Corporation Site navigation and site navigation data source
US20060085391A1 (en) 2004-09-24 2006-04-20 Microsoft Corporation Automatic query suggestions
US8286092B2 (en) 2004-10-14 2012-10-09 International Business Machines Corporation Goal based user interface for managing business solutions in an on demand environment
US7818683B2 (en) 2004-12-06 2010-10-19 Oracle International Corporation Methods and systems for representing breadcrumb paths, breadcrumb inline menus and hierarchical structure in a web environment
US7613638B2 (en) 2005-01-25 2009-11-03 Siemens Corporate Research, Inc. Automated systems and methods to support electronic business transactions for spare parts
US20060184892A1 (en) 2005-02-17 2006-08-17 Morris Robert P Method and system providing for the compact navigation of a tree structure
US20060190432A1 (en) 2005-02-22 2006-08-24 Sas Institute Inc. System and method for graphically distinguishing levels of a multidimensional database
US20060212329A1 (en) 2005-03-16 2006-09-21 Microsoft Corporation Consolidated management of administrative tasks in an aynchronous, multi-application environment
KR100792307B1 (ko) 2005-06-23 2008-01-07 장민석 최빈 검색 경로 패턴 추출 시스템
US7810043B2 (en) 2005-07-27 2010-10-05 Microsoft Corporation Media user interface left/right navigation
US7895233B2 (en) 2005-12-28 2011-02-22 Sap Ag Selectively searching restricted documents
US7707506B2 (en) 2005-12-28 2010-04-27 Sap Ag Breadcrumb with alternative restriction traversal
US7991891B2 (en) 2006-02-02 2011-08-02 Microsoft Corporation Version-specific content searching
US7954068B2 (en) 2007-04-09 2011-05-31 Adobe Systems Incorporated Extensible master-slave user interface with distinct interaction models
US20080256468A1 (en) 2007-04-11 2008-10-16 Johan Christiaan Peters Method and apparatus for displaying a user interface on multiple devices simultaneously
WO2009050590A2 (en) * 2007-05-04 2009-04-23 Bmenu As Computer-accessible medium, method and system for assisting in navigating the internet
US8271901B2 (en) 2007-05-11 2012-09-18 Demand Media, Inc. Cross taxonomy navigation from a bread crumb in a graphical user interface
US20090044150A1 (en) * 2007-08-07 2009-02-12 Yahoo! Inc. System and method for simplified navigation
US7979808B2 (en) * 2007-08-24 2011-07-12 Oracle International Corporation Navigational tools for large trees
US8010910B2 (en) 2007-09-04 2011-08-30 Microsoft Corporation Breadcrumb list supplementing for hierarchical data sets

Also Published As

Publication number Publication date
TWI363975B (en) 2012-05-11
EP2195755A1 (en) 2010-06-16
TW200915114A (en) 2009-04-01
US8010910B2 (en) 2011-08-30
US20090063547A1 (en) 2009-03-05
EP3324314A1 (en) 2018-05-23
CN101796517A (zh) 2010-08-04
WO2009032546A1 (en) 2009-03-12
EP2195755A4 (en) 2011-02-02
JP2010538369A (ja) 2010-12-09

Similar Documents

Publication Publication Date Title
JP5405469B2 (ja) 階層データセットに対するブレッドクラムリストの追加
TWI570575B (zh) 在有範圍階層式資料集內識別由根節點至選取節點的路徑之方法、電腦可讀取媒體與系統以及顯示在有範圍階層式資料集內由根節點至選取節點的路徑之方法與電腦可讀取媒體
RU2360276C2 (ru) Многоплоскостной трехмерный пользовательский интерфейс
KR100493891B1 (ko) 미디어 파일의 데이터베이스 관리 방법 및 시스템
US7739612B2 (en) Blended editing of literal and non-literal values
JP4552147B2 (ja) 情報検索装置、情報検索方法及び情報検索プログラム
US20090164946A1 (en) Hierarchical tag based browsing of media collections
US20010028369A1 (en) Three dimensional spatial user interface
US20080163056A1 (en) Method and apparatus for providing a graphical representation of content
AU2007312951A1 (en) Web application for debate maps
JP2005538476A (ja) 媒体製品構成
KR20080002815A (ko) 전자 정보의 탐색, 내비게이션 및 검색
JP2002116933A (ja) 情報処理装置および情報処理方法、並びにプログラム格納媒体
Weaver et al. Pro JavaFX 2: A Definitive Guide to Rich Clients with Java Technology
JP2001078091A (ja) メディアシーン情報表示編集装置、方法、および該方法に係るプログラムを記憶した記憶媒体
US8099682B1 (en) Proxies for viewing hierarchical data
Luhta How to Cheat in Maya: Tools and Techniques for the Maya Animator
US7665022B1 (en) Media management interfacing with refined data structures
JP2009237759A (ja) 表示制御装置、表示制御方法、及び、表示制御プログラム
JP4999614B2 (ja) 情報処理装置および情報処理方法
JP2010118045A (ja) データ分類装置、データ分類方法、データ分類プログラム
JP5951184B2 (ja) 媒体製品を構成する方法及び装置
Massari et al. Virtual reality systems for browsing multimedia
JP2007521540A (ja) 統合コレクションの拡張可能な作成および編集
Plaisant et al. Interactive Information Visualization of a Million Items

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110811

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121227

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130524

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20130527

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130527

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130614

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130701

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130718

RD15 Notification of revocation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7435

Effective date: 20130718

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131030

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees