(57)【要約】  ペンベースのコンピュータシステムで収集されたコンテンツを構成するシステム及び方法が開示される。ストロークデータの複数のグループが取得される、ストロークデータの各グループは、スマートペンによってなされたストロークのタイミングに基づいてタイムスタンプに関連付けられる。ストロークデータのグループは、タイムスタンプの時間的近接性、及びストロークデータの空間的近接性に基づいて１つまたは複数のスニペットにグループ化される。スニペットをタグに関連付ける要求が受信される。スニペットとタグとの関連付けが、要求に応じて記憶される。
2017501468.tif 000002
【特許請求の範囲】
【請求項１】
ペンベースのコンピュータシステムで収集されたコンテンツを構成する方法であって、
ストロークデータの複数のグループを取得するステップであって、前記ストロークデータは、書き込み面に対してスマートペンによってなされた１つまたは複数のストロークの表示を含み、ストロークデータの各グループは、前記スマートペンによってなされたストロークのタイミングに基づいた、関連付けられたタイムスタンプを有する、ステップと、
プロセッサによって、前記取得されたストロークデータの複数のグループを、前記タイムスタンプの時間的近接性、及び前記取得されたストロークデータのグループに関連付けられた前記ストロークデータの空間的近接性に基づいて、１つまたは複数のスニペットにグループ化するステップと、
選択されたスニペットをタグに関連付ける要求を受信するステップと、
前記要求に応じて、前記選択されたスニペットと前記タグとの関連付けを記憶するステップと
を備えたことを特徴とする方法。
【請求項２】
前記選択されたスニペットをタグに関連付ける前記要求を受信するステップは、
書き込み面条でのタグ付け制御と相互作用する前記スマートペンのジェスチャを検出するステップを含み、前記ジェスチャは、関連付けられたタイムスタンプを有し、
前記方法は、前記ジェスチャの前記タイムスタンプに基づいて前記選択されたスニペットを判定するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
前記タグ付け制御は、前記書き込み面に事前表示されることを特徴とする請求項２に記載の方法。
【請求項４】
前記選択されたスニペットをタグに関連付ける前記要求を受信するステップは、
書き込み面上でタグ付け制御と相互作用する前記スマートペンのジェスチャを検出するステップと、
表示スクリーン上に表示された前記１つまたは複数のスニペットからのスニペットの選択を受信するステップと
を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記選択されたスニペットをタグに関連付ける前記要求を受信するステップは、
前記選択されたスニペットを識別する前記スマートペンデバイスのジェスチャを受信するステップを含み、前記ジェスチャは、関連付けられたタイムスタンプを有し、
前記方法は、前記ジェスチャの前記タイムスタンプに基づいて前記選択されたスニペットを判定するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項６】
前記選択されたスニペットを識別する前記スマートペンの前記ジェスチャはさらに、前記タグを識別することを特徴とする請求項５に記載の方法。
【請求項７】
前記選択されたスニペットを識別する前記ジェスチャは、記号の描画を含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記タグは、重要タグ、追跡タグ、およびカスタムタグのうちの１つを含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記選択されたスニペットをタグに関連付ける前記要求は、コンピュータデバイス上でタグを選択することを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
ペンベースのコンピュータシステムで収集されたコンテンツを構成する方法であって、
複数のスニペットを受信するステップであって、前記スニペットは、書き込み面に対してスマートペンによってなされたストロークを表示する、クラスタ化されたストロークデータを含み、前記複数のスニペットのうちの１つまたは複数のスニペットは、タグに関連付けられる、ステップと、
前記タグに関連付けられた前記スニペットを表示する要求を受信するステップと、
コンピュータデバイスによって、前記タグに関連付けられた前記複数のスニペットのうちの前記１つまたは複数のスニペットを識別するステップと
前記タグに関連付けられた前記１つまたは複数のスニペットを表示するステップと
を備えたことを特徴とする方法。
【請求項１１】
前記複数のスニペットをデジタル文書で表示するステップと、
前記タグに関連付けられないスニペットを前記複数のスニペットから消去するステップと
をさらに備えたことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記タグは、重要タグ、追跡タグ、およびカスタムタグのうちの１つを含むことを特徴とする請求項１０に記載の方法。
【請求項１３】
前記タグは、追跡タグであり、前記方法は、前記タグに関連付けられた前記１つまたは複数のスニペットの各々に対するリマインダを生成するステップをさらに備えたことを特徴とする請求項１０に記載の方法。
【請求項１４】
命令を記憶するように構成された非一時的コンピュータ可読媒体であって、前記命令は、プロセッサによって実行されると、前記プロセッサに、
ストロークデータの複数のグループを取得させ、前記ストロークデータは、書き込み面に対してスマートペンによってなされた１つまたは複数のストロークの表示を含み、ストロークデータの各グループは、前記スマートペンによってなされたストロークのタイミングに基づいた、関連付けられたタイムスタンプを有し、
前記取得されたストロークデータの複数のグループを、前記タイムスタンプの時間的近接性、及び前記取得されたストロークデータのグループに関連付けられた前記ストロークデータの空間的近接性に基づいて、１つまたは複数のスニペットにグループ化させ、
選択されたスニペットをタグに関連付ける要求を受信させ、
前記要求に応じて、前記選択されたスニペットと前記タグとの関連付けを記憶させる
ことを特徴とするコンピュータ可読媒体。
【請求項１５】
前記選択されたスニペットをタグに関連付ける前記要求を受信する前記命令は、前記プロセッサに、
書き込み面上でタグ付け制御と相互作用する前記スマートペンのジェスチャを検出させ、
表示スクリーン上に表示された前記１つまたは複数のスニペットからのスニペットの選択を受信させる
ことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
前記選択されたスニペットをタグに関連付ける前記要求を受信する前記命令は、前記プロセッサに、前記選択されたスニペットを識別する前記スマートペンデバイスのジェスチャを受信させ、前記ジェスチャは、関連付けられたタイムスタンプを有し、前記コンピュータ可読媒体は、前記プロセッサに、前記ジェスチャの前記タイムスタンプに基づいて前記選択されたスニペットを判定させる命令をさらに含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項１７】
前記選択されたスニペットを識別する前記スマートペンの前記ジェスチャはさらに、前記タグを識別することを特徴とする請求項１６に記載のコンピュータ可読媒体。
【請求項１８】
前記選択されたスニペットを識別する前記ジェスチャは、記号の描画を含むことを特徴とする請求項１７に記載のコンピュータ可読媒体。
【請求項１９】
前記タグは、重要タグ、追跡タグ、およびカスタムタグのうちの１つを含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項２０】
前記選択されたスニペットをタグに関連付ける前記要求は、コンピュータデバイス上でタグを選択することを含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
本発明は、一般的に、ペンベースのコンピュータ環境に関し、より詳細には、スマートペン環境において、記録された書き込み（recorded writing）を他のコンテキストコンテンツで構成することに関する。
【０００２】
スマートペンは、ユーザの書き込みジェスチャをデジタル的に捕捉し、捕捉したジェスチャを、様々なアプリケーションで利用可能なデジタル情報に変換する電子デバイスである。例えば、光学ベースのスマートペンにおいては、スマートペンは、デジタルコード化した面（例えば、ドットパターン）に対する書き込みの間、ペンの座標を検出および記録する光学センサを含む。スマートペンのコンピュータ環境は、コンテキストコンテンツ（記録された音声等）も収集でき、コンテキストコンテンツは、捕捉された書き込みを見ながら、デジタル領域で再生できる。従って、スマートペンは、紙領域で操作する便利さと、デジタル環境に関連付けられた機能性及び柔軟性との両方を提供して、ユーザが注釈を取る体験を充実させることができる。しかしながら、生産的な見直し体験を保証するために、スマートペン環境で収集された膨大な情報を構造化、構成することは困難である。
【発明の概要】
【０００３】
開示の実施形態は、ペンベースのコンピュータシステムで収集されたコンテンツを構成する技術を含む。一実施形態においては、ストローク（stroke）データの複数のグループを取得する。ストロークデータの各グループは、スマートペンによってなされたストロークのタイミングに基づいたタイムスタンプに関連付けられる。ストロークデータのグループは、タイムスタンプの時間的近接性とストロークデータの空間的近接性に基づいて、１つまたは複数のスニペット（snippet）にグループ化される。スニペットをタグに関連付ける要求を受信する。例えば、タグを「重要」タグに関連付ける要求が受信されてよい。スニペットとタグとの関連付けは、要求に応答して記憶される。
【図面の簡単な説明】
【０００４】
【図１】スマートペンベースのコンピュータシステムの実施形態を示す図である。
【図２】ペンベースのコンピュータシステムで使用されるスマートペンデバイスの実施形態を示す図である。
【図３】スマートペンコンピュータシステムの実施形態において、経時的に記憶されたイベントの例を示す時系列図である。
【図４】スマートペンコンピュータシステムの実施形態において、書き込みデータ及びコンテキストデータを構成するシステムを示すブロック図である。
【図５】スマートペンコンピュータシステムの実施形態において、書き込みストロークデータをクラスタに構成する方法を示すフロー図である。
【図６】スマートペンコンピュータシステムの実施形態において、クラスタとコンテキストデータをスニペットに構成する方法を示すフロー図である。
【図７】スマートペンと共に使用される書き込み面の実施形態を示す図である。
【図８Ａ】スマートペンコンピュータシステムの実施形態において、スニペットにタグ付けする方法を示すフロー図である。
【図８Ｂ】スマートペンコンピュータシステムの実施形態において、タグに関連付けられたスニペットを表示する方法を示すフロー図である。
【０００５】
図面は、様々な実施形態を例示目的で示している。本明細書に記載の原理を逸脱することなく、本明細書に記載の構造及び方法の代替実施形態を採用してよいことを、下記の説明から、当業者は理解されよう。
【発明を実施するための形態】
【０００６】
図１は、ペンベースのコンピュータシステム１００の実施形態を示す。ペンベースのコンピュータシステムは、書き込み面１０５、スマートペン１１０、コンピュータデバイス１１５、ネットワーク１２０、及び、クラウドサーバ１２５を備える。代替実施形態においては、例えば、追加のスマートペン１１０、書き込み面１０５、及び、コンピュータデバイス１１５等、異なるデバイスもしくは追加のデバイスが存在してよく、（または、１つもしくは複数のデバイスが存在しなくてもよい）。
【０００７】
一実施形態においては、書き込み面１０５は、紙（または、書き込み可能な任意の他の適切な材料）を備え、スマートペン１１０によって検知可能なパターン（例えば、ドットパターン）でコード化される。パターンは、スマートペン１１０が、書き込み面１０５に対するその相対的位置（例えば、相対的または絶対的）をすることが可能なように十分に固有である。別の実施形態においては、書き込み面１０５は、電子ペーパー、すなわち、ｅペーパーを備えてよく、電子デバイスの表示画面（例えば、タブレット、プロジェクタ）を備えてもよく、電子デバイスは、コンピュータデバイス１１５または異なるデバイスであってよい。他の実施形態においては、書き込み面１０５に対するスマートペン１１０の相対的位置は、ドットパターンを使用せずに決定される。例えば、ある実施形態においては、書き込み面１０５が電子面を備え、検知は、スマートペン１１０の代わりに、または、スマートペン１１０と共に、書き込み面１０５によって全体的に実行されてよい。スマートペン１１０の動作は、例えば、スマートペン１１０の光検知を介して、スマートペン１１０の動き検知を介して、書き込み面１０５の接触検知を介して、基準マーキング（fiducial marking）を介して、または、他の適切な手段で、検知されてよい。
【０００８】
スマートペン１１０は、書き込み面１０５との相互作用（例えば、書き込みジェスチャ、及び／または、制御入力）をデジタル的に捕捉する電子デバイスである。スマートペン１１０は、直接、または、ネットワーク１２０を介して、コンピュータデバイス１１５に通信可能に接続される。捕捉された書き込みジェスチャ及び／または制御入力は、コンピュータデバイス１１５上で実行する１つまたは複数のアプリケーションで使用するために（例えば、リアルタイムまたは後に）、スマートペン１１０からコンピュータデバイス１１５に転送されてよい。さらに、デジタルデータ及び／または制御入力は、スマートペン１１０上で実行するアプリケーションで使用するために（リアルタイムまたはオフライン処理）、コンピュータデバイス１１５からスマートペン１１０に通信されてよい。コマンドは、コンピュータデバイス１１５上で実行するアプリケーションで使用するために、スマートペン１１０からコンピュータデバイス１１５に同様に通信されてよい。クラウドサーバ１２５は、スマートペン１１０及び／またはコンピュータデバイス１１５で利用可能な遠隔記憶装置、及び／または、アプリケーションサービスを提供する。従って、ペンベースのコンピュータシステム１００によって、紙領域とデジタル領域の両方でユーザの相互作用を組み合わせる様々なアプリケーションが可能になる。
【０００９】
一実施形態において、スマートペン１１０は、組み込みコンピュータコンポーネント、及び、様々な入出力機能を有する筆記用具（例えば、インクベースのボールペン、インクなしのスタイラスデバイス、「デジタルインク」をディスプレイに残すスタイラスデバイス、フェルトマーカ、鉛筆、または、他の書き込み装置）を備える。ユーザは、従来のペンで書くように、書き込み面１０５にスマートペン１１０で書くことができる。操作の間、スマートペン１１０は、書き込み面１０５上でなされた書き込みジェスチャをデジタル的に捕捉し、書き込みジェスチャの電子表現を記憶する。捕捉された書き込みジェスチャは、空間成分及び時間成分の両方を有する。一実施形態においては、スマートペン１１０は、様々なサンプル時間に書き込み面１０５に対するスマートペン１１０の位置サンプル（すなわち、座標情報）を捕捉し、捕捉した位置情報を各サンプルのタイミング情報と共に記憶する。さらに、捕捉された書き込みジェスチャは、異なる書き込み面１０５で捕捉されたデータを区別するように、例えば、特定の注釈の特定のページの情報を識別する等、特定の書き込み面１０５に関連付けられた情報を識別することを含んでよい。別の実施形態においては、スマートペン１１０は、ユーザによって選択された書き込みジェスチャの他の属性も捕捉する。例えば、表示されたアイコン（printed icon）を書き込み面１０５にタップすること、コンピュータディスプレイ上のアイコンを選択すること等によって、インク色が選択されてよい。このインク情報（色、線の太さ、線種等）も、捕捉されたデータにコード化されてよい。
【００１０】
ある実施形態においては、スマートペン１１０が書き込みジェスチャを捕捉する間に、コンピュータデバイス１１５は、さらに、コンテキストデータを捕捉する。代替実施形態においては、代わりに、書き込みジェスチャは、スマートペン１１０によって捕捉される代わりに、または、スマートペン１１０によって捕捉されることに加えて、コンピュータデバイス１１５または書き込み面１０５（コンピュータデバイス１１５と異なる場合は）によって捕捉されてよい。コンテキストデータは、音声／視覚ソース（例えば、周囲の部屋）からの音声及び／またはビデオを含んでよい。コンテキストデータは、例えば、コンピュータデバイス１１５とのユーザの相互作用（例えば、文書、ウェブページ、電子メール、及び、他の同時に見ているコンテンツ）、コンピュータデバイス１１５によって収集された情報（例えば、地理空間位置）、及び、コンピュータデバイス１１５上で視聴または記録されている時間ベースのコンテンツ（例えば音声またはビデオ）に関連付けられた同期情報（例えば、キューポイント）も含んでよい。コンピュータデバイス１１５は、捕捉された書き込みジェスチャに合わせて同期されたコンテキストデータを記憶する（すなわち、捕捉された書き込みジェスチャとコンテキストデータとの間の相対的タイミング情報が保存される）。代替実施形態においては、スマートペン１１０、または、スマートペン１１０とコンピュータデバイス１１５との組み合わせは、コンテキストデータを捕捉する。さらに、代替実施形態においては、コンテキストデータの一部または全てを、コンピュータデバイス１１５に記憶するのに代えて、または、それに加えて、スマートペン１１０に記憶することができる。
【００１１】
スマートペン１１０とコンピュータデバイス１１５との間（または、複数のスマートペン１１０及び／または複数のコンピュータデバイス１１５の間）の同期は、コンテキスト情報を捕捉するときに、様々な異なる方法で保証されてよい。例えば、ユニバーサルクロックが、異なるデバイス間の同期に使用されてよい。代替実施形態においては、局所的なデバイス間の同期が、２つ以上のデバイス間で実行される。別の実施形態においては、スマートペン１１０またはコンピュータデバイス１１５によって捕捉されたコンテンツは、後処理で、以前捕捉されたデータと組み合わされて、かつ同期されてよい。捕捉された書き込みジェスチャ、音声データ、及び／または、デジタルデータの同期は、スマートペン１１０、コンピュータデバイス１１５、リモートサーバ（例えば、クラウドサーバ１２５）、または、デバイスの組み合わせによって実行されてよい。
【００１２】
一実施形態においては、スマートペン１１０は、視覚情報及び／または音声情報を出力することができる。さらに、スマートペン１１０は、異なる入力に応答して、スマートペン１１０の様々な出力及び動作を制御する１つまたは複数のソフトウェアアプリケーションを実行してよい。
【００１３】
一実施形態においては、スマートペン１１０は、さらに、書き込み面１０５のテキストまたは他の既存のコンテンツを検出することができる。既存のコンテンツは、スマートペン１１０自身によって以前に作成されたコンテンツ、または、他のソースからの事前に表示された（pre-printed）コンテンツ（例えば、表示された講義スライドのセット）を含んでよい。一実施形態においては、スマートペン１１０は、（例えば、テキスト認識を実行することによって）既存のコンテンツ自体を直接、認識する。別の実施形態においては、スマートペンは、スマートペン１１０の位置情報を認識し、捕捉した位置情報を既存のコンテンツの既知の位置情報と相関付けることによって、どの既存のコンテンツが、相互作用されているかを決定する。例えば、スマートペン１１０は、書き込み面１０５の特定の単語または画像をタップすることができ、次に、スマートペン１１０は、既存のコンテンツを認識することに応答して、コンテキストデータの作成、コンピュータデバイス１１５へのコマンドの送信等、何らかの動作を取ることができる。既存のコンテンツの記号をタップすることによって、最近捕捉した書き込みジェスチャと関連付けられたコンテキストマーカを作成することができる。コンテキストマーカの例は、例えば、最近捕捉した書き込みジェスチャが重要な項目、タスクであることのインジケーション、または、特定の既存のもしくはユーザ定義のタグに関連付けられるべきことインジケーションを含んでよい。別の例としては、記録デバイスに対する制御を記号で表す（symbolize）表示されたコンテンツをタップするは、関連するアクティブな音声またはビデオレコーダが記録を開始または停止すべきことをコンピュータデバイス１１５に示すことができる。別の例においては、スマートペン１１０は、ページ上の単語を翻訳することができる（スクリーン上の翻訳を表示し、または、その音声記録を再生することのいずれかによって）。
【００１４】
コンピュータデバイス１１５は、例えば、タブレットコンピュータデバイス、携帯電話、ラップトップもしくはデスクトップコンピュータ、または、他の電子デバイス（例えば、他のスマートペン１１０）を備えてよい。コンピュータデバイス１１５は、スマートペン１１０と共に使用できる１つまたは複数のアプリケーションを実行してよい。例えば、スマートペン１１０によって捕捉された書き込みジェスチャ及びコンテキストデータは、記憶、再生、編集、及び／または、さらなる処理のために、コンピュータシステム１１５に転送されてよい。さらに、コンピュータデバイス１１５で利用可能なデータ、及び／または、制御信号は、スマートペン１１０に転送されてよい。さらに、スマートペン１１０とコンピュータデバイス１１５とで同時に実行するアプリケーションによって、スマートペン１１０とコンピュータデバイス１１５との間の様々な異なるリアルタイムの相互作用を可能となる。例えば、スマートペン１１０と書き込み面１０５との間の相互作用を使用して、コンピュータデバイス１１５上で実行するアプリケーションに入力を提供してよい（逆も同様）。さらに、捕捉されるストロークデータは、スマートペン１１０によって捕捉されると、リアルタイムでコンピュータデバイス１１５に表示されてよい。
【００１５】
スマートペン１１０とコンピュータデバイス１１５との間の通信を有効にするために、スマートペン１１０及びコンピュータデバイス１１５は、互いに「ペアリング」を確立してよい。ペアリングによって、両デバイスは、互いを認識して、両デバイス間のデータ転送を許可することができる。ペアリングされると、データ及び／または制御信号は、スマートペン１１０とコンピュータデバイス１１５との間で有線または無線手段を通じて送信されてよい。一実施形態においては、スマートペン１１０及びコンピュータデバイス１１５の両方は、それらの各ネットワークアダプタにリンクしたＴＣＰ／ＩＰネットワークスタックを有している。従って、デバイス１１０、１１５は、直接（ＴＣＰ）ソケット及びブロードキャスト（ＵＤＰ）ソケットを使用して、これらのソケットを使用して通信することができるスマートペン１１０及びコンピュータデバイス１１５の各々で実行するアプリケーションとの通信をサポートする。
【００１６】
ネットワーク１２０は、スマートペン１１０、コンピュータデバイス１１５、クラウドサーバ１２５の間の通信を有効にする。ネットワーク１２０によって、スマートペン１１０は、例えば、スマートペン１１０、コンピュータデバイス１１５、及び／もしくは、クラウドサーバ１２５の間で捕捉されたコンテキストデータを転送すること、スマートペン１１０、コンピュータデバイス１１５、及び／もしくは、クラウドサーバ１２５の間で制御信号を通信すること、並びに／または、スマートペン１１０、コンピュータデバイス１１５、及び／もしくは、クラウドサーバ１２５の間で様々な他のデータ信号を通信することが可能になり、様々なアプリケーションが有効になる。ネットワーク１２０は、例えば、Ｂｌｕｅｔｏｏｔｈ、ＷｉＦｉ、ＷｉＭａｘ、セルラーネットワーク、赤外線通信、音波通信、もしくは、カスタムプロトコル等の無線通信プロトコルを備えてよく、及び／または、ＵＳＢもしくはイーサネット等の有線通信プロトコルを備えてよい。代わりに、または、追加で、スマートペン１１０及びコンピュータデバイス１１５は、ネットワーク１２０を必要とせずに、有線または無線接続を介して直接通信してよい。
【００１７】
クラウドサーバ１２５は、ネットワーク１２０を介して、スマートペン１１０及び／またはコンピュータデバイス１１５に結合されたリモートコンピュータシステムを備える。例えば、一実施形態においては、クラウドサーバ１２５は、スマートペン１１０及び／またはコンピュータデバイス１１５によって捕捉されたデータのためのリモート記憶装置を備える。さらに、クラウドサーバ１２５に記憶されたデータは、様々なアプリケーションのコンテキストで、スマートペン１１０及び／またはコンピュータデバイス１１５によってアクセスかつ使用することができる。
【００１８】
＜スマートペンシステムの概要＞
図２は、スマートペン１１０の実施形態を示す。図示の実施形態においては、スマートペン１１０は、マーカ２０５、撮像システム２１０、ペンダウンセンサ（pen down sensor）２１３、電源状態機構２１５、スタイラスチップ２１７、入出力ポート２２０、プロセッサ２２５、オンボードメモリ２３０、及び、バッテリ２３５を備える。例えば、状態インジケータライト、ボタン、１つまたは複数のマイクロフォン、スピーカ、オーディオジャック、及び、ディスプレイを含む、スマートペン１１０の他のオプションのコンポーネントは、記載を分かりやすくするために、図２では省略している。代替実施形態においては、スマートペン１１０は、図２に示すコンポーネントよりも少ない、多い、重複した、または、異なったコンポーネントを有してよい。
【００１９】
マーカ２０５は、書き込みに使用可能な任意のインクベースもしくはグラファイト（graphite）ベースのマーキングデバイスまたは任意の他のデバイスを含む、任意の適切なマーキング機構を備える。マーカ２０５は、感圧要素等のペンダウンセンサ２１３に結合される。代替実施形態においては、マーカ２０５は、ペアリングされたプロジェクタまたは電子ディスプレイを使用して、書き込み面１０５に電子マークをつけてよい。
【００２０】
撮像システム２１０は、マーカ２０５の近くの面の領域を撮像するための光学系及びセンサを備える。撮像システム２１０を使用して、スマートペン１１０でなされた手書き及びジェスチャを捕捉してよい。例えば、撮像システム２１０は、マーカ２０５に全体的に近郊した（general vicinity）書き込み面１０５を照射する赤外線光源を含んでよく、書き込み面１０５は、コード化されたパターンを含む。コード化されたパターンの画像を処理することによって、スマートペン１１０は、マーカ２０５がどこで書き込み面１０５と関連しているかを決定することができる。撮像システム２１０の撮像配列は、マーカ２０５近くの面を撮像し、その視野にあるコード化されたパターンの一部を捕捉する。
【００２１】
スマートペン１１０の他の実施形態においては、書き込みジェスチャを捕捉する適切な代替機構を使用してよい。例えば、一実施形態においては、ページ上の位置は、単語または写真もしくは他の画像の一部等、事前表示されたマークを使用することによって決定される。検出したマークを文書のデジタルバージョンに相関付けることによって、スマートペン１１０の位置を決定できる。例えば、一実施形態においては、表示された新聞に対するスマートペンの位置は、スマートペン１１０の撮像システム２１０によって捕捉された画像を新聞のクラウドベースのデジタルバージョンと比較することによって決定できる。この実施形態においては、ページ上の他のコンテンツを基準点として使用できるので、書き込み面１０５上のコード化されたパターンが必要でない場合がある。次に、撮像システム２１０によって捕捉されたデータは、文字認識等の１つまたは複数のコンテンツ認識アルゴリズムを使用して処理される。別の実施形態においては、撮像システム２１０を使用して、書き込み面１０５に既に存在する書き込みコンテンツをスキャン及び捕捉することができる。この撮像システムを使用して、例えば、書き込み面１０５上の手書きもしくは表示されたテキスト、画像または制御を認識することができる。他の代替実施形態においては、例えば、スマートペン１１０ではなく、電子デバイス（例えば、タブレット）と一体化された書き込み面１０５によってジェスチャが捕捉される実施形態においては、撮像システム２１０は、スマートペン１１０から省略されてよい。
【００２２】
ペンダウンセンサ２１３は、スマートペンが降りるときを判定する。本明細書で使用されるように、「ペンが降りる」は、マーカ２０５が書き込み面１０５に押し付けられ、または、接触することを示す。ある実施形態においては、ペンダウンセンサ２１３は、ペンが降りるときに出力を生成して、それによって、スマートペン１１０が、面に書き込むために使用されていること、または、書き込み面１０５上での制御もしくはボタンと相互作用（例えば、タッピング）するために使用されていることを検出する。ペンダウンセンサ２１３の実施形態は、容量センサ、ピエゾ抵抗センサ、機械式ダイヤフラム、及び、電磁式ダイヤフラムを備えてよい。さらに、撮像システム２１０が、ペンダウンセンサ２１３と組み合わせで使用されて、マーカ２０５が書き込み面１０５に接触しているときを判定してよい。例えば、撮像システム２１０は、画像処理を使用して（例えば、撮影画像の高速フーリエ変換に基づいて）マーカ２０５が書き込み面１０５の特定の範囲内にあるか否かを判定するために使用されてよい。代替実施形態においては、別個の領域探索光学系、レーザまたは音響デバイスをペンダウンセンサ２１３と共に使用することができる。代替実施形態においては、スマートペン１１０は、スマートペンが書き込み面１０５に書き込みを行っていること、または、書き込み面１０５の制御と相互作用を行っていることを示す振動を検出できる。代替実施形態においては、ペンアップセンサを使用して、スマートペン１１０が上がるときを判定してよい。本明細書で使用されるように、「ペンが上がる」は、マーカ２０５が書き込み面１０５に押し付けられていない、または、書き込み面１０５と接触していないことを示す。ある実施形態においては、ペンダウンセンサ２１３は、さらに、スタイラスチップ２１７と結合されてよく、または、スタイラスチップ２１７に結合もしくは組み込まれた追加のペンダウンセンサであってよい。
【００２３】
電源状態機構２１５は、スマートペン１１０の電源状態をトグルで切り替える（toggle）ことができる。電源状態機構は、スマートペン１１０の電力状態を検知及び出力してもよい。電源状態機構は、ペン本体に一体化された回転可能スイッチ、機械式ボタン、ダイヤル、タッチスクリーン入力、容量性ボタン、光学センサ、温度センサ、または、振動センサとして実現されてよい。電源状態機構２１５がトグルで切り替えられるとき、ペンのバッテリ２３５が活性化され、撮像システム２１０、入出力デバイス２２０、プロセッサ２２５、及び、オンボードメモリ２３０も活性化される。ある実施形態においては、電源状態機構２１５はまた、状態ライト、ディスプレイ、マイクロフォン、スピーカ、及び、スマートペン１１０の他のコンポーネントをトグルで切り替える。ある実施形態においては、電源状態機構２１５がトグルでＯＮに切り替えられるとき、マーカ２０５が拡張し（extend）、電源状態機構２１５がトグルでＯＦＦにされるとき、マーカ２５が引っ込む（retract）ように、電源状態機構２１５は、機械的、電気的、または、磁気的に、マーカ２０５に結合されてよい。ある実施形態においては、マーカ及び／または容量性チップ２１７の使用によって、電源状態がトグルで切り替わるように、電源状態機構２１５は、マーカ２０５及び／または容量性チップに結合される。ある実施形態においては、電源状態機構２１５は、各位置が、スマートペン１１０のコンポーネントの特定のサブセットをトグルで切り替える複数の位置を有してよい。 
【００２４】
スタイラスチップ２１７を使用して、物理的なインクマークを残すことなく、デバイスまたはオブジェクトに書き込み、または、それらと相互作用する。スタイラスチップと共に使用するデバイスの例は、タブレット、電話、携帯情報端末、対話型ホワイトボード、または、タッチセンサ式入力が可能な他のデバイスを含んでよい。スタイラスチップは、容量検知または圧力検知を利用してよい。ある実施形態においては、スタイラスチップは、マーカ２０５の代わりに、または、マーカ２０５と組み合わせて使用されてよい。
【００２５】
入出力（Ｉ／Ｏ）デバイス２２０は、スマートペン１１０と、ネットワーク１２０及び／またはコンピュータデバイス１１５との間の通信を可能にする。Ｉ／Ｏデバイス２２０は、任意のサポートアンテナ及び電子機器と共に、例えば、Ｂｌｕｅｔｏｏｔｈ、Ｗｉ‐Ｆｉ、ＷｉＭａｘ、３Ｇ、４Ｇ、赤外線、もしくは、超音波インタフェース等の有線及び／または無線通信インタフェースを含んでよい。
【００２６】
プロセッサ２２５、オンボードメモリ２３０（すなわち、非一時的コンピュータ可読記憶媒体）、及び、バッテリ２３５（または、任意の他の適切な電源）によって、スマートペン１１０上で演算機能を実行することができる。プロセッサ２２５は、オンボードメモリ２３０及びバッテリ２３５と共に、入力デバイス及び出力デバイス（例えば、撮像システム２１０、ペンダウンセンサ２１３、電源状態機構２１５、スタイラスチップ２１７、及び、入出力デバイス２２０）に結合され、それによってスマートペン１１０上で実行するアプリケーションがそれらのコンポーネントを使用するのを可能にする。その結果、実行可能アプリケーションは、オンボードメモリ２３０の非一時的コンピュータ可読記憶媒体に記憶され、プロセッサ２２５によって実行されて、本明細書に記載のスマートペン１１０に属する様々な機能を実行できる。さらに、メモリ２３０は、記録された書き込みデータ及びコンテキストデータを、無期限に、または、スマートペン１１０からコンピュータシステム１１５もしくはクラウドサーバ１２５にオフロードされるまで記憶してよい。
【００２７】
ある実施形態においては、プロセッサ２２５及びオンボードメモリ２３０は、ファイルシステムまたはアプリケーションメニューを通じてメニュー構造及びナビゲーションをサポート及び有効にする１つまたは複数の実行可能アプリケーションを含み、アプリケーションまたはアプリケーションの機能の開始を可能にする。例えば、メニュー項目間のナビゲーションは、ユーザによる音声コマンド及び／または書き込みコマンド及び／またはジェスチャと、スマートペンコンピュータシステムからの音声フィードバック及び／または視覚的フィードバックを伴う、ユーザとスマートペン１１０との相互作用を含む。ある実施形態においては、ペンコマンドは、「開始線（launch line）」を使用して起動できる。例えば、ドットペーパー上に、ユーザは、右から左に水平に線を引き、次に、最初の区分上を戻ると、そこで、ペンは、ユーザにコマンドを促す。次に、ユーザは、所望のコマンドまたはメニュー（例えば、Ｗｉ‐Ｆｉ設定、記録の再生等）がアクセスされることになる線上で書く（print）（例えば、ブロック文字を使用して）。統合文字認識（ＩＣＲ）を使用して、ペンは、書き込みジェスチャをコマンドまたはデータ入力のためのテキストに変換できる。代替実施形態においては、異なる種類のジェスチャを認識して、開始線を有効にできる。よって、スマートペン１１０は、様々な様式（modality）からメニュー構造をナビゲートする入力を受信してよい。
【００２８】
書き込みデータ及びコンテキストデータの収集および記憶
スマートペンのコンピューティングセッションの間、ペンベースのコンピュータシステム１００は、スマートペン１１０の操作を通じて生成または収集され、かつコンピュータデバイス１１５によって生成または収集された、２つの主な形態でのコンテンツを取得する。このデータは、例えば、ストロークデータ、音声データ、デジタルコンテンツデータ、及び、他のコンテキストデータを含んでよい。
【００２９】
ストロークデータは、例えば、様々なサンプル時間に捕捉された特定の書き込み面１０５に対するスマートペンの位置の座標情報（例えば、「Ｘ」「Ｙ」座標）を符号化する一連の時間的に指標付けされたデジタルサンプルを表す。概して、個々のストロークは、ペンが降りると開始し、ペンが上がると終了する。さらに、一実施形態においては、ストロークデータは、例えば、スマートペン１１０のペンの角度、ペンの回転、ペンの速度、ペンの加速度、または、他の位置、角度、もしくは、動作特性等の他の情報を含んでよい。書き込み面１０５は、経時的に（例えば、注釈のページまたは注釈を変更すると）変化してよく、従って、書き込み面に関する情報の識別も、ストロークデータで捕捉されてよい。
【００３０】
音声データは、例えば、様々なサンプル時間に捕捉された一連の時間的に指標付けされたデジタル音声サンプルを含む。概して、個々の音声クリップは、「記録」コマンドが捕捉されると開始し、「記録停止」コマンドが捕捉されると終了する。ある実施形態においては、音声データは、複数の音声信号（例えば、ステレオ音声データ）を含んでよい。
【００３１】
捕捉されたデジタルコンテンツは、スマートペンのコンピューティングセッションの間に捕捉されたコンピュータデバイス１１５上で実行している１つまたは複数のアプリケーションに関連付けられた状態を表す。状態情報は、例えば、所与の時間にコンピュータデバイス１１５によって表示されているデジタル文書もしくはウェブページ、所与の時間にコンピュータデバイスによって表示されているデジタル文書もしくはウェブページの特定の部分、所与の時間にコンピュータデバイスによって受信された入力等を表すことができる。コンピュータデバイス１１５の状態は、コンピュータデバイス１１５とのユーザの相互作用に基づいて、及び／または、ストロークデータ（例えば、ジェスチャコマンド）もしく音声データ（例えば、音声コマンド）からのコマンドもしくは入力に応答して、経時的に変化してよい。
【００３２】
スマートペンシステムによって捕捉された他のデータは、特定の方法でマーク付けされたコンテンツに関連付けられた識別子を記憶するコンテキストマーカを含んでよい。例えば、ユーザは、ボタンをタップして、様々なコンテンツカテゴリ（例えば、追跡（follow-up）が必要なタスク、重要なコンテンツ等）に従ってコンテンツを分類できる。スマートペンのコンピューティングセッションの間に補足された写真またはビデオがまた、記憶及び時間的に指標付けられてよい。スマートペンのコンピューティングセッションが起こった場所に関する（例えば、全地球測位システムを使用して捕捉された）地理的空間情報も捕捉及び記憶できる。さらに、スマートペンコンピュータシステム１００内で実行されたペアリングデータまたはコマンドも捕捉及び記憶できる。
【００３３】
一実施形態においては、スマートコンピューティングセッションは、「記録」コマンドが捕捉されると開始し「記録停止」コマンドが捕捉されると終了する。あるいは、スマートペンのコンピューティングセッションは、スマートペンのコンピューティングアプリケーションがコンピュータデバイス１１５上で開始されるときに、自動的に開始してよく、スマートペン１１０の電源を入れるときかつ電源を切るとき、自動的に開始及び終了してよい。
【００３４】
図３は、ペンベースのコンピュータシステム１００で捕捉及び構成されたコンテンツの例を示す。図３において、スマートペンのコンピューティングセッションの間に捕捉された各コンテンツは、タイムスタンプ３１０、イベントコンテンツ３１５、メタデータ３２５、関連クラスタ３３５、及び、関連スニペット３４５のフィールドのうち１つまたは複数を含むイベントとして表される。個々の動作を指標付きイベントとしてデータストアに記憶することによって、スマートペン１１０とコンピュータデバイス１１５との間のコンテンツの相関付けが可能になる。代替実施形態においては、異なるカテゴリのイベントは、イベントのカテゴリに関する情報に応じて、異なる、追加の、または、より少ないフィールドを有してよい。
【００３５】
イベントタイムスタンプフィールド３１０は、特定のイベントが起こった時を時間で示す。イベントタイムスタンプは、協定世界時間（ＵＴＣ）、Ｕｎｉｘタイム、他のタイムシステム、もしくは、それらの任意のオフセット等のユニバーサルタイムに関するものでよく、または、他のイベントもしくは何らかの基準時間に対して（例えば、スマートペン１１０またはコンピュータデバイス１１５の電源投入時に対して）指定された相対時間であってよい。タイムスタンプは、任意の精度で実施されてよい。様々な可能な実装において、タイムスタンプは、イベントの開始時間、イベントの終了時間、または、その両方を示すように記憶されてよい。
【００３６】
イベントコンテンツフィールド３１５は、ペンベースのコンピュータシステム１００によって捕捉されたデータ、例えば、書き込みコンテンツ、記録された音声もしくはビデオ、写真、地理的空間情報、スマートペン１１０及びコンピュータデバイス１１５のペアリングデータ、スマートペンのコンピューティングセッションの間にコンピュータデバイス１１５上で同時に表示されるコンテンツを参照するデジタルデータクリップ、スマートペン１１０及びコンピュータデバイス１１５へのコマンド、コンテキストマーカ、読み出されたテキスト及び媒体、ウェブページ、クラウドサーバ１２５からアクセスされた他の情報、並びに、他のコンテキストデータ等である。
【００３７】
例えば、スマートペン１１０によって捕捉された各ストロークは、概して、別個のイベントとして記憶され、イベントコンテンツフィールド３１５によって参照される。同様に、音声捕捉イベント（audio capture events）は、イベント捕捉フィールド３１５によって参照される音声クリップと共に、別個のイベントとして記憶される。スマートペンのコンピューティングセッションの間にコンピュータデバイス上で実行しているアプリケーションの状態への変更も、イベントとして捕捉され、イベント捕捉フィールド３１５によって参照されて、例えば、スマートペンのコンピューティングセッションの間の所与の時間にユーザが特定のデジタル文書を参照し、または、特定のウェブサイトを閲覧したということを示してよい。コンテキストマーカは、イベント捕捉フィールド３１５に記憶されて、ユーザが特定のタグをコンテンツに適用したことを示してよい。写真に関連するイベントについては、イベントコンテンツフィールド３１５は、写真データ、または、写真が記憶されたファイルの位置への参照を含んでよい。音声ファイル及び／またはビデオファイルに関するイベントについては、イベントコンテンツフィールド３１５は、音声ファイル及び／もしくはビデオファイル、音声ファイル及び／もしくはビデオファイルが記憶されたファイルの位置への参照を含んでよい。
【００３８】
メタデータフィールド３２５は、イベントに関連付けられた追加データを含む。メタデータフィールド３２５に記憶されたデータは、例えば、イベントコンテンツフィールド３１５に関連付けられたソースデバイスを識別する情報と、そのデバイスに関する状態データとを含んでよい。ストロークからなる書き込みコンテンツについては、メタデータフィールド３２５は、例えば、書き込み面１０５に関連付けられたページアドレス情報（例えば、面の種類、ページ番号、注釈ＩＤ、デジタルファイル参照等）を含む。写真に関連するメタデータは、例えば、ソースカメラデータ、カメラアプリケーション、及び、適用された写真処理を含む。同様に、記録された音声及びビデオに対するメタデータフィールド３２５は、例えば、マイクロフォン及び／またはカメラのデータと、記録アプリケーションと、記録アプリケーションに入力されたコマンドと、適用された音声処理及び／またはビデオ処理とを含む。地理的空間情報（例えば、全地球測位システムの座標）も、メタデータフィールド３２５に含まれて、スマートペン１１０またはコンピュータデバイス１１５を使用してイベントを捕捉した位置に関する追加のコンテキストデータを提供してよい。同時に表示されるコンテンツ（テキスト、電子メール、文書、画像、音声、ビデオ、ウェブページ、アプリケーション、または、それらの組み合わせ等）に関連するイベントに関連付けられたメタデータは、例えば、同時に表示されたコンテンツを参照するときのコンテンツソース及びユーザコマンドを含む。コマンド及びコンテキストマーカに関連するメタデータは、例えば、面の種類、ページ番号、注釈ＩＤ、及び、デジタルファイル参照等、書き込み面１０５に関する情報を含む。
【００３９】
イベントは、「クラスタ」及び「スニペット」と本明細書で称する組織的マーカへの参照を含んでよい。クラスタは、ストロークの相対的タイミング、ストロークの相対的物理位置、ストロークに適用された手書き認識の結果等のコンテキストデータに基づいてグループ化された１つまたは複数のストロークのセットを含む。概して、各ストロークは、１つかつ１つのみのクラスタに関連付けられる。一実施形態においては、ストロークは、概して、クラスタと、単一の書き込まれた単語との間の１対１対応関係を生成することを意図された処理に従って、クラスタにグループ化される。実際には、グループ化は、必ずしも１対１でなくてよく、システムは、ストロークを単語に完全にグループ化せずに、本明細書に記載の機能を達成できる。ストロークをクラスタにグループ化する処理を、図５を参照して以下に詳しく記載する。図３のクラスタフィールド３３５は、クラスタ化処理の後、各ストロークがどのクラスタに関連付けられているかを識別するクラスタ識別子（例えば、Ｃ１、Ｃ２等）を記憶する。非ストロークイベントは、必ずしもクラスタに関連付けなくてよい。
【００４０】
スニペットは、１つまたは複数のイベントのセットを含み、ストロークと、コンテキストマーカ、音声、写真、ビデオ、コマンド等の他の種類のイベントとの両方を含んでよい。概して、単一のクラスタにグループ化されるストロークは、同じスニペットにグループ化されるが、スニペットは、他のクラスタも含んでよい。イベントは、概して、イベントの相対的タイミング、ストロークの相対的物理位置、ストロークに適用された手書き認識の結果等のコンテキストデータに基づいて、スニペットにグループ化される。一実施形態においては、書き込み面１０５と係合している間にスマートペン１１０によって捕捉された文、リスト項目、番号付けされた項目、または、スケッチされた絵等、まとまった思想（complete thought）に各スニペットが概して対応するように、イベントは、（本明細書で「スニペット化」と称する処理に従って）スニペットにグループ化される。概して、スニペットに相関付けされたイベントは、強い時間的相関性を有するが、例えば、空間的位置に基づいた強い相関性が存在するときなど、強い非時間的相関性が存在する場合、後のイベントは、前のスニペットに相関付けされてよい。さらに、イベントをスニペットにグループ化する自動処理は、本明細書に記載の機能を達成するために必ずしも完全である必要はない。イベントをスニペットにグループ化する処理を、図６を参照して以下にさらに詳しく記載する。図３のスニペットフィールド３４５は、「スニペット化」処理の後、各イベントがどのスニペットに関連付けられているかを識別するスニペット識別子（例えば、Ｓ１、Ｓ２等）を記憶する。どのスニペットにも必ずしも関連付けられないイベントもある。
【００４１】
一実施形態においては、クラスタ及び／またはスニペットに関連付けられた書き込みデータは、手書き認識または光学的文字認識を使用して、自動的に処理され、テキストに変換されてよい。認識されたテキストは、クラスタまたはスニペットで、ストロークデータ自体に代えて、または、それに追加して記憶されてよい。
【００４２】
図３では、記載を完全にするために、イベントの幾つかが、クラスタ及び／またはスニペットに割り当てられているとして示しているが、イベントを捕捉すると、クラスタフィールド３３５及びスニペットフィールド３４５に必ずしも挿入され（populate）ないことは理解されたい。むしろ、これらのフィールドは、後に挿入されてよい。例えば、クラスタ化処理及びスニペット化処理は、周期的に実行して、イベントをクラスタ及び／またはスニペットにグループ化してよい。あるいは、特定のクラスタまたはスニペットが完了するのを検出すると、イベントがグループ化されてよい。
【００４３】
図３に示すイベントの例が生じる特定の使用事例を、例示目的で記載する。７時１３分１７秒の後まもなく、ユーザは、スマートペン１１０で、単一のストロークで、プロジェクト名を書き込み面１０５に書き込む。このストロークは、第１のイベント３０１として記録される。システムは、ストロークが単一の単語に対応することを検出し、ストロークをクラスタＣ１及びスニペットＳ１に関連付ける。次に、ユーザは、書き込み面１０５上に表示された記号をスマートペン１１０でタップして、プロジェクトがタスク項目であることを示す。この動作は、イベント３０２、コンテキストマーカとして記録される。コンテキストは、イベント３０１のストロークと時間的に相関付けされているので、イベント３０２は、スニペットＳ１と相関付けられる。次に、ユーザは、新しい線上にプロジェクトの記述を書き込むことを開始し、イベント３０３を作成する。イベント３０３のストロークは、クラスタＣ１及びスニペットＳ１とも十分に相関付けされないので、新しいクラスタＣ２及び新しいスニペットＳ２に関連付けられる。次に、ユーザは、コンピュータデバイス１１５で音声の再生を開始する。イベント３０４が作成され、いつ音声ファイルが再生を開始したか、どの音声ファイルが再生されたか、及び、どこで音声ファイルの再生が開始されたかを示す。イベント３０４は、イベント３０３に時間的に近接しているので、スニペットＳ２に関連付けられる。ユーザは、すぐに、スマートペン１１０で、書き込み面１０５上の記号をタップした後、コンピュータデバイス１１５の再生音量が増加されるべきであることを示す。これは、コマンドイベント３０５を作成し、コマンドイベント３０５は、イベント３０３及び３０４と時間的に近接しているので、スニペットＳ２と相関付けられる。音声を聞いている間、ユーザは、コンピュータデバイス１１５で写真を撮り、これは、イベント３０６として記録される。イベント３０６の写真は、イベント３０５に時間的に近接しているので、スニペットＳ２に関連付けられる。最後に、ユーザは、プロジェクト名の誤りに気付き、スマートペン１１０で訂正して、イベント３０７を作成する。イベント３０７は、スニペットＳ１には相対的に時間的に近接していなにも関わらず、Ｃ１に空間的に近接しているので、クラスタＣ１及びスニペットＳ１に関連付けられる。各イベントを作成すると、関連するメタデータ３２５は、前述のように、対応するイベントと共に記憶される。発明の特定の実施形態は、クラスタフィールド３３５またはスニペットフィールド３４５を異なって割り当ててよい。本例は、クラスタ及びスニペットの概念を説明するための例である。
【００４４】
書き込みデータ及びコンテキストデータを構成するアーキテクチャ
図４は、スマートペンコンピュータシステム１００でイベントデータを構成するシステムを示すブロック図である。一実施形態においては、図示のアーキテクチャは、コンピュータデバイス１１５で実施できるが、他の実施形態においては、そのアーキテクチャは、スマートペン１１０、コンピュータデバイス１１５、クラウドサーバ１２５、または、それらの組み合わせで実施できる。図４のコンピュータデバイス１１５は、デバイスシンクロナイザモジュール４０５、イベントストア４１０、クラスタエンジン４１５、クラスタストア４２０、スニペットエンジン４２５、スニペットストア４３０、及び、スニペット表示モジュール４３５、を備え、全て、メモリ４５０（例えば、非一時的コンピュータ可読記憶媒体）に記憶される。操作において、様々なエンジン／モジュール（例えば、４０５、４１５、４２５、及び、４３５）は、プロセッサ４６０によって実行可能なコンピュータ実行可能プログラム命令として実施される。他の実施形態においては、図４の様々なコンポーネントは、特定用途向け集積回路（ＡＳＩＣ）上等の、ハードウェアで実施されてよい。
【００４５】
デバイスシンクロナイザ４０５は、ペンベースのコンピュータシステム１００の様々なコンポーネントから受信したデータを同期する。例えば、スマートペン１１０からの書き込みデータ、コマンド、及び、コンテキストマーカは、記録された音声、記録されたビデオ、写真、同時に参照されたウェブページ、デジタル文書、もしくは、他のコンテンツ、並びに、コンピュータデバイス１１５へのコマンドと同期される。追加のコンテキストデータは、クラウドサーバ１２５からアクセスされてよい。デバイスシンクロナイザ４０５は、データが収集されるときに連続的に、または、個別のバッチで、データを処理してよい。データが収集される間にスマートペン１１０及びコンピュータデバイス１１５がペアリングされないとき、デバイスシンクロナイザ４０５は、デバイスが再度ペアにされるとき、関連するコンテキストデータをスマートペン１１０からの書き込みデータと結合（merge）できる。デバイスシンクロナイザ４０５は、受信したデータを処理してイベントにし、イベントはイベントストア４１０に記憶される。一実施形態においては、イベントが捕捉された注釈同じ順で後に再生できるように、タイムスタンプ３１０を使用して、イベントストア４１０内でイベントを構成する。
【００４６】
イベントストア４１０は、デバイスシンクロナイザ４０５によって収集されたイベントを記憶する。一実施形態においては、イベントは、上記のように、タイムスタンプ３１０、イベントコンテンツ３１５、イベントメタデータ３２５、関連クラスタ３３５、及び、関連スニペット３４５等の様々なフィールドを含む。一実施形態においては、イベントストア４１０は、タイムスタンプによってイベントを指標付ける。代替実施形態は、タイムスタンプによって指標付けるのに代えて、または、それに加えて、クラスタまたはスニペットによってデータに指標付けてよい。イベントストア４１０は、クラスタエンジン４１５及びスニペットエンジン４２５への入力データのソースである。
【００４７】
クラスタエンジン４１５は、イベントストア４１０からストロークデータを含むイベントを取得し、それらを相関付けてクラスタにする。相関付けられたクラスタは、特定の時間的、及び／または、空間的関係を有する集約されたストロークに相当する。例えば、クラスタアルゴリズムは、必ずしもそうとは限らないが、各クラスタが、概して、スマートペン１１０のユーザによって書き込まれた別個の単語に相当するように、ストロークをクラスタ化してよい。場合によっては、ストロークの時間的近接性は、必ずしもストロークのクラスタ化に必要とされない。例えば、ストロークは、強い空間的相関性に単独で基づいてクラスタ化されてよい。クラスタエンジン４１５は、統合文字認識（ＩＣＲ）、光学的文字認識（ＯＣＲ）、または、手書き認識を捕捉されたストロークにも適用してよく、これらの処理の結果が、クラスタ化で使用されてよい。例えば、ストロークは、クラスタエンジン４１５が、これらのストロークを含む完全な単語を認識する時、クラスタ化されてよい。結果として生じるクラスタ化されたデータは、指標付けられたストローク、集約されたストロークを表す画像、ストロークのデジタル文字変換、または、それらの組み合わせとして出力されてよい。クラスタエンジン４１５からの出力は、クラスタストア４２０に記憶される。
【００４８】
クラスタストア４２０は、クラスタエンジン４１５から出力されたクラスタを受信する。一実施形態においては、クラスタは、関連するタイムスタンプ３１０によって指標付けられてよい。他の実施形態においては、クラスタは、タイムスタンプフィールド３１０による指標付けの代わりに、または、それに加えて、関連するスニペットによって指標付けられてよい。クラスタストア４２０に含まれる情報は、スニペットエンジン４２５への入力データのソースである。
【００４９】
スニペットエンジン４３０は、入力として、イベントストア４１０からイベントを取得し、クラスタストア４２０からクラスタを取得する。クラスタストアからのクラスタは、各クラスタに関連付けられた位置情報及び／または時間情報に従って相関付けられる。例えば、ユーザが、書き込み面１０５を横切って水平に書き込む場合、スニペットエンジンは、横列に配置されたクラスタを単一のスニペットにグループ化してよい。ユーザが垂直に書き込む場合、スニペットエンジン４３０は、縦列に配置されたクラスタを単一のスニペットにグループ化してよい。ユーザが描画をスケッチする場合、スニペットエンジンは、その描画の全てのストロークをスニペットにグループ化してよい。スニペットエンジン４２５は、ストロークのクラスタ以外のイベントをスニペットにグループ化してよい。例えば、関連するコンテキストデータに関連付けられたイベントは、ユーザが注釈を取っている間（while taking notes）の思考処理（thought process）を捕捉する方法で、関連するストロークイベントまたはクラスタと共にスニペットにグループ化されて、イベントを構成してよい。例えば、スニペットの途中または後で写真が撮られ、または記録が開始された場合、その写真または記録は、そのスニペットとリンクされる。ある実施形態においては、音声ファイルまたはビデオファイルが、スニペットの間に記録または再生されている場合、その音声ファイルまたはビデオファイルは、スニペットの時間に対応するファイルの時間位置に従って、スニペットにリンクされる。スニペットに関連付けられた時間は、最初のタイムスタンプフィールド３１０、最後に含まれたタイムスタンプフィールド３１０、最初と最後に含まれたタイムスタンプフィールド３１０の平均、または、含まれたタイムスタンプフィールド３１０の全ての平均を含む。スニペットエンジン４２５の出力は、含まれた全てのイベント、ストローク、及び、クラスタに対する参照を含むことができる。ある実施形態においては、スニペットエンジン４２５の出力は、含まれた全てのクラスタの文字表現、または、全てのクラスタ及び他のコンテンツの画像（写真、ビデオのプレビューフレーム、または、ウェブページ）を、スニペットに含めてよい。
【００５０】
スニペット表示モジュール４３５は、スニペット情報をユーザに表示する命令を含む。一実施形態においては、スニペットに関連付けられた全てのイベントは、共に表示される。一実施形態においては、連続したスニペットは、時間順に表示される。一実施形態においては、スニペット表示モジュール４３５は、ペンベースのコンピュータシステム１００の複数のデバイスによって収集及び記憶されたスニペットを結合する。代替実施形態においては、スニペットは、スニペット内のストロークの（書き込み面１０５上の）位置に基づく順序で、スニペットが収集された地理空間位置に基づく順序で、または、スニペットを収集したスマートペン１１０に基づく順序で表示されてよい。
【００５１】
本明細書に記載のアーキテクチャは、同じデバイスで全て実施される必要はない。ある実施形態においては、データは、ペンベースのコンピュータシステム１００で、複数のデバイスにわたって操作または記憶されてよい。データを操作または記憶する一部の要素は、複数のデバイスで実施または複製してよい。代替実施形態においては、スマートペンは、デバイス同期４０５を実行し、イベントストア４１０及びクラスタストア４２０を含み、または、クラスタエンジン４１５を実施する。イベント情報及びクラスタ情報は、ネットワーク１２０上でコンピュータデバイス１１５に送信され、コンピュータデバイス１１５は、スニペットエンジン４２５を実施し、スニペットストア４３０を含む。代替実施形態においては、イベントストア４１０からのスマートペン１１０及びコンピュータデバイス１１５に関する全ての情報をクラウドサーバ１２５上の別のイベントストア４１０で複製する。当業者は、図４のアーキテクチャの複数の変形を着想することができる。
【００５２】
ストロークデータのクラスタ及びスニペットへの構成
図５は、クラスタエンジン４１５によって実行されるストロークデータをクラスタに変換する処理の例を示すフロー図である。クラスタエンジン４１５は、イベントストア４１０からストロークを受信する（４０５）。クラスタエンジン４１５は、前述のように、時間情報、空間情報、及び／または、コンテキストデータに基づいてストロークをグループ化することによって、ストロークを相関付ける（５１０）。クラスタエンジン４１５は、各クラスタをチェックする（５１５）。例えば、クラスタエンジン４１５は、手書き認識を使用して、クラスタ内のストロークが理解可能な（intelligible）文字に相当するか否かをチェックしてよい。ある実施形態においては、出力チェックステップは、個々の文字がデータベースの単語を形成するか否かをチェックしてよい。ストロークのグループ化が不満足な場合、不満足なストロークのグループは、別のグループ化のためにストローク相関ステップ５１０に戻されてよい。ある実施形態においては、ストロークのグループ化がストローク相関付け５１０と出力チェック５１５の間を通る回数を制限してよい。制限に達すると、ストロークの元のグループが維持されてよく、または、最も認識された文字をもたらしたグループが選択されてよい。出力チェックステップ５１５は、スケッチされた画像に対応するストローク等、いずれの文字も認識しなくてよい。ストロークのグループ化がチェックされた（５１５）後、ストロークのグループは、クラスタストア４２０にクラスタとして記憶される（５２０）。
【００５３】
図６は、スニペットエンジン４２５によって実行されるクラスタまたは他のイベントをスニペットに変換する例示的な処理を示すフロー図である。スニペットエンジン４２５は、クラスタストア４２０からクラスタを受信する（６０５）。スニペットエンジン４２５は、時間的近接性、空間的近接性、及び／または、他のコンテキストデータに基づいて、クラスタを相関付けてスニペットにする（６１０）。一実施形態においては、例えば、単語を表すクラスタは、書き込まれた文、リスト項目、番号付けされた項目、または、スケッチされた描画等、まとまった思考を表すスニペットに相関付けされる。ある実施形態においては、統計的推論または構文解析を伴う自然言語処理アルゴリズムを使用してスニペットへの単語の関連性の尤度を評価してよい。代替実施形態においては、黒丸、番号、または、終止符等の重要な文字の認識を使用して、スニペットの境界を決定してよい。
【００５４】
クラスタが相関付けされた（６１０）後、スニペットは、コンテキストマーカ、コマンド、写真、位置情報、音声／ビデオ記録、並びに、同時に参照されたウェブページ、電子メール、及び、文書等のコンテキストデータにリンクされる（６１５）。例えば、一実施形態においては、非ストロークイベントが、イベントストア４１０から読み出され、時間的近接性、空間的近接性、及び／または、ユーザ相互作用に従って、スニペットにリンクされる。例えば、ユーザは、画像がテキストに関連付けられ、よって同じスニペットの一部として含まれるべきことを示してよい。ある実施形態においては、タイトル、記述、または、関連付けタグ等、コンテキストコンテンツに関するメタデータは、スニペット内の単語と相関付けられて、コンテキストコンテンツをスニペットに関連付けてよい。次に、スニペット内の関連付けられたクラスタ及びイベントは、スニペットストア４３０に記憶される（６２０）。次に、スニペットエンジン４２５は、コンピュータデバイス（例えば、コンピュータデバイス１１５）のディスプレイに、スニペットを表示してよい（６２５）。ユーザは、自動化されたスニペットのグループ化のいずれかに同意しない場合、ユーザは、手動でスニペットを分解、または、スニペットを結合することができる。次に、スニペットエンジンは、ユーザから訂正を受信する（６３０）。これらの訂正されたスニペットは、スニペットストア４３０に記憶される（６２０）。
【００５５】
ユーザが、書き込み面１０５をページの初めから終わりに書き込む場合、位置データ及び時間データは、相関するので、時間的近接性または空間的近接性のいずれか１つのみに基づいたクラスタ化で十分となることがある。しかしながら、ユーザが、書き込み面１０５の周辺をスキップして、前に書き込んだテキストに訂正及び追加を行うとき、位置データ及び時間データは相関しないことがある。ある実施形態においては、近接したストロークよりも後に受信されたストロークは、当該後のストロークが空間的に、近接したストロークの少なくとも１つと交差し、または、近接したストロークの少なくとも１つから所定の距離内にある場合、近接したストロークとクラスタ化されてよい。ある実施形態においては、後のストロークは、前のストロークと後のストロークが一緒にクラスタ化される限り、前のストロークと同じスニペットにグループ化されてよい。後のストロークが、前の近接したストロークに空間的に交差しないとき、後のストロークは、前のストロークとは別のクラスタに相関付けされてよい。他の近くのストロークとは別のクラスタに相関付けられるストロークは、時間的相関性の欠如に基づいて、当該近くのストロークとは別のスニペットにグループ化されてよい。ユーザは、２つ以上の別個の記録セッションで、書き込み面１０５のページに書き込んでよい。ある実施形態においては、書き込み面１０５の同じページ上の任意のストロークは、記録セッションに関わらず、クラスタ化及びスニペット化に対して考慮される。代替実施形態においては、ユーザは、同じページ上の書き込みを、位置または記録セッションに基づいて別個にクラスタ及びスニペットのための処理をするように指定してよい。
【００５６】
捕捉されたコンテンツの再生
スマートペンのコンピューティングセッションの間に捕捉されたイベントは、同期して再生することができる。例えば、捕捉されたストロークデータは、コンピュータデバイス１１５のディスプレイで、例えば、捕捉されたストロークの「映画」として再生されてよい。同時に捕捉された音声または他の捕捉されたイベントは、データ間の相対的タイムスタンプに基づいて、同期して再生されてよい。例えば、捕捉された音声は、ストロークデータと同期して再生され、異なるストロークを書き込むときにユーザが聞いていたことを示すことができる。さらに、捕捉されたデジタルコンテンツは、「映画」として再生されて、ユーザが書き込みしている間に起こったコンピュータデバイス１１５の状態間の推移を示してよい。例えば、コンピュータデバイス１１５は、ユーザが異なるストロークを書き込むときに、どのウェブページ、文書、または、文書の部分を見ていたかを示すことができる。
【００５７】
別の実施形態においては、ユーザは、次に、記録されたデータと様々な異なる方法で相互作用することができる。例えば、一実施形態においては、ユーザは、前に捕捉されたストロークに対応する書き込み面１０５上の特定の位置と相互作用（例えば、タップ）できる。次に、そのストロークイベントと関連付けられたタイムスタンプを決定でき、再生セッションをその時間位置から開始できる。
【００５８】
捕捉したイベントを関連するコンテンツのスニペットにグループ化することによって、ユーザは、スマートペンのコンピューティングセッションの間に捕捉したデータを検討する際により柔軟性を与えられる。例えば、一実施形態においては、各スニペットは、その認識されたテキストに従って表示されてよく、表示画面上で、ペーパーストリップと呼ばれる線に構成されてよい。対応するストロークデータがページ上で完全に異なって構成されている場合でさえ、ユーザは、スニペットが連続して現れるように、スニペットを含むペーパーストリップを、スニペットタイムスタンプに基づいて並べ替えることができる。あるいは、スニペットを含むペーパーストリップは、タグまたは他のユーザ定義の検索基準に基づいて構成できる。命令またはコンテキストマーカがスニペットに関連付けられる場合、命令またはコンテキストマーカに対応するアイコンは、そのスニペットのテキストと同じペーパーストリップに表示されてよい。コマンドまたはコンテキストマーカに対応するアイコンを選択して、ユーザに追加の情報を促してよい。例えば、タスクコンテキストマーカに関連付けられたアイコンを選択することによって、検討アプリケーション及び／または外部のアプリケーション内で使用するために関連するスニペットからタスク項目を作成するようにユーザに促してよい。別の例として、タグコンテキストマーカに関連付けられたアイコンを選択することによって、関連するスニペットを記述及び／または分類するテキストを入力するようにユーザに促してよい。
【００５９】
写真が書き込みデータのスニペットに関連付けられる場合、写真の小さいサムネイルバージョンが、スニペットの残りと同じ水平の線上に表示されてよい。写真をどの他のスニペットとも関連付けない場合、サムネイルより大きい写真のバージョンが、別個のペーパーストリップに表示されてよい。地理空間位置またはカレンダイベントがスニペットに関連付けられる場合、位置またはカレンダイベントに対応するアイコンが、関連するスニペットと同じペーパーストリップに表示されてよく、このアイコンの選択によって、地図上の位置または対応するカレンダのエントリの表示にユーザをリンクしてよい。
【００６０】
音声及び／またはビデオの記録がスニペットに関連付けられる場合、スニペットの選択によって、そのスニペットの書き込みデータと時間的に相関している音声及び／またはビデオの抜粋を再生してよい。一実施形態においては、スニペットの選択によって、スニペットの開始に対応する時点で開始する再生を開始するように、連続再生を有効にしてよい。連続再生は、記録の最後まで継続してよい。ある実施形態においては、どのスニペットが音声／ビデオ再生の現在位置と時間的に相関しているかを視覚信号によって示してよい。ウェブページ、電子メール、または、文書がスニペットに関連付けられる場合、スニペットの選択によって、関連するウェブページ、電子メール、または、文書にアクセスしてよい。
【００６１】
ある実施形態においては、ユーザは、他のデジタルコンテンツの参照に基づいて、注釈（notes）を再生できる。例えば、ユーザが、書き込み面１０５上で注釈を取っている間に、コンピュータデバイス１１５上でデジタル映画を見ることを想定する。後に、ユーザは、デジタル映画を再生し、映画を見ている間に、ユーザの注釈が再生されるのを見ることができる。ユーザは、注釈が書き込み面１０５に現れて、注釈の再生を見ることができる。または、ユーザは、どのペーパーストリップが音声／視覚再生の現在位置に対応するかを視覚的に示すペーパーストリップレイアウトで、注釈の再生を見ることができる。別の例として、ユーザは、書き込み面１０５に注釈を取っている間に、コンピュータデバイス１１５でウェブページ、電子メール、または、文書を見たと想定する。ユーザは、後に、取った注釈を同時に見ながら、ウェブページ、電子メール、または、文書を検討する場合がある。ユーザがウェブページ、電子メール、または、文書を見た期間のタイムスタンプを有するスニペット及びペーパーストリップは、強調表示されてよい、または、時間的相関性の他の視覚的インジケーションを含んでよい。 
【００６２】
コンテンツのタグ付け
図７は、一実施形態における例示的な書き込み面１０５を示す。書き込み面１０５は、記録制御７２０、タグ付け制御７３０、カスタム制御７６０、及びスニペット７７０を含む。記録制御７２０を使用して、動作を開始または停止してよい。記録制御７２０と関連付けられた動作は、スマートペン１１０を使用して、記録制御７２０の上で行われるジェスチャに応答して、開始または停止されてよい。例えば、図７において、記録制御７２０は、記録ボタン、一時停止ボタン、及び、停止ボタンを含む。記録ボタンは、スマートペン１１０またはコンピュータデバイス１１５からの書き込みジェスチャ、音声データ、または、他のデジタルデータの捕捉を開始してよい。一時停止ボタンを使用して、書き込みジェスチャ、音声、または、他のデジタルデータの捕捉を一時停止してよく、停止ボタンを使用して、書き込みジェスチャ、音声、または、他のデジタルデータの捕捉を停止してよい。
【００６３】
カスタム制御７６０（または、「ショートカット」ボタン）を使用して、ユーザ定義の動作を実行してよい。例えば、ユーザは、コンピュータデバイス１１５のインタフェースを使用して、動作をカスタム制御７６０に関連付けてよい。例えば、ユーザが制御７６０と相互作用（例えば、上でタップまたはジェスチャ）する前または後に書いた手書きジェスチャの記録に基づいて、カスタム制御７６０を使用してリマインダまたは「ｔｏ  ｄｏ」項目を作成してよい。さらに、カスタム制御は、電子メールを介して記録されたジェスチャを送信、または、スマートペン１１０に接続されたコンピュータデバイス１１５でアプリケーションを起動するために使用してよい。ある実施形態においては、動作は、ジェスチャをスマートペン１１０で記録しながら、リアルタイムで実行される。他の実施形態においては、動作は、スマートペン１１０がコンピュータデバイス１１５に接続された時に実行される。
【００６４】
ある実施形態においては、カスタム制御７６０は、他の制御と共に使用されてよい。例えば、カスタム制御は、記録制御７２０と共に使用されてよい。ユーザは、記録制御７２０の記録ボタンでジェスチャを書き込んでよく、次に、カスタム制御７６０の１つと相互作用（例えば、タップ）して、何の記録を開始すべきか識別してよい。例えば、ユーザは、カスタム制御７６０Ａを選択して、手書きジェスチャの記録を開始してよく、カスタム制御７６０Ｂを選択して、音声の記録を開始してよく、カスタム制御７６０Ｃを選択して、ビデオの録画を開始してよい。
【００６５】
タグ付け制御７３０を使用して、スマートペン１１０で捕捉された１つまたは複数のジェスチャにコンテキストマーカを割り当てる。ある実施形態においては、コンテキストマーカは、１つまたは複数のスニペットに割り当てられる。図７の例示的な書き込み面は、重要タグ７３０Ａ，追跡タグ７３０Ｂ、及び、カスタムタグ７３０Ｃの３つの異なるタグ付け制御７３０を備える。書き込み面１０５の実施形態は、追加またはより少ないタグ付け制御７３０を含んでよい。
【００６６】
重要タグ７３０Ａを使用して、特に重要である特定のスニペットにマーク付けしてよい。重要タグ７３０Ａは、また、カスタム制御７６０と共に使用して、異なる重要レベルを異なるスニペットに割り当ててよい。例えば、重要タグ７３０Ａは、カスタム制御７６０Ａと共に使用して、スニペットに高い重要度を割り当て、カスタム制御７６０Ｂと共に使用して、スニペットに中程度の重要度を割り当て、カスタム制御７６０Ｃと共に使用して、スニペットに低い重要度を割り当ててよい。
【００６７】
追跡タグ７３０Ｂを使用して、ユーザが追跡動作のために指定することを要求するスニペットにタグ付けしてよい。例えば、ユーザは、スニペット「電子メールプロジェクトマネージャ」と書き込んで、追跡タグ７３０Ｂをスニペットにタグ付けしてよい。そうすると、ユーザは、追跡タグがタグ付けされたスニペットを読み出して、追跡動作が必要な項目の全てのリストを取得してよい。追跡タグはまた、カスタム制御７６０と共に使用されてよい。例えば、カスタム制御７６０を使用して、追跡動作に重要度を割り当てて、追跡動作を種類または期限（due date）によってグループ化してよい。
【００６８】
ある実施形態においては、コンピュータデバイス１１５またはスマートペン１１０は、追跡タグ７３０Ｂがタグ付けされたスニペットから自動で情報を抽出してよい。例えば、期限、作成日、及び、他の情報等の追跡動作の詳細は、スニペットから抽出されてよい。例えば、スマートペン１１０のユーザは、「金曜日までにＡｙｙａｐｐａにレポートの最終稿を送る」というスニペットを書き込んで、そのスニペットを追跡タグ７３０Ｂに関連付けてよい。ペンベースのコンピュータシステムは、動作は「最終稿を送る」、受信者は「Ａｙｙａｐｐａ」、及び、締切日は「金曜日」であることを識別してよい。さらに、コンピュータデバイス１１５は、抽出した情報に基づいて、リマインダを作成、または、タスクをカレンダアプリケーションに追加してよい。
【００６９】
ある実施形態においては、コンピュータデバイス１１５は、ユーザが必ずしも手動でスニペットにタグ付けすることなく、スニペットのコンテンツによって、スニペットに追跡動作に対してタグ付けされるべきであることを自動で識別してよい。例えば、ユーザがスニペット「午後５時にＣｈｒｉｓｔｉｎｅに電話」と書き込む場合、コンピュータデバイス１１５は、そのスニペットは追跡動作としてタグ付けされるべきであると判定してよく、ユーザがスニペットを追跡タグに手動で関連付けなかった場合でも、スニペットを追跡タグに関連付けてよい。ある実施形態においては、コンピュータデバイス１１５は、候補スニペットが識別されたことをユーザに示すメッセージを表示してよい。さらに、コンピュータデバイスは、動作のリマインダを生成してよい。
【００７０】
カスタムタグ７３０Ｃを使用して、ユーザ定義のタグをスニペットにタグ付けしてよい。カスタムタグ７３０Ｃは、カスタム制御７６０と共に使用されて、異なる選択可能なタグ間で選択してよい。ある実施形態においては、ユーザ定義のタグは、コンピュータデバイス１１５を使用して定義される。
【００７１】
一例においては、ユーザは、書き込み面１０５にスマートペンを使用してスニペットを書き込み、タグ付け制御７３０を選択する。この実施形態においては、タグは、最後に書き込まれたスニペットに関連付けられる。例えば、ユーザは、書き込み面１０５にスニペット７７０Ａを書き込んでよく、重要タグ７３０Ａを選択してよい。次に、スニペット７７０Ａは、重要タグ７３０Ａに関連付けられる。ある実施形態においては、タグ付け制御７３０を最初に選択して、次に、スニペット７７０を書き込み面１０５に書き込む。他の実施形態においては、ユーザは、スニペットの近くにジェスチャを書き込む（例えば、スニペットを丸で囲む、スニペットをタップする、スニペットの近くに星を描く等）ことによって、スニペットを選択してよく、次に、タグ付け制御を選択して、選択したスニペット７７０を選択したタグに関連付けてよい。
【００７２】
他の実施形態においては、書き込み面１０５上の制御を使用せずに、コンピュータデバイス１１５を使用して、タグをスニペットに割り当ててよい。例えば、スニペットを書き込んで、そのスニペットを選択したタグに関連付ける前または後に、コンピュータデバイス１１５上のボタンを押下してよい。他の実施形態においては、ジェスチャの捕捉を停止した後（例えば、記録制御７２０の停止ボタンを押した後）、タグを割り当ててよい。
【００７３】
一実施形態においては、タグは、スニペットが識別されると、ほぼリアルタイムでスニペットに関連付けられる。例えば、ユーザがタグ７３０を選択すると、そのタグは、最後に識別されたスニペットに関連付けられる。他の実施形態においては、タグの選択は、イベントとして記録されるが、スニペットとタグの関連付けは、必ずしもすぐには実行されず、現在の捕捉セッションの間にも実行されない。例えば、一実施形態においては、ジェスチャの捕捉が停止した後、捕捉したジェスチャは分析され、タグは、タグを選択するジェスチャが記録されたタイムスタンプに基づいて、スニペットに関連付けられる。
【００７４】
一実施形態においては、制御を選択して、既存のスニペットを新しいタグに関連付けてよい。例えば、ユーザは、既存のスニペットを、コンピュータデバイス１１５または書き込み面１０５上で当該スニペットを選択することによって（例えば、スニペットが書かれた書き込み面をタップすることによって）選択してよく、そのスニペットに関連付けるタグを識別してよい。
【００７５】
図８Ａは、一実施形態によるスニペットにタグ付けする処理を示すフロー図である。ジェスチャが受信される（８０５）。ジェスチャは、手書き、及び制御ボタンの選択を含む。１つまたは複数のスニペットは、上記のように受信したジェスチャから識別される（８１０）。ある実施形態においては、スニペットの識別は、リアルタイムで行われる。他の実施形態においては、スニペットの識別は、記録停止後に行われる。スニペットにタグ付けする要求が受信される（８１５）。スニペットのタグ付け要求は、例えば、ユーザがタグ付け制御７３０と相互作用することによって、スニペットの近くにコマンドを描くことによって（例えば、星またはタグの記号を描くことによって）、コンピュータデバイス１１５にコマンドを入力することによって、または、スニペットのコンテンツに基づいて自動的に、取得されてよい。要求に含まれたタグの関連付けは、スニペットと共に記憶される（８２０）。ある実施形態においては、関連付けは、スニペットストア４３０にメタデータとして記憶される。他の実施形態においては、追加の記憶モジュール（図示せず）を使用してタグとスニペット間の関連付けを記憶してよい。
【００７６】
タグをスニペットに割り当てた後、ユーザは、ある一定のタグに関連付けられたスニペットに対して、読み出し、または、他の操作をすることができる。例えば、ユーザは、会議の間、または、数日もしくは数週間にわたって、どの追跡動作が割り当てられているか、知りたい場合がある。そうすると、ユーザは、追跡タグ７３０Ｂがタグ付けされたスニペットの表示を選択してよい。同様に、ユーザは、重要タグ７３０Ａがタグ付けされたスニペットを全て表示することを選択してよい。ある実施形態においては、スニペットは、デジタル文書の一部として表示されてよい。ユーザは、スニペットに関連付けられたタグに基づいて、制御を選択してスニペットの色を変更してよい。例えば、ユーザは、重要タグ７３０Ａに関連付けられたスニペットの色を赤に変更する選択をしてよく、追跡タグ７３０Ｂに関連付けられたスニペットの色を青に変更する等の選択をしてよい。他の実施形態においては、他の動作は、スニペット７７０に関連付けられたタグに基づいて実行されてよい。
【００７７】
図８Ｂは、タグに関連付けられたスニペットを読み出すフロー図を示す。スニペットは、コンピュータデバイス１１５によって受信される（８５５）。タグに関連付けられたスニペットを表示する要求が受信される（８６０）。要求によってタグに関連付けられたスニペットがコンピュータシステムによって表示される（８６５）。例えば、重要タグ７３０Ａに関連付けられたスニペットを表示する要求が受信され（８６０）、コンピュータデバイス１１５によって表示される（８６５）。タグに関連付けられたスニペットを表示する要求を受信後、タグに関連付けられていないスニペットは、色を薄くしてよく、及び／または、タグに関連付けられたスニペットは、強調表示してよい。
【００７８】
他の実施形態においては、タグを使用して他の方法でスニペットを構成してよい。例えば、スニペットは、タグに基づいて並べ替えることができる。別の実施形態においては、特定の選択したタグに関連付けられたスニペットに対して動作を実行してよい。例えば、ユーザは、ユーザ定義のタグに関連付けられた全てのスニペットを削除またはアーカイブに保管する選択をしてよい。別の例においては、ユーザは、コントロールを選択して重要とマーク付けされた全てのタグを自動的に電子メールにコピーしてよい。
【００７９】
ユーザ定義のタグの場合、タグ付けされたスニペットは、ユーザ定義ボタンの属性が後に変化した場合でも、適用されたタグを保持してよい。例えば、ユーザは、カスタムタグを割り当てて、「カテゴリＡ」項目を表し、次に、これらのタグをスニペットにタグ付けする。ユーザは、次に、カスタムタグを再割り当てして、「カテゴリＸ」項目を表し、新しいスニペットにこれらのタグをタグ付けする。最初に「カテゴリＡ」としてタグ付けされたスニペットは、それらのタグをタグ付けするのに使用されたボタンに関連付けられたタグが変わったとしても、これらのタグを保持する。別の実施形態においては、バッチタグの変更を適用して、特定のタグに関連付けられた全てのスニペットを異なるタグに再割り当てできる。
【００８０】
追加の考慮事項及び実施形態
実施形態に関するここまでの記載は、例証の目的のみであって、包括的なものではなく、発明を開示したその具体的な形態に限定するものではない。上記開示を考慮して多くの修正及び変更が可能なことを当業者は理解されよう。
【００８１】
この記載の一部は、情報に対する操作をアルゴリズム及び記号で表して実施形態を記載している。これらのアルゴリズムの記載及び表現は、データ処理技術分野の当業者が自分の仕事の内容を他の当業者に伝えるために一般的に使用されている。機能的、コンピュータ的、または、論理的に記載されている、これらの操作は、コンピュータプログラム、または、同等の電子回路、マイクロコード等で実施されることが理解される。さらに、これらの操作の構成をモジュールとして言及すると、一般性を失うことなく、時には、便利であることも分かった。前述の操作及びそれに関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア、または、それらの任意の組み合わせで実現されてよい。
【００８２】
本明細書に記載のステップ、操作、及び、処理はいずれも、１つまたは複数のハードウェアもしくはソフトウェアモジュール単体で、または、他のデバイスと組み合わせて、行ってもよく、実施してもよい。一実施形態においては、ソフトウェアモジュールは、コンピュータプログラム命令を含む非一時的コンピュータ可読媒体を含むコンピュータプログラム製品で実施され、コンピュータプログラム命令は、記載したステップ、操作、または処理のいずれかまたは全てを実行するために、コンピュータプロセッサによって実行できる。
【００８３】
実施形態は、本明細書の操作を行うデバイスにも関してよい。このデバイスは、必要な目的のために特別に構築されてよい、及び／または、コンピュータに記憶されたコンピュータプログラムによって選択的に起動または再構成された汎用コンピュータデバイスを含んでよい。このようなコンピュータプログラムは、有形のコンピュータ可読記憶媒体に記憶されてよく、有形のコンピュータ可読記憶媒体は、電子命令を記憶するのに適しており、かつ、コンピュータシステムバスに接続された任意の種類の有形媒体を含む。さらに、明細書で言及された任意のコンピュータシステムは、単一のプロセッサを備えてよく、または、コンピューティング能力を向上させるために複数のプロセッサを有する設計を備えたアーキテクチャであってもよい。
【００８４】
最後に、明細書で使用した言葉は、読みやすさ及び説明的な目的で主に選択している、よって、発明の内容を画定または制限するために選択していない。従って、発明の範囲は、この詳細な説明によって限定されず、この詳細な説明に基づいた出願書で発行する請求項によって限定される。よって、本発明の実施形態の開示は、例証目的であり、発明の範囲を限定していない。発明の範囲は請求項で規定される。
【図１】
2017501468.tif 000003
【図２】
2017501468.tif 000004
【図３】
2017501468.tif 000005
【図４】
2017501468.tif 000006
【図５】
2017501468.tif 000007
【図６】
2017501468.tif 000008
【図７】
2017501468.tif 000009
【図８Ａ】
2017501468.tif 000010
【図８Ｂ】
2017501468.tif 000011
【国際調査報告】
2017501468.tif 000012