专利名称:笔式计算系统中的标记管理的制作方法
技术领域:
这里描述的系统和方法涉及笔式计算系统。尤其是,本系统和方法涉及到笔式计算系统中的标记管理。
背景技术:
通过网络技术和先进的存储技术可以得到丰富信息是个人可以收集大量信息的一些原因。这些信息有许多形式,包括个人文档、网页、多媒体内容等。
然而,由于用户所积累的信息数量显著增长,于是产生了管理所有信息的后勤问题,它对于用户访问和利用所有信息非常实用。为了有效地管理这些信息,用户必须具有搜索信息、在文件间转移数据、使用具有信息应用程序及与他人共享信息等的功能。
传统的键盘式平台被越来越多的笔式平台——例如PDAs(个人数字助理)、袖珍PCs(个人电脑)、高级电话和寻呼机等取代时—由于笔式系统管理信息的传统方式并不总是工作的很好,因此信息管理也存在其它一些需要克服的问题。
另一方面,笔式系统为管理信息提供了一个新工具在于笔的功能是允许用户在一个电子文档中输入手写标记。在笔式计算系统中,这些手写标记的正确管理可以产生更为容易和更有效的信息管理。
概述这里描述的是笔式计算系统中管理标记的系统和方法。这里描述的系统和方法提供了搜集、管理、搜索及共享通过手写标记方式输入的个人信息的方式。手写标记包括多种类型的标记例如下划线、弧形、方块、箭头及插图的编号。
在这里描述的不止一个的实施例中,标记用于驱动应用程序、用作向导查找用户感兴趣的相关信息,和进一步管理信息。当用户输入一个标记时,就可得到上下文信息,该上下文信息可用于帮助确定和定位相关用户或许感兴趣的内容,不论该相关内容位于本地计算机或因特网上或其他网络中的相同或不同文档中。
标记可通过许多平台和应用程序来利用,例如一个文字处理软件、一个网页浏览器、一个个人信息管理程序等。标记也可以锚定到一个文档中,以便每次调用该文档时,该标记就会出现。而且,当锚定一个或更多文档后,该标记也可像其他部分的任何文档一样被搜索到。
附图的简要说明通过参考下面结合附图的详细描述可获得对本发明示例的方法和结构的更完全的理解
图1是示范计算环境;图2是一个标记系统结构的简化方框图;图3是描述了一个用标记来预定任务的方法执行的流程图;图4是描述一个利用从标记及其内容得出的关键字进行目录搜索方法执行的流程图;图5是描述了一个利用标记的关键字搜索的方法执行的流程图;图6是描述了利用标记作为向导的方法执行的流程图。
详细描述下面描述了在笔式计算系统中管理标记的系统和方法。通过利用用户交换,所描述的系统和方法可自动收集、管理、搜索及共享个人信息,即用户看到的相关内容标记。
示范计算环境图1阐明了一个示范计算环境100,其中这里描述的计算机、网络及系统结构可全部或部分执行。示范计算环境100仅是计算系统的一个例子,并不打算使用范围或网络结构的功能性提出任何限制。计算环境100不应该解释为对有关示例环境中所示的任何一个或部件的组合具有依赖性或要求。
计算机和网络结构可以用许多其他通常或特殊目的的计算系统或结构来实现。通常所知的适于使用的计算系统、环境和/或结构的例子包括但并不仅限于个人计算机、服务器计算机、瘦客户机、胖客户机、手提或膝上型设备、多处理器系统、微处理器式系统、机顶盒、可编程消费品电子、网络PCs、微型计算机、巨型计算机、游戏控制台及包括上述任意系统或设备的分布式计算环境等。
点击跟踪的浏览页记录可在可执行计算机指令的通用上下文中描述,例如由计算机执行的程序模块。通常,程序模块包括执行特殊任务或实现特殊抽象的数据类型的例行程序、程序、对象、元件及数据结构等。点击跟踪的浏览页记录也可以用作分布式计算环境中,其中任务是通过与通讯网络相连的远程处理设备来执行。在一个分布式计算环境中,程序模块可位于本地和远程计算机的包括内存设备的存储介质上。
计算环境100包括一个是计算机102形式的通用目的计算系统。计算机102的元件可以包括但并不仅限于至少一个处理器或处理单元104、一个系统内存106及一个将包括处理器104在内的许多系统元件与系统内存106系统相连接的总线108。
系统总线108表示了至少一个多种类型的总线结构,包括一个内存总线或内存控制器、一个外围总线、一个加速图形端口及一个处理器或利用多种任意总线结构的本地总线。举例来说,这种结构包括一个工业标准体系结构(ISA)总线,一个微通道体系结构(MAC)总线,一个增强型ISA(EISA)总线,一个视频电子标准协会(VESA)本地总线及一个作为已知夹层总线的外围元件互联(PCI)。
计算系统102通常包括多种计算机可读介质。这些介质可为计算机102能够存取任何可用的介质,包括易失和非易失介质、可移动或不可移动介质。系统内存106包括易失内存形式的计算机可读介质,如随机存储器(RAM)110、和/或非易失存储器,如只读存储器(ROM)112。一个基本输入/输出系统(BIOS)114,如存储在ROM102中,包括帮助在计算机102中如启动过程元件之间转换信息的基本程序。RAM110通常包括数据和/或程序模块,它们可由处理单元104快速存取和/或操作。
计算机102还包括其他可移动/不可移动、易失/非易失计算机存储介质。举例来说,图1表示了一个可读写一个不可移动且非易失的磁性介质(未图示)的硬盘驱动器116,一个可读写可移动且非易失的磁盘120(例如一张软盘)的磁盘驱动器118,及一个可读写可移动且非易失的光盘124如CD-ROM、DVD-ROM或其他光介质的光盘驱动器122。硬盘驱动器116、磁盘驱动器118及光盘驱动器122都分别通过至少一个数据介质接口126与系统总线108相连接。另一种可选择的方案是,硬盘驱动器116、磁盘驱动器118及光盘驱动器122也可以通过一个SCSI接口(未图示)与系统总线108相连接。
磁盘驱动器及其相关的计算机可读介质为计算机102提供了计算机可读指令、数据结构、程序模块及其他数据的非易失存储器。尽管该例子说明了一个硬盘驱动器116、一个可移动磁盘120及一个可移动光盘124,但是应该明白可存储计算机可得到数据的其他类型计算机可读介质,例如磁带或其他磁性存储设备、闪存卡、CD-ROM、数字化视频光盘(DVD)或其他光存储器、随机存储器(RAM)、只读存储器(ROM)及电可擦除只读存储器(EEPROM)等同样可用于执行示范计算系统和环境。
任意数量的程序模块可以存储在硬盘驱动器116、可移动磁盘120、可移动光盘124、ROM112,和/或RAM110上,举例来说可包括一个操作系统126,至少一个应用程序128、其他程序模块130及程序数据132。每个操作系统126、至少一个应用程序128、其他程序模块130及程序数据132(或其结合)包括一个点击跟踪的浏览页记录的实施例。
计算机系统102包括多种作为通讯介质识别的计算机可读介质。通讯介质通常将计算机可读指令、数据结构、程序模块或其他数据包含在一个模块化数据信号,如载波或其他传送机构中,并包括任何信息传输介质。术语“模块化数据信号”是指一个使其至少一个特性设定或改变的方式能编码信号中信息的信号。举例来说但并不仅限于此,通讯介质包括有线介质如有线网络或单线连接及无线介质如声学、射频、红外线及其他无线介质。上述任意组合同样包括在计算机可读介质范围内。
用户利用输入设备如键盘134和定点设备(如鼠标)将命令和信息输入到计算机系统102中。其他输入设备138(未特别标出)可包括麦克风、操纵杆、游戏操纵杆、圆盘式卫星电视天线、串行端口、扫描仪等。这些及其他输入设备通过与系统总线108相连接的输入/输出接口140与处理单元104相连,但是也可通过其他接口和总线结构相连,如并行端口、游戏端口或通用串行总线(USB)。
监控器142或其他类型的显示设备同样通过接口如一个视频适配器144连接到系统总线108。除监控器142外,其他通过输入/输出接口140与计算机120相连的外围输出设备包括元件如扬声器(未标出)和打印机146。
在网络环境下,计算机102可利用与至少一个远程计算机的逻辑连接来操作,例如远程计算设备148。举例来说,远程计算设备148可为一个人计算机、手提电脑、一台服务器、一个路由器、一台网络计算机、一个对等设备或其他共用网络节点等。远程计算设备148作为一手提电脑来说明,它包括了这里描述的与计算机系统102相关的许多或所有的部件及特征。
计算机102和远程计算机148之间的逻辑连接作为一个局域网(LAN)150和通用广域网(WAN)152来描述。这种网络环境是办公室、企业计算机网络、企业内部互联网及国际互联网络中是很常见的。当作一个LAN网络环境下执行时,计算机102通过一个网络接口或适配器154连接到本地网络150上。当在一个WAN网络环境下执行时,计算机102通常包括一个调制解调器156或在其他广域网络152上建立通讯的设备。对于计算机102可为外置或内置的调制解调器156可通过输入/输出接口140或其他合适机构与系统总线108相连。图示的网络连接为示范性的,在计算机102和148之间建立通讯链路的其他设备也可使用。
在一个网络环境下,如图示的计算环境100、对应于计算机102的所述程序模块或其中的一部分可存储在一个远程存储设备上。举例来说,远程应用程序158存储在远程计算机148的存储器上。为了说明,应用程序和其他可执行程序成分例如操作系统,这里作为离散模块来图示,尽管认识到这种程序和成分多次存储在计算机系统102的不同存储元件中,但它们可通过计算机数据处理器来执行。
示范结构图2是一个根据所述的系统和方法的示范标记系统200的方框图。该标记系统200包括一个存储层202、一个抽取层204及一个应用程序层206。在每个特殊层中所示的多种元件可用特殊的工具来改变。
通常,存储层202用原始笔画、标记、自由标记及文档作为输入或将机密且可识别的标记,和其锚定文本存储到一个标记和文档数据库208中。存储层202包括一个锚定模块210和一个标记重组模块212。该锚定模块210相对于文档中目标收集关于每个标记的位置信息。这允许标记将要被锚定,以至于当文档重新调用时它们在可在相同位置出现。当重新调用一页时,该标记重组模块212设定为重新找回锚定数据,并且当该页收回时,在其适当位置重组每个标记。
抽取层204包括从标记和作用中抽取相关语义特征的成分。两种类型特征可被抽取标记本身及与标记相关的上下文信息。上下文信息可以包括但并不仅限于时间、位置及周围文本等。
抽取层204包括一个抽取模块220、一个特征数据库222、一个学习模块224、一个查询修正模块226及一个信息过滤模块228。抽取模块220设定用于抽取所有类型的信息,包括文档特征、标记文本、标记特征、上下文等。这些所抽取的特征存储在特征数据库222中。
学习模块224设定用于追踪用户行为及使用由此获得的用户信息以改进标记系统。查询修正模块226设定用于协助于结构搜索查询,该查询用于定位用户获取感兴趣的内容和局部关键字。信息过滤模块228设定用于过滤和改进在为用户搜索更为合适的显示时所得到的原始信息。特征数据库222同样包括一个历史记录229,它存储了一个系统中每个特殊用户及一个系统中所有用户的搜索项。当权衡上下文搜索和关键字搜索的搜索项时,将涉及该历史记录229(正如下面更详细的描述)。
应用程序层206包括利用并支持标记的应用程序。在下面的例子中,应用程序层206包括一个个人信息管理程序230和一个网页浏览器232。一个标记总结程序234也存储在应用程序层206中,并用于收集总结输入到系统中标记的信息。在为多用户提供的系统中,标记总结程序234区分每个用户间的标记,并单独或整体总结这些标记。
锚定标记尽管不必是所需的,但在一些执行过程中,希望为对象锚定标记以致于当该页重组,例如当该页更新或当用户返回一个以前已标记过的页中时,该标记可以一在页中相同的相关位置进行重组。下面的例子说明了一个锚定标记的技术。尽管下面的例子是关于IE浏览器进行描述的,但是所描述的技术可用于其他的上下文中。
为了锚定标记,,标记模块210从一个与网页相关的文档对象模型(DOM)树中为网页中每个对象获得一个矩形边界框。从这个信息中得到每个对象的一个二维位置。同样,该标记模拟为二维空间中的一个多边形。于是标记锚定问题本质上成为一个多边形交叉问题。该对象和标记信息(如位置)存储在标记和文档数据库208中。
当重新调出一页时,标记重组模块212从标记和文档数据库208中重新得到位置信息。计算每页对象和已锚定对象之间的类似处来确定它们是否相同。如果是这样,那么位于页面上的任何标记都可在与它们原始出现的有关页面对象的相同位置重组。
在网页包括一个文本段落的情况下,由于该文本段落只是一个对象,于是就产生一个特殊问题。在这种情况下,文本对象被划分为更小的对象,如段落中的每个字词构成一个对象(如一个“词对象”)。为每个词对象插入一个假冒的标记并得到每个词对象的二维位置。于是继续进行如上述的处理。
启动标记任务启动任务是笔式计算系统中的一个重要特征。在其他类型的计算机中,一个任务可以利用在工具条或光标上的鼠标的点击来启动。在笔式系统中,一个笔代替了鼠标并且用法也不同。同样,在许多笔式系统中,显示空间是很珍贵的,因此工具条及光标并不出现来为启动一个任务而提供一个简单的方式。即使当光标用于系统中来启动一个任务时当另一应用程序正在操作时,光标也不可用。
在这里所描述的系统和方法中,一个任务可以从一个特殊类型的标记自动启动。例如,一个应用程序设定为识别一个数据标记,并且当检测到一个数据标记时,自动启动一个日历任务。如果需要,这种特征为用户提供了禁止自动启动的方式。
示范方法执行——预定任务在一个典型系统中,当用户想在一个个人信息管理应用程序(例如图2中230)中预定任务时,用户必须启动应用程序并且安装数据和时间信息(例如启动时间、结束时间、应到时间等)。另外,用户也必须输入一个任务名称来描述该任务名,和输入一个主体描述来大致描述该任务。当键盘可使用时,输入这种信息是相当简单的。然而,在笔式系统中是非常费时的。下面描述的方法的实现有助于简化这种任务。
图3是描述了一个从标记中预定任务的方法执行的流程图300。在方框302中,抽取模块220监控一个已经打开的文档来检测标记项。该已经打开的文档或许是一个网页、一个文字处理文档、一个电子邮件信息等。正如前面所讨论的,抽取模块监控标注或用户输入的手写符号。在这个特殊例子中,抽取模块220监控包括一个日期的标记,例如以日期形式表示的符号。该标记可对该日期画圆圈、下标日期及手写日期等。
例如,假设包括了一行用户下划线的文本网页,该行读为“台式PC将在11月7日投产。”抽取模块设为“11月7日”作为日期识别,它将启动目前描述的功能。
如果一个标记不是作为日期识别(“否”分支,方框304),那么抽取模块220只继续监控方框302中的标记。然而,如果一个标记作为一个日期来识别(“是”分支,方框304),那么抽取模块确定一个日期启始特征是否允许。如果该特征不被允许(“否”分支,方框306),那么抽取模块220继续监控方框302的标记。如果该特征允许(“是”分支,方框306),那么一个相关的应用程序(个人信息管理应用程序,该例子图2中的230)在方框308中启动。如果该应用程序已经运行并最小化,那么在模块308中只能最大化。
该应用程序只对一个页面打开,该页面与在方框310的标记中已识别的日期相关。抽取模块检查已标记日期(方框312)位置内容的上下文来得到一个建议的标题和为那个特殊日期而输入的主要描述。这里,从总上下文中得到的建议的标题或许为“台式PC”,并且该主要描述或许读为“台式PC投产”。
在方框314中,该建议题目及主要描述将通过弹出方式的通知用户。如果用户想要接收建议,用户只需通过取出(或者接收)该建议响应(“是”分支,方框316),并且标题和主要描述在方框320中输入。如果该建议不被接受(“否”分支,方框316),那么就给用户提供一个让用户输入标题和主要描述的方框(方框318)。当收到用户的输入后,它们在方框320中输入。
在方框332中,依靠特殊执行,应用程序被关闭或最小化,并且处理回复到方框302中,其中标记监控继续执行。
利用上面所描述的技术,一个笔式计算系统的用户可以在时间管理应用程序中更加有效地输入任务。
方法执行——基于标记的目录搜索当用户阅读一个电子文档时,他可能更有兴趣检查该文档中提出的问题。在典型的计算机系统中,用户只能在本地计算机的搜索框或者网络搜索引擎中键入一个查询来查找相关信息。然而,在笔式计算机系统中并不是一个如此简单的任务。另外,一个搜索框中的搜索项的有限输入不能显示用户查询的内容,同样,可能得到许多结果——虽然与搜索项自身相关——或许与用户已在脑中形成的实际查询不相关。
图4是一个描述了一个目录搜索的方法执行的流程图400,该搜索基于用户标记和从标记的上下文中收集的关键字(通过查询修正模块226执行,图2)。图4中描述的内容搜索过程通过用户的标记驱动,并且考虑用于驱动该搜索的标记的上下文内容。需要指出的是,尽管在流程图400中没有标出,流程图400描述的特征也可由用户方便地终止。在此情况下,下面描述的过程步骤——不同于监控步骤——将不被执行。
为更好的提炼用户感兴趣的搜索结果,在一个查询上下文中可以应用两种方法。一种方法是查询产生,其中上下文用于形成搜索查询。另一种方法是搜索结果重新分类,其中对从一个标记获得的至少一个关键字执行一个典型的搜索,于是上下文用于该搜索结果和重新分类搜索结果,以便更为相关结果排列在无关的结果之前。
流程图400和下面的描述集中于一个利用查询上下文的查询产生。熟悉本领域中的人将会很明白,在不同命令执行的相同步骤可用于提供搜索结果重新分类技术。
在方框402中,在一个已打开的文档中监控标记。该文档可为任意类型的电子文档,例如一个网页、一个字处理文档、一个电子邮件信息等。只要没有触发一个目录搜索的标记输入(“否”分支,方框404),那么监控在方框402中继续。如果输入一个标记以确定一个标记来触发一个目录搜索(“是”分支,方框404),那么基本查询项从标记(方框406)中得到,以开始建立将最终用于搜索中的查询。
至少在目录搜索中有两种不同的方式可以通过系统识别和启动。在第一执行过程中,用户标注他感兴趣的项,然后执行告诉系统执行一个目录搜索的操作。该操作可以生成一个系统作为命令识别的标记,以执行一个目录搜索、选择一个搜索光标等。在至少一个执行中,一旦识别标记或出现用户在标记上移动笔或记录笔的事件,系统就弹出一个包括一个目录搜索选项的菜单。然后用户从弹出菜单上挑选一个目录搜索选项。
在第二个执行过程中,系统通过识别用户想要执行的目录搜索自动启动一个目录搜索。它将由一个启动目录搜索的特殊标记来执行。例如,当用户对某些项划圈、当用户在文本中画双下划线、当用户使文本加亮等时,一个系统经过编程来启动一个目录搜索。
作为获得基本查询项的一个例子,假设用户正在阅读关于商标为“印地安人”摩托车的摩托车俱乐部爱好者的一篇网页文章,——偶而对买一辆摩托车感兴趣的用户想看商标为“印地安人”摩托车的更多信息。只要当用户阅读这篇文章时,该用户就会对单词“印地安人”作了标记。该标记或许是对该单词划了一个圆圈或对其加了双下划线等。
于是这种搜索查询的建立通过基本项“印地安人”来启动。然而,如果对单一项执行搜索,用户就会从关于美国印地安人直到印度的一本名为“印度人在新英格兰的夏天”的书评的文章范围中得到结果。该用户真正感兴趣的文章是——如一篇关于“印地安人”摩托车的消费者报告——很可能远远地排在目录后面,这就使读者在找到感兴趣的位置之前不得不细读许多题目。
但是在方框408中,<第1层>关键字在与该文档相关的文档对象模型(DOM)树中定位,并且它们也加入到查询中。<第1层>关键字作为文档对象的特征定义,该对象在DOM树中相对接近该标记。如何精确接近该标记是一个执行的细节,对于每个特殊应用程序将分别定义。在该例子中,附加的搜索项“摩托车”会加到基本查询项“印地安人”中。这就极大地缩小了搜索结果。
另外,在方框410中,<第2层>关键字定位在DOM树中。<第2层>关键字是离DOM树中标记比<第1层>特征更远的范围的特征。在此例子中,这会增加附加的搜索项如“会议”、“信息”及“新闻”(如句子“成员们举行月会,共享关于印地安人摩托车的信息、新闻和轶事”)。
于是在方框412中赋予这种搜索项一个特殊“权值”。给已标记的或基本项一个最高权值,并给<第2层>项最低权值,同时在两者之间的某处给<第1层>一个权值。在方框414中,查询搜索项和它们对应的权值用于生成一个关键字向量。
该关键字向量包括关键字,它们每个都有相应的权值。在此例子中,一个关键字向量可为[(印地安人,0.6)(摩托车,0.4)(信息,0.1)(会议,0.1)]。于是随后的搜索将根据这些权值排列结果。
关键字向量可用于本领域已知的任何方式来执行加权搜索。在至少一个执行中,一个关键字向量用一个余弦值来计算文档的相似性Sim(q,D)=Σtj∈∩(qj,Dj)qjDjΣqk2ΣDk2]]>
在方框416中,提供给用户一个弹出菜单来指定一个应该执行搜索的区域。例如,该弹出菜单可以指定一台本地计算机、一个本地网络驱动器、因特网等。另外该弹出菜单页同样可以指定一个用户取消搜索的“不搜索”选项。于是在方框418中搜索该指定的区域,并且该结果在方框420中反馈给用户。
应该明白一个包括加权项“印地安人”、“摩托车”、“会议”、“信息”及“新闻”查询很可能将处理用户真正想查找的而不是一个简单的“印地安人”查询的结果返回到更靠近顶部。同样,通过这种用户可得到的特征,就可节约时间和精力。
正如前面提到的,上面描述的可选的查询产生是重组结果。在这种过程中,一个搜索第一只利用标记项“印地安人”执行。关键字向量如上面的描述而产生,并在收到许多结果后,根据关键字向量重组结果。这种技术提供的结果与利用查询产生方法得到的结果很相似。
方法执行——基于标记的关键字搜索在其他情况下,用户或许想要在正在阅读的文档中找到关键字项。在当前文档中,在一个搜索框中输入关键项查找的典型方法在笔式系统中难于运行。另外,对于每个用户希望在文档中找到的关键项,该方法必须重复执行。
对于笔式系统,在正在阅读的文档中标记至少一个希望定位的关键项,且该关键项可自动定位,对用户更为有效。下面描述的标记关键字搜索描述了这种过程。
图5是一个描述了标记关键字搜索的方法执行的流程图500。在方框502中,在已打开的文档中监控标记。正如前面所述,该文档可为任意类型的电子文档,如一个网页、一个字处理文档、一个电子邮件信息等。只要没有触发关键字搜索的标记输入(“否”分支,方框504),那么该监控在方框502中继续进行。如果输入确定触发一个关键字搜索的标记(“是”分支,方框504),那么用户感兴趣的关键字很可能在方框506中确定。
确定至少一个触发关键字搜索的标记可以通过许多方式的不止一种来执行。例如,如果用户在标记上移动一支笔来弹出菜单,一个系统经过编程来启动一个关键字搜索,于是从该菜单中选项关键字搜索项目。在至少一种其他的执行中,某些类型的标记可用于触发一个关键字搜索。
为确定用户感兴趣的关键字有四种方法可用于该步骤中。在这个特殊执行中,信息过滤模块228(图2)设为执行下面描述的任务。
第一种方法确定Pr(w|u)假设当前用户(u),那么他对什么(w)词感兴趣?为了进行这种确定,学习模块(224,图2)设为监控用户行为并在特征数据库(222,图2)中存储某些与该行为相关的数据。
为了执行一个长期兴趣模型,学习模块224跟踪用户阅读的所有文档中出现的单词,并且过滤模块228通过确定在当前文档由学习模块224记录的单词的频率,确定出现在当前文档中的这些词的重要性。
跟踪每个特殊单词会在系统中带来过于繁重的任务。因此在这种执行中,通常可以忽略经常出现在文档中的某些部分语法。例如,单词如“这”、“或”、“因为”等可不跟踪。
希望这种过程提供用户短期感兴趣。在这种例子中,只有出现在用户最近访问的文档中的单词可与当前文档中的单词相比。例如,当前文档中的单词只能与用户前一周内访问的文档中的单词相比。
确定用户感兴趣的关键字的第二种方法可集中在用户所作的标记上。在这种执行中,信息过滤模块228确定频繁出现在包括该已标记单词的文档中的单词。于是这些单词确定为用户感兴趣的关键字。
确定用户感兴趣的相关单词关键字的第三中方法是根据用户过去的标记确定相关的关键字。在这种执行过程中,保持用户过去标记的历史记录。关键字与历史记录相,并且根据该关键字是否出现在历史记录中来调整与关键字相关的权值,如果这样,用户最后输入的关键字作为标记。
较高的权值将发现用户相对最近输入的该关键字(参考历史记录)相关。同样,在历史记录中发现但在较长时间前使用的关键字将收到较小的权值调整。未在历史记录中找到的关键字没有增加权值,但是将保持在一个通用权值或者有一个已经指定的减少权值。
第四种方法与第三种方法相似,除了所有用户的过去标记——不止是当前用户——都进行考虑外。上面描述的相同技术——利用一个标记历史记录——这里同样使用,除了使用包括所有用户的所有标记的历史。
在用户可能感兴趣的关键字确定后,这些关键字作为建议关键字(方框508)传给用户。于是用户在方框510中选择至少一个建议关键字。于是在方框512中,已选出的关键字在全文中加亮,每个单独的关键字用不同的颜色加亮(如果系统显示器是彩色的显示器)。
方法执行——标记向导利用标记会使笔式计算系统更为容易管理,另一方式就是一种用户可以指定一个特殊任务给一个特殊向导的情况。向导是一个命令或控制计算机功能的墨水对象,而不是手写的或绘制的墨水对象。因此,用户可以作出一个标记并且将基本任务与标记相联系。然后,当系统检测相同的标记时,系统将执行与该标记相关的任务。
图6是一个描述了利用笔式系统中一个标记作为向导的方法执行的流程图600。在方框602中,在一个已打开的电子文档中抽取模块220(图2)监控标记。只要未检测到表示一个向导的标记(“否”分支,方框604),那么监控在方框602中继续进行。如果检测到向导(“是”分支,方框604),那么确定该向导是新的向导还是以前用过的向导。
这儿有许多方式,用户可以表示一个系统中的特殊标记作为向导。在一个执行中,用户作出一个标记并不止一秒钟的强加该标记。笔的扩展抽头将正被指向的标记意味一个向导指示给该系统。
当指示一个向导的时候,系统必须搜索特征数据库222来确定该向导以前是否用过。如果该向导是新的向导(“否”分支,方框606),那么就记录该标记,如存储在特征数据库222中(方框608)。在用户作出向导指示后,用户就输入至少一个与向导标记相关的命令。这些与向导相关的命令在方框612中接收,并在方框614中用相关的标记存储在特征数据库222中。然后这些向导命令在方框616中执行。
如果在检测向导指示后,向导定位在特征数据库222中,即该向导不是新的向导,但是以前已经用过(“否”分支,方框606),那么从特征数据库222中得到与向导相关的命令,并在方框616中执行。
作为例子,假设一个想生成向导来打开一个日历程序的用户。该用户决定一个无穷大标记(∞)将用于启动该日历程序。该用户在已打开的电子文档上作出标记(无穷大标记),然后在该无穷大标记上氢敲和移动笔。用户这样做的第一次,系统找不到向导并将提示用户输入命令来与标记关联。于是该用户执行步骤来启动该日历程序。于是这些步骤与无穷大标记相关联,并且存储该标记和相关步骤。
下一次当用户想要启动该日历程序时,用户作出无穷大标记并强加于该标记。系统将识别向导并将执行命令以启动该日历程序,于是在启动该应用程序中节省用户时间和步骤。
与其他特征一样,该系统包括一个便捷的方式,如果必要,用户可以改变该特征。
结论正如所描述的系统和方法,在笔式系统中提供了一种更好的管理标记的方式,以使该系统对用户来说更为容易地用于执行典型的任务。提供一个对于用户使用是更为方便的笔式系统,也促进了笔式系统在市场中的使用。
尽管上面已描述了特殊的执行及实施例的细节,这些细节的目的是用于满足法定的公开义务,而不是用于限定下面权利要求的保护范围。因此,正如权利要求所限定的本发明并不限于上面描述的具体特征。相反,依照等同原则的适当解释,本发明要求保护落在后面权利要求的适当范围中其任何形式或变化。
权利要求
1.一种方法,包括为用户标记监控一个电子文档;识别输入到电子文档中的一个标记;利用该标记和上下文数据,定位与标记相关的信息;及收集与该标记最接近的上下文数据。
2.如权利要求1所述的方法,其中该搜集上下文数据进一步包括从与标记最相关的文本中,抽取至少一个单词。
3.如权利要求1所述的方法,其中该搜集上下文数据进一步包括在与标记相关的文档对象模型(DOM)中,定位接近于一标记对象的对象。
4.如权利要求1所述的方法,其中该搜集上下文数据进一步包括从该标记定义第一距离;从该标记定义第二距离;从该标记的第一距离内,定位至少一个关键字;从该标记的第二距离而不是从该标记的第一距离内,定位至少一个关键字;根据从它们到该标记的距离,为至少一个关键字赋权值,在第一距离内的关键字比在第二距离而不在第一距离内的关键字有较大的权值;其中与该标记相关的定位信息根据其所赋的权值应用该关键字。
5.如权利要求1所述的方法,其中该收集的上下文数据进一步包括获得至少两个搜索项;将该搜索项与搜索项的历史记录对比;及根据一个特殊搜索项是否包括在该搜索项的历史记录中,为每个搜索项赋权值,将赋予一个包括在搜索项历史记录中的搜索项一个较大的权值。
6.如权利要求5所述的方法,其中该搜索项的历史记录进一步包括一个特殊用户使用过的搜索项的历史记录。
7.如权利要求5所述的方法,其中该搜索项的历史记录进一步包括一组特殊用户的所有用户使用过的搜索项的历史记录。
8.如权利要求1所述的方法,其中与该标记相关的该定位信息进一步包括搜索与该标记相配或相似的项的电子文档。
9.如权利要求1所述的方法,其中与该标记相关的该定位信息进一步包括搜索包括与该标记相配或相似的项的文档的远程站点。
10.如权利要求1所述的方法,其中与该标记相关的该定位信息进一步包括确定基于该标记的用户可能感兴趣的关键字,及包括在用户以前访问过的文档中的单词;及使用该关键字来定位信息。
11.如权利要求5所述的方法,其中该以前的文档限于在一段特殊时期访问过的文档。
12.如权利要求1所述的方法,其中与该标记相关的该定位信息进一步包括确定基于该标记的用户可能感兴趣的关键字,及与该标记一起出现在用户访问的以前文档中的单词;及使用该关键字来定位信息。
13.如权利要求1所述的方法,其中该标记进一步包括下面标记类型中的一种圆圈、下划线、方框、箭头、插图的编号、公知符号、符号后缀。
14.一种系统,包括一个标记监控模块,设为来监控输入一个标记的电子文档;一个抽取模块,设为来收集出现在输入到该电子文档中一个标记附近的上下文数据,及从该上下文数据中抽取至少一个关键字;一个信息处理模块,设为来使用该标记关键字以定位相关内容。
15.如权利要求14所述的系统,进一步包括一个历史模块,它包括至少在该系统中用过的一个历史关键字;及其中该抽取模块进一步设为根据该关键字是否包括在该历史模块中来权衡关键字。
16.如权利要求14所述的系统,其中该上下文数据进一步包括许多从与该标记最接近的原文中得到的关键字;该抽取模块进一步设为根据该关键字离该标记的相对距离来为每个关键字赋予权值;该信息处理模块进一步设为来启动一个基于该标记和已赋权值的关键字的搜索。
17.如权利要求16所述的系统,其中该搜索利用标记作为搜索项来执行的,并且该搜索结果根据该已赋权值的关键字重组。
18.如权利要求16所述的系统,其中该搜索利用从该标记和已赋权值的关键字得到的查询来执行。
19.如权利要求14所述的系统,其中由该信息处理模块定位的相关内容进一步包括包含在该电子文档中的关键字。
20.如权利要求14所述的系统,其中由该信息处理模块定位的相关内容进一步包括包含至少一个关键字的网络上的文档。
21.如权利要求14所述的系统,其中该信息处理模块进一步设为根据该标记和出现在用户访问过的其它文档中且其中有相同标记输入的字确定可能是用户感兴趣的建议关键字。
22.如权利要求21所述的系统,进一步包括一个用户接口,设为用于将该建议关键字传给用户,并通过用户提供没有或至少一个建议关键字的选择。
23.至少一个计算机可读介质包括计算机可执行指令,当在一台计算机上运行时,执行以下步骤识别用户输入到电子文档中的标记;收集与该标记位置相关的上下文数据;及通过使用至少一个用该标记表示的单词和至少一个从该上下文数据中得出的关键字执行搜索,定位用户可能感兴趣的附加内容。
24.如权利要求23中所述的至少一个计算机可读介质,其中该标记是包括在下面集合中的标记一个圆圈、一个方框、一个箭头、一条下划线、一条双下划线、一个括号、一个加亮区、一个手写字母、公知符号、符号后缀。
25.如权利要求23中所述的至少一个计算机可读介质,其中收集与该标记位置相关的上下文数据进一步包括收集出现在从与该标记对象关联的一个文档对象模型中的一个标记对象的一定距离内的对象。
26.如权利要求23中所述的至少一个计算机可读介质,其中定位附加内容进一步包括定位在电子文档中的至少一个本地关键字。
27.如权利要求23中所述的至少一个计算机可读介质,其中定位附加内容进一步包括在网络中定位至少一个文档,该文档包括至少一个由标记表示的单词或至少一个从该上下文数据中得出的关键字。
28.如权利要求23中所述的至少一个计算机可读介质,其中该定位附加内容进一步包括,通过识别经常与该标记一起出现在用户访问过的其它文档中的单词,从该上下文数据得出至少一个关键字。
29.如权利要求23中所述的至少一个计算机可读介质,其中该定位附加内容进一步包括,通过识别经常与该标记一起出现在用户访问过的其它文档中的单词,从该上下文数据得出至少一个关键字。
30.如权利要求23中所述的至少一个计算机可读介质,进一步包括为该关键字赋权值;根据已赋权值的关键字排列搜索结果。
31.如权利要求30中所述的至少一个计算机可读介质,进一步包括查阅一个关键字历史记录清单的步骤,该清单包括一当前用户以前使用过的关键字,其中该赋予关键字权值进一步包括给包含在该关键字历史记录清单中的关键字指定一个更大的权值。
32.如权利要求30中所述的至少一个计算机可读介质,进一步包括查阅一个关键字历史记录清单的步骤,该清单包括一组用户中所有用户以前使用过的关键字,其中该赋予关键字权值进一步包括给包含在该关键字历史记录清单中的关键字指定一个更大的权值。
全文摘要
这里描述的是笔式计算系统中管理标记的系统和方法。这里描述的本系统和方法提供收集、管理、搜索及共享通过手写标记方式输入的个人信息的方式。标记用于驱动应用程序、作为向导、查找相关信息并进一步管理信息。当用户输入信息时,得到上下文信息,该上下文信息用于帮助确定和定位用户可能感兴趣的相关内容,这些内容不论在本地计算机或因特网或其它网络上的同一或不同文档中。
文档编号G06F15/00GK1637741SQ20041008228
公开日2005年7月13日 申请日期2004年9月10日 优先权日2003年9月10日
发明者陈正, 李半顽, 王坚, 马维英 申请人:微软公司