CROSS REFERENCE TO RELATED APPLICATION(S)This is a continuation application of Ser. No. 10/050,515, filed Jan. 18, 2002, entitled “A SYSTEM AND METHOD FOR COLLECTING, STORING, MANAGING AND PROVIDING CATEGORIZED INFORMATION RELATED TO A DOCUMENT OBJECT,” the subject matter of which is herein incorporated by reference in its entirety.
TECHNICAL FIELDThe technical field is relating documents on computer networks and storing, indexing and presenting those relationships to network users.
BACKGROUNDNetworks connecting many computers offer users access to a wide variety of information. Computers are exceptional devices for storing, sorting and relating large amounts of information. Information is stored on computers and networked computing and storage devices as documents or objects, together referred to as document objects. Such document objects may contain any form of information, from text documents and articles, financial data, statistical information, electronic mail, images and photos, music, animation, and even motion pictures.
The Internet, as a network of interconnected networks, offers users access to an even broader collection of information—the Worldwide Web (the “Web”). On the Web, publishers offer information for educational, recreational, and commercial purposes. The Internet, and it's predominant Web form, is organized and accessed by assigning document objects an address, or Uniform Resource Locater (“URL”). These URLs define the transfer protocol for and location of each individual document object on the Internet, or other network, including the Internetworking Protocol (“IP”) address of the host computer system of the document object.
Users accessing computer networks and the Internet are generally required to perform their own searches across the networks for the information, stored as document objects, that they desire or need. As the amount of information available on computer networks, and on the Internet in particular, grows exponentially, existing search and information location techniques become increasingly less effective. Existing Internet search techniques often yield too many seemingly related references which are not, in fact, truly useful to the user. The usefulness of traditional Internet search and indexing systems is actually decreasing as the number of documents on the Internet explodes.
Existing search, categorization, and retrieval techniques for document objects stored on computer networks, while generally executed at the high speeds of modern computer systems, are increasingly imprecise and often much too broad, as well as time and labor intensive, owing to the explosion of information being added to those networks.
A need exists to enhance the network user's information browsing experience. A need exists to provide network users with information relevant to the individual document object they are accessing and provide that information in a context of value to them by relating the document object they are accessing to link references to other document objects within a specific context. Such other document objects may or may not be offered by the publisher of the document object currently accessed. A need exists to provide network users with information relevant to the specific information the user may be searching for and relevant to the user's immediate personal, professional, geographic and other interests.
A need exists for entities or groups to be able to communicate information to their employees or members as those employees or members access document objects on a network, and to enable those employees or members to view content deemed important to the entities or groups. A need further exists for publishers of content on the Internet to be able to personalize content presented to Internet users without requiring the establishment of a personal relationship between the user and the content publisher. A need exists to enable the collection of the search experiences of a group of users and share that experience with other users of networked information devices.
SUMMARYThe systems, apparatus and methods of the present invention (hereinafter “Linkspace”) incorporate and provide many improvements on existing methods for publishing, distributing, relating and searching document objects on computer networks, including the Internet.
Linkspace operates to provide many beneficial improvements in searching, identifying and publishing information over computer networks.
Linkspace permits a user of a computer network or the Internet to establish relationships between document objects located on the network or the Internet. Those relationships may comprise link relationships and link references and are maintained by Linkspace in one or more link directories. The contents of link directories may be organized, categorized, sorted and filtered in groupings based on various criteria relating to, among other things, user interests and attributes, the types of document objects and the nature of the content of those document objects. Linkspace allows a network user to be presented with a selection of links to document objects related to the document object the user is currently accessing based upon the URL of the current document object, and link relationships created by the user and other users of the network stored in the link directories.
When a network user equipped with Linkspace identifies and locates a first document object on the network that is of interest to her, she may initiate one method of the present invention to mark the location, through its URL, as a start point of a link relationship. When she accesses a second document object on the network that she considers relevant to the first document object, she initiates another step of one method of the invention to mark the second document object as an end point of the link relationship. Upon marking the second document object as the end point, the link relationship is created and stored on a link directory selected to store similar link relationships. When a second network user equipped with Linkspace, and with access to the link directory, accesses the first document object, he is then presented with a link to the second document object as a relevant document object that may be of interest to him. Likewise, if the second network user accesses the second document object, he may then be presented with a link to the first document object as a relevant document object that may be of interest to him.
Linkspace consists primarily of a system and method for creating and publishing link relationships, a system and method for storing and managing link relationships in link directories, and a system and method for presenting a network user with links related by link relationships to the document object the user is currently accessing.
In one respect what is described is a method for enabling users of a network to create, store, and provide access to relationships between document objects stored on the network. The method may include the steps for allowing a user of the network to create a link relationship between a first document object and a second document object; for storing the link relationship in one or more link directories; and for providing all users of the network access to the link relationships stored in the one or more link directories based upon the document object currently accessed by the users.
In another respect what is described is a system for establishing and providing access to relationships between document objects stored on a network wherein the relationship between a first document object and a second document object may be created by an individual user of the network and provided to other users of the network. The system may include one or more client devices that access document objects stored on the network and create link relationships between a first document object and a second document object; and one or more servers that store and filter the link relationships created by the client devices and transmit one or more link relationships and link references to the client devices.
In yet another respect, what is described is a computer readable medium on which is embedded a program. The embedded program comprises modules that execute the above method.
Those skilled in the art will appreciate these and other advantages and benefits of various embodiments of the invention upon reading the following detailed description of a preferred embodiment with reference to the below-listed drawings.
DESCRIPTION OF THE DRAWINGSThe detailed description will refer to the following drawings, wherein like numerals refer to like elements, and wherein:
FIG. 1 is a diagram showing a system according to one embodiment of the invention;
FIG. 2 is a diagram showing a client device which is Linkspace-enabled and its interaction with other hardware and software;
FIG. 3ais a diagram showing the components of a server which is Linkspace-enabled and its interaction with other hardware and software;
FIG. 3bis a diagram showing more detail of one embodiment of a user data store fromFIG. 3a;
FIG. 4ais a diagram illustrating one embodiment of a link directory according to one embodiment of the invention;
FIG. 4bis a diagram illustrating another embodiment of a link directory according to one embodiment of the invention;
FIG. 5 is a diagram showing one embodiment of the invention implemented on public, private or closed computer networks;
FIG. 6 is a flowchart illustrating a method according to one embodiment of the invention;
FIG. 7 is a flowchart illustrating a method for, identifying link relationships between document objects according to one embodiment of the invention;
FIG. 8 is a flowchart illustrating a method for publishing link relationships between document objects according to one embodiment of the invention;
FIG. 9 is one example screen view of a user interface for a relate links dialog box according to one embodiment of the invention; and
FIG. 10 is an example of a screen view for a client user interface according to one embodiment of the invention.
DETAILED DESCRIPTIONFIG. 1 shows one embodiment of a system100 for collecting, storing, managing and providing to network users categorized information related to an open document object. A document object may contain any form of information, including text documents and articles, financial data, statistical information, electronic mail, images and photos, music, voice data, animation, and even motion pictures. The system100 includes anetwork10, such as the Internet or other network of interconnected computers or a combination of networks and the Internet; one or more Linkspace-enabledclient devices20; one or more Linkspace-enabledservers30, one or morefirst document objects40; one or moresecond document objects50; one ormore link references42 and52, corresponding to thefirst document objects40 and thesecond document objects50 respectively; and one ormore link relationships45. The system100 may also include one ormore links41 and51 pointing to thefirst document objects40 andsecond document objects50 respectively. Theclient devices20, as well as theserver30, are preferably Linkspace-enabled. Theclient device20 may comprise a computer or other digital information device running software enabled by the present invention to create, filter, sort and display the link references42,52, and thelink relationships45. Theserver30 may comprise a server computer or other digital information device running software enabling the present invention to store, index, search, filter, sort and transmit the link references42,52, and thelink relationships45 toclient devices20. Theserver30 further comprises one ormore link directories35 for storing and indexing information regarding thelink relationships45 and link references42 and52 developed by theclient devices20 with respect to the one or morefirst documents40 andsecond documents50.
Thelink reference42,52 comprises a pointer to onedocument object40,50 on thenetwork10 and attributes associated with thatdocument object40,50. Thelink relationship45 comprises two pointers, one each to thefirst document object40 and to thesecond document object50, and attributes describing characteristics of the relationship between the two document objects40,50 related by thelink relationship45. The pointers included in alink relationship45 may be comprised of pointers to alink reference42,52. Thelink relationship45 establishes a meaningful relationship between two document objects40,50, whereas the locations of the document objects40,50 may be maintained within the Linkspace system100 by means of the link references42,52.
The system100 shown inFIG. 1 operates to create andstore link relationships45. The system100 creates and stores linkrelationships45 between afirst document object40 and asecond document object50, preferably on one ormore servers30 in one ormore link directories35 in the manner described as follows. Theclient device20 is enabled by means of software or other devices to request, access and display document objects on thenetwork10. When the user of aclient device20 identifies onefirst document object40 of interest to her that she wishes to associate with asecond document object50, she utilizes the software running on the Linkspace-enabledclient device20 to create alink relationship45 between thefirst document object40 and thesecond document object50. Thislink relationship45 is then stored on theserver30 in alink directory35.
In an alternate embodiment, the system100 may operate to perform the functions described above, including the creation oflink relationships45 and link references42,52, the storing oflink relationships45 and link references42,52, and providing access to and retrieval oflink relationships45 and link references42,52, by means of automated procedures requiring little or no user interaction.
When aclient device20 later requests and accesses afirst document object40 for which theserver30 has stored an associatedlink relationship45 in one ormore link directories35, theserver30 delivers to theclient device20 the link references42 and thelink relationships45, along with contextual information, or attributes, associated with the link references42 and thelink relationships45. Theclient device20 then displays to the user of theclient device20 the existence of alink relationship45 between thefirst document object40 being accessed by theclient device20 and thesecond document object50. This enables the user of theclient device20 to be made aware of thesecond document object50, the context of thesecond document object50, and the context of the relationship between thesecond document object50 and thefirst document object40 as that relationship may be of interest to the user of theclient device20 while viewing thefirst document object40.
Eachlink relationship45 may also operate in the reverse direction. In this manner, when a user of theclient device20 is accessing thesecond document object50 for which an associatedlink relationship45 is stored in the one ormore link directories35 on theserver30, theserver30 then transmits the link references42 and thelink relationships45, with contextual information, to theclient device20. This enables display of the availability of the relatedfirst document object40 to the user of theclient device20 with the context of thefirst document object40, and within the context of its relationship to the displayedsecond document object50.
While the system100 is generally described as having enabling software resident on theclient device20 and on theserver30, various other software configurations are possible, including having all of the software resident at either the server30 (making theclient device20 essentially a “dumb terminal”) or at the client device20 (making theclient device20 essentially perform server functions), or various software sharing arrangements. For example, theclient device20 may include the one ormore link directories35, a communications module (described later in reference toFIG. 3a), and a user data store that may maintain information regarding authorized users of the client device20 (described later in reference toFIGS. 2,3a, and3b).
FIG. 2 is a diagram showing an example of the components of a Linkspace-enabledclient device20 and its interaction with other software and hardware. Theclient device20 preferably includes arendering tool210, such as a web page browser like Microsoft® Internet Explorer, for rendering document objects located on thenetwork10 and displaying those document objects to users of theclient device20; aclient tool220, for allowing the user of theclient device20 to create and accesslink relationships45 between document objects; and anetwork access tool240, such as a TCP/IP stack or other interface, for allowing software modules on theclient device20 to connect to and communicate with other devices and document objects on thenetwork10. Theclient device20 operates primarily to create andpresent link relationships45 to users.
Therendering tool210 may store a documentobject URL address215 for referring to the document object currently being accessed and rendered by therendering tool210. Therendering tool210 may also include a Graphic User Interface (“GUI”)display218, or other type of display, for displaying the document objects accessed and rendered by therendering tool210. In alternate embodiments of the invention, theclient device20 may include more than onerendering tool210 enabling the user of theclient device20 to access multiple document objects.
Theclient tool220 may include aclient GUI display225, or other display software and hardware, for displaying link references42,52 andlink relationships45 to the user of theclient device20. Typically, the displayed link references42,52 andlink relationships45 would be those link references42,52 andlink relationships45 relevant to the document object currently being rendered and displayed by the rendering tool210 (as determined by the documentobject URL address215 in the rendering tool210). Theclient tool220 may also include Linkspaceuser profile data230 for storing information about the user of theclient device20, thelink directories35 the user may have access to, and the attributes of link references42,52, and attributes oflink relationships45 that the user may be interested in. The Linkspaceuser profile data230 may also or alternatively be stored on the one ormore servers30, along with the Linkspaceuser profile data230 of all other users of the system100.
An example of how theclient device20 operates to create andpresent link relationships45 to users of theclient device20 follows. While thenetwork access tool240 is active and placing theclient device20 in communication with thenetwork10, the user enables therendering tool210 and theclient tool220. The user may then request and access document objects stored on thenetwork10 by means of therendering tool210. Through theGUI display218, the users enters or otherwise selects a documentobject URL address215 associated with thefirst document object40 of interest to the user. Theclient tool220 connects to and uses therendering tool210 and accesses the documentobject URL address215 associated with thefirst document object40. Theclient tool220 then establishes contact with theserver30 and passes to theserver30 the stored documentobject URL address215 associated with thefirst document object40, along with any relevant information that may come from the Linkspaceuser profile data230. The connection to theserver30 may be initiated through thenetwork access tool240 or by other means not utilizing thenetwork access tool240.
The Linkspace-enabledserver30 searches thelink directories35 for any URLs in the link references42,52 matching, or similar to, the documentobject URL address215. After searching, theserver30 retrieves the one ormore link relationships45 that include the documentobject URL address215. Prior to searching, the URLs may be stripped of any information not relevant to the location of thedocument object40,50 on thenetwork10. Such information not relevant to the location of thedocument object40,50 may include query strings or other data attached to URLs for tracking or other purposes.
Theserver30 then determines the link references42,52 which may be of interest to the user of theclient device20 by filtering the retrieved link references42,52 using the Linkspaceuser profile data230 and the attributes assigned to the link references42,52 and to thelink relationships45. The filtering of link references42,52 andlink relationships45 may be accomplished by one of several methods of filtering data including matching, character and Boolean comparing, and other data comparison and filtering methods. Theserver30 then transmits to theclient tool220 the filtered link references42,52 included in the one ormore link relationships45. Theclient tool220 presents the transmitted link references42,52 within the context established by thelink relationships45 by means of theclient GUI display225.
To create anew link relationship45, the user of theclient device20 must select afirst document object40 to begin the link relationship, asecond document object50 to complete thelink relationship45, and assign attributes to the link references42,52 and thelink relationship45 between the two document objects40,50. To select afirst document object40 to begin thenew link relationship45, the user interacts with theclient GUI display225 to activate a function of theclient tool220 to capture the documentobject URL address215 associated with thefirst document object40. To select asecond document object50 to complete thenew link relationship45, the user may interact with theGUI display218 of therendering tool210 to request, access and display thesecond document object50. The user may then interact with theclient GUI display225 again to activate a further function of theclient tool220 to capture the documentobject URL address215 associated with thesecond document object50, completing the selection of document objects40,50 participating in thenew link relationship45. Once the two document objects40,50 are established, attributes of the link references42,52 and thenew link relationship45 may be assigned.
The user may select or otherwise specify attributes associated with the link references42,52 andlink relationship45. These attributes aid in categorizing, sorting or filtering the link references42,52 and thelink relationship45 in thelink directories35 for delivery toother client devices20. The attributes may be, for example, descriptive, temporal, spatial, or quantitative in nature, i.e., describe the link reference in terms of who or what, when, where, or how much. One such attribute (not shown) may be a plain language name for thelink reference42,52, determined and entered by the user to describe the link reference in terms more useful to users of the system100 than the documentobject URL address215. Other examples of attributes may include description of the content of either of the document objects40,50 related by thelink relationship45, wherein that content may be described to include a product review, news article, product information page, competitor's product information, or product order forms, among other types of content.
Normally, upon completion of the endpoint capturing and attribute assignment functions, theclient tool220 connects to theserver30 to store the link references and thenew link relationship45 in theappropriate link directory35. Generally, thenew link relationship45 is then made available to other users. Typically,other client devices20 who have access to theserver30 and are assigned access privileges on thelink directory35 in which thenew link relationship45 has been stored are given access to thenew link relationship45.
Furthermore, if the user of theclient device20 determines that there is a relationship that is not already described by the transmittedlink relationships45 between the currently accesseddocument object40 and asecond document object50, the user may proceed to create and publish anew link relationship45 between the first document object40 (currently accessed and displayed by the rendering tool210) and thesecond document object50. This may be accomplished without displaying thesecond document object50.
FIG. 3ais a diagram showing the components of the Linkspace-enabledserver30 and its interaction with other hardware and software. Theserver30 includes afirst link directory35, a user data store370, and aserver manager380. Theserver30 may also include asecond link directory310 and one or moreNth link directories320. Theserver manager380 coordinates communications between the other components of theserver30. Theserver manager380 also coordinates communications with outside objects, including the one ormore client devices20. Theserver manager380 also performs the function of locatingappropriate link directories35,310,320 for the user to participate in based upon a document object presently displayed on theclient device20. The user of theclient device20 may request that theserver manager380 look in alllink directories35,310,320 across the system100, regardless of whether the user has an affiliation with thespecific link directory35,310,320 (which may be set in the user's Linkspace user profile data230), for the URL of the document object the user is currently accessing with theclient device20. The user data store370 stores identification and user profile data regarding users authorized to access theserver30, which of theseveral link directories35,310, and320 those users are permitted access to, and which attribute preferences the users have for each of thelink directories35,310,320. In alternate embodiments of the invention, portions of the information maintained in the user data store370 may be stored in thelink directories35,310,320.
FIG. 3aalso shows one or more alternate Linkspace-enabledservers350 that may reside on thenetwork10. In alternate embodiments of the system of the invention, the one or morealternate servers350 may be located off thenetwork10 but otherwise connected to or in communication with theclient devices20 and/or thefirst server30. One or morealternate link directories360 may reside on the one or morealternate servers350. The one or morealternate servers350 may include other elements duplicating the functions of theserver manager380 and user data store370, as well asadditional link directories310 and320. The existence of thealternate servers350 provides for flexibility in the distribution of link directory data across several servers, redundancy and interoperability across multiple networks and/or sets ofclient devices20 and users of the Linkspace system100.
Each of theseveral link directories35,310,320 or360 may be associated with and store link references42,52 andlink relationships45. These link references42,52 andlink relationships45 may have attributes matching categories defined by an authorized user designated to managesuch link directories35,310,320 or360. In this manner, eachlink directory35,310,320 or360 may be considered to be a community of interest. The authorized user designated to managesuch link directories35,310,320 or360 may also establish attributes by which to organize, sort and filter the link references and linkrelationships45. Attributes may describe the types and properties of the document objects40,50 and thelink relationships45. Any authorized user of thelink directories35,310,320 or360 may then create and place link references and linkrelationships45 in thelink directories35,310,320 or360 and assign attributes to the link references and linkrelationships45.
FIG. 3afurther illustrates the provision for afurther link relationship345 between thesecond document object50 and athird document object340. Thelink relationship345 may be created by an authorized user of one of theclient devices20, just as thelink relationship45 between thefirst document object40 and thesecond document object50 was created. Thelink relationship345 may be stored in asecond link directory310, separated from thelink relationship45 stored in thefirst link directory35. As such, thelink relationships45 and345 may be considered to belong to differing communities of interest represented by the separatefirst link directory35 andsecond link directory310. A user of aclient device20 who is currently viewing or otherwise accessing thesecond document object50 will only be presented with thelink relationship345 if the user is an authorized user of, and thus in the user directory370 list for, thesecond link directory310. Furthermore, a user of aclient device20 who is currently viewing or otherwise accessing thesecond document object50 will only be presented with both thelink relationship45 and thelink relationship345 if the user is an authorized user of, and thus in the user directory370 lists for, both thefirst link directory35 and thesecond link directory310. A user of the Linkspace system may be or may apply to be an authorized user for any combination of or all of thelink directories35,310,320, and360.
FIG. 3bis a diagram showing more detail of one embodiment of the user data store370 fromFIG. 3a. The user data store370 may include a user directory372, a user profile store375, and a user account store378.
The user directory372 includes one or more user data records374, typically one or more each for every authorized user of theservers30,350. The user data records374 may include personal identifying data for an associated authorized user and data indicating thelink directories35,31,320,360 to which each user has access.
The user profile store375 includes one or more user profile records330, typically one or more each for every authorized user of theservers30,350. The user profile records330 for each authorized user may further include one or more user profiles332.
Each user profile332 may contain data regarding specific, differing configurations of the user's personal, professional, geographic and other interests, and theservers30,link directories35,310,320,360, and attributes associated with those interests, as entered by the user or collected by theclient tool220. The data in the user profile332 may be used to determine whatlink directories35,310,320,360 that the user may have engaged. The data in the user profile332 may further determine what attributes of link references42,52, and oflink relationships45, will be considered by theserver30 in returning the link references42,52 and thelink relationships45 from thelink directories35,310,320,360 to the user'sclient device20.
The user account store378 includes one or more user account records379, usually one each for every authorized user of theservers30,350. The user account records379 hold information regarding usage of the Linkspace system100 by each authorized user. The information in the user account records379 may include data on instances of the publication oflink relationships45, and the transmissions oflink relationships45 and link references42,52 based upon the document object displayed by theclient tool220 of each user. In alternate embodiments of the invention, data regarding the document objects40,50,340 requested and accessed by users of the system100 is not recorded in the user account records379 against the individual authorized user in order to maintain user privacy with regard to what document objects40,50,340 each individual user may request or access.
When an authorized user of aclient device20 creates alink relationship45 that is stored in one or more of thelink directories35,310,320,360, theserver manager380 records in the user account record379 (associated with the authorized user creating the link relationship45) the activity of creating and storing alink relationship45. Each of the authorized users of thelink directories35,310,320,360 may be allowed to createlink relationships45 to be stored in one or more of thelink directories35,310,320 or360, to which that authorized user is permitted publication access. Each of the authorized users of eachspecific link directory35,310,320,360 may also be allowed access for display thoselink relationships45 stored in thespecific link directory35,310,320,360 that relate to thefirst document object40 orsecond document object50 that the user is currently viewing on the user'sclient device20.
The interaction of each of the elements of theserver30,alternate server350, theclient devices20, and the first, second and third document objects40,50, and340, along with the creation and presentation of thelink relationships45 and345 may be illustrated by the application of themethods600,700, and800 described below with reference toFIGS. 6,7, and8.
FIG. 4ashows the general structure of one embodiment of thelink directory35. This embodiment of thelink directory35 includes a link relationship table420.
The link relationship table420 comprises a list oflink relationships460,470,480,490. These linkrelationships460,470,480,490 correspond to thelink relationships45,345 created by users of theclient device20 as they are stored in thelink directory35. Thelink relationship460 comprises afield462 containing a link reference42 (L1) including the URL address of thefirst document object40 related by thelink relationship460; afield463 containing a link reference52 (L2) including the URL address of thesecond document object50 related by thelink relationship460; a set of link relationship attributes465; and adirectional indicator466 showing the nature of the link relationship between the two document objects, either unidirectional or bi-directional. Thelink relationship460 is shown with thedirectional indicator466 specifying that thelink relationship460 is a unidirectional link relationship.
Some or all of the list oflink relationships460,470,480,490 comprising the link relationship table420 may, in one embodiment of the invention, be stored on theserver30 in the form of relational database records. The relational database record corresponding to thelink relationship460 may be comprised of one or more relational database fields corresponding to the field (L1)462, field (L2)463, link relationship attributes465, anddirectional indicator466. Each of the one or more relational database fields may be formatted and designated to store various forms of relational database data types. In one embodiment of the invention, the relational database field corresponding to thefield462, as well as the relational database field corresponding to thefield463, may contain data specifying the appropriate URL as text or other format appropriate for the network upon which the invention may be implemented. In one embodiment of the invention, the relational database field corresponding to thedirectional indicator466 may be formatted as a simple flag (i.e., Boolean) data type such as True/False, Yes/No, or On/Off. Alternatively, the relational database field corresponding to thedirectional indicator466 may be formatted as a type to allow entry of a value indicating whether thelink relationship attribute465 applies forward, backward or in both directions across thelink relationship460. In one embodiment of the invention, the link relationship attributes465 may be represented by one or more relational database fields. In this embodiment, the relational database fields comprising the link relationship attributes465 may include a field of text data listing the assigned titles of the one or more specific link relationship attributes assigned to thelink relationship460. The relational database fields comprising the link relationship attributes465 may then also include one or more attribute value fields containing data formatted appropriately for the corresponding link relationship attribute listed in the above described field of text data. For example, the plain language name link relationship attribute may have its corresponding value stored in a field formatted as text, whereas a zip code attribute may have its corresponding value stored in a field formatted as a 5 or 9 digit integer, and a date attribute may have its corresponding value stored in a field formatted in a date format. In an alternative embodiment, the relational database fields comprising the link relationship attributes465 may utilize relational database key fields which point to additional database tables containing the records specifying each available type of link relationship attribute for thelink relationship460 and key fields which point to additional tables containing the values associated with each of link relationship attribute identified by a key.
As with thelink relationship460, thelink relationship470 comprises afield472 containing a link reference42 (L1) including the URL address of thefirst document object40 related by thelink relationship470; afield473 containing a third link reference (L3) including the URL address of thethird document object340 related by thelink relationship470; a set of link relationship attributes475; and adirectional indicator476 showing the nature of the link relationship between the two document objects, either unidirectional or bi-directional. Thelink relationship470 is shown with thedirectional indicator476 specifying that thelink relationship470 is a bi-directional link relationship. Thelink relationship480 comprises afield482 containing a link reference52 (L2) including the URL address of thesecond document object50 related by thelink relationship480; afield483 containing the third link reference (L3) including the URL address of thethird document object340 related by thelink relationship480; a set of link relationship attributes485; and adirectional indicator486 showing the nature of the link relationship between the two document objects, either unidirectional or bi-directional. Thelink relationship480 is shown with thedirectional indicator486 specifying that thelink relationship480 is a bi-directional link relationship.
Thelink relationship490 comprises afield492 containing a link reference52 (L2) including the URL address of thesecond document object50 related by thelink relationship490; afield493 containing a link reference42 (L1) including the URL address of thefirst document object40 related by thelink relationship490; a set of link relationship attributes495; and adirectional indicator496 showing the nature of the link relationship between the two document objects, either directional or bi-directional. Thelink relationship490 is shown with thedirectional indicator496 specifying that thelink relationship490 is a unidirectional link relationship.
The link relationship attributes465,475,485,495 may include a plain language name (not shown) associated with each of the link references42,52 participating in therespective link relationship460,470,480,490, as determined and entered by the user of theclient tool220. The plain language name serves to describe thelink reference42,52 in terms better understood by the users of the system100 than the URL associated with thelink reference42,52. The link relationship attributes465,475,485,495 serve to describe the link references42,52 in terms useful to users of the system100, and to place the link references42,52 in a context that may attract users to select the link references42,52. Other examples of link relationship attributes465,475,485,495 may include descriptions of the content of either of the document objects40,50 related by thelink relationship460,470,480,490, wherein that content may be described to include a product review, news article, product information page, competitor's product information, or product order forms, among other types of content.
Thelink relationship470 may have a value assigned to thedirectional indicator476 specifying that thelink relationship470 is a bi-directional link relationship. This indicates that the link relationship attributes475 apply to either of the two document objects (40 and340) equally in the context of thelink relationship470.
Thelink relationship460 may, on the other hand, have a value assigned to thedirection indicator466 specifying that thelink relationship460 is a unidirectional link relationship. This signifies that the link relationship attributes465 apply in only one direction between the two document objects40 and50 represented in thefields462 and463 through the link references42 and52 respectively. In this instance, a link relationship will not be transmitted and presented to the user of theclient device20 when requested in the direction opposite to that specified by thedirection indicator466. In the case of thelink relationship460 shown inFIG. 4a, theattributes465 apply only as thelink relationship460 is traversed from thefirst link reference42 to thesecond link reference52, and not in the reverse direction. In a similar manner, thelink relationship490 may have a value assigned to thedirection indicator496 specifying that thelink relationship490 is a unidirectional link relationship. This signifies that the link relationship attributes495 apply in only one direction between the two document objects50 and40 represented in thefields492 and493 through the link references52 and42 respectively. In the case of thelink relationship490 shown inFIG. 4a, theattributes495 apply only as thelink relationship490 is traversed from thesecond link reference52 to thefirst link reference42, and not in the reverse direction. In this instance, a link relationship will not be transmitted and presented to the user of theclient device20 when requested in the direction opposite to that specified by thedirection indicator496.
In an alternate embodiment, thedirection indicator466 of thelink relationship460 may comprise a plurality of directional indicator fields (not shown). Each directional indicator field may then correspond to one of the one or more link relationship attributes465 and indicate whether the correspondinglink relationship attribute465 may apply in one direction or in both directions between the two document objects40 and50 represented in thefields462 and463 through the link references42 and52 respectively. Likewise, thedirection indicator496 of thelink relationship490 may comprise a plurality of directional indicator fields (not shown). Each directional indicator field may then correspond to one of the one or more link relationship attributes495 and indicate whether the correspondinglink relationship attribute495 may apply in one direction or in both directions between the two document objects50 and40 represented in thefields492 and493 through the link references52 and42 respectively. In the alternate embodiment, a similar arrangement may then be implemented for the remainingdirection indicators476,486 of thelink relationships470,480.
FIG. 4bshows the general structure of another embodiment of thelink directory35. This embodiment of thelink directory35 includes a document object table410, and a link relationship table420, as described above forFIG. 4a.
The document object table410 comprises a set of link references430,440,450 to document objects located on thenetwork10 to which thelink directory35 is connected. Eachlink reference430,440,450 further comprises theURL432,442, or452 of therespective document object40,50,340 of interest; a set of document object attributes435,445,455 associated with theURL432,442,452; and alist437,447,457 of pointers to any of thelink relationships460,470,480,490 by which the link references430,440,450 may be connected to each other with context. In the case of alink relationship460,490 having thedirection indicator466,496 set to indicate that thelink relationship460,490 is unidirectional, thelink relationship460,490 will be listed only in thelist437,447,457 of pointers for thelink reference430,440,450 that begins theunidirectional link relationship460,490. The link references430,440, and450 inFIG. 4bcorrespond to the link references42,52, and the third link reference (not shown), as described inFIGS. 1-4aabove, and which point to the URL addresses of the document objects40,50, and340 respectively.
The document object attributes435,445,455 serve to describe the link references430,440,450 in terms useful to users of the system100, and to place the link references430,440,450 in a context that may attract users to select the link references430,440,450. The document object attributes435,445,455 may include a plain language name that serves to describe thedocument object40,50,340 in terms better understood by the users of the system100 than the URLs associated with the link references430,440,450; descriptions of the content of thedocument object40,50,340 associated withlink references430,440,450, wherein that content may be described to include a product review, news article, product information page, competitor's product information, or product order forms, among other types of content; and other descriptive characteristics associated with thedocument object40,50,340.
The link references430,440, and450 may be created and placed in the document object table410 when a user of theclient device20 creates alink relationship45 between afirst document object40 and asecond document object50 or athird document object340.
The link relationship table420 shown inFIG. 4bcomprises the same list oflink relationships460,470,480,490, detailed above inFIG. 4a. InFIG. 4b, thelink relationship460 comprises afield462 containing a pointer to thelink reference430 for thefirst document object40 related by thelink relationship460; afield463 containing a pointer to thelink reference440 for thesecond document object50 related by thelink relationship460; the link relationship attributes465; and thedirectional indicator466. InFIG. 4b, thelink relationship470 comprises afield472 containing a pointer to thelink reference430 for thefirst document object40 related by thelink relationship470; afield473 containing a pointer to thelink reference450 for thethird document object340 related by thelink relationship470; the link relationship attributes475; and thedirectional indicator476. InFIG. 4b,link relationship480 comprises afield482 containing a pointer to thelink reference440 for thesecond document object50 related by thelink relationship480; afield483 containing a pointer to thelink reference450 for thethird document object340 related by thelink relationship480; the link relationship attributes485; and thedirectional indicator486. Likewise, inFIG. 4b, thelink relationship490 comprises afield492 containing a pointer to thelink reference440 for thesecond document object50 related by thelink relationship490; afield493 containing a pointer to thelink reference430 for thefirst document object40 related by thelink relationship490; the link relationship attributes495; and thedirectional indicator496.
FIG. 5 illustrates one embodiment of the present invention in which the invention may operate on multiple networks of varying degrees of network security. The different networks on which the systems and methods of the present invention may be implemented include a public network such as theInternet510, aprivate network520 that may be connected to theInternet510, and aclosed network530 that is secure and not accessible to users not connected to theclosed network530. Theclosed network530 is not connected to any public network such as theInternet510, and is not connected to anotherprivate network520.
The public network orInternet510 may have components connected to it that implement the present invention, including one or more Linkspace-enabled client users511, one ormore link directories512, one or more Linkspace-hostedcontent units513, and one or morenetworked content units514. Thelink directories512 described here are functionally equivalent to thelink directories35,310,320, and360 described above in connection withFIGS. 1,2 and3a. The Linkspace-hostedcontent units513 comprise information storage devices connected to thenetwork510 that provide additional document object storage facilities to users of the Linkspace system100 separate from the publicly or privately operatednetworked content units514. Thenetworked content units514 may include networked data servers or web servers.
The Linkspace-hostedcontent units513 are provided to accommodate the streamlined publication and/or distribution of content by users of the Linkspace system100. Theclient tool220 may allow a user of the Linkspace system100 to store document objects of his or her own creation through a simplified procedure, i.e., a publish document function enabled through theclient GUI display225. The user of theclient device20 may select adocument object40 that she wishes to publish through the Linkspace-hostedcontent units513, or she may create a document object (not shown) using therendering tool210 or other document object creation tool. The user of theclient device20 then selects the publish document function through theclient GUI display225 and selects thelink directories35,310,320,360 in which she wishes to create and publishnew link relationships45,345 referencing the user created or selected document object. The user of theclient device20 may then create and publishlink relationships45,345 referencing the user created or selected document object. Theclient tool220 may automatically upload the user created or selected document object from the user'sclient device20, or from another location on the network, in this case theInternet510, and save it on the Linkspace-hostedcontent unit513. Theclient tool220 may then publish thenew link relationships45,345 referencing the user created or selected document object to theappropriate link directory35,310,320,360, and then make the user created or selected document object available to other users of the Linkspace system100 through thenew link relationships45,345. The activity of publishing a user created or selected document object in this manner is also recorded in the appropriate user account record379 for the user creating or selecting the document object to be published.
Similarly, theprivate network520 may have connected to it components that implement the present invention, including one or more Linkspace-enabled client users521, one ormore link directories522, one or more Linkspace-hostedcontent units523, and one or morenetworked content units524.
Additionally, theclosed network530 may have connected to it components that implement the present invention, including one or more Linkspace-enabled client users531, one ormore link directories532, one or more Linkspace-hostedcontent units533, and one or morenetworked content units534.
InFIG. 5, theprivate network520 is shown connected to the public network orInternet510. This may allow Linkspace-enabled client users521 connected to theprivate network520 to also be permitted access to any of the one ormore link directories512, Linkspace-hostedcontent units513, andnetworked content units514 that are connected to the public network orInternet510. However, Linkspace-enabled client users511 connected to the public network orInternet510 that are not also among the group of authorized Linkspace-enabled client users521 of theprivate network520, may not be permitted to access the one ormore link directories522, Linkspace-hostedcontent units523, andnetworked content units524 that are connected to theprivate network520.
A Linkspace client user531 connected to theclosed network530, and therefore not connected to either the public network orInternet510 nor to theprivate network520, may only be permitted access to the one ormore link directories532, Linkspace-hostedcontent units533, andnetworked content units534 that are connected to theclosed network530.
FIG. 6 is a flowchart showing the steps of amethod600 according to one embodiment of the present invention. Themethod600 includes the steps of a first user (not shown) of aclient device20 locating a first document object40 (step610); the first user locating a second document object50 (step620); and the first user creating alink relationship45 between thefirst document object40 and the second document object50 (step630). Themethod600 includes the additional steps of storing thelink relationship45 created by the first user in a link directory35 (step640); and providing access to thelink directory35 to a second user (not shown) of another client device20 (step650).
Themethod600 may include a step for providing authorized users ofclient devices20 access to thelink relationships45 stored inlink directories35, based upon thedocument object40 currently accessed by the users on the users' client device20 (step660).
FIG. 7 is a flowchart showing the steps of amethod700 for accessing and displaying link relationships and related document objects on a network according to one embodiment of the present invention. Themethod700 initiates when a user of aclient device20 engages therendering tool210 to request, access and display a document object40 (step710). The user of theclient device20 then engages theclient tool220 and is authenticated by a server30 (step715). The user of theclient device20 then selects a user profile332 (step717) that has been returned to theclient device20 upon authentication of the user by theserver30 instep715. The selected user profile332 may be used to determine what attributes of thelink relationships45 will be applied to filter and sort the link references430,440,450 and linkrelationships460,470,480 returned by theserver30. By filtering and sorting using attributes, a manageable and meaningful group of relevant link references430,440,450 may be displayed to the user based on the user's needs and interests.
In alternate embodiments of themethod700, thesteps715 and717 may occur before thestep710.
With the user profile332 selected and thedocument object40 displayed, the user then selects aclient tool220 function (step720). The first function that the user may select is to enter adocument object URL215 into therendering tool210, whereupon thatdocument object URL215 is captured by theclient tool220 and transmitted to the servers30 (step730). The activity of transmitting thedocument object URL215 to theservers30 by theclient tool220 may be recorded and stored in an appropriate location within the user data store370.
Theserver30 then processes the transmitteddocument object URL215 across thevarious link directories35 to which the user is authorized access. One method of processing by theserver30 is according to the following steps. Theserver30 performs a search of the document object tables410 of alllink directories35 to find all instances of the document object URL215 (step735). Theserver30 then searches the Link relationship tables420 in thelink directories35 where theURL215 was found. This search by theserver30 locates alllink relationships460,470,480,490 referencing theURL215 as one of the pointers to linkreferences462 or463,472 or473,482 or483,492 or493 included in thoselink relationship460,470,480,490 (step740). Theserver30 then accumulates all theURLs432,442,452 related, through thelink relationships460,470,480,490 identified instep740, to theURL215. Theserver30 also accumulates the document object attributes435,445,455 associated with the identifiedURLs432,442,452 and the link relationship attributes465,475,485,495 associated with thelink relationships460,470,480,490 identified in step740 (step745).
The accumulatedURLs432,442,452 are then filtered by link relationship attributes465,475,485,495 (step750), and then filtered again by document object attributes435,445,455 (step755). In alternate embodiments of themethod700, the accumulatedURLs432,442,452 may be filtered first by document object attributes435,445,455 (step755) and then by link relationship attributes465,475,485,495 (step750). The user profile332 is applied to determine what link relationship attributes465,475,485,495, and document object attributes435,445,455 to use in filtering the accumulatedURLs432,442,452. The filteredURLs432,442,452 are then sent back to theclient device20 that transmitted theURL215, along with the associated document object attributes435,445,455, and associated link relationship attributes465,475,485,495 (step760). The activity of transmitting the filteredURLs432,442,452, along with the associated document object attributes435,445,455, and associated link relationship attributes465,475,485,495, to theclient device20 may be recorded and stored in an appropriate location within the user data store370. Alternatively, the first filtering steps750,755 may be performed by theclient device20.
Theclient tool220, upon receiving the filteredURLs432,442,452 from theserver30, may further filter and sort the returnedURLs432,442,452 according to data stored in the selected user profile332 (step765). In this manner, the data in the user profile332 may be applied to the filtered and sortedURLs432,442,452 on either theserver30 or theclient tool20.
The filtered and sortedURLs432,442,452 are then displayed to the user of theclient device20 by theclient GUI display225 and theclient tool220 alerts the user of theclient device20 to the availability of related links (in the form of the returnedURLs432,442,452) by means of an indicator in the client GUI display225 (step770). Themethod700 then returns to step720 to await further action by the user of theclient device20.
If, atstep720, the user of theclient device20 selects one of the URL links432,442,452 displayed by the Linkspace GUI display as being related bylink relationships460,470,480,490 to the presently accesseddocument object40 with the URL215 (step780), therendering tool210 then accesses thenew document object50 associated with the selected URL and displays that documentobject50 in theGUI display218 of the rendering tool210 (step785). The new documentobject URL address215 of the selecteddocument object50 is then passed on to the servers30 (step790) and themethod700 continues withstep735, as above, using theURL215 of thenew document object50 as the URL to search for.
FIG. 8 is a flowchart showing the steps of amethod800 for creating and publishing link relationships according to one embodiment of the present invention. Themethod800 initiates when a user of theclient device20 engages theclient tool220 and is authenticated by a server30 (step810). The user of theclient device20 may then select a publish link relationship function of the client tool220 (step815).
The user of theclient device20 may then navigate, using therendering tool210, to thefirst document object40 of thenew link relationship45 that the user of theclient device20 wishes to create and publish. The user may then select a declare first link function of the client tool220 (step820). The user of theclient device20 may then navigate, again using therendering tool210, to thesecond document object50 that the user of theclient device20 wishes to associate by means of alink relationship45 with thefirst document object40. The user can then select the declare second link function of the client tool220 (step825). The user of theclient device20 has now selected both ends of alink relationship45.
The user now may select which of thelink directories35 in which the user wishes to publish the new link relationship45 (step830). The user of theclient device20 may then further assign link relationship attributes, such as those shown inFIG. 4 (465,475,485,495) to thelink relationship45, along with assigning any document object attributes, such as those shown inFIG. 4 (435,445,455), to thefirst document object40 andsecond document object50 of the link relationship45 (step835). The user may then interact with aLinkspace GUI225 button or element to complete the link relationship publish function (step840). Upon completion of the link relationship publish function on the client device, the URLs and document object attributes of the document objects40 and50 associated by thenew link relationship45 are stored in the document object table410 in the selected link directory35 (step850). Additionally, thenew link relationship45, along with the URL references to thefirst document object40 andsecond document object50 and the link relationship attributes, such as those shown inFIG. 4 (465,475,485,495), are stored in the link relationship table420 in the selected link directory35 (step855). Themethod800 for creating and publishing link relationships completes by recording the publishing activity to the user account record379 associated with the user of theclient device20 for later tracking and billing purposes (step880).
FIG. 9 is an example of a user interface, more specifically, a screen view of a user interface for a relatelinks dialog box900, one element of the user interface of one embodiment of the invention. The relatelinks dialog box900 is invoked when a user of theclient tool220 engages the publish link relationship function of theclient tool220. In the embodiment shown inFIG. 9, the relatelinks dialog box900 includes a drop downlist910 for selecting a community of interest, a user interface term referring to one of the one ormore link directories35, and acheckbox915 for indicating whether thelink relationship45 being created is to operate bi-directionally or unidirectionally. If thecheckbox915 is checked, then thelink relationship45 being created will only apply in one direction. In the example illustrated inFIG. 9, the user has selected the community of interest (link directory35) referred to as “Wireless Washington,” alink directory35 storing link references42,52 andlink relationships45 considered by their creators as relevant to wireless device users in the Washington, D.C. metropolitan area.
The relatelinks dialog box900 further includes a link-fromsection920, a link-tosection930, a link relationship attributesdisplay box970, a submit link relationship button980 and a cancel button985. The submit link relationship button980 is selected by the user when the user has selected and/or entered all information associated with the link references42,52 and thelink relationship45 that the user wishes to publish. Upon selection of the submit link relationship button980, theclient tool220 closes the relatelinks dialog box900 and transmits the information associated with the createdlink relationship45 to one of the one ormore servers30. The cancel button985 may be selected by the user to abort the creation and publication of thelink relationship45 that the user initiated and to close the relatelinks dialog box900.
In the embodiment shown inFIG. 9, the link-fromsection920 may include a firstdocument object URL922 associated with thefirst document object40 included in thelink relationship45 being created, where the firstdocument object URL922 was captured when the publish link relationship function was engaged; a first plainlanguage name field925; and a listing of first link reference attributes940 and the attribute values942 associated with those first link reference attributes940. In the example illustrated byFIG. 9, the firstdocument object URL922 is the address of afirst document object40 that is a web page for a coffee and dessert shop. The first plainlanguage name field925 may be captured when the publish link relationship function was engaged and/or may be edited by the user creating thelink relationship45. An exemplary first link reference attribute forfood945, and the value ofspecialty foods947 assigned to the firstlink reference attribute945 by the user creating thelink relationship45, are also shown.
The link-tosection930 similarly may include a seconddocument object URL932 associated with thesecond document object50 included in thelink relationship45 being created, where the seconddocument object URL932 was captured when the publish link relationship function was engaged; a second plainlanguage name field935; and a listing of second link reference attributes950 and the attribute values952 associated with those second link reference attributes950. In the example illustrated byFIG. 9, the seconddocument object URL932 is the address of asecond document object40 that is a web page for a “LinkSpace Restaurant” located in McLean, Virginia (a suburb of Washington). The second plainlanguage name field935 may be captured when the publish link relationship function was engaged and/or may be edited by the user creating thelink relationship45. An exemplary second link reference attribute forlocation955, and the value ofaddress995 assigned to the secondlink reference attribute955 by the user creating thelink relationship45, are also shown. In addition, in the example illustrated byFIG. 9, a subordinate attribute forcity957, subordinate under the attribute forlocation955, and a value ofaddress995 along with the assigned value ofMcLean958 for the subordinate attribute forcity957, are also shown in the link-tosection930. Further subordinate attributes may include astreet956 with avalue959 of 12345 Main Street.
The link relationship attributesdisplay box970, as shown for the embodiment illustrated byFIG. 9, includes a list of link relationship attributes972 and a delete linkrelationship attribute button975. Thelink relationships972 are formed by pairs of first link reference attributes940 and second link reference attributes950 that the user creating thelink relationship45 has selected to describe the nature of thelink relationship45. These link relationship attributes972 may form the link relationship attributes465,475,485,495 described inFIG. 4a. The delete linkrelationship attribute button975 may be used to delete a selectedlink relationship attribute972 displayed in the link relationship attributesdisplay box970.
The exemplarylink relationship attribute972 shown inFIG. 9 indicates that the user creating thelink relationship45 has declared that the city subordinate attribute957 (one selected second link reference attribute950) of the Linkspace Restaurant associated with thesecond document object50, having a value ofMcLean958, is related to the food attribute945 (one selected first link reference attribute940), having a value ofspecialty foods947, of the coffee shop associated with thefirst document object40. As a result, once theexemplary link relationship45 shown inFIG. 9 is created and published, other users of Linkspace-enabledclient devices20 that request and/or access the Linkspace Restaurant web page may be presented with alink reference42,52 pointing to the web page for the coffee and dessert shop, as illustrated in the linkreference display window1020 shown inFIG. 10.
In one embodiment of the invention, thelink relationship attribute972 may be declared by the user performing a drag-and-drop operation wherein thelink reference attribute957 is dragged and dropped onto thelink reference attribute945, creating thelink relationship attribute972 which relates the two document objects40,50 by the association of the citysubordinate attribute957 to thefood attribute945. In an alternate embodiment, the creation and selection of link relationship attributes972 may be performed in a manner similar to that used in the link-tosection930 and link-fromsection920 described above, utilizing a set of link relationship attribute types along with data input fields for entering or otherwise selecting values for those attributes.
FIG. 10 is an example of a screen view for one embodiment of theclient GUI display225 for one embodiment of the invention, wherein theclient GUI display225 is integrated into theGUI display218 of therendering tool210. In the embodiment shown inFIG. 10, aclient toolbar1010 and a linkreference display window1020 together comprise theclient GUI display225. Abrowser window1030 displays the document object (40,50) being requested and accessed by therendering tool210 and having the documentobject URL address215 displayed in anaddress bar field1040.
Theclient toolbar1010 includes a number of GUI buttons that initiate various functions of theclient tool220. Aclient logon button1050 initiates a connection between theclient tool220 and one ormore servers30. Aclient logoff button1055 ends a user session for theclient tool220 and disconnects theclient tool220 from the one ormore servers30. A mark startingpage button1060 may be engaged to initiate the publish link relationship function of theclient tool220 by setting the currently displayeddocument object40 shown in thebrowser window1030 and referenced by the documentobject URL address215 displayed in theaddress bar field1040 as thefirst document object40 in thelink relationship45. After the user navigates to asecond document object50, a mark endingpage button1065 may be engaged to complete the selection of participating document objects40,50 for the publish link relationship function of theclient tool220. Engaging the mark endingpage button1065 sets the newly displayeddocument object50 shown in thebrowser window1030 and referenced by the documentobject URL address215 displayed in theaddress bar field1040 as thesecond document object50 in thelink relationship45, and opens a relate links dialogue box900 (shown and described inFIG. 9 above) to allow the user of theclient tool220 to assign attributes to thelink relationship45.
Theclient toolbar1010 also may include three icons that indicate the availability and type of link references42,52 related to thedocument object40 open in thebrowser window1030. These icons may include apublisher links indicator1071, aprivate links indicator1072, and a community linksindicator1073.
The linkreference display window1020 presents the user with a hierarchical listing of any link references42,52, delivered by theserver30, that may be related to thedocument object40 that is currently displayed in thebrowser window1030 and has the documentobject URL address215 shown in theaddress bar field1040. The linkreference display window1020 may be presented in a tabbed format, wherein each tab may contain a different set of link references42,52 depending on the type of link reference and link relationship involved. In one embodiment of the invention, there may be three different tabs at the top of the linkreference display window1020, each corresponding to one of the indicator icons (1071,1072,1073) in theclient toolbar1010. The first tab may be aprivate links tab1074, corresponding to theprivate links indicator1072. The second tab may be apublisher links tab1075, corresponding to thepublisher links indicator1071. The third tab may be acommunity links tab1076, corresponding to thecommunity links indicator1073.
Thedocument object40 displayed in thebrowser window1030 inFIG. 10 is a representative web page, in this case for a restaurant named Linkspace. When this page is displayed, and theclient tool220 is engaged, as indicated by the recessed display of theclient logon button1050 in theclient toolbar1010, one or more of the indicator icons (1071,1072,1073) in theclient toolbar1010 will become highlighted if there are any link references42,52 available of the corresponding type.
For example, as illustrated inFIG. 10, thecommunity links indicator1073 is highlighted, while thepublisher links indicator1071 and theprivate links indicator1072 are grayed out. This indicates that theserver30 has returned one or more link references42,52 that are categorized as community links and has not returned any link references42,52 categorized as publisher or private links. The returnedlink references42,52 are displayed in the linkreference display window1020 under thecommunity links tab1076. In this case, the link references42,52 are displayed in a hierarchical listing underaffinity directory headings1081,1082. The affinity directory heading1082 shown represents one community of interest, corresponding to onelink directory35 on aserver30, maintaining one set oflink relationships45 and link references42,52, that may include thedocument object40 displayed in thebrowser window1030. In addition, under each affinity directory heading1081,1082, there may be displayed one ormore attribute folders1091,1092. Eachattribute folder1091,1092 may contain a grouping of listedhyperlinks1095,1096 drawn from the respective affinity directory heading1082 and related to thedocument object40 displayed in thebrowser window1030 by a particularlink relationship attribute972.
In the example shown inFIG. 10, affinity directory heading1082 indicates alink directory35 focusing on wireless devices in the Washington, D.C. area. Also shown in the example inFIG. 10, theattribute folder1091 groups listedhyperlinks1095 by thelink relationship attribute972, further relating document objects40 to specialty food document objects50. The listedhyperlink1095, listed under theattribute folder1091, comprises the text of the plain language name attribute of a document object concerning coffee and dessert after dinner. In this manner, the listedhyperlink1095, displayed under the affinity directory heading1082 and theattribute folder1091, represents alink reference52 to adocument object50 that is related, as a document object of interest to wireless device users in the Washington area, and as a specialty food document object, to thedocument object40, the restaurant web page, displayed in thebrowser window1030.
Theattribute folder1092 shown in the example inFIG. 10 groups listedhyperlinks1096 by thelink relationship attribute972 further relating documents objects40 to documentobjects50 concerning the downtown area of the Washington, D.C. suburb of McLean. The listedhyperlink1096 is to a LinkNexus document object for the city of McLean. A LinkNexus document object may comprise a listing of further link references42,52 to documentobjects40,50 relating to a particular subject. In the case illustrated inFIG. 10, the LinkNexus document object indicated by the listedhyperlink1096 may contain link references42,52 concerning the suburban city of McLean. In this manner, the listedhyperlink1096, displayed under the affinity directory heading1082 and theattribute folder1092, represents alink reference52 to adocument object50 that is related, as a document object of interest to wireless device users in the Washington area, and as a link to content relevant to downtown McLean, to thedocument object40, the restaurant web page, displayed in thebrowser window1030.
The affinity directory heading1081 shown in the example inFIG. 10 indicates a community related to “Your Company,” the user's company. This affinity directory heading1081 may contain link references42,52 to documentobjects40,50 maintained on the user's company'sprivate network520, accessible to users within the company, but not to the general public, as shown and described inFIG. 5.
The steps of themethods600,700 and800, and subsets of those steps or parts of the methods, may be implemented with hardware or by execution of programs, modules or scripts. The programs, modules or scripts may be stored or embodied on one or more computer readable mediums in a variety of formats, including source code, object code or executable code, among other formats. The computer readable mediums may include, for example, both storage devices and signals. Exemplary computer readable storage devices include conventional computer system RAM (random access memory), ROM (read only memory), EPROM (erasable, programmable ROM), EEPROM (electrically erasable, programmable ROM), and magnetic or optical disks or tapes. Exemplary computer readable signals, whether modulated using a carrier or not, are signals that a computer system hosting or running the described methods can be configured to access, including signals downloaded through the Internet or other networks.
The terms and descriptions used herein are set forth by way of illustration only and are not meant as limitations. Those skilled in the art will recognize that many variations are possible within the spirit and scope of the invention as defined in the following claims, and their equivalents, in which all terms are to be understood in their broadest possible sense unless otherwise indicated.