Abstract:
A method for presenting to a user electronic documents is described. The documents are stored at one or more network sites which are accessible via a network by a computer system, and are registered with a page filter system. The method includes the steps of determining needs and/or intentions and/or a field of interest of the user, defining a user specification based on the determined needs and/or intentions and/or a field of interest of the user, determining a subset of the electronic documents including only those of the electronic documents which include content that has a predetermined relation to the user specification, and using the identified subset to amend the presentation of at least one of the electronic documents to the user.

Description:
The present invention relates to systems and methods for the handling of electronic documents. More particular, the present invention relates to systems and methods for making available electronic documents by taking into account a user&#39;s needs or intentions. 
     BACKGROUND OF THE INVENTION 
     Networks are growing at a tremendous speed. The world wide web (WWW) is a popular example. Currently, it is rather cumbersome to navigate through these networks, or even through one site of such a network, since the electronic content that is presented on pages (e.g., web pages) or decks (e.g., WAP decks) are published in a fixed structure that is designed to fit all needs. Even if computer systems on the user side were smart enough to know what a user is currently looking for, this would not help to solve this problem, due to the fixed structure of the electronic content and due to the way this content is presented. 
     There is software that can be used to realize applications where the web content is dynamically created. An example is IBM&#39;s WebSphere Application Server software. It allows building and deploying personalized, dynamic web content. Neither the fixed nor the dynamic content structure, however, takes the user&#39;s needs and intentions into account. 
     Users still have to search around a lot and navigate through uninteresting pages before they can successfully locate the desired electronic content (documents), if they are successful at all. 
     Another well-known problem is that many pages are not well maintained meaning that there are dead links and outdated information. This particular type of problem can be avoided if site management would be taken more seriously, but it is obviously not the user who is browsing the network who can control or influence this. 
     Yet another problem is that product names and company names are changing which in itself again leads to outdated information and links. It is also problematic when pages are moved or reorganized without updating links that reference these pages. 
     In most cases, there is no control authority or instance that watches over what is offered on the network. Hardly any editorial reviews are performed and anybody can go public by simply posting electronic content as he likes. 
     All these problems become more serious as the network grows. The more complex and convoluted the network structure gets, the more difficult it gets to hit those pages that contain information of interest. 
     There are solutions that try to overcome some of the aspects outlined above. Some pages are for example equipped with a site map that gives a user, once he has reached a particular site, a quick overview of the structure and organization of the respective site. It is a disadvantage of these site maps that they are static in the sense that they are hardly user customizable. 
     In view of the above, it is possible to formulate the following general design goals for future network generations: (1) enhanced site server functionality (e.g., by improving the software used on the server side); (2) enhanced page behavior; and (3) enhanced site architecture. 
     The problem with these general design goals is that their realization would involve different entities. A cooperation of these entities, however, is unlikely, since there are diverging interests for some of them. As with many ambitious projects, they are prone to fail. 
     It is thus an object of the present invention to provide a scheme that improves the navigation inside networks, and more specifically, that improves the identification and retrieval of pages that are considered to be of interest to or useful for the user. 
     SUMMARY OF THE INVENTION 
     According to the present invention, a page filter system is employed. Electronic content in the form of pages and/or decks are registered with the page filter system. 
     The scheme works as follows. A newly created electronic document (e.g., a network page), or an electronic document that has been modified, is registered with a page filter system. The page filter system maintains a record (e.g., a list) of registered electronic documents. A user specification is employed which describes the user&#39;s needs and/or intentions and/or the user&#39;s field of interest. This user specification is used in order to be able to identify only those electronic documents on the network, in most cases a subset of all registered electronic documents, that are deemed to comprise relevant information. These relevant electronic documents—after having been identified by the page filter system—can be presented or prepared for further processing. The user may for example display the respective electronic document on the server or download it onto his computer system. In addition, the user may want to quickly and easily navigate through these documents. 
    
    
     
       DESCRIPTION OF THE DRAWINGS 
       The invention is described in detail below with reference to the following schematic drawings. 
         FIG. 1  shows a schematic block diagram of one embodiment, according to the present invention. 
         FIG. 2A  shows a schematic block diagram of a further embodiment, according to the present invention. 
         FIG. 2B  shows a schematic block diagram of a further embodiment, according to the present invention. 
         FIG. 2C  shows a schematic block diagram of a further embodiment, according to the present invention. 
         FIG. 3  shows a schematic block diagram of a further embodiment, according to the present invention. 
         FIG. 4  is a flow chart illustrating a process in accordance with the present invention. 
         FIG. 5  is a flow chart illustrating another process in accordance with the present invention. 
         FIG. 6  is a flow chart illustrating another process in accordance with the present invention. 
         FIG. 7  is a flow chart illustrating another process in accordance with the present invention. 
         FIG. 8A  is a flow chart illustrating another process in accordance with the present invention. 
         FIG. 8B  is a flow chart illustrating another process in accordance with the present invention. 
     
    
    
     DESCRIPTION OF PREFERRED EMBODIMENTS 
     Before various embodiments of the present invention are described, some of the most frequently used expressions and terms are described or defined. 
     A network in the present context can be any kind of network. The invention is not limited to large public networks. It can be used on Intranets and the like, as well. Examples of networks are: the Internet, the WWW, campus networks, Intranets, local area networks (LANs), and wide area networks (WANs), just to mention a few examples. 
     The present invention is applicable to any kind of electronic content that is storable in a computer-readable medium, such as those well-know in the art, and processable by computer systems. Examples are: text (human-readable as well as machine readable), audio information, images, video streams and other multimedia content (e.g., MP3-files), just to mention a few examples. 
     In the present description the word ‘document’ is used to indicate that electronic content is presented in some sort of container or frame. Examples of such containers or frames are files, pages (e.g., http-pages), wml-pages, WAP decks, and the like. All these kind of documents are herein referred to as electronic documents. 
     A first embodiment of the present invention is described in connection with  FIG. 1 . As illustrated in this figure, electronic documents  17  (Page  1 , Page  2 , through Page n) are registered with a page filter system  10 . The page filter system  10  serves as a site navigation support system, i.e. it allows the user to access the electronic documents  17  which are then presented to the user. The page filter system  10  is envisaged to personalize this presentation in that it amends the presentation under use of user-specific information in form of a user specification. A typical amendment would be on a page an amended arrangement of links to other pages. Such a rearrangement could take into account preferences of the user such as the preference for certain topics. The more the user proves to have interest in a certain topic, the more links to that topic might be arranged on a page or the more central to the page the link is arranged. The amendment may hence comprise any modification of the electronic documents  17 , be it in their content, arrangement, form, visualization, order etc. The amendment will typically be performed in order to facilitate the access to the electronic documents  17  or adapt the content or appearance of the electronic documents  17  to the user respectively the user&#39;s needs or desires. This adaptation does not mandatorily need an active role of the user in that the user specifies his desires or needs. Rather the page filter system  10  is equipped with means to define a user specification based on information derived from the analysis of user actions such as keystrokes, the access of documents or files, etc. The computer system used by the user can be equipped to create records of the use of the computer system by the user, e.g. a keystroke history, a network access log file, a site history of the web browser etc. These records could be accessed and used by the page filter system  10 . The adaptation takes place in that the registered electronic documents  17  are compared with the user specification and that this comparison leads to a restriction in that a subset of the electronic documents  17  is determined, namely comprising those of the electronic documents  17  that have a predetermined relation to the user specification. An example of such a predetermined relation could be that a specific topic contained in the user specification is found in the content of the electronic documents  17 . Another example would be that a topic is not found in the content, or that a specific minimum number of links in the electronic documents  17  are related to a topic from the user specification. The relation hence can be any logical operation that compares one or more pieces of the user specification with one or more peaces or features of the electronic documents  17 . The adaptation to the user can be dynamic in that with every action of the user that is recorded the user specification and hence the thereupon dependent subset is recalculated and adapted to the situation after the last action. 
     The page filter system  10  can be realized as server software, i.e., as a software for execution by a server computer. The fact that these electronic documents  17  are registered with the page filter system  10 , is indicated by means of arrows pointing towards the page filter system  10 . The page filter system  10  comprises a page content unit  11  that stores information about the content of all electronic documents  17  that are registered with the page filter system  10 . A software in the present context means an expression, in any language, code or notation, of a set of instructions intended to cause a device having an information processing capability to perform a particular function. 
     A user who wants to find information on a network uses a computer system (not illustrated in  FIG. 1 ) to access the network. The present scheme uses knowledge about the user&#39;s intentions and/or needs. A user specification  12  is thus employed that describes/represents the user&#39;s intentions and/or needs. For this purpose, the page filter system  10  receives or obtains input via an input line  15 . Among many other approaches, the user specification  12  can be derived from the user&#39;s browsing behavior, click streams, explicit queries, key word lists, or any combination thereof. 
     The page filter system  10  compares the information about the content of the electronic documents  17 , maintained in the page content unit  11 , with the user specification  12  in order to find matches. Different algorithms can be used in order to find matching information. This may be done by a Subset Identification unit  13 , also referred to as match-making unit  13 . The comparison leads to the identification of a subset  14  of the electronic documents which are deemed to be related to the user specification  12 . The subset  14  is made available via an output line  16  for further processing. 
     A second embodiment of the present invention is described in connection with  FIG. 2A . As illustrated in this figure, a newly created electronic document  27  (e.g., a network page or an electronic document that has been modified), is registered with the page filter system  20 , also referred to as page filter module  20 . This can be done by sending a register_me command  31  to the page filter system  20 . The page filter system  20  comprises a page content unit  21  that stores information about the content of those pages (e.g., the electronic document  27  in the present example) that have been registered with the page filter system  20 . 
     The registration of the electronic documents  27  can be done in two different ways. Either, a computer  30 , e.g., a http-server, on which the electronic document  27  is stored, or by which the electronic document  27  is administered, sends information about the content of the electronic document  27  to the page filter system  20  referred to as page filter registration, 1 st  mode of operation, or the electronic document  27  as a whole is sent to and processed by the page filter system  20 , also referred to as page filter registration, 2 nd  mode of operation. The latter approach allows the page filter system  20  to actively extract information from the electronic document  27 , whereas according to the first approach the page filter system  20  receives the respective information about the electronic document  27 . In both cases, the presence and content of the electronic documents  27  are advertised to the page filter system  20 . 
     The electronic documents  27  may also be registered with the page filter system  20 , as follows. The page filter system  20  may scan through the network in order to find and register electronic documents, referred to as passive page filter, also referred to as crawler-mode of operation. 
     The page filter system  20  may work like a web-crawler or the like. The page filter system  20  may also receive information about electronic documents from agents which explore the network. 
     A user who wants to find information on the network uses a computer system (not illustrated in  FIGS. 2A-2C ). A user specification  22  is being employed that describes/represents the user&#39;s intentions and/or needs. 
     There are many different ways on how to define such a user specification  22 . The computer system may for example ask the user to specify his intentions and/or needs. This can be done by entering a few keywords, for example. It is also possible for the computer system to obtain information about the user&#39;s intentions and/or needs from past activities, e.g., by analyzing information the user has accessed. In another implementation, the page filter system  20  or some other system in the network may record the user&#39;s personal history for the purpose of creating the user specification  22 . One may for example use the personal history recorded by the web browser software used on the user&#39;s computer system. One may also take into account personalization data of the user. 
     The latter approach is what is illustrated in  FIGS. 2A-2C . The page filter system  20  maintains a record  22  of the user&#39;s personal history, herein referred to as user specification  22 . The user specification  22  is comparable with the user specification  12 , as described in connection with  FIG. 1 . Preferably, the most recent entries in the history are used in determining the user&#39;s current needs and/or intentions and/or field of interest. 
     The page filter system  20  compares the information about the content of the electronic documents  27 , that is maintained in the page content unit  21 , with the user specification  22 , in order to find matches. Different algorithms can be used to find matching information. Dynamic match-making algorithms are well suited. If the document content and the user specification  22  are stored in semantic networks then topological analyses such as subgraph-matching are also suited. The comparison leads to the identification of a subset of the electronic documents  27  that are deemed to be related to the user specification  22 . The subset of the electronic documents  27  is made available for further processing. The subset of the electronic documents  27  may for example be processed in order to generate a dynamic site map. The word “dynamic” is used in the present context to indicate that such a site map automatically varies when the content of the electronic documents  27  changes, when electronic documents  27  are added, or when the user specification  22  changes. 
     In the present example, the page filter system  20  comprises a match-making unit  23  that performs the matching and the dynamic-site-map creation. 
     Such a dynamic site map enables the user to quickly access only those electronic documents  27  that are deemed to contain relevant information. By clicking on the links of a dynamic site map the user may arrive immediately at those of the electronic documents  27  that would in a conventional system only be reachable by following a sequence of links. Dead links and useless pages can hence be avoided by the described mechanism. It can be employed in a manner to reduce the need to create links in the first place. 
     A third embodiment is described referring to  FIG. 2B . The user may access the page filter system  20  in order to register with it. In order to do so, he may send a register_new_user command  32  to the page filter system  20 . The register_new_user command  32  may be issued by a computer system  34 . This command  32  can be used as a trigger to open a new user profile comprising the user&#39;s current user specification inside the user specification unit  22 . If the user is looking for information on the network, he accesses the page filter system  20  and logs on e.g., by using a password and user identifier. He then can obtain the subset of electronic documents that are deemed to be related to the user&#39;s intentions and/or needs, as described above. 
     Yet another embodiment is described by means of reference to  FIG. 2C . The second and/or third embodiment may be modified by adding the following functionality. Web pages, e.g., an electronic document  27 , can be individually registered with certain users. For this purpose, the respective server  30  may issue a register_me_with_user command  33 . In order for the server  30  to be able to do this, the server  30  should be aware of the user&#39;s interests and/or intentions. For this purpose, the server  30  may either maintain its own user record comprising the user&#39;s current specification or the server  30  may be able to access the user specification  22  at the page filter system  20  via a link  35 . 
     The page content unit  21 , the user specification unit  22  and the match-making unit  23  can be integrated together with a processing unit, that is designed for running the page content unit  21 , the user specification unit  22  and the match-making unit  23 , further together with a network interface for accessing the electronic documents  27  and a memory for storing the user specification  22  into a computer system. The memory is then connected to the processing unit which is connected to the network interface which is connected to the network. The page content unit  21 , the user specification unit  22  and the match-making unit  23  are all connected to the processing unit. 
     In yet another embodiment, the page filter system  40  may comprise a semantic network generator  41 , also called semantic processor, as illustrated in  FIG. 3 . This semantic network generator  41  plays a central role in this particular embodiment. Any input from the network, e.g. when a new electronic document is to be registered, is received via an input  42 . The semantic network generator  41  processes the input and generates a semantic network comprising information that represents the content of the document to be registered. This semantic network is maintained/stored in a page content unit  44 . Any user input is received via an input  43 . The user input is also transformed into a semantic network. This semantic network is maintained/stored in a user specification unit  45 . For the retrieval of information, the semantic network generator  41  compares the information in the user specification unit  45  with information in the page content unit  44 . Since both information is stored in the same semantic network format, the comparison can be performed using an algorithm that identifies similar structures in both semantic networks. The result of the comparison can be made available at an output  46  for further processing. In another implementation, the semantic network generator  41  generates a subnet for further processing comprising those parts of the semantic network in the page content unit  44  for which matching information was found in the user specification unit  45 . 
     The network in the page content unit  44  may be a dynamic semantic network that changes like a living object whenever the content of an electronic document changes, or when a new electronic document is added. If new information is added, the semantic network is enriched by linking additional objects. Information is removed by disconnecting or deleting objects. 
     Details about a semantic network generator are given in EP 962873-A1. The semantic network generator creates a semantic network that has a fractal hierarchical structure and comprises semantical units and pointers. The semantic networks used in connection with the embodiment of  FIG. 3  can be self-organizing semantic networks. Such self-organizing semantic networks are described in WO 9963455 and in DE 19908204. A semantic network generator similar to those disclosed in the above-mentioned patent application EP 962873-A1, can be employed to generate these semantic networks. 
     According to another embodiment of the present invention, the page filter system  20  may comprise an interface that allows network managers, content providers or other persons to view the content of those documents that are registered with the page filter system  20 . This feature may be limited to electronic documents for which a person is responsible. 
     Several page filter systems  20  may be distributed across the network. Local copies may exist inside an Intranet. Automated updating of the various copies of the page filter systems  20  is used to ensure that all page filter systems  20  are up-to-date. It is conceivable that there are special-purpose page filter systems  20 , e.g., a first one for scientific and technical information, a second one for legal information, and so forth. Typically, a page filter system  20  would co-reside on a web server which serves a particular site. 
     The user&#39;s computer system, e.g., the computer system  34 , may have a special application software, e.g., as part of the browser, that handles the creation and/or maintenance of the user specification  22 . This special application software may be realized such that it automatically accesses the most appropriate page filter system  20  depending on the current user specification  22 . If the user is looking for scientific information, then the special application software will access only the page filter system  20  that maintains the electronic documents  27  with scientific content (pre-selection). 
     The present invention allows to realize systems where the site management is done by the page filter system  20  and not by the server  30  anymore. Each user sees the network and the information offered inside the network from a different perspective, since each user has a different user specification  22 . 
     An example for the creation of the user specification  22  is illustrated in the flow chart of  FIG. 4 . The user who is surfing the network accesses a page filter system (APS) using a browser (step  50 ). As illustrated in this figure, the user is prompted (step  51 ) to connect to the APS for help. In the present example, the user identifies himself to the APS (step  52 ). This can be done by means of a User Identification (UserID), or using cookies, for example. Once the APS has recognized the user, it checks whether a user specification US exists already (step  53 ). When the user specification exists, the respective specification is retrieved (step  54 ). If no local user specification exists, a remote user specification may be retrieved (step  56 ), for example. The user specification may be fetched from another server or from the user&#39;s computer, for example. In most cases, the user specification is updated (step  55 ) in order to make sure that it matches the user&#39;s current needs and/or intentions and/or the user&#39;s current field of interest. The flow chart of  FIG. 4  offers two different options for the updating of the user specification. Option  1 : a new user specification is created or an existing user specification is updated using information derived from the user&#39;s navigation pattern (step  57 ). For this reason, the APS may evaluate the user&#39;s navigation pattern, e.g. by investigating the previously visited links. Option  2 : the APS displays a questionnaire with questions to be answered by the user (step  58 ). The APS then evaluates the user&#39;s responses to the questionnaire in order to create or update the user specification (step  59 ). 
     An example for the active registration of an electronic document is illustrated in the flow chart of  FIG. 5 . The process, according to the present invention, begins when a new page is created or when an existing page is updated (step  60 ). When a new page is created, a new page content description (NPCD) may be generated (step  61 ). If an existing page is updated, then the corresponding page content description may be updated, too (step  61 ). This step  61  is optional. A newly created page or a page that has been modified is registered with the page filter system (APS). This can be done, as illustrated in the flow chart of  FIG. 5 , by sending a register_me command to the APS (step  62 ). In a subsequent step  63 , the APS identifies the page. Then, the APS checks whether the page existed before (step  64 ). If the page exists already, the APS retrieves the previous page content description (PPCD) (step  65 ). In a subsequent step  66 , the APS determines whether a new page content description (NPCD) exists. If the answer is yes, the APS retrieves the respective NPCD (step  67 ). Otherwise, the APS retrieves the new or updated page (step  68 ) and automatically generates a corresponding page content description (PCD) from the page, as illustrated by box  69 . In the present example, the final new or updated PCD is generated (step  70 ) by using the previous page content description (PPCD) (step  71 ), and/or by using the new page content description (NPCD) (step  72 ), and/or by using the automatically generated page content description (APCD) (step  73 ). The process illustrated in  FIG. 5  is a combination of the 1 st  mode of operation and the 2 nd  mode of operation. 
     An example for the passive registration of an electronic document is illustrated in the flow chart of  FIG. 6 . The process, according to the present invention, begins when a new page is created or when an existing page is updated (step  80 ). When a new page is created, a new page content description (NPCD) may be generated (step  81 ). If an existing page is updated, then the corresponding page content description may be updated, too (step  81 ). This step  81  is optional. In the present mode of operation, the page filter system (APS) crawls the network for new or updated pages (step  82 ). After the APS has identified a new or updated page (step  83 ), the APS checks whether this page existed before (step  84 ). The subsequent steps  84 - 93  are the same as the steps  64 - 73  illustrated in  FIG. 5 . If the page exists already, the APS retrieves the previous page content description (PPCD) (step  85 ). In a subsequent step  86 , the APS determines whether a new page content description (NPCD) exists. If the answer is yes, the APS retrieves the respective NPCD (step  87 ). Otherwise, the APS retrieves the new or updated page (step  88 ) and automatically generates a corresponding page content description (PCD) from the page, as illustrated by box  89 . In the present example, the final new or updated PCD is generated (step  90 ) by using the previous page content description (PPCD) (step  91 ), and/or by using the new page content description (NPCD) (step  92 ), and/or by using the automatically generated page content description (APCD) (step  93 ). 
     Yet another process, according to the present invention, is illustrated in  FIG. 7 . The steps  63 - 73  of the flow chart on the right hand side of  FIG. 7  are the same as in  FIG. 5 . The major difference of the process of  FIG. 7  and the process of  FIG. 5  is that the page filter system (APS) is in a mode where it waits for a register_me command (step  101 ). The creation or updating of a page is in the present example an independent process  100 , as illustrated on the left hand side of  FIG. 7 . When a new page or an updated page is created (step  102 ), a new or updated page content description (NPCD) may generated (step  103 ) and a register_me command together with this NPCD may be sent to the APS (step  104 ). Instead of generating an NPCD and sending this NPCD to the APS, the page content may be sent to the APS for processing by the APS, as illustrated by means of the arrow  105  that by-passes step  103 . After the APS has received a register_me command via connection  106 , the some or all of the steps  63 - 73  are performed. 
     Another process is illustrated in  FIGS. 8A and 8B . When a new page or an updated page is created (step  110 ), a new or updated page content description (NPCD) may generated (step  111 ), as depicted in  FIG. 8A . Instead of generating an NPCD, the page content may be fetched and processed by the APS, as illustrated by means of the arrow  112  that by-passes step  111 . The steps  82 - 93  of the flow chart of  FIG. 8B  are similar to the steps of  FIG. 6 . The major difference of the process of  FIG. 8B  and the process of  FIG. 6  is that the page filter system (APS) crawls a (remote) site for new or updated pages (step  82 ). The APS may either constantly crawl for new or updated pages or it may initiate the crawling process from time-to-time to look for new or updated pages. The process of  FIG. 8A  and the process of  FIG. 8B  are independent. If the APS does not find any new or updated page, the process returns via the arrow  113  to step  82 . At the end of the process of  FIG. 8B , the APS returns to step  114 . 
     The processes illustrated in  FIGS. 4 through 8A  and  8 B can be modified or adapted depending on the actual needs. 
     According to one embodiment, pages that are registered with a page filter system cancel or withdraw their registration. If the administrator of a server decides that a page is outdated or not needed anymore, he can have the page removed from the page filter system(s). The administrator or server has full control over the page. 
     The invention presented herein can come in a variety of implementations, as illustrated by means of the above-described examples and embodiments.