CN101454782B - 协作环境的上下文搜索 - Google Patents

协作环境的上下文搜索 Download PDF

Info

Publication number
CN101454782B
CN101454782B CN200780019962.XA CN200780019962A CN101454782B CN 101454782 B CN101454782 B CN 101454782B CN 200780019962 A CN200780019962 A CN 200780019962A CN 101454782 B CN101454782 B CN 101454782B
Authority
CN
China
Prior art keywords
search
key
searchable
searchable item
item
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.)
Active
Application number
CN200780019962.XA
Other languages
English (en)
Other versions
CN101454782A (zh
Inventor
特里·M·奥金
阿洛科·斯里瓦斯塔瓦
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.)
Oracle International Corp
Original Assignee
Oracle International 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 Oracle International Corp filed Critical Oracle International Corp
Publication of CN101454782A publication Critical patent/CN101454782A/zh
Application granted granted Critical
Publication of CN101454782B publication Critical patent/CN101454782B/zh
Active 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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • G06F16/24566Recursive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2445Data retrieval commands; View definitions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)
  • Processing Or Creating Images (AREA)

Abstract

提供了以“键”来捕获项目之间的关系并使用键来辅助针对这些项目的搜索的技术和***。描述了反映可搜索项之间关系的键如何被存储。任意两个给定的可搜索项之间的分离度基于如下键的最小数目,所述键是当开始于这两个可搜索项之一时为到达这两个可搜索项中的另一个所必须穿越的键。键用于对搜索请求作出响应,从而执行和指定的可搜索项有关的搜索。例如,搜索机制可以仅搜索位于指定的可搜索项的特定分离度之内的那些可搜索项。又例如,搜索机制可基于多个可搜索项离指定的可搜索项的分离度来确定针对搜索请求的搜索标准比较可搜索项的次序。另外,搜索机制可至少部分地基于多个可搜索项与指定的可搜索项之间的分离度来对匹配搜索的可搜索项进行排名。

Description

协作环境的上下文搜索
技术领域
本发明涉及搜索,更具体地,涉及基于可搜索项之间关系的搜索。
背景技术
计算机用户频频搜索多个项。两种常用的搜索类型包括使用因特网搜索引擎搜索网页,和搜索磁盘目录找寻文件。在这两种情况中,搜索机制通常允许用户指定用户正在搜索的项所拥有的属性(关键字、文件名等等)。搜索引擎搜索具有指定属性的项,并将一组匹配项呈现给用户。在某些情况中,这组匹配项可以被排名。例如,因特网搜索引擎通常基于估计的与搜索标准的相关度来对匹配项进行排名。
在大多数搜索环境中,作为任何给定的搜索的目标的可搜索项往往是同类的。例如,在文件***环境中,文件***搜索引擎通常只针对文件执行搜索。在因特网环境中,因特网搜索引擎的任何给定的搜索通常只针对所有被索引网页、所有被索引数字图像或所有被索引视频剪辑来执行。网页、数字图像和视频剪辑作为URL都是可访问的,因而允许因特网搜索引擎找到它们。
虽然针对特定类型的项来运行的搜索在某些环境中有用,但是在其他环境中,更灵活的搜索机制会更好。例如,在协作环境中,很多类型的“协作产物”(collaborative artifacts)生成。协作产物是作为某些动作的结果产生的任意项。协作产物的示例包括办公文档、电子邮件、语音抄本(voice transcript)、即时消息抄本、传真、图像等。
到目前为止,在协作环境中找寻任何事物的传统方法是“暴力”搜索文件***。为了有效地使用暴力文件***搜索,这些产物必须全都位于同一处。然而,即使所有产物都在同一处,搜索也不得不查看每一项并且对哪些是与用户搜索的更相关的信息知之甚少(如果知道的话)。此外,整个搜索范围仅仅是文件***目录层次。人或搜索的“上下文”从来不是搜索公式的一部分。
本节描述的方法是可以继续从事的方法,但不一定是之前已被构想或从事的方法。因此,除非另外指明,不应因为包含在本节中,就认为本节描述的任何方法有资格作为现有技术。
附图说明
本发明在附图的图示中通过示例方式、而不是通过限制方式来阐述,附图中相似的参考标号指代相似的要素,其中:
图1是根据本发明的实施例例示可搜索项之间的键的框图;
图2是根据本发明的实施例例示键和可搜索项在数据库中可以如何表示的框图;并且
图3是可实施本发明的实施例的计算机***的框图。
具体实施方式
在以下描述中,出于解释的目的,提出很多具体细节以提供对本发明的全面理解。然而很明显,实施本发明可以不需要这些具体细节。在其他实例中,公知的结构和设备以框图形式示出以避免不必要地模糊本发明。
【概要】
此处描述用于捕获可搜索项之间“关系”和使用这些关系来改善针对可搜索项执行的搜索的技术。用来记录这些关系的数据项在这里被称为“键”。与在网页内找到的“链接”不同,键与由它们来表示其关系的项相分离地存在。总的来说,键所表示的关系形成连接图,其中图的节点对应于可搜索项,图的边对应于可搜索项之间的键。
允许搜索从图中任意节点开始的搜索机制被提供。优选地,起始节点是基于到由搜索节点表示的项的逻辑连接和搜索目标来选择的。在一个实施例中,关系网(network of relationships)指示执行搜索的顺序。例如,搜索路径可以遵循从起始节点开始到每个直接相连的节点(第一分离度)为止的关系。若未找到匹配,则搜索机制可对这些第一级节点的每一个向外(到第二级,等等)重复搜索。通过以这种方式的搜索,在搜索过程中早早发现正确结果的机会得到改善。
在一个实施例中,关系网对于在搜索中考虑哪些搜索项有影响。例如,搜索机制可允许用户同时指定起始节点和最大分离度。在该示例中,搜索机制可按上述进行,但在到达位于指定最大分离度的节点之后停止搜索。因此,落在指定最大分离度之外的节点在搜索中甚至不会被考虑。
又例如,搜索机制可允许用户指定最大命中数。一旦达到该命中数,搜索操作便停止。结果,搜索将返回与最接近起始节点的N个匹配节点相关的可搜索项,其中N是指定的最大命中数。
在一个实施例中,搜索针对可搜索项的完整集合来执行。然而,起始节点和匹配项之间的分离度是用来确定这些匹配项如何被排名的因素之一。因此,在搜索结果中,位置离起始节点更近的节点的匹配项可以比位置离起始节点更远的节点的匹配项排得更高。
【可搜索项】
这里所使用的术语“可搜索项”用来指代可对其执行搜索的任何项。在协作***的环境中,可搜索项可同时包括“行动者”和“产物”。行动者是人(或表示人的电子信息)。产物是作为某种行动的结果产生的任何项。依据***,产物可包括:全部网页、部分网页、文档(文字处理文档、电子表格等)、电子邮件消息、图像、任务、会议等等。
此后描述的技术允许针对异类可搜索项的集合来执行搜索。例如,可搜索与特定会议直接相关的所有可搜索项。这种搜索的结果可包括与会议有关的一组被邀请者、一组出席者、文档(议程)以及一组电子邮件消息。
协作环境仅仅是可使用此处描述的技术的环境的一个示例。然而,这些技术不限于任何特定环境。例如,这些技术可被文件***搜索引擎使用、被因特网搜索引擎使用、或被任何其他执行搜索以定位由数字信息表示的项的环境使用。
【键】
如上所述,此处描述的技术包括存储表示一组可搜索项中多项之间的关系的键,然后使用由这些键表示的网络来辅助针对这组可搜索项执行的搜索。值得注意地,键是与它们所连结在一起的项相分离地生成并存储的。结果,键能够表示本质上不支持项间(inter-item)联系的项之间的关系。例如,键可表示人和图像文件之间的联系,其中人或图像文件都不以支持项间联系的格式表示。
根据一个实施例,存在多种类型的键。不同类型的键具有不同属性。最简单形式的键的唯一属性是标识处于该键所表示的关系中的可搜索项的属性。在更复杂的形式中,键的属性还可指定键的类型、键的创建日期、与键有关的安全规则等。键的结构复杂度没有限制。
键可以是一对一、一对多或多对一的。例如,会议和与会者之间的键可以是一对多的。另一方面,电子邮件消息和该电子邮件消息的发送者之间的键可以是一对一的。
【类型化的键】
根据一个实施例,一组预定的键类型被建立。每种键类型用来表示一种不同类型的关系。例如,可以存在“普通”键类型、“作者”键类型、“审阅者”键类型和“出席者”键类型。不同类型的信息可以与不同类型的关系相关。结果,每种键类型具有一组可能和其他键类型的属性不相同的属性。例如,普通键类型可以只具有用于识别关系中涉及的项的属性,而“出席者”键类型还可包括指明出席日期的日期属性,以及指明该特定出席者的出席是可选的还是强制的“要求”属性。
作为提供一组预定键类型的替代或补充,可以提供允许用户(a)创建定制用户定义的键类型,和(b)扩展预定键类型的属性的机制。作为后者的一个示例,用户可能想要将举行者属性添加到出席者键类型,以指示该键中标识的出席者是否为举行该键中标识的会议的那个人。
【在可搜索项之间建立键】
在键可被用于辅助针对一组可搜索项来执行的搜索之前,键必须被创建。根据一个实施例,提供了允许用户手动创建键的机制。例如,可以提供允许用户指定(1)键类型,和(2)键将表示的关系中涉及的可搜索项的用户接口。一旦键类型和有关项被指定,键的属性便自动或手动地用值来填充,并且该键被持久地存储。
例如,用户可通过(1)选择“议程”键类型,(2)选择文字处理文档,(3)选择会议,和(4)提供“议程”键类型的任意属性的值来手动创建文字处理文档和会议之间的键。一旦创建,键便被存储并用于辅助可搜索项的搜索,如下面将更详细地描述的那样。
作为键的手动创建的替代或补充,可提供基于***内的活动来自动创建键的机制。例如,假定用户X向用户Y发送电子邮件,其中电子邮件包含附加的文档。在该示例中,***可以被配置成自动生成和存储用户X和电子邮件之间的“发送者”键,用户Y和电子邮件之间的“发送到”键,以及电子邮件和附加文档之间的“附加到”键。当这些键生成时,键的属性可由***自动填充。在一个实施例中,***可提示用户手动指定自动生成的键的一个或更多个属性的值。
电子邮件的发送仅仅是可能导致键的自动创建和存储的动作的一个示例。实际上任何在电子化表示的事物之间建立关系的动作都可能导致一个或更多个键的生成和存储。例如,存储新文档可导致用户和新存储的文档之间的“作者”键的自动生成。邀请一群人参加会议可导致会议和每个被邀请者之间的“被邀请者”键的自动生成。当会议以视频会议的形式召开时,来自视频会议的捕获视频可被保存,并且“视频”键可在会议或捕获视频之间自动创建。
【示例关系网】
参考图1,它是例示根据本发明实施例的关系网的框图。所示关系网中的项(节点)包括三个人(Fred 108,Sally 110和Sam 112)、文档的两个版本(102和104)、电子邮件106和会议114。
节点之间的关系包括:
○ DOC_A V1 102和会议114之间的“议程”关系152
○ DOC_A V1 102和Fred 108之间的“作者”关系156
○ DOC_A V1 102和Sally 110之间的“审阅者”关系158
○ DOC_A V1 102和Sam 112之间的“审阅者”关系160
○ DOC_A V2 104和Sally 110之间的“创建者”关系162
○ DOC_A V2 104和Sam 112之间的“审阅者”关系164
○ 电子邮件106和Fred 108之间的“发送到”关系168
○ 电子邮件106和Sally 110之间的“发送者”关系166
○ 电子邮件106和Sam 112之间的“抄送”关系170
○ 会议114和Fred 108,Sally 110和Sam 112之间的出席者关系154
○ DOC_A V1 102和DOC_A V2 104之间的“版本”关系172
○ 电子邮件106和DOC_A V2 104之间的附件关系174
表示图1所示关系的键可以手动或自动生成。例如,用于作者146关系的键可在Fred保存DOC_A V1时自动创建。Fred可随后手动指定DOC_A V1是用于会议114的议程,导致用于议程关系152的键的生成。Fred 108可将Sally和Sam标识为DOC_A V1的审阅者,导致用于关系158和160的键的生成。
Sally可修改DOC_A来创建DOC_A V2。该修改导致用于关系172和162的键的生成。Sally随后可要求Sam审阅DOC_A V2,导致用于关系164的键的生成。在Sam认可该修订后,Sally可将修订后的文档在抄送给Sam的电子邮件中发回给Fred。附加该文档并发送电子邮件导致用于关系168、166、174和170的键的生成。最后,Fred、Sally和Sam出席会议,导致用于一对多关系154的键的生成。
【键表示】
如上所述,键是基于项之间的关系手动和/或自动生成的。用于表示这种键的数据结构以及用于存储它们的容器可依实现方式而不同。此处描述的技术既不限于任何特定的键数据结构,也不限于存储机制。
参考图2,它例示了用于表示和存储键的简单机制。在图2中,数据库200包括键表202和项目表204。项目表204包括用于每个可搜索项的行。用于每个可搜索项的行包括项标识符和位置信息。项标识符用于相对于一组可搜索项的所有其他项地、唯一地标识该项。行的位置信息指示该行中标识的项(或有关该项的信息)位于何处。
值得注意地,项本身无需存储在项目表204中。实际上,这些项甚至可能既不在数据库200中也不在数据库200所驻留的网络中。因此,项目表204中表示的项可包括遍布于很多存储设备的文件、遍布于很多电子邮件***的电子邮件、来自很多不同公司的人等等。因此,项目表204可包括用于遍布在异类***集合中的异类项集合的行。
键表202存储表示键的行。每行包括键标识符和两个项标识符。行的键标识符唯一地标识该行所表示的键,并且两个项标识符表示该键所表示的关系中的两个项。例如,键表202的第一行存储用于图1的关系156的键。因此,该行包括键标识符156和项标识符102和108。标识符102和108分别表示来自图1的DOC_A V1 102和Fred 108。
键表202中表示的键是简单的键。更复杂的键将包括另外的属性。对于具有另外属性的键,键表202可包括更多列,或者可包括到用于存储另外属性的一个或更多个其他表的索引。类似地,另外的表可用来支持用于一对多和多对一关系的键。
值得注意地,反映项之间关系的键甚至在这些项本身不再反映该关系之后可仍然存在。例如,附件键174甚至在DOC_A V2 104已脱离电子邮件106之后可仍然存在。因此,键可用于发现这样的关系并基于该关系进行搜索,所述关系在除了该键以外的任何地方都不再被反映。
【搜索标准】
根据一个实施例,搜索机制允许用户挑选可搜索项作为搜索“起点”。如此后将要详细描述的那样,所选起点可同时影响搜索结果的内容和排名。
除了起点,用户还可指定:
○ 与可搜索项有关的搜索标准
○ 与键有关的搜索标准
○ 与分离度有关的搜索标准
○ 与停止条件有关的搜索标准
与可搜索项有关的搜索标准通常指定可搜索项的某种期望性质。一般地,为项目指定的搜索标准的类型将取决于被寻找项的性质。例如,若该项是文档(如文字处理文档、电子表格或网页),则用户可指定该文档中包含的某些关键字。若该项是文件,则用户可指定创建日期、修改日期、文件名、大小等等。若该项是会议,则用户可指定日期、组织者、持续时间等等。若该项是人,则搜索标准可包括姓名、年龄、性别、职位等等。
不同类型项的性质之间常常存在重叠。因此,指定“大小”的搜索可与电子邮件、文档、图像等匹配。
与键有关的搜索标准通常指定在搜索操作期间应被穿越的键的某种期望性质。例如,搜索起点可能是会议,并且搜索标准可使搜索仅限于“被邀请者”。结果,在搜索期间,搜索机制将只穿越是“被邀请者”键的那些键。
又例如,搜索标准可对键的属性值施加约束。不具有满足约束的属性值的键不被穿越。例如,“出席者”键可包括“要求”属性。对于任何给定的出席者键,“要求”属性的值可以是“真”或“假”。为了进一步约束对出席者的搜索,用户可将搜索约束在“要求”等于“真”的出席者键中。值得注意地,该约束是对关系的属性做出的,而不是对针对其执行搜索的可搜索项的任何属性做出的。
与分离度有关的搜索标准指示相对于指定起点将搜索延伸到多远。例如,用户可指定在搜索中使用的分离度小于等于5。这种情形下,搜索将限于那些处在起点的五次键穿越之内的节点。
又例如,与分离度有关的搜索标准可指定分离度为4。这种情形下,只有那些离起点正好4次键穿越的可搜索项将有资格被包含在搜索结果中。
关于停止条件,用户可指定搜索应在定位了指定数目的匹配项之后停止。在一个实施例中,在起点指示执行搜索的次序的情况下,指定N个匹配项的停止点将生成与起点最接近的N个匹配项的结果集。结果,即使指定的搜索标准保持原样,改变搜索起点也会产生完全不同的结果。
【基于键的搜索】
如上所述,由存储的键表示的被连接网络用于辅助针对一组可搜索项来执行的搜索。具体而言,当进行搜索时,键通过影响(1)哪些项被搜索,(2)这些项被搜索的次序,以及(3)搜索结果的排名中的一个或更多个的方式被用作穿越路径。
根据一个实施例,搜索开始于指定的起点,然后在如下阶段中继续,其中每个后续阶段以递增的分离度执行。例如,在第一阶段期间,查询搜索标准是针对被连接网络内驻留于离起点1个分离度处的所有可搜索项来进行比较的。因此,若图1中起点为DOC_A V2 104,则查询的匹配标准被与DOC_A V1 102、Sally 110、Sam 112和电子邮件106进行比较。
在第二阶段期间,匹配标准是针对驻留于离起点2个分离度处的所有可搜索项来进行比较的。在本示例中,第二阶段将涉及将匹配标准与会议114和Fred 108进行比较。
该搜索过程持续直到所有可搜索项都已被考虑为止,或者某些其他停止条件被满足为止。其他可能的停止条件包括例如:到达用户指定的“命中”目标数,或者到达用户指定的最大分离度。
即使停止条件对于整个搜索尚未被满足,沿任意给定的穿越路径向下进行的搜索也可因为各种原因而停止。例如,搜索请求可指定特定于键的搜索标准。当情况如此时,搜索机制将特定于键的搜索标准与每个键的属性进行比较。若键不满足特定于键的搜索标准,则键不被穿越。结果,仅通过穿越键可到达的可搜索项在搜索中不被考虑,即使这些项实际上满足搜索中指定的所有特定于项的搜索标准也是如此。
根据另一实施例,搜索以深度优先的方式执行。例如,若指定了最大分离度,则搜索沿一条穿越路径向下进行直至到达最大分离度为止。搜索随后沿另一穿越路径向下进行直至到达最大分离度为止。该过程持续直至所有可能的穿越路径都已被穿越到最大分离度为止。
在又一实施例中,可搜索项可按不对应于键网的连通性的次序来评估。然而,键网仍可能影响搜索结果。例如,匹配项和起点之间的分离度可能影响搜索结果中匹配项的排名。通常,离起点的分离度越低,匹配项排名越高。
【安全受限的搜索】
安全策略可以是沿特定穿越路径向下进行的搜索可能过早终止的另一原因。根据一个实施例,键可包括管理哪些用户被允许穿越键的安全属性。例如,假设特定键具有只允许特定用户组穿越键的安全属性。当不属于该组的用户执行搜索时,搜索机制将不越过键进行搜索,即使所有其他的用户指定的搜索标准都被该键满足也是如此。为了搜索的目的,用户不被允许穿越的键被视为不存在。结果,在搜索期间执行的网络穿越将不到达驻留于这种键另一边的可搜索项。
根据一个实施例,键本身不具有安全属性,但被认为“继承”其“另一边”项目的安全属性。例如,假设DOC_A V2 104是搜索的起点。相对于DOC_A V2 104,电子邮件106位于附件键174的另一边。结果,附件键174将被视为具有与为电子邮件106定义的相同的访问控制。若进行搜索的用户不被允许查看电子邮件106,则搜索机制将不穿越附件174。
相反,假设电子邮件106是搜索起点。相对于电子邮件106,DOC_AV2 104位于附件键174的另一边。结果,附件键174将被视为具有与DOC_A V2 104相同的访问控制。
【硬件概要】
图3是例示可实施本发明的实施例的计算机***300的框图。计算机***300包括总线302或其他用于传递信息的通信机制,以及耦合到总线302用于处理信息的处理器304。计算机***300还包括耦合到总线302用于存储信息和将由处理器304运行的指令的主存储器306,如随机存取存储器(RAM)或其他动态存储设备。主存储器306还可在由处理器304运行的指令的运行期间用于存储临时变量或其他中间信息。计算机***300还包括耦合到总线302用于存储用于处理器304的静态信息和指令的只读存储器(ROM)308或其他静态存储设备。诸如磁盘或光盘之类的存储设备310被提供并耦合到总线302用于存储信息和指令。
计算机***300可经由总线302耦合到诸如阴极射线管(CRT)之类的用于向计算机用户显示信息的显示器312。包括文本数字和其他键在内的输入设备314耦合到总线302用于向处理器304传递信息和命令选项。另一种类型的用户输入设备是诸如鼠标、轨迹球或光标方向键之类的用于向处理器304传递方向信息和命令选项并用于控制显示器312上的光标运动的光标控制器316。该输入设备通常具有第一坐标轴(例如,x)和第二坐标轴(例如,y)这两个坐标轴上的两个自由度,允许设备指定平面上的位置。
本发明涉及用于实现此处描述的技术的计算机***300的使用。根据本发明的一个实施例,这些技术由计算机***300响应于处理器304运行主存储器306中包含的一个或更多个指令的一个或更多个序列而执行。这类指令可从诸如存储设备310之类的另一机器可读介质读入主存储器306。主存储器306中包含的指令序列的运行导致处理器304执行此处描述的处理步骤。在替代实施例中,硬连接的电路可以取代或结合软件指令来实施本发明。因此,本发明的实施例不限于硬件电路和软件的任何特定组合。
此处使用的术语“机器可读介质”指代任何参与提供令机器以特定方式操作的数据的介质。在使用计算机***300来实施的实施例中,各种机器可读介质被包含在例如向处理器304提供指令以供执行。这类介质可采用很多形式,包括但不限于非易失性介质、易失性介质和传输介质。非易失性介质例如包括光盘或磁盘,如存储设备310。易失性介质包括动态存储器,例如主存储器306。传输介质包括同轴电缆、铜线和光纤,包括含有总线302的线。传输介质还可采用声波或光波的形式,如在无线电波和红外数据通信期间生成的那些波。
机器可读介质的普通形式例如包括软盘、柔性盘、硬盘、磁带或任何其他磁介质、CD-ROM、任何其他光介质、穿孔卡、纸带、任何其他具有孔样式的物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其他存储芯片或卡盘、下文将描述的载波、或任何其他计算机可以读取的介质。
各种形式的机器可读介质可被包含在将一个或更多个指令的一个或更多个序列携带至处理器304以供处理。例如,指令最初可以在远程计算机的磁盘上携带。远程计算机可以将指令加载到它的动态存储器中并使用调制解调器通过电话线发送指令。计算机***300本地的调制解调器可以取得电话线上的数据并使用红外发送器来将数据转换成红外信号。红外检测器可以接收红外信号中携带的数据,并且适当的电路可以将数据放在总线302上。总线302将数据携带到主存储器306,处理器304从主存储器306取得并运行指令。由主存储器306接收的指令在被处理器304运行之前或之后可选地存储在存储设备310上。
计算机***300还包括耦合到总线302的通信接口318。通信接口318提供耦合到网络链路320的双向数据通信,网络链路320连接到本地网322。例如,通信接口318可以是向相应类型的电话线提供数据通信连接的综合业务数据网(ISDN)卡或调制解调器。又例如,通信接口318可以是向兼容的LAN提供数据通信连接的局域网(LAN)卡。还可实现无线链路。在任何一个这种实现方式中,通信接口318发送并接收携带表示各种类型信息的数字数据流的电、电磁或光信号。
网络链路320通常通过一个或更多个网络向其他数据设备提供数据通信。例如,网络链路320可通过本地网322向主机324或由因特网服务提供商(ISP)326操作的数据装备提供连接。ISP 326进而通过现在常被称作“因特网”328的万维分组数据通信网络提供数据通信服务。本地网322和因特网328都使用携带数字数据流的电、电磁或光信号。携带数字数据至计算机***300或从计算机***300携带数字数据的、穿过各种网络的信号以及网络链路320上的、穿过通信接口318的信号是传送信息的载波的示例性形式。
计算机***300可以通过(一个或多个)网络、网络链路320和通信接口318发送消息和接收数据,包括程序代码。在因特网示例中,服务器330可通过因特网328、ISP 326、本地网322和通信接口318发送对应用程序的请求代码。
收到的代码可在其被接收时由处理器304运行,并/或存储在存储设备310或其他非易失性存储器中供今后使用。通过该方式,计算机***300可通过载波的形式获得应用代码。
在前面的说明书中,已参考可因实施方式而不同的多个具体细节描述了本发明的实施例。因此,关于本发明是什么以及本发明的申请人想要什么的唯一且专门的指示是本申请产生的一组权利要求,所述权利要求以其产生的具体形式存在,并包括任何后续的修正。此处明确提出的对这些权利要求中包含的术语的任何定义应支配如权利要求中使用的那些术语的含义。因此,未在权利要求中明确记述的限制、要素、性质、特征、优点或属性不应以任何方式限制这些权利要求的范围。说明书和附图因此应在例示而非限制的意义上被理解。

Claims (26)

1.一种用于进行搜索的方法,其包括计算机实现的以下步骤:
存储反映多个可搜索项之间关系的键,
其中所述键不被存储为所述多个可搜索项的一部分,
其中所述键不反映所述多个可搜索项之间的存储位置关系,
其中任意两个给定的可搜索项之间的分离度基于当开始于这两个可搜索项之一时为到达这两个可搜索项中的另一个所必须穿越的键的最小数目;
接收搜索请求以执行搜索;
通过执行和特定可搜索项有关的搜索来对所述搜索请求做出响应,中执行所述搜索包括以下各项中的至少一项:
至少部分地基于一组可搜索项与所述特定可搜索项之间的分离度来对所述一组可搜索项进行排名;
针对位于离所述特定可搜索项第一分离度之内的可搜索项进行搜索:并且若基于所述搜索请求相同的、所述位于离特定可搜索项第一分离度之内的可搜索项的数目小于预定阈值,则将所述搜索扩展至位于离所述特定可搜索项第二分离度的可搜索项;
依次执行和所述特定可搜索项有关的一系列搜索,其中所述一系列搜索包括第一搜索和一个或更多个后续搜索,其中所述一个或更多个后续搜索中的每个搜索是针对这样的可搜索项来执行的,即比在所述系列中先于该搜索的任意搜索中搜索的可搜索项离所述特定可搜索项分离度更大的可搜索项;
只在位于所述特定可搜索项的特定分离度之内的可搜索项中搜索关键字;
基于可搜索项离所述特定可搜索项的分离度来确定可搜索项被搜索的次序;或者
确定请求所述搜索的用户是否满足与特定键相关的安全限制;并且若所述用户不满足所述与特定键相关的安全限制,则停止沿从所述特定键延伸出的穿越路径向下进行的搜索。
2.如权利要求1所述的方法,其中执行所述搜索包括只搜索位于所述特定可搜索项的特定分离度之内的那些可搜索项。
3.如权利要求1所述的方法,其中执行所述搜索包括基于所述多个可搜索项离所述特定可搜索项的分离度来确定针对所述搜索请求的搜索标准比较可搜索项的次序。
4.如权利要求1所述的方法,其中执行所述搜索包括至少部分地基于所述多个可搜索项与所述特定可搜索项之间的分离度来对匹配所述搜索的可搜索项进行排名。
5.如权利要求2所述的方法,其中所述搜索请求指定所述特定分离度。
6.如权利要求3所述的方法,其中执行所述搜索的步骤包括:
针对位于离所述特定可搜索项第一分离度之内的可搜索项进行搜索;以及
若匹配所述搜索请求的、所述位于离特定可搜索项第一分离度之内的可搜索项的数目小于预定阈值,则将所述搜索扩展至位于离所述特定可搜索项第二分离度的可搜索项。
7.如权利要求6所述的方法,其中所述搜索请求指定所述预定阈值。
8.如权利要求1所述的方法,其中所述特定可搜索项不是其他可搜索项的容器。
9.如权利要求1所述的方法,其中存储键的步骤包括存储至少一个表示如下关系的键,所述关系和该关系所涉及的可搜索顶存储在哪里无关。
10.如权利要求1所述的方法,其中所述存储键的步骤包括存储至少一个表示如下关系的键,所述关系在该关系所涉及的可搜索项中的任一个可搜索项的内容中不是显性的。
11.如权利要求1所述的方法,还包括响应于明确请求键的创建的用户输入来创建键。
12.如权利要求11所述的方法,还包括接收指定所述键拥有哪些属性的用户输入。
13.如权利要求12所述的方法,还包括接收从一组预定键类型中指定哪个键类型用于所述键的用户输入。
14.如权利要求1l所述的方法,还包括接收指定所述键的一个或更多个属性的值的用户输入。
15.如权利要求1所述的方法,还包括响应于在***中检测到的一个或更多个动作而自动创建键。
16.如权利要求3所述的方法,其中执行所述搜索的步骤包括:
依次执行和所述特定可搜索项有关的一系列搜索,
其中所述一系列搜索包括第一搜索和一个或更多个后续搜索,
其中所述一个或更多个后续搜索中的每个搜索是针对这样的可搜索项来执行的,即比在所述系列中先于该搜索的任意搜索中搜索的可搜索项离所述特定可搜索项分离度更大的可搜索项。
17.如权利要求1所述的方法,其中执行所述搜索的步骤包括:
确定特定键的属性是否满足在所述搜索请求中指定的标准;以及
若所述特定键的属性不满足所述标准,则停止沿从所述特定键延伸的穿越路径向下进行的搜索。
18.如权利要求1所述的方法,其中执行所述搜索的步骤包括:
确定请求所述搜索的用户是否满足与特定键相关的安全限制:以及
若所述用户不满足所述与特定键相关的安全限制,则停止沿从所述特定键延伸出的穿越路径向下进行的搜索。
19.如权利要求18所述的方法,其中所述与特定键相关的安全限制是在所述特定键的属性中标识的。
20.如权利要求18所述的方法,其中所述与特定键相关的安全限制是从所述键的相对于所述特定可搜索项的另一边的可搜索项继承的。
21.如权利要求1所述的方法,其中
所述多个键包括多个类型的键;
所述搜索标准指定特定类型的键,
22.如权利要求21所述的方法,其中
不同类型的键具有不同属性。
23.如权利要求1所述的方法,其中
所述多个键的至少一个子集具有特定的属性;
所述搜索请求的搜索标准与所述特定属性的值有关。
24.如权利要求1所述的方法,其中执行所述搜索的步骤包括针对可搜索项的异类集合来执行所述搜索。
25.如权利要求1或24中任一个所述的方法以下各项中的两项或更多项:
数字图像;
电子邮件消息;
表示人的记录:以及
表示会议的记录。
26.一种用于进行搜索的方法,包括计算机实现的以下步骤:
存储反映多个可搜索项之间关系的键,
其中所述键不被存储为所述多个可搜索项的一部分,
其中所述键不反映所述多个可搜索项之间的存储位置关系,
其中任意两个给定的可搜索项之间的分离度基于当开始于这两个可搜索项之一时为到达这两个可搜索项中的另一个所必须穿越的键的最小数目;
接收搜索请求以执行搜索,其中所述搜索请求指定和在所述执行搜索期间应该被穿越的键的属性有关的搜索标准;
通过关于将被用作搜索的起点的特定可搜索项地执行所述搜索,对所述搜索请求做出响应,
其中在所述搜索请求中指定的所述搜索标准确定在所述执行搜索期间应该穿越哪些键,并且
其中执行所述搜索包括以下各项中的至少一项:
至少部分地基于一组可搜索项与所述特定可搜索项之间的分离度来对所述一组可搜索项进行排名;
针对位于离所述特定可搜索项第一分离度之内的可搜索项进行搜索;并且若基于所述搜索请求相同的、所述位于离特定可搜索项第一分离度之内的可搜索项的数目小于预定阈值,则将所述搜索扩展至位于离所述特定可搜索项第二分离度的可搜索项;
依次执行和所述特定可搜索项有关的一系列搜索,其中所述一系列搜索包括第一搜索和一个或更多个后续搜索,其中所述一个或更多个后续搜索中的每个搜索是针对这样的可搜索项来执行的,即比在所述系列中先于该搜索的任意搜索中搜索的可搜索项离所述特定可搜索项分离度更大的可搜索项;
只在位于所述特定可搜索项的特定分离度之内的可搜索项中搜索关键字;
基于可搜索项离所述特定可搜索项的分离度来确定可搜索项被搜索的次序;或者
确定请求所述搜索的用户是否满足与特定键相关的安全限制;并且若所述用户不满足所述与特定键相关的安全限制,则停止沿从所述特定键延伸出的穿越路径向下进行的搜索。
CN200780019962.XA 2006-03-29 2007-03-19 协作环境的上下文搜索 Active CN101454782B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/393,139 2006-03-29
US11/393,139 US8332386B2 (en) 2006-03-29 2006-03-29 Contextual search of a collaborative environment
PCT/US2007/006896 WO2007126634A2 (en) 2006-03-29 2007-03-19 Contextual search of a collaborative environment

Publications (2)

Publication Number Publication Date
CN101454782A CN101454782A (zh) 2009-06-10
CN101454782B true CN101454782B (zh) 2014-01-29

Family

ID=38457633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200780019962.XA Active CN101454782B (zh) 2006-03-29 2007-03-19 协作环境的上下文搜索

Country Status (7)

Country Link
US (2) US8332386B2 (zh)
EP (1) EP1929414A2 (zh)
JP (1) JP5237260B2 (zh)
CN (1) CN101454782B (zh)
AU (1) AU2007243790C1 (zh)
CA (1) CA2647725C (zh)
WO (1) WO2007126634A2 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332386B2 (en) 2006-03-29 2012-12-11 Oracle International Corporation Contextual search of a collaborative environment
US7822765B2 (en) * 2007-07-20 2010-10-26 Fuji Xerox Co., Ltd. Component-based control system for collaborative exploratory search systems
JP4921335B2 (ja) * 2007-12-10 2012-04-25 キヤノン株式会社 ドキュメント処理装置及び検索方法
US8024324B2 (en) 2008-06-30 2011-09-20 International Business Machines Corporation Information retrieval with unified search using multiple facets
US8959087B2 (en) 2011-09-21 2015-02-17 Oracle International Corporation Search-based universal navigation
JP6222923B2 (ja) * 2012-12-28 2017-11-01 富士通株式会社 ファイル管理プログラム、ファイル管理装置およびファイル管理方法
US9679063B2 (en) 2013-11-13 2017-06-13 International Business Machines Corporation Search results based on an environment context
US20160063012A1 (en) * 2014-08-29 2016-03-03 Neelakantan Sundaresan Multi-user search or recommendation
US11429679B1 (en) * 2015-07-17 2022-08-30 EMC IP Holding Company LLC System and method for augmenting element records associated with the elements of a distributed computing environment with user-defined content

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819257A (en) * 1997-01-31 1998-10-06 Lucent Technologies Inc. Process for providing transitive closure using fourth generation structure query language (SQL)
CN1325076A (zh) * 2000-05-23 2001-12-05 上海万纬信息技术有限公司 网络中文信息综合搜索器

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3527540B2 (ja) * 1994-06-15 2004-05-17 株式会社アドイン研究所 情報検索装置
US5608900A (en) * 1994-06-21 1997-03-04 Internationl Business Machines Corp. Generation and storage of connections between objects in a computer network
JPH0934959A (ja) * 1995-07-14 1997-02-07 Roehm Properties Bv ギャンブル場統合装置
US6425016B1 (en) * 1997-05-27 2002-07-23 International Business Machines Corporation System and method for providing collaborative replicated objects for synchronous distributed groupware applications
US5995973A (en) * 1997-08-29 1999-11-30 International Business Machines Corporation Storing relationship tables identifying object relationships
JP3765175B2 (ja) 1998-01-09 2006-04-12 富士ゼロックス株式会社 コミュニケーションシステム
SG77163A1 (en) * 1998-03-06 2000-12-19 John Francis Chong A method of implementing an acyclic directed graph structure using a relational database
US6363378B1 (en) * 1998-10-13 2002-03-26 Oracle Corporation Ranking of query feedback terms in an information retrieval system
US6275974B1 (en) * 1998-12-30 2001-08-14 International Business Machines Corporation Efficient tracing of shorts in very large nets in hierarchical designs using breadth-first search with optimal pruning
US6442545B1 (en) * 1999-06-01 2002-08-27 Clearforest Ltd. Term-level text with mining with taxonomies
JP3918374B2 (ja) * 1999-09-10 2007-05-23 富士ゼロックス株式会社 文書検索装置および方法
US6816857B1 (en) * 1999-11-01 2004-11-09 Applied Semantics, Inc. Meaning-based advertising and document relevance determination
JP2003524259A (ja) * 2000-02-22 2003-08-12 メタカルタ インコーポレイテッド 情報の空間符号化及び表示
KR100426382B1 (ko) * 2000-08-23 2004-04-08 학교법인 김포대학 엔트로피 정보와 베이지안 에스오엠을 이용한 문서군집기반의 순위조정 방법
CN1381800A (zh) * 2001-01-12 2002-11-27 有限会社筑城软件研究所 联系信息管理***、联系信息管理用程序和记录媒体
JP3730174B2 (ja) 2001-01-12 2005-12-21 有限会社築城ソフト研究所 関係付け情報管理システム、関係付け情報管理用プログラム、及び記録媒体
US20030120630A1 (en) * 2001-12-20 2003-06-26 Daniel Tunkelang Method and system for similarity search and clustering
US7246128B2 (en) * 2002-06-12 2007-07-17 Jordahl Jena J Data storage, retrieval, manipulation and display tools enabling multiple hierarchical points of view
JP4040555B2 (ja) * 2002-08-09 2008-01-30 富士通株式会社 情報検索装置および情報検索プログラム
CA2496567A1 (en) * 2002-09-16 2004-03-25 The Trustees Of Columbia University In The City Of New York System and method for document collection, grouping and summarization
JP4583003B2 (ja) * 2003-03-20 2010-11-17 富士通株式会社 検索処理方法及びプログラム
US7593909B2 (en) * 2003-03-27 2009-09-22 Hewlett-Packard Development Company, L.P. Knowledge representation using reflective links for link analysis applications
US7580947B2 (en) * 2003-03-27 2009-08-25 Hewlett-Packard Development Company, L.P. Data representation for improved link analysis
WO2005029362A1 (en) * 2003-09-22 2005-03-31 Eurekster, Inc. Enhanced search engine
US20060235873A1 (en) * 2003-10-22 2006-10-19 Jookster Networks, Inc. Social network-based internet search engine
US7299222B1 (en) * 2003-12-30 2007-11-20 Aol Llc Enhanced search results
US7647300B2 (en) * 2004-01-26 2010-01-12 Google Inc. Methods and systems for output of search results
US20050209983A1 (en) * 2004-03-18 2005-09-22 Macpherson Deborah L Context driven topologies
US20050210008A1 (en) * 2004-03-18 2005-09-22 Bao Tran Systems and methods for analyzing documents over a network
US20060218111A1 (en) * 2004-05-13 2006-09-28 Cohen Hunter C Filtered search results
US7376643B2 (en) * 2004-05-14 2008-05-20 Microsoft Corporation Method and system for determining similarity of objects based on heterogeneous relationships
US7761474B2 (en) * 2004-06-30 2010-07-20 Sap Ag Indexing stored data
JP2006039753A (ja) * 2004-07-23 2006-02-09 Canon Inc 画像処理装置、画像処理方法
US7328209B2 (en) * 2004-08-11 2008-02-05 Oracle International Corporation System for ontology-based semantic matching in a relational database system
US8010460B2 (en) * 2004-09-02 2011-08-30 Linkedin Corporation Method and system for reputation evaluation of online users in a social networking scheme
US20060059210A1 (en) * 2004-09-16 2006-03-16 Macdonald Glynne Generic database structure and related systems and methods for storing data independent of data type
US8595223B2 (en) * 2004-10-15 2013-11-26 Microsoft Corporation Method and apparatus for intranet searching
WO2007002820A2 (en) * 2005-06-28 2007-01-04 Yahoo! Inc. Search engine with augmented relevance ranking by community participation
US20070014241A1 (en) * 2005-07-14 2007-01-18 Banerjee Dwip N Resolver caching of a shortest path to a multihomed server as determined by a router
US7716226B2 (en) * 2005-09-27 2010-05-11 Patentratings, Llc Method and system for probabilistically quantifying and visualizing relevance between two or more citationally or contextually related data objects
US20070112758A1 (en) * 2005-11-14 2007-05-17 Aol Llc Displaying User Feedback for Search Results From People Related to a User
US7461043B2 (en) * 2005-12-14 2008-12-02 Siemens Aktiengesellschaft Methods and apparatus to abstract events in software applications or services
US7694226B2 (en) * 2006-01-03 2010-04-06 Eastman Kodak Company System and method for generating a work of communication with supplemental context
US7685198B2 (en) * 2006-01-25 2010-03-23 Yahoo! Inc. Systems and methods for collaborative tag suggestions
US7657523B2 (en) * 2006-03-09 2010-02-02 Customerforce.Com Ranking search results presented to on-line users as a function of perspectives of relationships trusted by the users
US8332386B2 (en) * 2006-03-29 2012-12-11 Oracle International Corporation Contextual search of a collaborative environment
US7899818B2 (en) * 2006-03-29 2011-03-01 A9.Com, Inc. Method and system for providing focused search results by excluding categories
WO2007143223A2 (en) * 2006-06-09 2007-12-13 Tamale Software, Inc. System and method for entity based information categorization
US20080091672A1 (en) * 2006-10-17 2008-04-17 Gloor Peter A Process for analyzing interrelationships between internet web sited based on an analysis of their relative centrality

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819257A (en) * 1997-01-31 1998-10-06 Lucent Technologies Inc. Process for providing transitive closure using fourth generation structure query language (SQL)
CN1325076A (zh) * 2000-05-23 2001-12-05 上海万纬信息技术有限公司 网络中文信息综合搜索器

Also Published As

Publication number Publication date
AU2007243790A1 (en) 2007-11-08
US20130073566A1 (en) 2013-03-21
US9081819B2 (en) 2015-07-14
US8332386B2 (en) 2012-12-11
WO2007126634A3 (en) 2008-01-31
CA2647725A1 (en) 2007-11-08
JP5237260B2 (ja) 2013-07-17
CA2647725C (en) 2014-04-29
AU2007243790B2 (en) 2013-03-07
WO2007126634A2 (en) 2007-11-08
EP1929414A2 (en) 2008-06-11
JP2009531776A (ja) 2009-09-03
AU2007243790A2 (en) 2009-02-05
CN101454782A (zh) 2009-06-10
US20070239678A1 (en) 2007-10-11
AU2007243790C1 (en) 2013-08-15

Similar Documents

Publication Publication Date Title
CN101454782B (zh) 协作环境的上下文搜索
US8370358B2 (en) Tagging content with metadata pre-filtered by context
US9792356B2 (en) System and method for supporting natural language queries and requests against a user's personal data cloud
US9189479B2 (en) Semantic web portal and platform
US20170316383A1 (en) Meeting Setup System and Method
US20050222890A1 (en) Instant meeting preparation architecture
US20070250496A1 (en) System and Method For Organizing Recorded Events Using Character Tags
RU2653246C1 (ru) Усовершенствование запроса для поиска базы данных
Mittleman et al. Toward a taxonomy of groupware technologies
US20080183680A1 (en) Documents searching on peer-to-peer computer systems
CN109857377B (zh) 一种api编排方法及装置
JP5373818B2 (ja) 集中型ソーシャル・ネットワーク応答追跡
US20060074843A1 (en) World wide web directory for providing live links
CN106471497A (zh) 使用上下文的辅助浏览
CN103678624A (zh) 搜索方法、搜索服务器、搜索请求执行方法及终端
US11258744B2 (en) Digital conversation management
KR101614890B1 (ko) 멀티 테넌시 이력 생성 방법, 이를 수행하는 멀티 테넌시 이력 생성 서버 및 이를 저장하는 기록매체
CN114546220A (zh) 页面配置方法及装置、存储介质、计算机设备
KR102323017B1 (ko) 폴더 연동형 업무객체 관리 장치, 이에 의해 수행되는 폴더 연동형 업무객체 관리 방법 및 이를 저장하는 기록매체
JP6891542B2 (ja) 人脈情報作成装置、人脈情報作成プログラム及び人脈情報作成方法
JP2018169661A (ja) 情報処理方法、装置、及びプログラム
JPH10320186A (ja) ソフトウェア仕様確認サーバ、ソフトウェア開発方法、ソフトウェア開発システム、ソフトウェア仕様確認プログラムを記録した記録媒体、ソフトウェア開発プログラムを記録した記録媒体及びソフトウェア開発注文プログラムを記録した記録媒体
KR20230067983A (ko) 스마트태그 기반의 업무처리장치 및 업무처리방법
US20120078976A1 (en) data organization tool and apparatus for remotely managing a meeting
KR20240057083A (ko) 메신저에서의 영상 추천 방법, 컴퓨터 프로그램 및 컴퓨팅 디바이스

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant