(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】2017527879
(43)【公表日】20170921
(54)【発明の名称】向上したドキュメント生産性のためのエンティティ認識
(51)【国際特許分類】
   G06F 17/24 20060101AFI20170825BHJP
   G06F 3/0482 20130101ALI20170825BHJP
【FI】
   !G06F17/24
   !G06F3/0482
【審査請求】未請求
【予備審査請求】有
【全頁数】28
(21)【出願番号】2016575421
(86)(22)【出願日】20150714
(85)【翻訳文提出日】20170123
(86)【国際出願番号】US2015040237
(87)【国際公開番号】WO2016010939
(87)【国際公開日】20160121
(31)【優先権主張番号】14/335,860
(32)【優先日】20140718
(33)【優先権主張国】US
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KN,KP,KR,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US
(71)【出願人】
【識別番号】314015767
【氏名又は名称】マイクロソフト テクノロジー ライセンシング,エルエルシー
【住所又は居所】アメリカ合衆国 ワシントン州 98052 レッドモンド ワン マイクロソフト ウェイ
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(74)【代理人】
【識別番号】100176072
【弁理士】
【氏名又は名称】小林 功
(72)【発明者】
【氏名】ウェルトン,ニコラス,ディー.
【住所又は居所】アメリカ合衆国,ワシントン州 98052−6399,レッドモンド,ワン マイクロソフト ウェイ,マイクロソフト テクノロジー ライセンシング,エルエルシー内,エルシーエー − インターナショナル パテンツ (8/1172)
(72)【発明者】
【氏名】ランプソン,ベンジャミン,イー.
【住所又は居所】アメリカ合衆国,ワシントン州 98052−6399,レッドモンド,ワン マイクロソフト ウェイ,マイクロソフト テクノロジー ライセンシング,エルエルシー内,エルシーエー − インターナショナル パテンツ (8/1172)
(72)【発明者】
【氏名】アデルソン,スティーブン,ジェイ.
【住所又は居所】アメリカ合衆国,ワシントン州 98052−6399,レッドモンド,ワン マイクロソフト ウェイ,マイクロソフト テクノロジー ライセンシング,エルエルシー内,エルシーエー − インターナショナル パテンツ (8/1172)
【テーマコード(参考)】
5B109
5E555
【Fターム(参考)】
5B109PB05
5B109RB32
5B109VC01
5E555AA22
5E555AA59
5E555BA02
5E555BA63
5E555BB02
5E555BC17
5E555BC19
5E555CB08
5E555CB42
5E555CB44
5E555CC05
5E555DB16
5E555DB33
5E555DB41
5E555DB58
5E555DC14
5E555DC61
5E555DD07
5E555EA07
5E555FA00
(57)【要約】
本明細書においては、ドキュメント生産性を向上させるためのシステム、方法、およびソフトウェアが開示される。1つの実装形態においては、ドキュメントの中の様々なエントリを検証して、ドキュメントの外部にある様々な追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別する。追加のエンティティの少なくとも1つのサブセットが、識別されて、ドキュメントに含める可能性のために、ユーザインターフェースに表示され得る。追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティが、エントリに関連してドキュメントに含められる。
【特許請求の範囲】
【請求項1】
ドキュメント生産性を向上させるようにアプリケーションサービスを動作させる方法であって、
前記アプリケーションサービスによってホストされるドキュメント内の複数のエントリを検証して、前記ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別することと、
前記ドキュメントに含める可能性のために、前記アプリケーションサービスへのユーザインターフェースに表示する前記複数の追加のエンティティの少なくとも1つのサブセットを識別することと、
前記ユーザインターフェースを介して受け取った前記複数の追加のエンティティの前記サブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、前記エントリに関連して前記ドキュメントに前記追加のエンティティの前記サブセットのうちの少なくとも前記1つの追加のエンティティを含めることと
を含む、方法。
【請求項2】
前記ドキュメントの外部にある前記複数の追加のエンティティのうちの少なくとも1つの後続の追加のエンティティに関係している可能性がある、後続のエンティティとして認識できる後続のエントリを識別することに応答して、前記エンティティと、前記複数の追加のエンティティの前記サブセットのうちの前記少なくとも1つの追加のエンティティとに関して確立された関連性のパターンに少なくとも一部基づいて、前記複数の追加のエンティティのうちの前記後続の追加のエンティティを識別することと、
前記後続のエントリに関連して前記ドキュメントに前記追加のエンティティの前記サブセットのうちの少なくとも前記後続の追加のエンティティを含めることと
をさらに含み、
前記ドキュメントが、スプレッドシートを含み、前記エントリが、行と列との対によって画定される前記スプレッドシートの中のセルに書き入れられるテキストを含み、前記後続のエントリが、後続の行と列との対によって画定される前記スプレッドシートの中の後続のセルに書き入れられる後続のテキストを含む、
請求項1に記載の方法。
【請求項3】
前記ドキュメントの上にレンダリングされる、前記ユーザインターフェースの中のカード内に前記複数の追加のエンティティを表示することと、前記カードを介して、前記複数の追加のエンティティの前記サブセットのうちの少なくとも前記1つの追加のエンティティの前記選択を受け取ることとをさらに含み、前記選択が、前記複数の追加のエンティティの前記サブセットのうちの少なくとも前記1つの追加のエンティティを前記カードから前記ドキュメントにドラッグするドラッグ動作を含む、請求項1に記載の方法。
【請求項4】
前記エントリが前記エンティティとして認識されたという指示を前記ユーザインターフェースに表示することをさらに含み、前記指示が、前記エントリを前記エンティティとして識別することに関連する信頼性のレベルを表す信頼性インジケータを含む、請求項1に記載の方法。
【請求項5】
前記複数の追加のエンティティが、連絡先データベースおよびウェブサイトのうちの少なくとも1つを含む、前記ドキュメントの外部にあるソースに存在する、請求項1に記載の方法。
【請求項6】
ドキュメント生産性を向上させるためのプログラム命令を記憶した1つまたは複数のコンピュータ可読ストレージ媒体であって、前記プログラム命令が、処理システムによって実行されるとき、前記処理システムに、
ドキュメント内の複数のエントリを検証して、前記ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別することと、
前記エントリが認識されたという指示をユーザインターフェースに表示すること、
前記指示に関して行われる前記ユーザインターフェースとの対話に応答して、前記複数の追加のエンティティの少なくとも1つのサブセットを識別し、前記ドキュメントに含める可能性のために、前記ユーザインターフェースに表示することと、
前記ユーザインターフェースを介して受け取った前記複数の追加のエンティティの前記サブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、前記エントリに関連して前記ドキュメントに前記追加のエンティティの前記サブセットのうちの少なくとも前記1つの追加のエンティティを含めることと
を少なくとも行うように指図する、
コンピュータ可読ストレージ媒体。
【請求項7】
前記プログラム命令が、前記処理システムに、前記ドキュメントの外部にある前記複数の追加のエンティティのうちの少なくとも1つの後続の追加のエンティティに関係している可能性がある、後続のエンティティとして認識できる後続のエントリを識別することに応答して、前記エンティティと、前記複数の追加のエンティティの前記サブセットのうちの前記少なくとも1つの追加のエンティティとに関して確立された関連性のパターンに少なくとも一部基づいて、前記複数の追加のエンティティのうちの前記後続の追加のエンティティを識別することと、前記後続のエントリに関連して前記ドキュメントに前記追加のエンティティの前記サブセットのうちの少なくとも前記後続の追加のエンティティを含めることとを行うようにさらに指図する、請求項6に記載のコンピュータ可読ストレージ媒体。
【請求項8】
前記ドキュメントが、スプレッドシートを含み、前記エントリが、行と列との対によって画定される前記スプレッドシートの中のセルに書き入れられるテキストを含み、前記後続のエントリが、後続の行と列との対によって画定される前記スプレッドシートの中の後続のセルに書き入れられる後続のテキストを含む、請求項7に記載のコンピュータ可読ストレージ媒体。
【請求項9】
前記プログラム命令が、前記処理システムに、カードが前記ドキュメントの上に視覚的にレンダリングされるような方式で、前記ユーザインターフェースの中の前記カード内に前記複数の追加のエンティティを表示することと、前記カードを介して前記複数の追加のエンティティの前記サブセットのうちの少なくとも前記1つの追加のエンティティの前記選択を受け取ることとを行うように指図する、請求項8に記載のコンピュータ可読ストレージ媒体。
【請求項10】
前記指示が、前記エントリを前記エンティティとして識別することに関連する信頼性のレベルを表す信頼性インジケータを含み、前記複数の追加のエンティティが、連絡先データベースおよびウェブサイトのうちの少なくとも1つを含む、前記ドキュメントの外部にあるソースに存在する、請求項6に記載のコンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001] 本開示の態様は、コンピューティングハードウェアおよびソフトウェア技術に関し、詳細には、ドキュメント生産性を向上させることに関する。
【背景技術】
【0002】
[0002] 生産性アプリケーションは、ワード処理ドキュメント、スプレッドシート、およびプレゼンテーション資料などのドキュメントを作成し、ドキュメントを扱って仕事をすることを含む幅広い多様なタスクに利用される。生産性アプリケーションの例には、限定はしないが、ワードプロセッサ、スプレッドシートソフトウェア、プレゼンテーションアプリケーション、ノート取りアプリケーション、およびコラボレーションソフトウェアが含まれる。
【0003】
[0003] ますます増加しつつある生産性アプリケーションは、口語的にはクラウドと呼ばれるものからソフトウェアサービスとして配信される。これらの配備においては、ローカルアプリケーションが、データセンタまたは他の任意のコンピューティング環境においてホストされるアプリケーションサービスへのユーザインターフェースを提供するユーザのデバイス上で動作することができる。ユーザが扱って仕事をするドキュメントは、ローカルで記憶され得るが、そのサービスによって、または関連のクラウドベースのストレージサービスによっても記憶され得る。任意の数のコンピューティングデバイスは、限定はしないが、モバイルデバイス、スマートフォン、ラップトップ、タブレット、デスクトップコンピュータ、および他の任意の適切なプラットフォームを含む、そのようなサービスの利点を生かすのに利用され得る。
【0004】
[0004] 生産性アプリケーションの文脈におけるドキュメント内で行われる共通のタスクは、ユーザが、ワード処理ドキュメントに段落をタイピングする、またはスプレッドシートに数字または文字列を入力するときなど、テキストを書き入れることを含む。ユーザは、この方式でドキュメントと関わるとき、自らが書き入れている情報についての文脈的な知識または認知に欠けている場合があり、したがって、ユーザのドキュメントに補うべき他の情報を発見するために他の資源を参照する必要性がある場合がある。簡単な例においては、ユーザが、あるイベントのメンバーリストの作成に関わっている場合がある。ユーザは、招待客の名前が書き入れできるほど、十分に招待客を知っている場合がある。しかし、招待客の名前以外では、ユーザは、招待客の連絡先情報を得るために連絡先リストを参照する必要がある場合がある。別の例においては、ユーザは、ドキュメントについての補足データを得るためにウェブサイトを参照する場合がある。
【0005】
[0005] 多くのアプリケーションが、自動スペルチェック機能、および数式チェッキングなどの形態で、限られた量の文脈的認知を提供する。関連のサブサービスは、バックグラウンドで動作し、スペリングエラー、矛盾した数式に対するドキュメントの中の内容、または監視可能なドキュメントの他の側面を絶えずチェックし得る。
【発明の概要】
【課題を解決するための手段】
【0006】
[0006] 本明細書においては、ドキュメント生産性を向上させるためのシステム、方法、およびソフトウェアが提供される。様々な実装形態においては、ドキュメントは、エンティティとして認識できるエントリについて走査される。エンティティが発見された場合、ユーザが関わっているときに、ドキュメントの外部にあるデータソースから得られるエンティティについての追加の情報をユーザが検討できるようにし得る指示が、ユーザインターフェースに表示され得る。ユーザは、外部データソースで見つかった情報から選択することによって、エントリに加える、またはそうでなければドキュメントを補い、それによって、ドキュメントを向上させることができる。
【0007】
[0007] 1つの特定の実装形態においては、ドキュメントの中の様々なエントリを検証して、ドキュメントの外部にある様々な追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別する。次いで、追加のエンティティの少なくとも1つのサブセットが、識別されて、ドキュメントに含める可能性のために、ユーザインターフェースに表示される。追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティが、エントリに関連してドキュメントに含められる。
【0008】
[0008] この「発明の概要」は、「発明を実施するための形態」においてさらに後述する概念の選択を簡略化された形態で導入するために提供されている。この「発明の概要」は、特許請求される主題の主要な特徴または本質的な特徴を識別することを意図するものでも、または特許請求される主題の範囲を限定するように使用すべきことを意図するものでもないことが理解され得る。
【0009】
[0009] 本開示の多くの態様は、以下の図面を参照するとより良く理解され得る。いくつかの実装形態は、これらの図面と関係して説明されているが、本開示は、本明細書に開示される実装形態に限定されるものではない。むしろ、意図は、すべての代替形態、修正形態、および等価形態をカバーすることにある。
【図面の簡単な説明】
【0010】
【図1】[0010]向上したドキュメント生産性の一実装形態におけるサービスアーキテクチャおよび関連の動作上のシナリオを例示する図である。
【図2】[0011]一実装形態におけるアプリケーションサービスによって採用され得るドキュメントプロセスを例示する図である。
【図3】[0012]一実装形態におけるローカルアプリケーションによって採用され得るドキュメントプロセスを例示する図である。
【図4】[0013]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図5A】[0014]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図5B】[0014]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図5C】[0014]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図6】[0015]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図7】[0016]向上したドキュメント生産性の一実装形態におけるワークブックによるユーザエクスペリエンスの一段階を例示する図である。
【図8】[0017]一実装形態における動作上の順序を例示する図である。
【図9】[0018]図1〜図8に関して本明細書に開示される、および「発明を実施するための形態」において後述される、アプリケーション、サービス、方法、アーキテクチャ、ユーザエクスペリエンス、および動作上のシナリオのうちのいずれかを実装するのに適しているコンピューティングシステムを例示する図である。
【発明を実施するための形態】
【0011】
[0019] 本明細書に開示される実装形態は、テキストおよび他のデータをドキュメントに書き入れるときのユーザエクスペリエンスを向上させる。ドキュメント生産性は、エンティティとして適格であるエントリが認識されるとき、またはエントリが、ドキュメントの外側にある他の情報は、ドキュメントの中のエントリを補うのに有用であり得ることを示す品質もしくは特性を有するとき、向上する。他の情報は、様々なデータソースから収集され、そう所望される場合には、ドキュメントに含められるようにユーザに提示され得る。
【0012】
[0020] 少なくとも1つの実装形態においては、アプリケーションサービスは、アプリケーションサービスによってホストされるドキュメントの中の様々なエントリを検証して、エンティティとして認識できる少なくとも1つのエントリを識別することによって、ドキュメント生産性を向上させる。エントリは、たとえば、それがドキュメントの外部にある様々な追加のエンティティのうちの少なくとも1つに関係している可能性があるとき、エンティティとして認識され得る。
【0013】
[0021] 次いで、アプリケーションサービスは、ドキュメントに含める可能性のために、アプリケーションサービスへのユーザインターフェースに表示する追加のエンティティの少なくとも1つのサブセットを識別する。ユーザインターフェースを介して受け取った追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、アプリケーションサービスは、エントリに関連してドキュメントに追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティを含める。
【0014】
[0022] いくつかのシナリオにおいては、後続のエンティティとして認識できる後続のエントリが、識別され得る。後続のエントリは、ドキュメントの外部にある追加のエンティティのうちの少なくとも1つの後続の追加のエンティティに関係している可能性があり得る。アプリケーションサービスは、エンティティと、追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティとに関して確立された関連性のパターンに少なくとも一部基づいて、追加のエンティティのうちの後続の追加のエンティティを識別し、後続のエントリに関連してドキュメントにそれを記憶する、またはそうでなければそれを含める。
【0015】
[0023] ユーザエクスペリエンスが向上し得ることを目的としたドキュメントの例には、ワード処理ドキュメント、プレゼンテーション、およびスプレッドシートが含まれる。スプレッドシートの事例においては、エントリは、行と列との対によって画定されるスプレッドシートの中のセルに書き入れられるテキストを含むことができる。したがって、後続のエントリは、後続の行と列との対によって画定されるスプレッドシートの中の後続のセルに書き入れられる後続のテキストとすることができる。
【0016】
[0024] あるアプリケーションが、いくつかの実装形態においては、ドキュメントの上にレンダリングされる、ユーザインターフェースの中のカード内に追加のエンティティを表示することができる。アプリケーションは、カードを介して追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択を受け取る。選択の例には、追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティをカードからドキュメントにドラッグするドラッグ動作が含まれる。
【0017】
[0025] アプリケーションは、エントリが、エンティティとして認識されたという指示をユーザインターフェースに表示することができる。いくつかの事例においては、指示は、エントリをエンティティとして識別することと関連する信頼性のレベルを表す信頼性インジケータを含むことができる。エンティティに関係していると識別される追加のエンティティは、連絡先データベースまたはウェブサイトの中など、ドキュメントの外部にあるソースに存在することができる。
【0018】
[0026] 次に、図面を参照すると、図1は、向上したドキュメント生産性の様々な態様を実証する一実装形態におけるサービスアーキテクチャ100および関連の動作上のシナリオを例示している。サービスアーキテクチャ100は、アプリケーションプラットフォーム101およびサービスプラットフォーム111を含む。ローカルアプリケーション103が、アプリケーションプラットフォーム101の文脈内で実行され、一方、アプリケーションサービス113が、サービスプラットフォーム111の文脈によってホストされ、その文脈内で動作する。
【0019】
[0027] ローカルアプリケーション103とアプリケーションサービス113とは、それぞれが、分離したコンピューティングプラットフォームにおいて実装されるという点において、遠隔にあると見なすことができる。そのような状況においては、ローカルアプリケーション103およびアプリケーションサービス113は、適切な1つの通信リンクまたは複数の通信リンク(図示せず)を介してアプリケーションプラットフォーム101とサービスプラットフォーム111との間で交換されるデータおよび情報によって通信することができる。しかしながら、いくつかの実装形態においては、ローカルアプリケーション103およびアプリケーションサービス113によって提供される特徴および機能は、共に配置可能になることも、または単一のアプリケーションとして一体化可能になることもあり得る。
【0020】
[0028] データソース115およびデータソース116はそれぞれ、ドキュメント107の外部にあるデータソースを表す。それぞれのデータソースは、アプリケーションサービス113によってホストされ、またはアプリケーションサービス113と一体型であると見なされるレポジトリとすることができる。しかしながら、それぞれのデータソースはまた、アプリケーションサービス113とは分離し、別個である他の任意のサービスの一部とすることもできる。データソース115およびデータソース116の例には、連絡先データベース、ウェブサイト、アクティブディレクトリデータベース、リスト、マップ、アカウント、および任意の他のタイプのデータソースが含まれる。
【0021】
[0029] 動作に際して、ローカルアプリケーション103は、ユーザインターフェース105にドキュメント107をレンダリングする。ドキュメント107は、alpha、kilo、およびsierraという単語によって表される様々なエントリ108を含む。アプリケーションサービス113は、ドキュメント107、またはそのコピーを走査し、監視し、またはそうでなければ検証して、エンティティを代表するエントリを識別する。この例においては、「kilo」という単語は、エンティティとして表され、それに応じて、指示が、ユーザインターフェース105に表示される。指示を表示する他のやり方が可能ではあるが、指示は、「kilo」という単語に関して与えられる太字で斜体のフォントによって表されている。
【0022】
[0030] 次に、アプリケーションサービス113は、エンティティとして識別された、ドキュメント107の中のエントリと関連し得る他のエンティティのサブセット119を識別する。他のエンティティのサブセット119は、データソース115およびデータソース116によって表されるドキュメント107の外部にあるソースから識別される。データソース115は、「golf」および「delta」という単語によって表される他のエンティティ117を含む。データソース116は、「echo」および「lima」という単語によって表される他のエンティティ118を含む。主題エントリと関連し得る他のエンティティは、ビュー109、または他のエンティティのサブセット119の、他のそのようなグラフィカル表現によって表されるユーザインターフェース105に表示される。サブセット119は、deltaおよびechoという情報を含む。
【0023】
[0031] ビュー109に提示される情報項目のうちのいずれかまたは両方が、ドキュメント107にさらに含められるように、ユーザによって選択され得る。この例においては、echoという単語が、選択され、そのため、ドキュメント107に含められる。echoという単語は、ドキュメントの中のkiloという単語の近くに含められているように示され、したがって、2つのエンティティが、互いに関連してドキュメント107に記憶されることが表されている。
【0024】
[0032] 図2は、ドキュメントプロセス200によって表される、アプリケーションサービス113によって採用され得る機能の一部をより具体的に例示している。以下に、図2に例示される、挿入句的に注記されているステップについて説明する。
【0025】
[0033] 動作に際して、アプリケーションサービス113は、エンティティとして認識でき得る任意のエントリについて所与のドキュメントを走査し、最終的には、少なくとも1つのエントリをエンティティとして識別する(ステップ201)。ドキュメントは、テキスト、単語、文字列、数字、符号、および画像などの様々なエンティティを含むことができる。
【0026】
[0034] エントリは、ドキュメントの外部にあるデータソースの中の他のエンティティと関連しているエントリを識別する様々な特性に基づいて、エントリと関連し得るエンティティとして認識でき得る。たとえば、テキストエントリは、リストまたは連絡先データベースの中の人物の名前として認識され得る。別の例においては、数字は、住所、または他のそのような識別子として認識され得る。エントリの立案者、ドキュメントの中のエントリの位置、エントリの形式スタイル、または任意の他の特性は、アプリケーションサービス113が、エントリをエンティティとして認識できることを可能にする。エントリをエンティティとして認識できるようにすることが可能なさらなる他の特性には、エントリと関連しているデータ接続もしくは複数のデータ接続、エントリの視覚的タイプ、またはエントリがクエリであるか否かなどが含まれる。ドキュメントの外部にあるデータソースが、エントリに基づいて、またはエントリを使用して、首尾よくクエリ可能であるということだけで、そのエントリがエンティティとして認識されることにつながり得る。
【0027】
[0035] エントリが、エンティティとして認識されるとき、それに関する指示が、ドキュメントに対してユーザインターフェースに表示される。ユーザは、他のエンティティを、ドキュメントに含めるために考慮するという観点から、エンティティをさらに検討することに決めることができる。これが生じるとき、アプリケーションサービス113は、ドキュメントにおける選択のために、どの追加のエンティティをユーザインターフェースに表示すべきであるかを識別する(ステップ203)。ユーザは、エンティティのうちの1つまたは複数を選択することができ、アプリケーションサービス113は、選択されたエンティティまたは選択された複数のエンティティをドキュメントに記憶することができる(ステップ205)。いくつかのシナリオにおいては、エンティティのうちの選択された1つまたは複数は、アプリケーションサービス113によってローカルアプリケーション103に戻されて、識別されたエンティティと結び付くことができる。
【0028】
[0036] 図3は、ドキュメントプロセス300によって表される、ローカルアプリケーション103によって採用され得る機能の一部をより具体的に例示している。以下に、図3に例示される、挿入句的に注記されているステップについて説明する。
【0029】
[0037] 動作に際して、アプリケーションサービス113は、ドキュメントの中のエントリをエンティティとして識別することができ、そのことは、ローカルアプリケーション103に伝えられる。ローカルアプリケーション103は、エンティティが認識されたという指示をユーザインターフェース105に表示する(ステップ301)。指示の表示は、エントリの視覚的外観、またはエントリを囲むエリアの外観の変更を含むことができる。別の例においては、エンティティが認識されたことを示す個別の符号または識別子が、レンダリングされ得る。
【0030】
[0038] 次いで、追加のエンティティが、ドキュメントに含める可能性のために、表示され得る(ステップ303)。追加のエンティティは、アプリケーションサービス113によって識別され得、ユーザがそれらのうちの1つまたは複数をドキュメントに含めるために選択することができるように、表示され得る。これが生じるとき、ローカルアプリケーション103は、他のどのエンティティが、変更され、したがって、ドキュメントに含めるのに適切であり得るのかを説明するメッセージング、または他のそのような情報をアプリケーションサービス113に伝える(ステップ305)。
【0031】
[0039] 図4は、向上したドキュメント生産性がその中に採用されるワークブックに関して生じ得るユーザエクスペリエンスにおける段階400を例示している。ユーザエクスペリエンスには、Microsoft(登録商標)Excel(登録商標)などのスプレッドシートアプリケーションによって創出され得るワークブックを代表するワークブック401が関わっている。ユーザには、適切なアプリケーションプラットフォームと自分との対話を用いることによってユーザエクスペリエンスが提示され得、このアプリケーションプラットフォームを介して、ワークブック401に対するユーザインターフェースが提示され得る。ユーザエクスペリエンスは、ユーザに対して表示され得るワークブック401の様々な視覚的表現を代表するが、また、アプリケーションプラットフォームによって提供される適切なユーザインターフェースシステムを用いることによって、ユーザが、ワークブック401と対話することができる様々なやり方も含み、それらを図9に関して例示されるコンピューティングシステム900が代表する。
【0032】
[0040] ワークブック401は、スプレッドシート403を含み、このスプレッドシート403は、様々なセル405によって画定される。ワークブック401はまた、ワークブックの名前を識別することができる、かつ様々な機能メニューおよび選択肢などを含むことが可能になる機能バー407を含む。図4に例示される要素に加えてまたはその代わりに、他の要素が、可能であり、本開示の範囲内にあるものと見なしてよい。
【0033】
[0041] ユーザエクスペリエンスのこの段階400においては、それぞれのセルは、行番号および列番号によって画定され得るが、それらの行番号および列番号は、図示されていない。ユーザは、何らかの種類のイベントまたは組織を追跡するために、単一のテーブルを作成している。テーブルは、列によってサブ分割される様々なデータ行を含む。列は、識別番号、名前、誕生日、および建物を含む、ユーザによる、割り当てられるラベルである。いくつかのデータが、イベントまたは組織に関わっている3人の人の識別番号および名前を含む行に書き入れられている。具体的には、リストの中の人は、それぞれ、識別番号「001」、「010」、および「111」と関連付けられる「hannah」、「adam」、および「sarah」を含む。
【0034】
[0042] 動作に際して、ワークブック401は、ローカルアプリケーション103およびアプリケーションサービス113が代表するローカルアプリケーションおよびアプリケーションサービスのうちの一方または両方によって採用されるドキュメントプロセス200およびドキュメントプロセス300など、1つまたは複数のドキュメントプロセスを受ける。したがって、ドキュメントプロセスは、ユーザエクスペリエンスの一部を推進する。たとえば、ワークブック401は、エンティティとして認識でき得るスプレッドシート403の中のエントリを識別するために、ドキュメントプロセスによる走査を受ける。この例においては、「adam」というエントリは、エンティティとして認識され、対応する視覚的指示が、表示されて、それがエンティティであることをユーザに表す。この例においては、「adam」というテキストは、他のエントリよりも目立つように太字で斜体の形で提示され、この他のエントリは、どちらもエンティティでなく、したがって同時に「adam」と識別されることもない。その発見をエンティティとして示すには、たとえばテキストがその中に見つけられるセルをハイライトすること、またはその状況をエンティティとして表す個別のアイコンもしくはグラフィックを表示することによるなど、他の仕組みが可能である。
【0035】
[0043] いくつかの事例においては、単一のエントリ単独では、エンティティとして認識され得ないが、1つまたは複数の他のエントリとの組合せとして見なされるとき、エントリ群は、エントリと見なしてよいことが理解され得る。例として、「adam」単独では、エンティティとして認識されることにはなり得ないが、「010」または他の情報と結び付けられた「adam」は、エンティティとして認識されることになり得る。本明細書に開示されるこのおよび他の例においては、複数のエントリを単一のエンティティとして認識することは、本開示の範囲内にあるものと見なしてよいが、単一のエントリが、例示目的で与えられている。
【0036】
[0044] 加えて、いくつかの事例においては、単一のエントリ単独では、単一のエントリに隣接している可能性がある他のエントリによって提供される何らかの周囲の文脈がなければ、エンティティとして認識され得ない。別のエントリまたは別の複数のエントリは、単一のエントリと一緒に見なされるとき、単一のエントリをエンティティとして識別することを補佐することができる。たとえば、「adam」という名前単独では、エンティティとして認識され得ない。しかし、「sarah」という名前の近くにあること、または「sarah」という名前が存在することだけで、「adam」という名前は、エンティティとして認識され得る。これは、「adam」が単一エントリのエンティティを表すと同時に、先の例における「010」と結び付けられた「adam」が複数エントリのエンティティを表すというすぐ上の例とは区別され得る。
【0037】
[0045] 次いで、ユーザは、ハイライトされたエントリを向上させるために、いずれの選択肢が存在し得るかを検討するようにするための指示と積極的に対話することができる。選択411は、マウスクリック、タッチ、口頭コマンド、ジェスチャ、タップ、または他の任意のタイプのユーザ入力とすることができる対話を代表する。グラフィック413が、何の選択肢がエントリを検討するのに利用できる可能性があるかを説明するユーザ入力に応答して表示される。この事例においては、グラフィック413は、エントリに関係している可能性がある追加の情報が利用できることを説明するテキストを含む。追加の情報は、連絡先データベース、またはウェブサイトなど、ワークブック401の外部にある他のデータソースに見つかる場合がある。
【0038】
[0046] ユーザは、ユーザエクスペリエンスの別の段階にユーザを送り出すグラフィック413に関して別の選択421を行うことができる。図5A、図5B、および図5Cは、ユーザがグラフィック413に関して選択421を行うと、生じ得る様々な段階501、502、および503それぞれを例示している。
【0039】
[0047] 図5Aを参照すると、ユーザエクスペリエンスにおける段階501は、ユーザが段階400で選択421を行うと、生じ得る段階を表す。段階501においては、「adam」というエンティティと関連している、またはそうでなければ関係していると識別された可能性がある追加の情報を含むカード423が表示される。追加の情報はそれ自体、追加のエンティティを含むことができるが、それ自体ではエンティティとして認識されることがないエンティティについての単なる追加の詳細である情報も含むことができる。ここでは、追加の情報は、誕生日情報(「june 19」)、建物識別子(「b」)、およびエンティティについての教師の名前(「holli v.」)を含む。カード423は、それが関連しているエンティティの名前「adam」など、本明細書に示されているものに加えて他の情報を含むことが可能になる。これは、カード423が、連絡先カード、または識別情報を含む他の任意のオブジェクトを代表する事例においては、特に当てはまることになり得る。カード423はまた、文脈を提供するため、または他の理由で、ワークブック401にすでに含まれている他の情報を示すことができる。
【0040】
[0048] したがって、ユーザは、表示された追加の情報を考慮することができ、スプレッドシート403に、追加の情報のうちのいずれか、またはすべてを含めるべきであるか否かの決定を下すことができる。この例においては、ユーザは、少なくとも誕生日情報を含めることに同意の決定を下す。したがって、ユーザは、誕生日情報の選択425を行い、結果的に、スプレッドシート403にそれが含められることになる。選択425は、たとえば、ユーザが、自分が置きたいと思うスプレッドシート403の中の場所に、カード423から誕生日情報をドラッグすることによるドラッグアンドドロップ動作とすることができる。誕生日情報についての場所は、誕生日とラベル付けされた列に対応する「adam」というエントリについての行の中のセルである。
【0041】
[0049] ユーザが選択425を行うと、セルの中にその誕生日情報が置かれるだけでなく、スプレッドシート403の中のエンティティとして同様に識別される他のエントリについての他の誕生日情報もまた、それらの対応するセルの中に取り込まれ、置かれる。これは、単に、ユーザが、追加の情報の1つのインスタンスに関して1つの選択を行ったということだけで、自動的に生じ得る。この機能が、任意選択的であり、あらゆる状況において生じるとは限らない場合があることは理解され得る。いくつかのシナリオにおいては、他のセルにおいて自動読み込みを行うことを許可するかどうかをユーザに尋ねるメニュー、制御部、または他のそのようなグラフィックが、表示する場合がある。ユーザがその承認を与える場合には、方法は、前に進むことができ、追加の情報は、対応するセルの中に入れられ得る。そうでない場合には、方法は、停止し得る。
【0042】
[0050] 図5Bは、段階501に類似しているが、何らかの機能変形をもたらす代替の段階502を例示している。ユーザエクスペリエンスにおける段階502はまた、ユーザが段階400で選択421を行うと、生じ得る段階を表す。段階502においては、「adam」というエンティティと関連している、またはそうでなければ関係していると識別された可能性がある追加の情報(追加のエンティティ)を含むカード423が表示される。追加の情報は、誕生日情報(「june 19」)、建物識別子(「b」)、およびエンティティについての教師の名前(「holli v.」)を含む。
【0043】
[0051] したがって、ユーザは、表示された追加の情報を考慮することができ、スプレッドシート403に、追加の情報のうちのいずれか、またはすべてを含めるべきであるか否かの決定を下すことができる。この例においては、ユーザは、少なくとも誕生日情報を含めることに同意の決定を下す。したがって、ユーザは、誕生日情報の選択427を行い、結果的に、スプレッドシート403にそれが含められることになる。選択427は、たとえば、ユーザが、自分が置きたいと思うスプレッドシート403の中の場所に、カード423から誕生日情報をドラッグすることによるドラッグアンドドロップ動作とすることができる。誕生日情報についての場所は、誕生日とラベル付けされた列に対応する「adam」というエントリについての行の中のセルである。
【0044】
[0052] ユーザが選択427を行うと、セルの中にその誕生日情報が置かれるだけでなく、スプレッドシート403の中の他のエンティティについての他の誕生日情報もまた、それらの対応するセルの中に取り込まれ、置かれる。これは、単に、ユーザが、追加の情報の1つのインスタンスに関して1つの選択を行ったということだけで、自動的に生じ得る。この機能が、任意選択的であり、あらゆる状況において生じるとは限らない場合があることは理解され得る。いくつかのシナリオにおいては、他のセルにおいて自動読み込みを行うことを許可するかどうかをユーザに尋ねるメニュー、制御部、または他のそのようなグラフィックが、表示する場合がある。ユーザがその承認を与える場合には、方法は、前に進むことができ、追加の情報は、対応するセルの中に入れられ得る。そうでない場合には、方法は、停止し得る。
【0045】
[0053] 他の誕生日情報におけるローディングに加えて、スプレッドシート403には、さらに多くの追加的な情報、すなわち、スプレッドシート403おいて識別される各人についての建物番号が読み込まれる。言い換えれば、たとえ選択427が、カード423の中の誕生日情報に関してのみ行われたとしても、スプレッドシート403には、建物番号情報も読み込まれる。これは、単に、ユーザが、追加の情報の1つのインスタンスに関して1つの選択を行ったということだけで、自動的に生じ得る。この機能が、任意選択的であり、あらゆる状況において生じるとは限らない場合があることは理解され得る。いくつかのシナリオにおいては、他のセルにおいて自動読み込みを行うことを許可するかどうかをユーザに尋ねるメニュー、制御部、または他のそのようなグラフィックが、表示する場合がある。ユーザがその承認を与える場合には、方法は、前に進むことができ、追加の情報は、対応するセルの中に入れられ得る。そうでない場合には、方法は、停止し得る。
【0046】
[0054] 図5Cは、段階501および段階502に類似しているが、いくつかの点で異なっている代替の段階503を例示している。ユーザエクスペリエンスにおける段階503はまた、ユーザが段階400で選択421を行うと、生じ得る段階を表す。段階503においては、「adam」というエンティティと関連している、またはそうでなければ関係していると識別された可能性がある追加の情報(追加のエンティティ)を含むカード423が表示される。追加の情報は、誕生日情報(「june 19」)、建物識別子(「b」)、およびエンティティについての教師の名前(「holli v.」)を含む。
【0047】
[0055] したがって、ユーザは、表示された追加の情報を考慮することができ、スプレッドシート403に、追加の情報のうちのいずれか、またはすべてを含めるべきであるか否かの決定を下すことができる。この例においては、ユーザは、少なくとも教師情報を含めることに同意の決定を下す。しかしながら、教師の名前についての列はまだ、スプレッドシート403に存在していない。したがって、ユーザは、教師情報の選択429を行い、結果的に、列挿入を用いることによって、スプレッドシート403にそれが含められることになる。選択427は、たとえば、ユーザが、自分が置きたいと思うスプレッドシート403の中の場所に、カード423から教師情報をドラッグすることによるドラッグアンドドロップ動作とすることができる。新規の列が、選択429に応答して、誕生日列と、建物番号列との間に自動的に挿入される。次いで、新規の列には、スプレッドシート403の中の様々なエンティティについての教師の名前が読み込まれる。いくつかの実装形態においては、ユーザは、単一のエンティティ値をシート上に挿入する能力を持つことができるだけでなく、そうではなく、新規テーブル/関係性として、エンティティ値の全組をドキュメント内にドロップすることを選ぶことができる。たとえば、ユーザは、生徒の名前、ID、および試験評定の現在のテーブルをシートに残すことができるが、名前がエンティティとして認識される場合、関連一致のために、ドキュメント内に完全個人エンティティ情報テーブルをインポートすることができる。次いで、分析を行うとき、Excel(登録商標)のようなアプリケーションが、それらのテーブル同士を結び付け、その追加のデータがそれらの元のテーブルを乱すことなく、マッシュアップレポート(たとえば、教師による生徒の平均評定)の作成を可能にすることができる。
【0048】
[0056] 段階501、502、および503はそれぞれ、ワークブック401によるユーザエクスペリエンスに関して生じ得る様々な動作を例示している。図5A〜図5Cに表されるものに加えてまたはその代わりに、他の動作が、可能であり、本開示の範囲内にあるものと見なしてよいことが理解され得る。加えて、図5A〜図5Cに例示されるステップのうちのいくつかは、ワークブック401によるユーザエクスペリエンスに関するさらなる変形をもたらす様々なやり方で互いと組合せ可能である。たとえば、本明細書に記載の方法は、反復型であるので、エンティティに関係して表示され、シートの中に置かれる情報はそれ自体、エンティティとして識別され得る。次いで、カードは、関連している可能性がある追加の情報を含むそのエンティティについて表示され得る、等々である。
【0049】
[0057] 図6は、ワークブック401によるユーザエクスペリエンスの文脈内で生じ得る代替の段階600を例示している。段階600は、図5A〜図5Cに関して例示された段階501、502、および503のうちのいずれかに従う場合も、またはそれらの段階とは分離して生じる場合もある。動作に際して、スプレッドシート403には、ユーザによってラベル付けされた列のすべての中に情報が読み込まれている。例として、識別番号、名前、誕生日、および建物番号が、スプレッドシート403の中に与えられており、含められている。
【0050】
[0058] 次のステップにおいては、新規のエントリが、スプレッドシート403の中に作成されるテーブルの4番目の行に書き入れられる。具体的には、「william」というテキストが書き入れられる。バックグラウンドにおいて動作するドキュメントプロセスは、新規のエントリをエンティティとして認識する。ユーザにエンティティの存在を喚起するグラフィックまたは他のそのような制御部を表示するのではなく、「william」がその中に書き入れられたセルに近接するセルには、エンティティに関係している可能性がある追加の情報が自動記入される。エンティティについての誕生日、ならびにエンティティについての建物番号が、自動記入される。誕生日および建物番号は、ワークブック401の外部にあるデータソースから取り込まれてよい。その上、他の追加の情報項目のように、誕生日および建物番号は、同じデータソースに記憶されていることが可能であるが、それぞれが、相異なるデータソースに存在している場合がある。
【0051】
[0059] 自動記入スプレッドシート403について識別される追加の情報は、あるエンティティと、以前、選択された可能性がある他の追加のエンティティとに関して確立された関連性のパターンに少なくとも一部基づいて選択され得る。たとえば、「adam」というエントリがエンティティとして識別されたと仮定し、さらに、対応する誕生日および建物情報が、ワークブック401に含められるようにユーザによって選択されたと仮定すると、関連性のパターンは、名前と誕生日との間で確立されたことになる。関連性の別のパターンは、名前と建物情報との間で確立されたことになる。次いで、関連性の両方のパターンが、「william」というエントリなどの他のエンティティが認識されるとき、使用され得る。いくつかのシナリオにおいては、データ接続は、追加の情報がその中に表示されているカードまたは他のオブジェクトからシート内に情報をドロップするとき確立され得る。このようにして、そのような補足情報が、それが変更するとき、動的に再読込みされ、更新され得る。例として、建物情報は、「adam」または「william」が、新規の建物またはオフィスに割り当てられるとき、変更し得る。
【0052】
[0060] 他のテキストが書き入れられ、エンティティとして認識されるとき、他のエンティティに関して発見された関連性の過去のパターンは、ワークブック401の外部に存在し得る様々なデータソースから新規情報を引き出すのに使用され得る。例として、特定のデータソースが、レコードの組を含むことができる。特定のレコードおよびレコード内の固有のフィールドが、ワークブック401の中の所与のエンティティについての追加情報の適切なソースであることが分かったとき、あるパターンが作成され得る。相異なるレコードの中にあっても、同じフィールドは、ワークブック401の中に書き入れられ得る新規のエンティティについての追加の情報を抽出するのに使用され得る。
【0053】
[0061] 別の例においては、ウェブサイトの中の特定のページが、エントリに関連してワークブック401に含められるのに適切であると識別される情報を含むことができ、それによって、エンティティとして識別される他のエントリについて活用され得る関連性のパターンを確立する。したがって、別のウェブサイトの中の同じまたは類似するページは、別のエントリに関連してワークブック401に含められるのに適切であると見なしてよい情報を抽出するのに参照され得る。
【0054】
[0062] 簡単な使用事例においては、カレッジまたは大学についてのウェブサイトは、入学者数および学生数情報を含む固有のページを含む場合がある。したがって、別のカレッジについての別のウェブサイトは、そのカレッジについての入学者数および学生数情報を含む類似したページを含む場合がある。第1のカレッジについての入学者数情報は、ワークブックの中のあるエンティティを補うのに使用され得、一方、第2のカレッジについての入学者数情報は、ワークブックに別のエンティティを補うのに使用され得る。
【0055】
[0063] 図7は、ワークブック401によるユーザエクスペリエンスの文脈内で生じ得る別の可能な段階700を例示している。段階700においては、「adam」というエンティティと関連している、またはそうでなければ関係していると識別された可能性がある追加の情報(追加のエンティティ)を含むカード423が表示される。追加の情報は、誕生日情報(「june 19」)、建物識別子(「b」)、およびエンティティについての教師の名前(「holli v.」)を含む。
【0056】
[0064] 加えて、カード423は、追加の情報項目のうちの所与の項目と関連する、それぞれが信頼性レベルを表す様々な信頼性インジケータを含む。信頼性インジケータ431は、誕生日情報が、実際に、エンティティ「adam」に関係している信頼性のレベルを表す。信頼性インジケータ433は、建物情報が、実際に、エンティティ「adam」に関係している信頼性のレベルを表す。信頼性インジケータ435は、教師情報が、実際に、エンティティ「adam」に関係している信頼性のレベルを表す。
【0057】
[0065] この例においては、それぞれの信頼性インジケータは、他とは異なる視覚的表現を有し、それは、それぞれの各情報項目における信頼性が、他に対して変動することを表している。これは、たとえば、情報項目が引き出されるデータソースは変動し得るので、その事例とすることができる。先行する図に例示される他の段階と同様に、ユーザは、スプレッドシート403に、追加の情報のうちのいずれか、またはすべてを含めるべきであるか否かの決定を下すとき、表示された追加の情報およびそれらの関連した信頼性レベルを考慮することができる。表示されている追加の情報についての系統情報もまた、表示され得る。系統情報は、引き出されるデータソース、政府または公共のウェブサイトであるかどうか、または内部のデータベースもしくはディレクトリであるかどうかなど、追加の情報についての何らかのことを説明することができる。
【0058】
[0066] 図8は、向上したドキュメント生産性の一実装形態において生じ得るメッセージおよび情報交換を代表する動作上の順序800を例示している。動作に際して、テキストエントリは、ユーザインターフェース105を介してユーザによって入力される。テキストエントリは、アプリケーションサービス113に対してローカルアプリケーション103によって伝えられる。アプリケーションサービス113は、ドキュメント107およびその中に書き入れられるテキストを検証する。そのような検証は、データが、定期的に、もしくは継続的に、または他の任意の方式で書き入れられるとき生じ得る。あるエンティティ(または複数のエンティティ)が認識されると仮定すると、アプリケーションサービス113は、そのことをローカルアプリケーション103に伝える。ローカルアプリケーション103は、ユーザインターフェース105において、エントリがエンティティであるという指示の表示を推進することができる。
【0059】
[0067] ユーザインターフェース105と関わり合うユーザは、エンティティと関連している可能性がある追加の情報をさらに検討するようにする指示を選択することができる。このことが生じるとき、ローカルアプリケーション103は、アプリケーションサービス113に追加のエンティティを要求する。アプリケーションサービス113は、データソース115および可能性として別のデータソースから追加の情報を取り込む。追加の情報は、ローカルアプリケーション103による要求に応答して取り込まれ得るが、要求前に先を見越して、たとえば、エントリをエンティティと認識したことに応答して生じる場合もある。
【0060】
[0068] アプリケーションサービス113は、追加のエンティティをローカルアプリケーション103に提供する。ローカルアプリケーション103は、追加のエンティティをユーザインターフェース105に表示する。ユーザインターフェース105と関わり合うユーザは、追加のエンティティのうちの1つまたは複数を、ドキュメント107に含めるように選択することができる。選択は、ユーザインターフェース105によって、ローカルアプリケーション103に与えられ、ひいては、ローカルアプリケーション103は、選択をアプリケーションサービス113に伝える。次いで、アプリケーションサービス113は、追加のエンティティまたは複数の追加のエンティティをドキュメント107に含めることができる。いくつかのシナリオにおいては、アプリケーションサービス113は、追加のエンティティまたは複数の追加のエンティティをローカルアプリケーション103に戻し、それにより、ローカルアプリケーション103は、ドキュメント107にそれらを含めることができる。接続情報など、他の情報もまた戻され得、ローカルアプリケーション103は、その情報をそれを用いて再読込みすべきデータ接続を構築することが可能になる。
【0061】
[0069] 本明細書に論じる向上したドキュメント生産性を実装するとき、様々な技術的効果が達成され得ることが図1〜図8の前述の議論から理解され得る。他の可能な便益の中でも特に、情報は、より容易に識別され、ドキュメントに含められてもよく、ドキュメント中にすでにある情報を補うことができる。そのようなツールは、テーブルまたは他のそのようなデータ集合を作成するのに必要な時間量を抑える可能性があることによってユーザエクスペリエンスを改善させる。
【0062】
[0070] 図1を戻って参照すると、アプリケーションプラットフォーム101は、ローカルアプリケーション103をホストすること、およびドキュメントプロセス300を採用することができる任意の物理または仮想コンピューティングシステム、デバイス、もしくはそれらの集合体を代表する。例には、限定はしないが、スマートフォン、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、ハイブリッドコンピュータ、ゲーミングマシン、スマートテレビ、娯楽デバイス、Internet家電、および仮想マシン、ならびにそれらの任意の変形形態または組合せ形態が含まれ、それらを図9に例示されるコンピューティングシステム901が代表する。
【0063】
[0071] ローカルアプリケーション103は、ユーザインターフェース105を実装することができる任意のソフトウェアアプリケーション、モジュール、コンポーネント、またはそれらの集合体を代表する。例には、限定はしないが、ワード処理アプリケーション、スプレッドシートアプリケーション、プレゼンテーションアプリケーション、ウェブブラウザ、電子メールアプリケーション、ブロギングおよびマイクロブロギングアプリケーション、ソーシャルネットワーキングアプリケーション、電子商取引アプリケーション、およびゲーミングアプリケーション、ならびに任意の他のタイプの適切なアプリケーションが含まれる。ローカルアプリケーション103は、ブラウザアプリケーションの文脈で実行するブラウザベースのアプリケーションとすることができる。いくつかの実装形態においては、ローカルアプリケーション103は、ウェブページ、ウェブサイト、またはウェブサービスなどの文脈で、またはそれと関連して実行することができる。しかしながら、ローカルアプリケーション103はまた、ローカルでインストールされ、実行されるアプリケーションであっても、ストリーミングされるアプリケーションであっても、モバイルアプリケーションであっても、またはそれらの任意の組合せ形態もしくは変形形態であってもよい。ローカルアプリケーション103は、スタンドアロンアプリケーションとして実装されても、または複数のアプリケーションにわたって分散されてもよい。
【0064】
[0072] サービスプラットフォーム111は、アプリケーションサービス113のすべてもしくは一部分をホストすること、およびドキュメントプロセス200のすべてもしくは一部分を実装することができる任意の物理または仮想コンピューティングシステム、デバイス、もしくはそれらの集合体を代表する。サービスプラットフォーム111の例には、限定はしないが、サーバコンピュータ、ウェブサーバ、アプリケーションサーバ、ラックサーバ、ブレードサーバ、仮想マシンサーバ、またはタワーサーバ、ならびに任意の他のタイプのコンピューティングシステムが含まれ、それらを図9に例示されるコンピューティングシステム901が代表する。いくつかのシナリオにおいては、サービスプラットフォーム111は、データセンタ、仮想データセンタ、または他の任意の適切な設備において実装可能である。
【0065】
[0073] アプリケーションサービス113は、ドキュメントプロセス200を採用すること、およびローカルアプリケーション103にアプリケーションサービスを提供することができる任意のソフトウェアアプリケーション、モジュール、コンポーネント、またはそれらの集合体である。アプリケーションサービス113の例には、限定はしないが、Microsoft(登録商標)によるOffice365(登録商標)、およびGoogle(登録商標)Docs、ならびに任意の他の適切なアプリケーションサービス、サービスの組合せ形態、またはそれらの変形形態が含まれる。
【0066】
[0074] 図9は、本明細書に開示される様々な動作上のアーキテクチャ、シナリオ、および方法がその中に実装され得る任意のシステムまたはシステムの集合体を代表するコンピューティングシステム901を例示している。コンピューティングシステム901の例には、限定はしないが、スマートフォン、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、ハイブリッドコンピュータ、ゲーミングマシン、仮想マシン、スマートテレビ、スマートウォッチ、および他のウェアラブルデバイス、ならびにそれらの任意の変形形態または組合せ形態が含まれる。他の例には、サーバコンピュータ、ラックサーバ、ウェブサーバ、クラウドコンピューティングプラットフォーム、およびデータセンタ機器、ならびに任意の他のタイプの物理または仮想サーバマシン、およびそれらの任意の変形形態または組合せ形態が含まれる。
【0067】
[0075] コンピューティングシステム901は、単一の装置、システム、もしくはデバイスとして実装されても、または複数の装置、システム、もしくはデバイスとして分散される方式で実装されてもよい。コンピューティングシステム901は、限定はしないが、処理システム902、ストレージシステム903、ソフトウェア905、通信インターフェースシステム907、およびユーザインターフェースシステム909を含む。処理システム902は、ストレージシステム903、通信インターフェースシステム907、およびユーザインターフェースシステム909と動作可能なように連結される。
【0068】
[0076] 処理システム902は、ストレージシステム903からソフトウェア905をロードし、実行する。ソフトウェア905は、前述の実装形態に関して論じられるドキュメントプロセス200およびドキュメントプロセス300を代表する、ドキュメントプロセス906を少なくとも含む。ドキュメント生産性を向上させるように処理システム902によって実行されるとき、ソフトウェア905は、処理システム902に、前述の実装形態において論じられた少なくとも様々な方法、動作上のシナリオ、および順序について、本明細書に説明されるよう動作するように指図する。任意選択により、コンピューティングシステム901は、簡略にするために論じてはいない追加のデバイス、特徴、または機能を含むことができる。
【0069】
[0077] なおも図9を参照すると、処理システム902は、ストレージシステム903からソフトウェア905を取り込み、実行するマイクロプロセッサおよび他の回路機構を備えることができる。処理システム902は、単一の処理デバイス内で実装可能であるが、またプログラム命令を実行する際に協働する複数の処理デバイスまたはサブシステムにわたって分散されてもよい。処理システム902の例には、汎用中央処理ユニット、特定用途向けプロセッサ、および論理デバイス、ならびに任意の他のタイプの処理デバイス、それらの組合せ形態、または変形形態が含まれる。
【0070】
[0078] ストレージシステム903は、処理システム902によって読み取りできる、かつソフトウェア905を記憶することができる任意のコンピュータ可読ストレージ媒体を含むことができる。ストレージシステム903は、コンピュータ可読命令、データ構造体、プログラムモジュール、もしくは他のデータなどの情報を記憶するための任意の方法または技術において実装される揮発性および不揮発性、リムーバブルおよび非リムーバブルの媒体を含むことができる。ストレージ媒体の例には、ランダムアクセスメモリ、読取り専用メモリ、磁気ディスク、光ディスク、フラッシュメモリ、仮想メモリおよび非仮想メモリ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、または任意の他の適切なストレージ媒体が含まれる。いずれの事例においても、コンピュータ可読ストレージ媒体は、伝搬される信号ではない。
【0071】
[0079] コンピュータ可読ストレージ媒体に加えて、いくつかの実装形態においては、ストレージシステム903はまた、コンピュータ可読通信媒体を含むこともでき、このコンピュータ可読通信媒体を介して、ソフトウェア905の少なくとも一部が、内部的にまたは外部的に通信可能である。ストレージシステム903は、単一のストレージデバイスとして実装可能であるが、互いに対して共に配置され、もしくは分散される複数のストレージデバイスまたはサブシステムにわたっても実装可能である。ストレージシステム903は、処理システム902または可能性として他のシステムと通信することができるコントローラなどの追加の要素を備えることができる。
【0072】
[0080] ソフトウェア905は、プログラム命令において実装可能であり、他の機能の中でも特に、処理システム902によって実行されるとき、処理システム902に、本明細書に例示される様々な動作上のシナリオ、順序、および方法に関して説明されるよう動作するように指図することができる。たとえば、ソフトウェア905は、ドキュメントプロセス、ユーザインターフェース、およびそれらのそれぞれの機能を実装するためのプログラム命令を含むことができる。
【0073】
[0081] 具体的には、プログラム命令は、本明細書に説明される様々な方法および動作上のシナリオを遂行するように協働する、もしくはそうでなければ対話する様々なコンポーネントまたはモジュールを含むことができる。様々なコンポーネントまたはモジュールは、コンパイル型もしくはインタープリタ型の命令、または命令の他の任意の変形形態もしくは組合せ形態で具現化され得る。様々なコンポーネントまたはモジュールは、同期もしくは非同期の方式で、逐次にもしくは並行して、単一のスレッド構成の環境もしくは複数のスレッド構成の環境で、または任意の他の適切な実行パラダイム、それらの変形形態、もしくは組合せ形態により実行され得る。ソフトウェア905は、ドキュメントプロセス906に加えて、もしくはドキュメントプロセス906を含むオペレーティングシステムソフトウェア、または他のアプリケーションソフトウェアなどの追加の方法、プログラム、あるいはコンポーネントを含むことができる。ソフトウェア905はまた、ファームウェア、または処理システム902によって実行できるマシン可読処理命令の他の任意の形態を含むことができる。
【0074】
[0082] 概して、ソフトウェア905は、処理システム902内にロードされ、実行されるとき、適切な装置、システム、またはデバイス(それらをコンピューティングシステム901が代表する)を全体的に、汎用のコンピューティングシステムから、向上したドキュメント生産性を容易にするためにカスタマイズされた専用のコンピューティングシステムへと変換させることができる。実際、ストレージシステム903上の符号化ソフトウェア905は、ストレージシステム903の物理構造体を変換させることができる。物理構造体の固有の変換は、本明細書の相異なる実装形態における様々な因子によって左右されることがある。そのような因子の例には、限定はしないが、ストレージシステム903のストレージ媒体を実装するのに使用される技術、およびコンピュータストレージ媒体が、プライマリストレージとして、それともセカンダリストレージとして特徴付けられるのか、ならびに他の因子が含められ得る。
【0075】
[0083] たとえば、コンピュータ可読ストレージ媒体が、半導体ベースのメモリとして実装される場合、ソフトウェア905は、たとえば、トランジスタ、コンデンサ、または半導体メモリを構成する他の個別の回路要素の状態を変換することによって、プログラム命令がその中で符号化されるとき、半導体メモリの物理状態を変換することができる。類似する変換は、磁気媒体または光媒体に対して生じる場合がある。物理媒体の他の変換は、本明細書の範囲から逸脱することなく可能であり、前述の諸例は、本議論を容易にするためにのみ与えられているものにすぎない。
【0076】
[0084] 一例として再度、図1を参照すると、コンピューティングシステム901が代表する、あるコンピューティングシステムまたは複数のコンピューティングシステムの動作を通じて、変換は、サービスアーキテクチャ100、ならびに具体的には、ユーザインターフェース105およびドキュメント107に関して行うことができる。一例として、第1の状態のユーザインターフェース105は、ドキュメント107のプレゼンテーションを含む。エントリがエンティティとして認識されると、認識の指示が表示され、それによって、その状態が変更される。さらなる変換は、ユーザがエンティティをより掘り下げて検討することに決めたことに応答して、ビュー109が表示されるときに生じる。最終的には、ドキュメント107は、ドキュメント107に含める(書き込む)ためにエンティティがビュー109から選択されるときに変更される。
【0077】
[0085] コンピューティングシステム901が、概して、ソフトウェア905が、向上したドキュメント生産性を実装するためにその上に配備および実行され得るあるコンピューティングシステムまたは複数のコンピューティングシステムを表すように意図されていることは理解され得る。しかしながら、コンピューティングシステム901はまた、ソフトウェア905が、その上にステージされ得る任意のコンピューティングシステムとして適している場合があり、そこから、一方または両方が、配備および実行、またはさらなる追加的な分散のために、さらなる別のコンピューティングシステムへと、分散、トランスポート、ダウンロード、あるいはそうでなければ提供され得る。
【0078】
[0086]通信インターフェースシステム907は、通信ネットワーク(図示せず)を経由して他のコンピューティングシステム(図示せず)と通信することを可能にする通信接続部およびデバイスを含むことができる。システム間通信を共に可能にする接続部およびデバイスの例には、ネットワークインターフェースカード、アンテナ、電力増幅器、RF回路機構、送受信機、および他の通信回路機構が含められ得る。接続およびデバイスは、金属、ガラス、エア、および任意の他の適切な通信媒体など、他のコンピューティングシステムまたはシステムのネットワークとの通信を交換するために、通信媒体を経由して通信することができる。前述の媒体、接続部、およびデバイスは、よく知られており、ここで詳しく論じる必要はない。
【0079】
[0087] ユーザインターフェースシステム909は、任意選択的であり、キーボード、マウス、音声入力デバイス、ユーザからのタッチジェスチャを受け取るためのタッチ入力デバイス、ユーザによる非タッチジェスチャおよび他のモーションを検出するためのモーション入力デバイス、ならびにユーザからユーザ入力を受け取ることができる他の相当する入力デバイスおよび関連の処理要素を含むことができる。ディスプレイ、スピーカ、触覚デバイス、および他のタイプの出力デバイスなどの出力デバイスもまた、ユーザインターフェースシステム909に含められ得る。いくつかの事例においては、入力デバイスおよび出力デバイスは、画像を表示することができ、タッチジェスチャを受け取ることができるディスプレイなど、単一のデバイスにおいて組合せ可能である。前述のユーザ入力デバイスおよび出力デバイスは、当技術分野においてよく知られており、ここで詳しく論じる必要はない。
【0080】
[0088] ユーザインターフェースシステム909はまた、上述の様々なユーザ入力デバイスおよび出力デバイスのサポートにおいて、処理システム902によって実行可能な関連のユーザインターフェースソフトウェアを含むことができる。分離して、または互いと、ならびに他のハードウェア要素およびソフトウェア要素と連動して、ユーザインターフェースソフトウェアおよびユーザインターフェースデバイスは、グラフィカルユーザインターフェース、ナチュラルユーザインターフェース、または任意の他のタイプのユーザインターフェースをサポートすることができる。たとえば、ユーザインターフェース105は、ユーザインターフェースシステム909を通じて提示され得る。同様に、ワークブック401に関して論じられた様々な段階400、501、502、503、600、および700は、ユーザインターフェースシステム909を通じて提示され得る。加えて、ユーザインターフェース105に関して行われる、またはユーザエクスペリエンスに関して論じられたユーザ入力は、ユーザインターフェースシステム909を介して入力され得る。
【0081】
[0089] コンピューティングシステム901と他のコンピューティングシステム(図示せず)との間の通信は、ある通信ネットワークまたは複数の通信ネットワークを経由して、および様々な通信プロトコル、プロトコルの組合せ形態、またはそれらの変形形態により生じ得る。例には、イントラネット、インターネット、Internet、ローカルエリアネットワーク、ワイドエリアネットワーク、ワイヤレスネットワーク、ワイヤードネットワーク、仮想ネットワーク、ソフトウェア定義型ネットワーク、データセンタバス、コンピューティングバックプレーン、または任意の他のタイプのネットワーク、ネットワークの組合せ形態、もしくはそれらの変形形態が含まれる。前述の通信ネットワークおよびプロトコルは、よく知られており、ここで詳しく論じる必要はない。しかしながら、使用され得るいくつかの通信プロトコルには、限定はしないが、Internetプロトコル(IP、IPv4、IPv6など)、転送制御プロトコル(TCP)、およびユーザデータグラムプロトコル(UDP)、ならびに任意の他の適切な通信プロトコル、それらの変形形態、または組合せ形態が含まれる。
【0082】
[0090] データ、コンテンツ、または任意の他のタイプの情報がその中で交換される前述の例のうちのいずれかにおいては、情報の交換は、FTP(ファイル転送プロトコル)、HTTP(ハイパーテキスト転送プロトコル)、REST(表現状態転送)、WebSocket、DOM(Document Object Model:ドキュメントオブジェクトモデル)、HTML(ハイパーテキストマークアップ言語)、CSS(カスケーディングスタイルシート)、HTML5、XML(拡張可能なマークアップ言語)、JavaScript(登録商標)、JSON(JavaScript Object Notation: JavaScriptオブジェクト表記法)、およびAJAX(Asynchronous JavaScript and XML: 非同期JavaScriptとXML)、ならびに任意の他の適切なプロトコル、それらの変形形態、または組合せ形態を含む、多様なプロトコルのうちのいずれかにより生じ得る。
【0083】
[0091] 図1〜図9は、比較的少ない動作上のシナリオおよび順序を大まかに描いているが、本明細書に開示される概念は、規模を拡大して、日常的に適用され得ることが理解され得る。たとえば、本明細書に開示されるアプリケーションサービスは、任意の数のローカルアプリケーションおよび任意の数のドキュメントのサポートにおいて配備され得る。
【0084】
[0092] ドキュメント生産性を向上させるようにアプリケーションサービスを動作させる方法は、アプリケーションサービスによってホストされるドキュメント内の複数のエントリを検証して、ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別することを含むことが、前述から理解され得る。この方法はまた、ドキュメントに含める可能性のために、アプリケーションサービスへのユーザインターフェースに表示する複数の追加のエンティティの少なくとも1つのサブセットを識別することと、ユーザインターフェースを介して受け取った複数の追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、エントリに関連してドキュメントに追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティを含めることとを含む。
【0085】
[0093] 方法は、ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つの後続の追加のエンティティに関係している可能性がある、後続のエンティティとして認識できる後続のエントリを識別することに応答して、エンティティと、複数の追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティとに関して確立された関連性のパターンに少なくとも一部基づいて、複数の追加のエンティティのうちの後続の追加のエンティティを識別することと、後続のエントリに関連してドキュメントに追加のエンティティのサブセットのうちの少なくとも後続の追加のエンティティを含めることとをさらに含むことができる。
【0086】
[0094] 装置が、ドキュメント生産性を向上させるための1つまたは複数のコンピュータ可読ストレージ媒体および1つまたは複数のコンピュータ可読ストレージ媒体において記憶されたプログラム命令を含むことができることもやはり、前述から理解され得る。プログラム命令は、処理システムによって実行されるとき、処理システムに、複数のエントリを含むドキュメントをホストするアプリケーションサービスへのユーザインターフェースに、ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つに関係している可能性があるエンティティとして認識された複数のエントリのうちの少なくとも1つのエントリを検討するための選択肢を表示することを少なくとも行うように指図することができる。プログラム命令は、処理システムに、選択肢の選択に応答して、ドキュメントに含める可能性のために、識別された複数の追加のエンティティの少なくとも1つのサブセットを表示すること、およびユーザインターフェースを介して受け取った複数の追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、ドキュメントに追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティを含めるようにアプリケーションサービスに要求を伝えることを行うようにさらに指図することができる。いくつかの実装形態においては、装置は、プログラム命令を実行するように構成された処理システムを含むことができる。
【0087】
[0095] 特定の実装形態においては、1つまたは複数のコンピュータ可読ストレージ媒体は、ドキュメント生産性を向上させるためのプログラム命令を記憶させることができ、このプログラム命令は、処理システムによって実行されるとき、処理システムに、ドキュメントの中の複数のエントリを検証して、ドキュメントの外部にある複数の追加のエンティティのうちの少なくとも1つに関係している可能性がある、エンティティとして認識できる少なくとも1つのエントリを識別することを少なくとも行うように指図する。プログラム命令は、処理システムに、エントリが認識されたという指示をユーザインターフェースに表示することを行うようにさらに指図することができる。指示に関して行われるユーザインターフェースとの対話に応答して、プログラム命令の指図の下、処理システムは、複数の追加のエンティティの少なくとも1つのサブセットを識別し、ドキュメントに含める可能性のために、ユーザインターフェースに表示することができる。処理システムはまた、プログラム命令の指図の下、およびユーザインターフェースを介して受け取った複数の追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティの選択に応答して、エントリに関連してドキュメントに追加のエンティティのサブセットのうちの少なくとも1つの追加のエンティティを含めることができる。
【0088】
[0096] 諸図に与えられた機能的ブロック略図、動作上のシナリオおよび順序、ならびにフロー略図は、本開示の新規態様を行うための例示的なシステム、環境、および方法論を代表するものである。説明を簡単にするために、本明細書に含まれた方法は、機能的略図、動作上のシナリオもしくは順序、またはフロー略図の形態とすることができ、一連の行為として説明され得るが、方法は、いくつかの行為が、それにより、本明細書に示され、説明される行為とは異なる順番でおよび/または他の行為と同時に生じ得るように、行為の順番によって限定されないことを了解および理解されたい。たとえば、当業者は、方法が、代替として、たとえば状態略図の中の一連の相互に関係する状態または事象として表すことができ得ることを了解し、理解するであろう。その上、方法論に例示されるすべての行為が、新規実装形態に必要であるとは限らない場合もある。
【0089】
[0097] 本明細書に含まれた説明および図は、最良の選択肢をいかに作成し、使用すべきであるかについて当業者に教示するために、具体的な実装形態を示している。発明的原理を教示する目的として、いくつかの従来の態様が簡略化され、または省略されている。当業者は、本発明の範囲内に入るこれらの実装形態から変形形態を理解するであろう。当業者はまた、上述の特徴が、複数の実装形態を形成するために、様々なやり方で組合せ可能であることも理解するであろう。結果として、本発明は、上述の具体的な実装形態に限定されるものではなく、ただし、特許請求の範囲およびその等価物によってのみ限定される。
【図1】
【図2】
【図3】
【図4】
【図5A】
【図5B】
【図5C】
【図6】
【図7】
【図8】
【図9】
【国際調査報告】