The above and further advantages of this invention may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like numerals indicate like structural elements and features in various figures. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
As defined herein, an activity is a collection of links to documents. Activities can contain links to different types of documents. A document can be a shared document from a shared source (e.g. Notes document from Notes team room), it can be a persistent instant message chat stored in a central repository, it could also be a MS word document stored in a content management system, or a mail stored in a server side shared mailbox, etc.
A feature of the present invention is that an activity may be a tree of links. Over these links, potentially related documents can be found to a document that has no direct relations to this other document. This feature could use these links and do matches by comparing words, people and time information.
The following example highlight aspects of this feature:
Activity item one links to document with author ‘Mike O'Brien’
Activity item two links to document with subject ‘Hannover’
Selected/current document subject ‘Hannover’
A search for potentially related documents, in accordance with a feature of the present invention, could now return, for the selected/current document, the document with author ‘Mike O'Brien’ which may not even include the word ‘Hannover’.
Another feature of the present invention uses the users' interest profiles to find related documents. Every user has an interest profile that is calculated automatically and that contains the most important terms and people for a specific user. In order to find better matches the interest profile could be used to improve the search results.
Thus, not only is the context information (e.g. current document author, current document title, etc.) used fro search and prioritizing search results, but also the interest profile, as illustrated in the following example.
Thus, in the above example, in accordance with features of the present invention, a document search returns a document in activity item one first or only since it is more likely that it is more important for the current user.
The present invention relates to a software application for searching, organizing, and presenting a result of a dynamically generated search query to a user of the software application. The functionality of the software application can be incorporated into existing applications such as office applications, email applications, and time management applications. Alternatively, the software application of the present invention can be a stand-alone application. The software application retrieves documents from various sources. As used herein, the term documents includes, but is not limited to, e-mail messages, meetings notices, calendar entries, task list items, instant messages, web pages, word processing files, presentation files, spreadsheet files, database records, and the like.
The dynamic search query and its associated result are generated based on a contextual setting of the user. As used herein, the contextual setting for the dynamic search query refers to past, present and future events such as meetings, conference calls, video conferences and the like that are important to the user. Refining functions, which are also based on a contextual setting, operate on the returned results of the search engine to provide further values for ranking the returned search results. A contextual setting for refining refers to all of the personal information of the user, including but not limited to email, events, and documents of the user.
Referring now to
As disclosed herein, the system 100 includes machine readable instructions stored on machine readable media (for example, the hard disk 103) for providing for ad-hoc groups as software 121. The software 121 combines the user's interest profiles and the user's contextual information to improve the search results. The final ordering indicates an order of importance or priority to the user.
The software 121 may be produced using software development tools as are known in the art.
Thus, as configured in
It will be appreciated that the system 100 can be any suitable computer (e.g., 486, Pentium, Pentium II, Macintosh), Windows-based terminal, wireless device, information appliance, RISC Power PC, X-device, workstation, mini-computer, mainframe computer, cell phone, personal digital assistant (PDA) or other computing device.
Examples of operating systems supported by the system 100 include Windows 95, Windows 98, Windows NT 4.0, Windows XP, Windows 2000, Windows CE, Macintosh, Java, LINUX, and UNIX, or any other suitable operating system. The system 100 also includes a network interface 120 for communicating over a network (not shown) 8. The network can be a local-area network (LAN), a metro-area network (MAN), or wide-area network (WAN), such as the Internet or World Wide Web.
Users of the system 100 can connect to the network 120 through any suitable connection, such as standard telephone lines, digital subscriber line, LAN or WAN links (e.g., T1, T3), broadband connections (Frame Relay, ATM), and wireless connections (e.g., 802.11(a), 802.11(b), 802.11(g)).
Referring to
In general, the related document finder 121 includes a search engine 121D or optionally connectivity to an external search 121E engine for searching through documents in response to a dynamically generated search query. The related document finder 121 includes a searching function for search and identifying documents in accordance with the user's interest profile and the user's context information (e.g., people, dates, and words) in accordance with features of an embodiment of the present invention. An embodiment of the present invention also includes a ranking function for assigning search scores to each document identified by the searching function.
People: For example, every document in an application such as LOTUS NOTES™ has fields that are marked to include person names. For example, every document has an author field, a creator, a last modifier etc. There can also be additional special types of fields in a form including person names.
Dates: document has a creation date and last modification date.
Words: Any suitable text analyzer tool can be used to extract the nouns and the nouns that appear a specified number of times.
A post filter would then use a user's interest profile to change the ranking of the results or even to remove items from the result list.
As an illustrative example, if a calendar entry reads “meet to discuss Windows patch deployment adoption” and lists the participants as Joe Smith, John Price, Fred Randolf, the resulting dynamically generated search query is:
In this example, text:x indicates that the body or subject of any returned document should contain text x, author:x indicates that the author of any returned document should contain text x, and sendto:x indicates that any returned document should have been sent to recipient x.
Referring to
While the invention has been shown and described with reference to specific preferred embodiments, it should be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as defined by the following claims. For example, although described as a method and data file the invention can be embodied as a computer readable medium (e.g., compact disk, DVD, flash memory, and the like) that is sold and distributed in various commercial channels.
Also, the computer readable instructions contained on the computer readable medium can be purchased and download across a network (e.g., Internet). Additionally, the invention can be embodied as a computer data signal embodied in a carrier wave for organizing and presenting information to a user.