`c
`
`WORLD INTELLECTUAL PROPERTY ORGANIZATION
`Intemational Bureau
`
`
`
`INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT)
`(51) InternationalPatentClassification© :
`(11) International Publication Number:
`WO 99/23591
`GO06F 17/60, H04M 3/42
`
`(43) International Publication Date:
`
`(22) International Filing Date:
`
`28 October 1998 (28.10.98)
`
`(30) Priority Data:
`08/962,997
`
`2 November 1997 (02.11.97)
`
`US
`
`
`14 May 1999 (14.05.99) (21) International Application Number:
`
`
`PCT/US98/22926|(81) Designated States: AL, AM, AT, AU, AZ, BA, BB, BG, BR,
`BY, CA, CH, CN, CU, CZ, DE, DK, EE, ES, FI, GB, GD,
`GE, GH, GM, HR, HU, ID, IL, IS, JP, KE, KG, KP, KR,
`KZ, LC, LK, LR, LS, LT, LU, LV, MD, MG, MK, MN,
`MW,Mx, NO, NZ, PL, PT, RO, RU, SD, SE, SG, SI, SK,
`SL, TJ, TM, TR, TT, UA, UG, US, UZ, VN, YU, ZW,
`ARIPO patent (GH, GM, KE, LS, MW, SD, SZ, UG, ZW),
`Eurasian patent (AM, AZ, BY, KG, KZ, MD, RU, TJ, TM),
`European patent (AT, BE, CH, CY, DE, DK, ES, FI, FR,
`GB,GR,IE, IT, LU, MC, NL, PT, SE), OAPI patent (BF,
`BJ, CF, CG, CI, CM, GA, GN, GW, ML, MR, NE, SN,
`TD, TG).
`
`SAGE
`(for all designated States except US):
`(71) Applicant
`ENTERPRISES,
`INC., doing business as PLANETALL
`[US/US]; 2nd floor, 17 Sellers Street, Cambridge, MA
`02139 (US).
`.
`
`(72) Inventor; and
`(75) Inventor/Applicant (for US only): ROBERTSON,Brian, D.
`[CA/US]; Apartment 605, 10 Magazine Street, Cambridge,
`MA 02139 (US).
`
`Published
`With international search report.
`Before the expiration of the time limit for amending the
`claims and to be republished in the event of the receipt of
`amendments.
`
`(74) Agents: CRISMAN, Douglas, J. et al.; Flehr, Hohbach,
`Test, Albritton & Herbert LLP, Suite 3400, 4 Embarcadero
`Center, San Francisco, CA 94111-4187 (US).
`
`(54) Title: NETWORKED PERSONAL CONTACT MANAGER
`
`(57) Abstract
`
`A network computer based personal contact manager system (343) is disclosed wherein users of networked clients (370) maintain
`and update a set of user information which is stored in a relational database (340) on a networked server (330). The personal contact
`manager system (343) allows each user to specify on an individual basis which of their contacts are permitted to access respective datums
`of their user information. When permission is granted, the system will issue notifications to a user’s contacts. The system also allows users
`to find contacts based on groupaffiliations and notifies users when there are coincidences in their data. The system supports the retrieval
`of information on the contacts of contacts, if a permission has been granted by the contacts and their contacts, and can also be used to
`synchronize the server database with a PIM database of the user (390) and any of his contacts who have the appropriate permissions.
`
`TTO00007097
`
`
`
`
`
`FOR THE PURPOSES OF INFORMATION ONLY
`
`Codes used to identify States party to the PCT on the front pages of pamphlets publishing international applications under the PCT.
`
`AL
`AM
`AT
`AU
`AZ
`BA
`BB
`BE
`BF
`BG
`BJ
`BR
`BY
`CA
`CF
`CG
`CH
`cl
`CM
`CN
`cu
`CZ
`DE
`DK
`EE
`
`Albania
`Armenia
`Austria
`Australia
`Azerbaijan
`Bosnia and Herzegovina
`Barbados
`Belgium
`Burkina Faso
`Bulgaria
`Benin
`Brazil
`Belarus
`Canada
`Central African Republic
`Congo
`Switzerland
`Céte d’Ivoire
`Cameroon
`China
`Cuba
`Czech Republic
`Germany
`Denmark
`Estonia
`
`ES
`FI
`FR
`GA
`GB
`GE
`GH
`GN
`GR
`HU
`IE
`IL
`Is
`IT
`JP
`KE
`KG
`KP
`
`KR
`KZ
`LC
`LI
`LK
`LR
`
`Spain
`Finland
`France
`Gabon
`United Kingdom
`Georgia
`Ghana
`Guinea
`Greece
`Hungary
`Treland
`Tsrael
`Iceland
`Ttaly
`Japan
`Kenya
`Kyrgyzstan
`Democratic People’s
`Republic of Korea
`Republic of Korea
`Kazakstan
`Saint Lucia
`Liechtenstein
`Sri Lanka
`Liberia
`
`Ls
`LT
`LU
`LV
`MC
`MD
`MG
`MK
`
`ML
`MN
`MR
`MW
`MX
`NE
`NL
`NO
`NZ
`PL
`PT
`RO
`RU
`sD
`SE
`SG
`
`Lesotho
`Lithuania
`Luxembourg
`Latvia
`Monaco
`Republic of Moldova
`Madagascar
`The former Yugoslav
`Republic of Macedonia
`Mali
`Mongolia
`Mauritania
`Malawi
`Mexico
`Niger
`Netherlands
`Norway
`NewZealand
`Poland
`Portugal
`Romania
`Russian Federation
`Sudan
`Sweden
`Singapore
`
`sl
`SK
`SN
`SZ
`TD
`TG
`TJ
`T™
`TR
`TT
`DA
`UG
`Us
`UZ
`VN
`YU
`ZW
`
`Slovenia
`Slovakia
`Senegal
`Swaziland
`Chad
`Togo
`Tajikistan
`Turkmenistan
`Turkey
`Trinidad and Tobago
`Ukraine
`Uganda
`United States of America
`Uzbekistan
`Viet Nam
`Yugoslavia
`Zimbabwe
`
`
`
`
`
`TT00007098
`
`
`
`WO 99/23591
`
`PCT/US98/22926
`
`NETWORKED PERSONAL CONTACT MANAGER
`
`The present invention relates generally to computer software used to manage
`contact information--such as mailing addresses, e-mail addresses, phone numbers,
`and birthdays--and more specifically to a method of creating links between members
`over a network and providing information to each member basedonlevels of
`permission maintained by the other members to which they are linked.
`
`BACKGROUND OF THE INVENTION
`
`10
`
`15
`
`20
`
`Several types of prior art for managing contact information exist, including Personal
`Information Managementsoftware applications, Groupware Applications, and
`Internet-based “White Pages” and e-mail services.
`
`Personal Information Management Software. As represented generally in FIG. 1,
`in a typical prior art Personal Information Management(PIM) software application
`(e.g., Lotus Organizer, Microsoft Outlook, or U.S. Robotics Paim Pilot), a PIM
`software application 120, 124 that stores contact informationin a database resides
`on a workstation or handheld computer 100 having a central processing unit 102, a
`display 108, a keyboard and/or mouse 110, a primary memory 104 (e.g., random
`access memory) for program execution, a secondary memory 106(e.g., a hard disc)
`for program storage, and peripheral devices 112. As is well known, programs, such
`as the PIM software 120, are executed in the RAM 104 by the CPU 102 under
`
`control of the operating system software 122, 126.
`
`TTO0007099
`
`
`
`WO 99/23591
`
`PCT/US98/22926 _
`
`-2-
`
`In the prior art, users themselves enter the contact information that they want to
`
`store in the PIM software. A variety of methods exist for entering this contact
`
`information.
`
`it may be entered manually using the keyboard, imported from an
`
`existing file on their computer, or imported via a peripheral device such as a
`
`business card scanner. The defining characteristic of this class of prior art is that
`
`the input of the contact information is performedby the user of the software and,
`
`whenthe information changes, the user must modify the information himself. What
`
`this class of prior art lacks is a means for information to be shared between multiple
`
`users and a meansfor a given user to post changesto his owninformation for the
`
`10
`
`benefit of others.
`
`Groupware Applications. As generally represented in FIG. 2, in a typical prior art
`
`Groupware application.(e.g., Lotus Notes), a user workstation 160 accesses
`
`information stored on a central server computer 130 over a computer network 150,
`
`15
`
`such as a Local Area Network or Intranet. The server system consists of a central
`
`processing unit 132, a primary memory 134 (e.g., random access memory)for
`
`program execution, a secondary storage device 136 (e.g., a hard disc) for program
`
`storage, and a modem 138 or other device for connecting to the computer network.
`
`The user workstation 160 is the same as the user workstation 100 described in
`
`20
`
`reference to FIG. 1 with the addition of a modem 162 or other device for connecting
`
`to the computer network. Thefile server or database contains data files 148 that
`
`can be accessed only by authorized users. The user uses client software 174, 176
`
`running on the user workstation 160 to accessthe files 148 under the mediation of
`
`server software 140, 144 running on the server 130.
`
`25
`
`Typically, in such a system a central system administrator organizes users into
`classes and the creatorof a file 148 determines what classes of users may view the
`
`file. The rules governing which individual users or classes of users have the
`
`authorization to view a particularfile 148 may be stored as part ofthefile itself.
`
`30
`
`Alternatively, these rules are based upon the hierarchical directory structure of the
`
`file server in which thefile is stored. That is, a particular user may viewfiles in one
`
`directory but not another.
`
`TT00007100
`
`
`
`WO 99/23591
`
`PCT/US98/22926 _
`
`-3-
`
`FIG. 3 represents a common deploymentof a contact management system based on
`Groupware. Each userenters information 202 about himself and specifies a set of
`
`permissions 204 that define what classes of users are able to view various pieces of
`
`the information 202. What this deploymentof the prior art lacks is the ability to
`authorize viewing privileges on a user-by-user basis rather than on a class-by-class
`
`basis. For instance, a user would be able to grant access to his home phone
`number206 to the Human Resources department of his employer(e.g., Class A)
`while denying accessto the same information to his co-workers (e.g., Class C). The
`
`user would not be able to give access to his home phone number selectively to a
`
`first co-worker while denyingit to a second co-workerif both co-workers were part of
`the same class of users as organized by the central system administrator.
`Furthermore, such a system would lack a practical notification methodology. There
`would be no wayfor a user to specify “notify me when thefirst co-worker changes
`
`his information but not when the second co-worker changeshis information.”
`
`10
`
`15
`
`Internet-Based “White Pages” and E-Mail Directory Services.
`
`In a typical prior
`
`art “white pages” or e-mail service, client computers and a server computer are
`
`connected via the World Wide Web as depicted in FIG. 4. Auser subscribes to a
`
`White Pages or E-Mail service via a client computer 270 operating a web browser
`
`20
`
`282 or other software application residing in memory 274 that allowsit to display
`information downloaded from a server computer 230 over the World Wide Web 260.
`
`The server computer system accesses a database 240 containing contact
`
`information entered by registered users. The service enables users to view contact
`
`information entered by other users. The authorization scheme mayallow all users
`
`to limit certain classes of users from viewing certain parts of their user record as
`represented in FIG. 3. However, there are no linkages betweenindividual users
`and thus users cannotrestrict the viewing of their information on a user-by-user
`
`basis. Furthermore, users cannot be notified when information for particular users
`
`has changed.
`
`25
`
`30
`
`TT00007101
`
`
`
`WO 99/23591
`
`PCT/US98/22926
`
`-4-
`
`SUMMARYOF THE INVENTION
`
`The present invention is a computer-network-based contact management system
`
`that allows members to create and maintain contact with other members and
`
`determine on a person-by-person basis what information to share or withhold. The
`
`system is based on a relational database scalable to millions of users that resides
`
`on a server computer.
`
`The invention was developed shortly after the advent of the World Wide Web, which
`
`10
`
`promoted millions of people worldwide to connect their computers with a standard
`protocol, a phenomenon which madethe invention practical and beneficial.
`
`Whena user becomes a memberof the system, the member associates himself with
`
`15
`
`any number ofaffinity groups and creates a data record for himself by entering
`information in specific data fields. Based on the affinity groups with which the user
`has associated himself, the system then informs the user of other membersin the
`
`Same groups and allowsthe userto establish a link to any of those members on an
`
`individual basis.
`
`For each second userto whichafirst user has established a link, the second user
`20
`
`can specify which data fields in his data record can be viewed bythefirst user.
`
`Each second userto which thefirst user has established a link is informed that a
`
`link has been established. Tne second usercan in turn decide whetheror not to
`
`establish a link to the first user.
`
`If the second user choosesto establish a link to the
`
`25
`
`first user, he can specify which data fields in his personal data record can be viewed
`
`by the first user.
`In addition, each time a new user associates himself with a group
`with which an existing user has associated himself, the present invention informs the
`existing user that the new userhasjoined that group and allows the existing
`memberto establish a link to the new user.
`
`30
`
`For eachfirst user, the present invention maintains a database of information about
`
`the second users to whom thefirst user has established a link. The personal
`
`address bookofthe first user contains the information in the data fields that the
`
`TT00007102
`
`
`
`WO 99/23591
`
`PCT/US98/22926 _
`
`.
`
`second users have giventhefirst user permission to view. Whenever a second user
`
`changesany information in any data field of his data record, the information in that
`
`field is automatically updated in the information database of eachfirst user whom he
`
`has given permission to view the information in that datafield.
`
`In addition, if a first user has given a second user the properform ofdatafield
`
`permission for the personal data record ofthe first user, the present inventionwill
`
`inform the second user whenever first user’s birthday or anniversary is approaching,
`
`wheneverthefirst user will be travelling in the vicinity of the second user, and
`
`10
`
`whenever the astrological sign of the first user is compatible with the astrological
`
`sign of the second user.
`
`15
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The accompanying drawings, which are incorporated in and form a part of this
`
`specification, illustrate embodiments of the invention and, together with the
`
`description, serve to explain the principles of the invention, wherein:
`
`20
`
`FIG. 1 depicts a computer loaded with Personal Information Management software;
`
`FIG. 2 generally depicts the data schema of a category of prior art known as
`
`groupware applications;
`
`25
`
`FIG. 3 shows a common schemefor authorizing permission to view information in
`
`the priorart:
`
`FIG. 4 depicts two computers interconnected via the Internet, one of which is a
`
`server connected to a database andthe other of which represents a user’s client
`
`30
`
`workstation, both of which are configured according to the prior art;
`
`TT00007103
`
`
`
`WO 99/23591
`
`PCT/US98/22926 ;
`
`5-
`
`FIG. 5 depicts two computers interconnected via the Internet, one of which is a
`server connected to a database andthe other of which represents a user's client
`workstation, both of which are configured according to the present invention;
`
`FIG. 6 represents an object model of the key tables in the relational database
`maintained on the server computerin the preferred embodimentof the present
`invention;
`
`FIG. 7 represents a pseudo graphical user interface in which a user enters
`information in specific data fields to create a personal data record:
`
`10
`
`FIG. 8 represents a pseudo graphicaluserinterfaceforlisting other users with the
`same group affiliation as that specified by a first user:
`
`15
`
`FIG. 9 represents a pseudo graphical userinterface for specifying what type of data
`fields from a first user's personal data record to whichthefirst user wishes to grant a
`specific second user access;
`
`FIG. 10 represents a pseudo graphical user interface that displays the information
`stored in a user's personal address book;
`
`20
`
`FIG. 11 represents a pseudo graphical user interface that providesafirst user with
`Specific information that has changed about the other users to whichthefirst useris
`linked:
`
`25
`
`FIG. 12 represents a pseudo graphicaluserinterface that allowsa first user to enter
`travel information and find out which contacts have overlapping travel schedules
`
`FIG. 13 represents a pseudo graphical user interface that allowsa first user to
`gather information about the contacts of his contacts; and
`
`30
`
`TT00007104
`
`
`
`WO99/23591
`
`PCT/US98/22926 _
`
`-7-
`
`FIG. 14 is a data flow diagram of an alternative embodiment of the present invention
`where a personal digital assistant is synchronized with a server database of user
`
`information.
`
`DESCRIPTION OF THE PREFERRED EMBODIMENT
`
`Reference will now be made in detail to the preferred embodiments of the invention,
`examples of whichareillustrated in the accompanying figures. While the invention
`will be described in conjunction with the preferred embodiments, it will be
`understood that they are not intendedto limit the invention to those embodiments.
`
`On the contrary, the invention is intended to coveralternatives, modifications and
`equivalents, which may be included within the spirit and scope of the invention as
`defined by the appendedclaims.
`
`As represented in FIG. 5, the preferred embodimentfollows a standard Internet
`architecture, in which client computers 370 and a server computer 330 are
`connected via the World Wide Web 360 and modems 338, 378 or other
`communications channels. A user accesses the server 360 via a client computer
`370 operating a web browser 382 or other software application residing in memory
`374 that allowsit to display information downloaded from a server computer 330.
`The server computer system 330 runs server software 342, including the network-
`computer-based personal contact manager 343 of the present invention, which
`interacts with the client computers 370 and a userinformation database 340. Ina
`commercial embodimentof the present invention, the personal contact manager 343
`is the heart of a Web-based personal contact managementservice called PianetAll.
`The database 340 contains contact information entered by registered users. The
`personal contact manager 343 in somesituations will notify a set of users of
`updates madeto the database 340 by another user to whom thenotified setis
`related.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`A distinction overthe priorart is that the database 340 in the present invention is
`
`necessarily a relational database built from a set of relational tables 350.
`
`In the
`
`TT00007105
`
`
`
`WO 99/23591
`
`PCT/US98/22926
`
`s
`
`conventional manner, both the server 330 and the clients 370 include respective
`
`storage devices, such as hard disks 336 and 376 and operate under the controlof
`
`operating systems 344, 384 executed in RAM 334, 374 by the CPUs 332, 372. The
`
`server storage device 336 stores program files 346 and the operating system 348.
`
`Similarly, the client storage devices 376 store the web browser software 386 and the
`
`operating systems 388.
`
`in an alternative configuration, in which the client is a
`
`personal information manager (PIM), such as the U.S. Robotics Palm Pilot, the disc
`
`376 can also include a local PIM database 390 and PIM software, which performs
`
`data management and synchronization functions.
`
`FIG. 6 outlines the data structure of the relational database 340 in the preferred
`
`embodiment, in which seven tables 350 are employed to enable most of the
`
`functionality of the present invention:
`
`(1)
`
`(2)
`
`Customer Table 440 ;
`
`Friend Table 460;
`
`10
`
`15
`
`(3)|Group Table 400;
`
`Affinity Table 420;
`
`Address Table 480;
`
`Phone Table 500; and
`
`Travel Event Table 520;
`
`(4)
`
`5)
`
`) )
`
`6
`
`(7
`
`20
`
`The Customer Table 440 contains one record for each unique user. The keyfield in
`
`this table is CustomerID 440-2. All information stored in the various database tables
`
`relating to a particular memberis linked together by a unique numberin this field.
`
`25
`
`Other importantfields in this table include information used by usersto login to the
`
`system (Username 440-6 and Password 440-8), information which helps users
`
`identify each other (First Name 440-10, Last Name 440-12, and E-mail 440-20),
`information required to provide Birthday Notification (Birthday 440-16) and
`information required to provide Crossing Paths notification (CityID 440-14). Each
`
`30
`
`record in the Customer Table 440is time-stamped via the RecordDatefield 440-4.
`
`Otherfields 440-22 can also be included in the Customer Table 440 (and the other
`
`tables as well).
`
`TT00007106
`
`
`
`WO 99/23591
`
`PCT/US98/22926 _
`
`-9-
`
`The Friend Table 460 is a key to the present invention becauseit relates users to
`
`each other. Each record in the table represents a relationship between one user,
`
`identified by CustomerID 460-4, and another, identified by FriendID 460-6, with a
`
`certain level of permissions 460-10. The userinterface of the present invention
`
`provides a multitude of ways for users to view information about other users, and
`
`every one of these waysrelies on a database query of the Friend Table 460 to
`
`determinethe list of other users whose information a particular user may see. Each
`record is time-stampedvia the RecordDatefield 460-8 so that users maybe notified
`whentheir contacts’ records change. Each record is uniquely identified by a
`RelationID 460-2.
`|
`
`10
`
`The Group Table 400 contains one record for each unique group with which users
`
`mayaffiliate. Each group is identified by a GroupName 400-4 and GroupType 400-
`
`6. Examples of these groups would be GroupName 400-4 = “Massachusetts
`
`15
`
`institute of Technology’ (GroupType = “University”) and GroupName 400-4 =
`“Sigma Chi” (GroupType = “Fraternity”). Each record has a time-stamp 400-8 and a
`
`uniqueidentifier 400-2.
`
`20
`
`25
`
`30
`
`Each record of the Affinity Table 420 relates a user, identified by CustomerID 420-4,
`to a group, identified by GroupID 420-6.
`If a useraffiliates with six groups, there
`would be six recordsin the Affinity Table 420. This table stores information about
`the time period of a user's affiliation with a particular group in the FromYear and
`ToYearfields 420-8, 420-10 so that the system mayhelp usersfind their
`contemporaries. Each record is time-stamped 420-12 so that the system may
`report to users when other users join the group, has a unique identifier 420-2 and
`
`can include additional fields 420-14.
`
`The Address Table 480 stores information for any number and kind of addressesfor
`
`a particular user, identified by CustomerID 480-4. For instance, if a user wants to
`make his home address, work address and summer home address available to his
`contacts, there would be three recordsfor that user in the Address Table 480, each
`being identified in part by an appropriate AddressType 480-8 (e.g., home, work,
`summer home). Each record is time-stamped 480-16 so that the system cannotify
`
`TT00007107
`
`
`
`WO 99/23591
`
`PCT/US98/22926 _
`
`-10-
`
`users when their contacts have added or modified address information and has a
`
`unique identifier 480-2. Address information is conventional, including street
`
`Address 480-8, CityID 480-10, Postal code 480-12, and military Base 480-14 fields.
`
`The Phone Table 500is directly analogous to the Address Table 480, butit stores
`
`telephone and fax numberinformation instead of address information. Each record
`
`is identified by a unique PhoneRecordID 500-2 and includes the CustomerlD 500-4
`
`of the user whose phoneinformation is contained in the record, a phone type ID
`
`500-6 indicating, e.g., whether the record is for a telephone or fax, the phone
`
`10
`
`number 500-8 and a time-stamp 500-10.
`
`The Travel Event Table 520 stores information about users’ travel plans. This table
`
`is required to notify users when their travel plans intersect with the travel plans of
`
`15
`
`their contacts. A record in the Travel Event Table 520 includes the CustomerID
`520-4 of the user whosetravel information is contained in the record, arrival and
`departure dates 520-6, 520-8 and a CityID 520-10 identifying the travel destination.
`
`Each record is uniquely identified by a Travel_EventID 520-2 and is time-stamped
`
`with a RecordDate 520-14.
`
`20
`
`in the preferred embodiment, a multitude of other tables 540 are used to enabie a
`
`variety of user services. The Permission Type Table 542 contains one record for
`
`each of the varieties of permission levels the system allows members to assign to
`their contacts in the Friend Table 460.
`In the preferred embodiment, asillustrated in
`
`FIG. 9, permission information is groupedinto five categories for the purpose of
`
`25
`
`user interface simplicity (crossing paths notification permission 600-6, personal
`
`information 600-8, work information 600-10, birthday notification 600-12, and friends
`of friends information 600-14). However, the Permission Type table 542 could just
`as easily be structured to allow membersto grant and deny accessto information on
`
`a field by field basis.
`
`30
`
`The City Table 550 stores latitude and longitude information for two million cities to
`
`enable the system to notify users when their contacts travel within a defined
`
`geographical radius. The Zodiac Table 552 allows the system to associate
`
`TT00007108
`
`
`
`WO 99/23591
`
`PCT/US98/22926 ;
`
`-11-
`
`birthdayswith signs of the Zodiac and thereby notify which of their contacts have
`compatible astrological signs on a particular day. The AddressType, PhoneType
`and GroupType tables 544, 546, 548 define the types of address, phone and group
`that can be defined in the respective Address, Group and Phonetables 480, 400,
`500. The advantageof this normalized relational database architectureis thatit
`permits scaling and speed far in excess of any embodimentofthe priorart.
`
`In the
`FIGs. 7 through 12 display pseudo software graphical user interfaces (GUIs).
`preferred embodiment, the web server software 342 on the server computer 330
`displays these GUls via the computer communications interface 360 on the user
`interface 380 of the user workstation computer 370. The database and
`communications operations necessary to perform the described functions are
`controlled by the personal contact manager 343, which employs where necessary
`the services of the web server software 342. For example, the personal contact
`manager 343 updates the database tables 350 when a user submits a new home
`address and then determines whetheranyofthat user's contacts need to be notified
`of the change.
`If so, the personal contact manager343 will issue the notifications
`via the webserver software 342.
`It should be assumed, unless a statement to the
`contrary is made,that all of the operations described herein which are aspects of
`the presentinvention are embodied by the personal contact manager 343.
`
`Referring now to FIG. 7, a pseudo GU! 560 is shownthat allows membersto enter
`information about themselves in order to create a personal data record. Users can
`enter information in this GUI in various data fields.
`In the preferred embodiment,
`these fields include: Name 560-2, Home Address 560-4, Home Phone 560-6, Work
`Address 560-8, Work Phone 560-10, Birthday 560-12, High School 560-14, Year of
`High School Enroliment 560-16, High School Graduation Year 560-18, College 560-
`20, Year of College Enrollment 560-22, and College Graduation Year 560-24.
`
`In certain of these data fields, the user can specify groups with which he wishesto
`affiliate himself, and the beginning and ending datesoftheaffiliation.
`In the
`preferred embodiment, the data fields High Schoo! 560-14 and College 560-20
`represent categories of groups.
`in the data field Year of High Schoo! Enroliment
`
`10
`
`15
`
`20
`
`25
`
`30
`
`TT00007109
`
`
`
`WO 99/235)
`
`o1
`
`PCT/US98/22926
`
`-
`
`-12-
`
`560-16, the user enters the beginning dateofthe affiliation with the group specified
`in the data field High School 560-14.
`In the data field High School Graduation Year
`560-18, the user enters the ending date ofthe affiliation with the group specified in
`the data field High School 560-14.
`In the data field Year of College Enrollment 560-
`22, the user enters the beginning date ofthe affiliation with the group specified in
`the data field College 560-20.
`In the data field College Graduation Year 560-24, the
`user enters the ending date of the affiliation with the group specified in the data field
`College 560-20.
`In both of these cases, the beginning date and ending date
`establish a date range during which time the user wasaffiliated with the groupin
`question.
`
`Once the userof the client computer 370 (FIG. 5) enters information in each data
`field in the GU! 560 shownin FIG. 7, he clicks the Submit button 560-26 (or
`performs some equivalent action) and the information entered is transferred via the
`computer communications network 360 (FIG. 5) to the server computer 330, where
`the server personal contact manager software 343 stores the information in the
`appropriate tables 350 of a database 340.
`
`Referring now to FIG. 8, a pseudo GUI 580 is shownthatallowsa first user to select
`other users they wish to add to their personal address book. Thelist of contacts is
`created based onthe groupaffiliation information the first user enters in the data
`fields College 560-20, Year of College Enroliment 560-22, and College Yearof
`Graduation 560-24 in the Pseudo Registration GUI 560 shownin FIG. 7. A similar
`GUI 580 would exist for the group specified in the data field High Schoo! 560-14 in
`the pseudo 560 GUI shown in FIG.7.
`
`In each version of the GUI 580 shown in FIG. 8, a text description 580-2 at the top
`of the GUI explainsto thefirst user that other members have been found who had
`the sameaffiliation as the first user during the same period of time as thefirst user.
`The name 580-6 of the groupin whichthefirst and second users share anaffiliation
`is displayed and the date range 580-8 of the first user's affiliation with that groupis
`displayed.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`TT00007110
`
`
`
`WO 99/23591
`.
`
`-13-
`
`PCT/US98/22926 _
`
`If a second user whose personal information is stored in the tables 350 of the
`
`database 340 on the server computer 330 has specified the same group affiliation
`
`as that specified by thefirst user in the College 560-20 datafield, and that second
`user has specified a date rangefor that affiliation that intersects with the date range
`specified by thefirst user in the Year of Coliege Enroliment 560-22 and College
`Graduation Year 560-24 data fields, the Name 580-10 of the second user and the
`ending date 580-12 of the second user's affiliation with that group are displayed.
`
`10
`
`A second.text description 580-4 at the top of the GU! 580instructs thefirst user to
`select any of the second users listed whom thefirst user wishes to add to his
`personal address book.
`If the first user wishes to add a second userto his personal
`
`address book,thefirst user clicks the checkbox 580-14 to the left of the Name 580-
`10 (e.g., “John Doe’)for that second user. Once thefirst user has finished
`specifying the users he wants to add to his address book, he clicks the Submit
`
`15
`
`button 580-16, and the information entered is transferred via the computer
`
`communications network 360 to the server computer 330 whereit is stored in the
`
`appropriate tables 350 of the database 340.
`
`20
`
`A pseudocode description of the actions performed by the personal contact
`managersoftware 343 to display the group memberlist is shown in Appendix A.
`This pseudocode fragment (and the others that follow) is written in a structured
`English that is similar to computer languages such as Pascal, FORTRANand C.
`
`The pseudocode fragments are not described herein as they are self-explanatory.
`
`The tables and fields referred to in.the pseudocode fragments correspond to the
`tables and fields described in reference to FIG.6.
`
`25
`
`Referring now to FIG. 9, a pseudo GUI 600 is shown allowing a first user to specify
`
`which types of data fields from the first user's personal data record to granta
`specific second user permission to view.
`If a first user specifies a second user
`whom thefirst user would like to add to his personal address book, as explained in
`
`30
`
`the description of FIG. 8, the second userwill receive notification (issued by the
`contact manager program 343 - FIG. 5) that the first user has “linked” to him.
`If the
`second user choosesto return the link to the first user, the preferred embodimentof
`
`TTO00007111
`
`
`
`WO 99/23591
`
`PCT/US98/22926 ;
`
`-14-
`
`the present invention will display the pseudo GUI 600 shownin FIG. 9 with the
`nameofthefirst user 600-5, allowing the second userto set data field permissions
`for the first user. Unlike the prior art, which does notallow thefirst user to specify
`data field permissionsfor individual other users, the preferred embodimentof the
`present invention allows thefirst user to specify permissions separately for each
`individual other user in whose persona! databasethefirst user has chosen to be
`
`included.
`
`10
`
`15
`
`20
`
`25
`
`A text description 600-2 at the top of the pseudo GUI in FIG. 9 instructs thefirst user
`to specify which types of datafields from the first user's personal data record to
`allow to appearin the personal address book of the second user, whose name 600-
`4 is shown below. Several types of data field permission are listed, each with a
`check box to the left enabling thefirst user to select or deselect the permission type.
`For example, to grant the second user 600-4 permission to view the information from
`the first user's personal data record indicated by the permission type denoted
`“Crossing Paths Notification Permission,” the first user would check the box 600-7 to
`the left of the permission type Crossing Paths Notification Permission 600-6. To
`deny the seco