Method and apparatus for restructuring of personalized data for

Method and apparatus for restructuring of personalized data for

US 20030061307A1

(19) United States

(12) Patent Application Publication (10) Pub. No.: US 2003/0061307 A1

Daswani et al.

(43) Pub. Date: Mar. 27, 2003

RESTRUCTURING OF PERSONALIZED

Publication Classi?cation

(51) Int. Cl? . G06F 15/16

(52) U.S. c1. ............................................................ ..709/217

(76) Inventors: Neil Daswani, Edison, NJ (US); Suman

Kumar Inala, Santa Clara, CA (US);

Ramakrishna Satyavolu, Santa Clara,

CA (US); P. Venkat Rangan, San

Diego, CA (US); Sreeranga P. Rajan,

Santa Clara, CA (US)

Correspondence Address:

CENTRAL COAST PATENT AGENCY

PO BOX 187

AROMAS, CA 95004 (US)

(21)

Appl. No.: 10/287,911

(22)

Filed: Nov. 4, 2002

(63) Continuation of application No. 09/398,320, ?led on

Sep. 16, 1999, noW Pat. No. 6,477,565.

(57) ABSTRACT

A system for retrieving and disseminating information records from Internet sources includes a client device and an intermediary server system, including softWare, betWeen the client device and the Internet. The system collects a record speci?c to a client from an individual one of said Internet sources in a ?rst form in Which the record is recorded at the

Internet source, transforms the record from the ?rst form to a second form speci?c to an application other than an

Internet broWser application, the application executable by

the client device, and transmits the transformed record to the client device for display in the application other than an

Internet broWser application executable by the client device.

In some cases the client device connects by a data link that is not Internet-compatible link. Data mining on the Internet speci?c to clients and client devices is taught, With aggre gation services and synchronization for keeping a client

up-to-date ef?ciently for changing data content.

SW w

WW

Patent Application Publication Mar. 27, 2003 Sheet 1 0f 3 US 2003/0061307 A1

2

Patent Application Publication Mar. 27, 2003 Sheet 2 0f 3 US 2003/0061307 A1

S1 S2 Sn

5 5

54 ‘

K We v

Data

Processing

. - / / /

[Noteboo? F/bbilc Phorg

DATA SINKS

Fig. 2

E26 E26

Patent Application Publication Mar. 27, 2003 Sheet 3 0f 3 US 2003/0061307 A1

1

\0\

P

coumm?ww< QED wEmEmmccmwvégwcrmiom

895cm SQO 8E3.’

5026B @323 @ED x525 GZQQSEQU “HQ aJ FQJ

JQJ h

US 2003/0061307 A1

Mar. 27, 2003

RESTRUCTURING OF PERSONALIZED DATA

APPLIANCES

CROSS-REFERENCE TO RELATED

DOCUMENTS

[0001] The present application is related in part to US. patent application Ser. No. 09/323,598 ?led on Jun. 6, 1999 and entitled “Method and Apparatus for Obtaining and

is incorporated in its entirety by reference.

FIELD OF THE INVENTION

[0002] The present invention is in the ?eld of netWork information services including data gathering and transmis sion over Wired and Wireless netWork connections and pertains more particularly to restructuring of personal data and, in some cases, general data for the purpose of enabling receipt of such data by a variety of connected and portable netWork appliances Without requiring added hardWare or softWare.

[0006] Even With the more poWerful and traditional PCs or notebook computers there may be times When available bandWidth suddenly drops resulting in a disconnect or

“moof” as it is often termed. If a moof occurs When attempting to doWnload data, another attempt must be made to re-access the netWork, re-navigate to the data source, and attempt a retry of the data doWnload. This can be frustrating for users operating such devices as cell phones, pagers or

PDA’s Which are already operating on high latency and/or loW bandWidth connections.

[0007] Administrators of netWork equipment and connec tion architecture as Well as companies that host such as

WEB-based information services and the like are improving aspects of communication With various portable netWork

devices by upgrading lines and equipment, developing better

data compression and bandWidth reservation techniques and lobbying for more bandWidth for Wireless intermediary netWorks. HoWever, one area that has been largely over looked is the very format and structures of data that is transmitted. For eXample, HTML or XML-scripted content is largely unsuitable for transmission under loW bandWidth conditions to small portable devices. As a result, such devices having loWer memory and operating under loWer bandWidth resources are limited to certain types of data such as only e-mail or voice mail.

BACKGROUND OF THE INVENTION

[0003] The information system knoWn in the art as the

Internet, and the Internet subset knoWn as the World Wide

Web (WWW), represents the largest publicly available

source of information in the World. Anyone With an Internet capable appliance and an Internet connection can navigate the Internet for the purpose of accessing virtually any type of data that may be held in any one of millions of netWork connected servers adapted for the purpose.

[0004] The most traditional netWork appliance used for navigating the Internet and doWnloading data therefrom is the personal computer (PC). More recently hoWever, a host of other electronic communication devices have been adapted for netWork connection and navigation on the

Internet. Some of these better knoWn devices include cel

lular telephones, personal digital assistants (PDA’s), pagers,

and notebook and laptop computers. Some types of these appliances access the Internet via Wireless connection. In other cases, data from the Internet is transmitted to such devices through a gateWay to a netWork generic to the device. An eXample Would be that of a cellular phone or pager capable of accessing e-mail and other Internet accounts information.

[0005] The Internet operates under a shared bandWidth protocol Wherein data packets are transmitted Whereby each transmission competes With all other current transmissions for available bandWidth resources. The total amount of bandWidth resource available to netWork appliances access ing the Internet is a function of netWork traf?c, reliability and capability of lines, poWer of appliance processor, nature of intermediary netWork, and a host of other variables. It is not alWays possible to maintain an Internet connection for any reliable length of time considering all of these variables.

Sometimes, there are periods When a device simply cannot gain access at all. In other cases physical connection is only possible on a periodic basis, and an appliance is therefore

only intermittently connected.

the cross-reference to related documents section provides a capability of automated login and navigation to Internet or other netWork-held sources Written in HTML, XML, or

other languages for the purpose of retrieving and presenting

WEB summaries to subscribers according to client/enter prise directives. This service uses scripted templates pre

pared by knoWledge Workers using knoWn site logic to

enable navigation, not just to the site, but to speci?c content posted on the site. Aparsing method is then used to identify appropriate data based on the provided script directives.

[0009] The data obtained by the above-described method is held in a server for user access (via PC), or pushed to a user (PC or alternate appliance) according to enterprise rules. The data is typically presented in the form of a WEB page made accessible to a user having suitable equipment for retrieving and vieWing such pages. HoWever, in another embodiment, the data is re-formatted When possible for transmission to a user speci?ed Internet appliance such as a cell phone, laptop, PDA, etc. The user must ?rst access the service using a device that supports a broWser interface.

Data is forWarded to alternate devices only on user request and assuming the user has con?gured his or her alternate device to the service. In order to receive some types of data, special softWare and/or hardWare implementations must be made to the alternate appliances.

[0010] The above service does not support independent device access to the Internet (except for devices already capable of broWser navigation), nor can it deliver certain content held in a format that is not readily convertible to a format generic to the softWare running on such alternate devices. Moreover much content that Would be convertible may still overload the memory of certain alternate devices such as pagers or cell phones if additional data restructuring and synchroniZation steps are not taken.

[0011] It Will be appreciated that there is a groWing variety of eXisting and neW portable-type devices that are being

US 2003/0061307 A1

Mar. 27, 2003 adapted for Internet access. Most of these devices commu nicate according to device-generic protocol and are unable to receive and disseminate certain other types of data under normal circumstance. Furthermore, loW bandWidth connec tion states and limited memory provisions preclude many of these devices from broad Internet navigation capabilities and limit doWnload capability in terms of time and type of data content that may be received.

[0012] What is clearly needed is a method and apparatus

for intelligent restructuring of personaliZed data and, in

some cases, generaliZed data from the Internet into model/ device-speci?c data formats such that it may be easily made available for transmission to and presentation by a variety of knoWn communication devices having either direct or indi rect Internet connection capability. Such a method and apparatus Would broaden the scope of Internet-sourced data types that a communication device could independently access and receive Without requiring hardWare or softWare modi?cations to such devices.

[0013] In a preferred embodiment of the present invention a system for retrieving and disseminating information records from Internet sources is provided, comprising a client device; and an intermediary server system including softWare betWeen the client device and the Internet. The system collects a record speci?c to a client from an indi vidual one of said Internet sources in a ?rst form in Which the record is recorded at the Internet source, transforms the record from the ?rst form to a second form speci?c to an application other than an Internet broWser application, the application executable by the client device, and transmits the transformed record to the client device for display in the application other than an Internet broWser application executable by the client device.

[0014] In some embodiments the intermediary server sys tem is connected to the Internet by an Internet-compatible link and the client device is connected to the intermediary server system by other than an Internet-compatible link. The other-than-Internet-compatible link may be an Internet Pro tocol Telephony link, a conventional telephony link operat ing by a conventional telephony protocol, a Wireless cellular telephony link, or a Wireless satellite-enhanced link.

[0015] In some embodiments there may be a personal computer (PC) connected to the intermediary server system by a conventional Internet-compatible link, and the client device connects to the PC by an other than Internet-com patible link, and Wherein the system transmits the trans formed record ?rst to the PC Which then transmits the transformed record to the client device.

[0016] Also in some embodiments the intermediary server system is a subscription system, and maintains client pro?les for subscribers to the system, the client pro?les including data relative to information destinations on the Internet for a speci?c client, data records to be retrieved from the destinations, and data forms for transformation of speci?c records.

[0017] In these and other embodiments the intermediary server system may maintain input and output templates for

individual clients, the input templates having slots mapping

records by type as received from Internet sources, and the

output templates having slots mapping data records by type

to be transmitted to the client, there being speci?c correla tion betWeen input template slots and output template slots for an individual client. Data forms for transformation to transmit to client devices may include one or more of

conventional telephone protocol, Internet protocol tele phony Protocol (IPNT), voice mail, e-mail, pager message,

and records for applications common to personal digital assistants (PDAs), including one or more of appointment

book data records, memo-pad records, alarm records, and things-to-do records.

[0018] In some cases airline reservations retrieved for a client from the Internet are converted into multiple appoint ment-book entries displayable by an appointment-book application on a PDA, one appointment book entry for each individual ?ight in a reservation. In these cases there may be an alarm generated for each ?ight at a time preceding ?ight for domestic ?ights than for International ?ights.

[0019] In some cases billing schedules retrieved for a client may be converted into tWo or more records, one being a memo pad record detailing the details of the bill, and another being a things-to-do record to remind the client of the time the bill is due. In these cases an alarm record may be entered to generate an alarm prior to the time the bill is due, to remind the client that the bill is due.

[0020] There are a number of Ways the system architecture might be arranged. In one alternative the intermediary server system is implemented in association With an Internet Ser vice provider site. The intermediate server system may include an aggregation service for aggregating client-spe ci?c records prior to transmission to client devices. There may also be a synchroniZation service for keeping data on client devices synchroniZed With data from sources on the

Internet and from the aggregation service. In one case the synchroniZation service uses an algorithm enabled to adap tively minimiZe round trip messages betWeen the interme diary server system and the client device according to

Whether the client device is more limited by latency or bandWidth. The algorithm in some cases computes Cyclic

Redundancy Check (CRC) codes for input and output

records, and computes intersections betWeen CRCs on records on the client device and at the aggregation service, the output of the algorithm being exactly the records that need to be sent to the client device and exactly the list of records that need to be deleted form the client device to keep the data sets in synchroniZation.

[0021] In another aspect of the invention a method for retrieving and disseminating information records from Inter net sources is provided, comprising steps of (a) collecting a record in a ?rst data form from an Internet source by an intermediary server system connected to the Internet; (b) transforming the record into a second data form speci?c to an application other than an Internet broWser application, the application executable by a client device connectable to the intermediary server system; and (c) transmitting the trans formed record to the client device for display With the client device connected by a data link to the intermediary server system. The method or a variation according to embodi ments of the invention may be practiced With and Within all of the apparatus and function variations described above.

[0022] In various embodiments of the present invention for the ?rst time a server system is provided for retrieving

US 2003/0061307 A1

Mar. 27, 2003 and disseminating Internet-based data speci?c to individual clients, Wherein clients may use devices that do not have or need an Internet connection capability or an Internet browser, but may still very clearly relate to the client all of the mined data, and Wherein also the system can keep all data fresh and up-to-date for the client.

BRIEF DESCRIPTION OF THE DRAWING

FIGURES

[0023] FIG. 1 is an overvieW of a communication netWork

Wherein a data aggregation and tunneling service is hosted and operated according to an embodiment of the present invention.

[0024] FIG. 2 is a block diagram illustrating an exemplary hierarchy existing betWeen various components of the data aggregation and tunneling service of FIG. 1.

[0025] FIG. 3 is a block diagram illustrating an exemplary

client request/result loop progressing through the various

process phases attributed to a service of the present inven tion. markup language (HTML), XML, or other suitable lan guages associated With electronic information pages knoWn

21-25 are not limited to only serving WEB pages. In some embodiments, other data such as E-commerce data associ ated With on-line forms, digital authoriZation certi?cates, secure digital signature forms and the like, may also be held in such servers. Moreover, any one of servers 21-25 may be adapted as an E-mail server or may be subject to any other

adaptation for serving data.

[0031] ISP 15 is adapted, in this example, for providing

Internet connection services as knoWn in the art. Illustrated

Within ISP 15 are a main connection server 33, a mass data-repository 31, and a modem bank 29. Main server 33 is directly connected to Internet 11 as shoWn. Main sever 33 is adapted to perform normal Internet service routines as knoWn in the art, and is additionally enhanced via a unique softWare instance 51 for enabling practice of the present invention.

[0032] In one embodiment, an additional server may be

provided for executing softWare 51 and enabling practice of

the present invention in conjunction With main server 33. In another embodiment, more than one such server may be provided and adapted to execute individual instances of softWare 51. The inventor illustrates just one server 33 and

DESCRIPTION OF THE PREFERRED

EMBODIMENTS

[0026] According to a preferred embodiment of the present invention, a method and apparatus is provided that alloWs virtually any Internet-based data to be accessed, restructured, and then transmitted to a Wide variety of

netWork-capable appliances Without requiring special soft

Ware or hardWare additions to the receiving devices, and in a form that the receiving device may display the data using an existing application on the device typically used for an entirely different purpose and function. Such method and apparatus is described in enabling detail beloW.

[0027] FIG. 1 is a basic overvieW of a communication netWork 9 Wherein a data aggregation and tunneling service is hosted and operated according to an embodiment of the present invention. Communication netWork 9 comprises a data packet netWork 11, Which is the Well knoWn Internet in this example, an Internet Service Provider (ISP) 15, and at least one exemplary Wireless data netWork 13.

[0028] NetWork 11 may be another type of data packet netWork instead of the Internet such as perhaps a private or corporate Wide area netWork as long as Transfer

Control Protocol/Internet protocol (TCP/IP) or other suit able netWork protocols are supported. NetWork 11, herein after referred to as Internet 11 for example purposes, is exempli?ed herein as a preferred embodiment because of the large public accessibility to the netWork. Such public acces sibility lends to a preferred embodiment for hosting a large data-information service such as the service described in the cross-referenced application Ser. No. 09/323,598.

[0029] Internet 11 may comprise any geographical portion

of the global netWork including such as data sub-netWorks connected thereto. Internet 11 has an Internet backbone 19 distributed throughout, Which represents the many lines and connections making up the Wired Internet. Three data serv ers 21, 23, and 25 are illustrated Within Internet 11 and connected to backbone 19.

[0030] Servers 21-25 are, in this embodiment, ?le servers knoWn in the art for serving data in such as hypertext it suf?cient for the purpose of explaining the present inven tion.

[0033] Main server 33 is connected to a data center 37 by a data link 35. Data center 37, among other tasks, provides an ISP (Internet) interface to server 33 for various Wireless data netWorks represented by netWork 13. NetWork 13 is further characteriZed by the illustration of a communication satellite 17, Which provides satellite rebroadcast of uplinked data streams from data center 37 and a backlink to data center 37 as illustrated by a dotted double arroW. As previ ously described, netWork 13 may be plural in the sense that plural Wireless data netWorks common to certain communi cation devices may accomplish an interface to ISP 15 (server

33) through such as satellite 17 or another type of Wireless transceiver/receiver and data center 37.

[0034] Within netWork 13 a variety of Internet capable appliances are illustrated. As examples there are a pager 39, a notebook computer 41, and a cellular telephone 43. In this

example, appliances 39-43 broadcast data, Which is picked

up by satellite 17 and relayed to data center 37. Similarly, data arriving to satellite 17 from data center 37 is broadcast to and received by appliances 39, 43, and 41 as illustrated herein With dotted double arroWs representing respective tWo-Way communication links. In the case of appliances 39 and 43, netWork 13 might be a cellular netWork typically implemented for those devices. In the case of notebook 41, netWork 13 may be a Wireless Internet service using cellular or other suitable Wireless technologies.

[0035] As previously described, main server 33 is also connected to modem bank 29 as is knoWn in the art of puter (PC) 45 operated by a user/subscriber to the service of the present invention is illustrated as connected to modem bank 29 by an Internet connection line 49. Line 49 may be a conventional telephone line, an integrated digital services netWork (ISDN) connection line, or any other suitable Wired

US 2003/0061307 A1

Mar. 27, 2003 connection such as ADSL. A PDA 47 is illustrated by a dotted double arrow as having a Wireless communication link to PC 45 as is common in the art of computer periph erals.

[0036] In the example of a subscriber service, data reposi tory 31 Would contain data about individual subscribers to the service of the present invention (user pro?les and other user-speci?c records). Repository 31 may be an optical storage facility or any other convenient facility that is adapted for storing large amounts of data. Repository 31 is illustrated as connected to main server 33 by a data con nection 27. In this example, repository 31 is considered an off-line storage facility that is accessible to server 33. In another embodiment repository 31 may be a part of server

33, or in any other netWork-connected location such as on-line, or on a connected local area netWork In addition to holding data speci?c to individual subscribers such as account information, address parameters, user ID and authoriZation data, repository 31 may also hold data gathered from such as Internet 11 before being delivered to or being accessed by users.

[0037] SW 51 executing on server 33 is provided for the purpose of enabling a unique data-gathering and tunneling service that alloWs users operating such as appliances 39-43, and 47 to have structured access to data such as may be sourced in one of servers 21-25; and, to have the data re-structured in an intelligent fashion for delivery to a speci?c Internet appliance that may not be normally adapted for receiving and displaying the data.

[0038] SoftWare 51 provides, in this case, a unique sub scriber service hosted by ISP 15 in Which the service may be

accessed and utiliZed by using any Internet-capable appli

ance. For the purpose of discussion, an Intemet-capable appliance shall include any electronic communication device capable of a direct or indirect (through a connected network) connection to a data packet netWork such as

Internet 11. Such devices may also include devices that may only receive data from such as Internet 11 as long as a separate device is used to access the service and upload a data request.

[0039] In practice of the present invention, a user operat ing such as cellular telephone 41, for example, accesses ISP

15 from anyWhere in netWork 13 through a Wireless path, exempli?ed herein by satellite 17 to data center 37, and registers a request for data. The data request in some cases may be manually initiated by a user, and in other cases automatically initiated on a periodic basis While the device is connected to the Internet. In some cases a request Will he automatically initiated When the device connects to the

Internet.

[0040] The nature of a request may vary under a broad set

of rules set-up by a hosting enterprise (ISP 15) for types of

requests. For example, one request may be for a data result of a site-speci?c search according to de?ned parameters such as Was described in the characteriZation of a WEB summary disclosed in application Ser. No. 09/323,598.

Another type of request may be for information about departure/ arrival parameters and gate instructions associated

With purchased airline tickets. Still another type of request may include a desire to access only the existing incoming mail from a certain individual or individuals. There are many possibilities. In a preferred embodiment a script for data requests may be a part of a user pro?le, and a single generic request from a user may trigger a variety of data searches and retrievals from Internet 11 on behalf of the user.

[0041] Data center 37 processes requests from netWork 13 and forWards them to main server 33 Where they imple mented. Various technological enhancements may be imple mented in data center 37 to facilitate communication and interface capability With various portable appliances such as appliances 39-43. One example Would be to provide an interactive voice response (IVR) unit (not shoWn) that may take a vocal or touch-tone initiated request originating from such as cell phone 43. Such an IVR may be included in data center 37 as a client interface.

[0042] The nature and content of a request from cell phone

43, for example, is analyZed and restructured into an equiva lent Internet Protocol (IP) request that can be uploaded into main server 33 over data link 35. This process is, in a preferred embodiment, performed in data center 37 With the data center having access to a portion of softWare 51 dedicated to the speci?c function. In another embodiment, a speci?c portion of softWare 51 may be provided to be executable on a connected machine at data center 37 for the purpose of analyZing requests of varied protocol and restruc turing them into requests that can be understood on server

33.

[0043] Once a request from cell phone 43 is registered in main server 33 as an IP data request, data about the user is accessed from repository 31 for veri?cation and authoriZa

Worker (not shoWn) is provided for accessing site logic

during navigation and parsing as initiated by SW 51. Such knoWledge Workers may be stationed at data center 37, ISP

15, or any other centraliZed location that is connected to the

service by netWork connection. The scripting, navigating, and parsing technology is fully explained and detailed in the

co-related application Ser. No. 09/323,598. HoWever, fur ther innovation is required in order to accomplish the goal of

the present invention, Which is the intelligent restructuring

of data coming into and leaving from the service of the present invention.

[0044] In the present example a ready request is queued for execution by SW 51 according to on-demand or in a scheduled fashion. Server 33, upon executing the request, navigates to one or more of servers 21-25 (for example, as representative of plural servers in the Internet) holding the requested data. The location of the data is then identi?ed

according to site logic provided in the scripted template.

Located data is then parsed for speci?ed content to be returned. The resulting data is aggregated in repository 31 if the request has a scheduled delivery or user-access time. If the return data folloWs an on-demand criteria, then it is immediately processed and delivered over data link 35 to data center 37 for further processing before being broadcast over netWork 13 to a user operating such as cell phone 43.

[0045] In another aspect of the present invention, requests and return data may be registered and received by a user

PC 45 illustrated as Wired to Internet 11. In this embodiment, a user operating PDA 47 registers a request to PC 45. The request is analyZed and uploaded to server 33 under control

from PDA 47. Additional processing concerning obtaining

and returning information is the same as With previously

US 2003/0061307 A1

Mar. 27, 2003 described embodiment except that instead of using data center 37 as an interface, PC 45 acts as the interfacing machine. If requested data arrives to PC 45 in a format that legible in its given language or format and understood by ing the formats and data presentation schemes of various softWare routines used in various Internet-capable appli dedicated to the purpose. PDA 47 Would require no modi

?cation in either hardWare or softWare. In yet another embodiment the client machine may be PC 45.

[0046] The method and apparatus of the present invention provides a unique capability of restructuring data in an intelligent Way. That is, instead of simply converting one format of data into another, a ?rst data set is analyZed and understood so that an alternate data set in a format speci?c to applications executable on a receiving device may be created that re?ects the desired content and function of the

?rst data set. More detail about hoW this is accomplished is

provided beloW.

[0047] FIG. 2 is a block diagram illustrating an exemplary hierarchy and data transformation and ?oW existing betWeen various components of the data aggregation and tunneling service of FIG. 1. The service of the present invention in a

preferred embodiment comprises three basic component

layers. These component layers are illustrated herein as layer

53, layer 55 and layer 57. Layer 53 is best described as a source-data interface layer. This portion of the service is dedicated to navigating to and obtaining data from Internet connected data sources. Data sources (S)1-n are analogous to servers 21-25 of FIG. 1. It Will be appreciated that the number of data sources that are available on a netWork such as Internet 11 (FIG. 1) is vast. Data collected from S1-Sn is

continually aggregated into such as repository 31 (FIG. 1)

as indicated by the bi-directional arroWs linking each S1-Sn to aggregation service 54. Aggregated data is tagged accord ing to requesting user and target receiving device.

[0048] Layer 53 includes all of the means and processes

required for locating and parsing user-requested data accord ing to site-speci?c scripting techniques and funneling the

collected data back to aggregation for storage under a user-speci?c ID parameters. Most, if not all of the data retrieved in layer 53 Will be in the form of HTML, XML, or a similar protocol. Other than XML types of data may include various multimedia types associated With audio and video data, animated graphic data, or still graphic data. All data requested by any one user is aggregated under that user’s ID parameters.

[0049] Data stored in aggregation is forWarded to layer 55 according to a pre-assigned schedule for processing. Layer

55 provides an internal process comprising data restructur

ing and primary interface capabilities. Data processing is the

?rst phase of layer 55 as illustrated by process 56. It is in the main the data processing phase that is unique and distin guishes the present invention from that disclosed in the copending and referenced application Ser. No. 09/323,598.

[0050] Instead of simply converting data from one lan guage or format into another in an attempt to render it usable to a speci?c Internet appliance, the present invention seeks to reWrite original data in an alternate format or language that accurately represents the data presented in the original format in terms of content and function. Data expressed in this alternate format (standardized) is then restructured into the appropriate device-speci?c format for transmission.

[0051] To accomplish the above-described task, it is required that data obtained in layer 53 be at least machine vation and gate instruction as presented on an information page (WEB page) Would not be expressed as a text block in such as an electronic calendar, or a PDA. Rather, the same information Would have to be restructured and expressed as a series of entries expressing time and date functions asso ciated With the particular ?ight schedule.

[0052] In a preferred embodiment, an algorithm is employed as part of softWare 51 that can take information from provided input data-templates and restructure the infor mation to ?t pre-designed and associated output data-tem plates. For example, an input template is created for one or more records of netWork-based data. The input template renders the original data into a proprietary language similar to HTML and XML. The proprietary language or code expresses the original data in a standard format that may

then be manipulated by algorithm. The input template holds

the rendered data according to mapped slots.

[0053] An output template is created that is generic to the parameters and presentation scheme associated With a spe ci?c Internet-capable appliance that Will receive the data record or records. The output template holds the speci?c slots Wherein data Will be rendered by the algorithm. The algorithm uses provided data-restructuring rules to identify data contained in an input data template and re-map it by matching the data to appropriate data-slots presented in an output data template. As a result, one or more input records

(parsed and rendered data) Will produce one or more output

records (data remapped by algorithm).

[0054] Data templates as described above, are not analo gous to logic templates described in the co-related applica tion Ser No. 09/323,598. Data templates Work in conjunc tion With scripted logic-templates used to ?nd and parse the requested data. Input templates are request-generic While output templates are device-generic. For example, there are many variations of data formats and languages that can be used When presenting data on a WEB page. Therefore, an input template should be modeled to facilitate the speci?c data ?elds, language, and format in Which requested data is expected to be found. In some cases, an input template may be enhanced to support a variety of differing formats and or languages, and be made to hold more slots for data not

necessarily requested. The output template is device generic

and contains only usable data-slots that may be presented on its associated device.

[0055] In one embodiment of the present invention, a knoWledge base (not shoWn) could be provided as part of

SW 51 and used to equate data parameters associated With frequently requested data types from a netWork to data parameters that are generic to various netWork appliances. In

this method, categories and titles describing oft-requested

data records such as ?ight reservations, account balance information, order status information, and the like are cre ated, coded and stored in the knoWledge base. Device speci?c equivalents described as rules for presenting the type data to each speci?c model device are also stored in the

knoWledge base and equated.

[0056] When a data request comes in, a runtime engine

(softWare application) takes the input data and ?nds the

US 2003/0061307 A1

Mar. 27, 2003 category and subtitle that matches it. Then the data presen tation rules concerning the speci?c receiving device are matched from the knowledge base. In this Way, appropriate output records may be created that are speci?c to the type and model of device that is targeted to receive the data.

[0057] In one embodiment, the knoWledge base method is used in conjunction With the template/algorithm method. As use of the service progresses, the knoWledge base is updated

With neW categories and subtitles associated With repetitive requests. The knowledge base may also be updated to re?ect parameters associated With neW types and models of net

Work capable devices. There are many such possibilities.

[0058] Component layer 55 includes an interfacing data center such as data center 37 represented in FIG. 1 and a desktop PC such as PC 45 of FIG. 1. Output templates contain device speci?c data that is ready for transmission to target devices such as devices 39-47 of FIG. 1. As output templates are completed, they may be held for requesting users at a storage facility (not shoWn) held in a data center, or pushed to requesting users based on the original request.

Similarly, output records destined for such as Internet connected PCs may be held therein for remote access, or pushed to requesting users operating peripherals such as phases of the service of the present invention in a preferred embodiment. In step 57 a client (user/subscriber) initiates a request for data. Such a request may be initiated from a netWork capable appliance like appliances 39-43 of FIG. 1.

BroWser softWare of any sort is not required for a device to access the service. In this Way, a loW bandWidth device may be used to practice the present invention Without depending on a parent or associated machine. For eXample, devices not having IP capability or navigational softWare Would inter face With such as data center 37 of FIG. 1 in order to gain access. Appropriate equipment and means for bridging net

Works is made available in data center 37. An Internet capable appliance having a broWser function and Internet connection capability may, of course, gain access through normal Wired or Wireless channels.

[0064] In step 59, a request from a client is registered to the service. If the request is initiated from a device using a

Wireless netWork Wherein a data center such as center 37 is the interface, then the request data may be converted from the protocol used by the requesting device to a suitable IP protocol for registering at a server such as server 33 in ISP

15 (FIG. 1). If an Internet-connected PC or Workstation is the interface, and a requesting device is a remote peripheral

[0059] Component layer 57 represents various netWork

capable appliances as described above and their associated transmission netWorks. Illustrated Within layer 57 is a PDA

With a remote (Wireless) link to PC in layer 55 as shoWn by double-arroW connecting line. Also illustrated Within layer

57 is a pager, a notebook, and a mobile phone, all having remote (Wireless) connections to the data center represented in layer 55 as shoWn by the double-arroW connecting lines.

The PC illustrated in layer 55 may be a desktop PC operated by one or more users. In another embodiment, it may be a poWerful Workstation shared by many users. The repre sented data center has all of the interface means required to bridge the appliances of layer 57 to the service.

[0060] It Will be apparent to one With skill in the art that knoWledge Workers associated With creating input and out put templates may perform their services from anyWhere in a connected netWork Without departing from the spirit and scope of the present invention. In one embodiment, input

templates are supplied by knoWledge Workers associated

With the service, While output templates are created by knoWledge Workers that are associated With various netWork

hosting entities.

[0061] In another embodiment, the service of the present invention may be provided as a turnkey package Wherein companies may set-up their oWn speci?c information ser vices using the implements of the present invention.

[0062] It Will also be apparent to one With skill in the art that an intermediary language derived in part from HTML as an intermediary data-conversion language betWeen such as pure HTML and device speci?c protocol Without depart ing from the spirit and scope of the present invention. Codes speci?c to such an intermediate language may be licensed to entities Wishing to recreate the service for their oWn pur poses.

[0063] FIG. 3 is a block diagram illustrating client

request/result loop progressing through the various process

in suitable IP format.

[0065] In step 61, the client request is compared against a database for additional information about the initiator of the

request and, perhaps to ?nish the package by associating the

appropriate templates to the request. The templates may be stored under speci?c user ID for repeat requests, and created neW for cases Where no template is available. This includes the scripting templates of Ser. No. 09/323,598 as Well as input/output templates of the present invention. Once all information and planned routines are incorporated into a request, it may be queued for execution.

[0066] In step 63, the service navigates to a data source or sources speci?ed in the request on behalf of the client.

Site-logic scripting provided by template, along With a

data-parsing convention is used to locate and identify data associated With the client’s request. Data sources Will typi cally be information pages Written in such as HTML or

XML. HoWever, this is not to be construed as a limitation.

Other types of data as Well as some multimedia content may be located and parsed according to site logic.

[0067] In step 67, all data obtained in step 63 is aggregated and tagged according to a user-speci?c and device speci?c manner. In some cases the data found during navigation is simply stored in one location for a client With the stored data retaining it’s original format. In another case, data is ren dered to an intermediate form of it’s original language for the purpose of providing a standard format from Whence further re-structuring may occur.

[0068] In step 69, aggregated data is restructured from its

original format (if applicable) to it’s ?nal format (device

speci?c) in preparation for transmission. In other cases, the data is stored for client access at his or her convenience. In a preferred embodiment, the above-described template method With algorithm is used. In an alternative method, a knoWledge base technique is used. In still another embodi ment, the tWo methods may be combined. It is assumed that

US 2003/0061307 A1

Mar. 27, 2003 by the time data restructuring occurs, an input and an output

template containing the appropriate data ?elds pertaining to

shoWn) termed a data renderer converts the original data in aggregation into a suitable intermediary language that is understood to be standard to the system and compatible, in terms of further slot-mapping, according to any supported

protocols speci?c to various netWork appliances interacting

With the service. The intermediate language may be of a proprietary nature and licensed to other entities for use. In an embodiment Wherein a knoWledge base system is used, an intermediate language Would not speci?cally be required.

[0069] The input template contains the rendered data in speci?c ?eld-slots that are understood by the softWare algorithm. The algorithm also understands the ?eld-slots associated With the output template. This is accomplished by creating speci?c rules for the algorithm to folloW in opera tion. The algorithm re-maps the data from the input template into the ?eld-slots in the output template according to the applicable rules. During this operation a second data ren derer inserts and in some instances Writes neW data for insertion to speci?c ?eld slots chosen by the algorithm.

[0070] In one embodiment, output templates may be pro vided With additional functional routines (based on the content of inserted data) that may be caused to activate a noti?cation system or the like that is generic to a particular

receiving device. For eXample, a round trip ?ight description

may be rendered as a series of appointment book entries in such as a PDA. The additional noti?cation routine in the output template may, according to the data, set an alarm or other audible alert to activate at a convenient time before the scheduled departure, as a reminder to the user.

[0071] In step 71 output records are delivered to speci?ed devices through their respective interfaces and connected netWorks. In step 73, a receiving appliance incorporates the data in usual fashion. Steps 71 and 73 may also be construed as steps for delivering and incorporating only updates to eXisting information. For eXample, the client send/return loop represented by steps 57 through 73 can be initiated for one or more requests and then be reactivated to receive

periodic updates to already received data. For eXample,

input and output records already sent to a client may be stored at the service for reference and tagged With client ID, time, date, etc. If an update request comes in from a client it can be noted in a neW output template designed to carry only the neW information. During the process at step 69, the

input template containing the previous data is compared to

the input template containing the current data. The discrep ant data in the neW input template is remapped to appropriate

?eld-slots in a neW output template. In this Way, the record only re?ects the neW data. In step 73 then, the neW data overWrites the old data. Data obtained through the service may be routinely and periodically updated in a push or pull fashion.

[0072] In another embodiment, synchroniZation (updat

ing) may be performed in step 63. For eXample, a neW update request may arrive Wherein the previous input record is obtained and used to partially direct the function of parsing during the navigation process. The rule Would in effect direct the parser to designate only data that is different from the old input template for collection. In this case, the algorithm may be employed in reverse fashion so that the intermediate language in an input template may be con verted back to original language as seen by a parser.

[0073] In still another embodiment, the parsing engine

may be equipped to read both languages. The parsing process may also include the algorithm function for re mapping the data.

[0074] It Will be apparent to one With skill in the art that the method and apparatus of the present invention may be applied to the method and apparatus disclosed in the co related application Ser. No. 09/323,598 to provide a neW and unique service Without departing from the spirit and scope of the present invention. It Will also be apparent that the method and apparatus of the present invention may stand alone from Ser. No. 09/323,598 as long as a suitable method for site navigation and parsing is included in the neW service.

[0075] The service of the present invention may be adapted to serve speci?c Wireless netWorks and client/ devices connected to them. It may also be broadened to include many Wired communication netWorks, including the

Internet and PSTN netWorks. Conventions may be provided of virtually any type of data that may be held on a digital netWork. Even conventions such as video may be played and interpreted by the service for data mapping to provided output templates for creating records that re?ect the content or at least a summary of content contained in the video.

[0076] Speci?c Examples

[0077] The present invention in certain embodiments is to be ?rst brought to the public after the ?ling of the present patent application by a neW Internet company named

Yodlee.com in Sunnyvale, Calif. In the ?rst implementations the service practicing the present invention is called

Yodlee2Go. Speci?c features of the Yodlee2Go service are included here as further examples of the present invention.

In these eXamples restructured information is provided to onto the PalmTM, but this information could be inserted onto any other mobile device as Well. Many cell phones, for eXample, have calendar and address book applications built in, so the restructured information could be inserted onto those devices as Well, and into many others.

[0078] 1. Travel Reservations. If you book your travel reservations through an online travel agency such as BiZ

Travel.Com or Travelocity.Com and you have added the travel site to your Yodlee home page, then your travel reservation information is synchroniZed onto your Palm, for eXample, into several places. For each travel reservation that you have:

[0079] a. One record is entered into your Date Book for each “leg” of the ?ight. The description of the record contains the airline name on Which you Will

by ?ying, your ?ight number, and the departure and

arrival airport codes.

[0080] b. In addition, an alarm is automatically set to go off one hour before your ?ight time. You may change the alarm time for a particular ?ight by clicking on the “Details” button in your Date Book.

(You may also change the default alarm time to be different than one hour by changing your Yodlee2Go preferences. This is described in Section X of this user manual.)

[0081] c. If you click on the “Note” button in the

Details dialog boX, you can vieW your con?rmation number, the price that you paid for the ticket, the

?ight mileage, and the name of the travel agency

With Which you booked the ?ight.

US 2003/0061307 A1

Mar. 27, 2003

[0082] d. Since Yodlee2Go knows Which travel agency you booked the ?ight With, it synchronizes the contact information for that travel agency into your address book. This Way, you Will have the phone number of the travel agency With you if you run into problems at the airport. (Also, don’t forget that you have your con?rmation number in the note attached to the date book record!)

[0083] e. Finally, since Yodlee2Go inserts a memo into your Memo Pad application containing the entire itinerary for each of your ?ights.

[0084] 2. Frequent Flyer Miles. If you have added any airline sites in the frequent ?yer miles category onto your

Yodlee home page, then all of your frequent ?yer informa tion is copied into a single memo in your Memo Pad application on your Palm. The memo is titled “Frequent

Flyer Miles” and can be accessed by clicking on the Memo

Pad application on your Palm.

[0085] 3. Bank Statements. If you do your online banking on the Web, and you have added your bank’s site to your

Yodlee home page, then a summariZed version of your bank statements Will by synchroniZed into the Memo Pad appli cation on your Palm. One memo Will be created for each of your online bank accounts. Each memo Will contain the balances in each of your accounts, and a total balance across all your accounts at that bank. <

[0086] 4. Credit Card, Telephone Statements, and other

Billing Information. If you have added any credit card or billing sites to your Yodlee home page, then this information

Will be synchronized onto your Palm to help you remember to pay your bills on time. For each bill, Yodlee2Go Will insert one entry in your list of things to do in your To Do List application on your Palm device. The entry Will contain the name of the company from Which you received the bill, the due date, and the amount due by the due date. If you click on the “Details” button, and then click on the “Note” button to vieW more information about the bill.

[0087] 5. Stock Portfolio Information. If you have added your online stock broker (such as E*trade) onto your Yodlee home page, then your stock portfolio information Will be synchroniZed onto your Palm device by Yodlee2Go.

Yodlee2Go Will create one memo pad entry in your Memo

Pad application that contains a consolidated statement of all of your stocks across all online brokerages that you have added to your Yodlee home page. The memo is titled “Stock

Quotes,” and also contains a summary of the total Worth of all of your stock portfolios.

[0088] The methods and apparatus of the present invention have many broad applications and therefore should be afforded the broadest of scope. The methods and apparatus of the present invention are limited only by the claims that folloW.

What is claimed is: records from Internet sources, comprising: a client device; and an intermediary server system including softWare betWeen the client device and the Internet;

Wherein the system collects a record speci?c to a client from an individual one of said Internet sources in a ?rst form in Which the record is recorded at the Internet source, transforms the record from the ?rst form to a second form speci?c to an application other than an

Internet broWser application, the application executable by the client device, and transmits the transformed record to the client device for display in the application other than an Internet broWser application executable by the client device.

2. The system of claim 1 Wherein the intermediary server system is connected to the Internet by an Internet-compat ible link and the client device is connected to the interme diary server system by other than an Internet-compatible link.

3. The system of claim 2 Wherein the other-than-Internet compatible link is an Internet Protocol Telephony link.

4. The system of claim 2 Wherein the other than Internet compatible link is a conventional telephony link operating by a conventional telephony protocol.

5. The system of claim 2 Wherein the other-than-Internet compatible link is a Wireless cellular telephony link.

6. The system of claim 2 Wherein the other-than-Internet compatible link is a Wireless satellite-enhanced link.

7. The system of claim 1 further comprising a personal computer (PC) connected to the intermediary server system by a conventional Internet-compatible link, and the client device connects to the PC by an other than Internet-com patible link, and Wherein the system transmits the trans formed record ?rst to the PC Which then transmits the transformed record to the client device.

8. The system of claim 1 Wherein the intermediary server system is a subscription system, and maintains client pro?les for subscribers to the system, the client pro?les including data relative to information destinations on the Internet for a speci?c client, data records to be retrieved from the destinations, and data forms for transformation of speci?c records.

9. The system of claim 8 Wherein the intermediary server system maintains input and output templates for individual

clients, the input templates having slots mapping records by

type as received from Internet sources, and the output

templates having slots mapping data records by type to be

transmitted to the client, there being speci?c correlation betWeen input template slots and output template slots for an individual client.

10. The system of claim 8 Wherein data forms for trans formation to transmit to client devices include one or more

of conventional telephone protocol, Internet protocol tele phony Protocol (IPNT), voice mail, e-mail, pager message,

and records for applications common to personal digital assistants (PDAs), including one or more of appointment

book data records, memo-pad records, alarm records, and things-to-do records.

11. The system of claim 10 Wherein airline reservations retrieved for a client from the Internet are converted into

multiple appointment-book entries displayable by an

appointment-book application on a PDA, one appointment book entry for each individual ?ight in a reservation.

12. The system of claim 10 Wherein an alarm is generated for each ?ight at a time preceding ?ight time for each ?ight.

13. The system of claim 12 Wherein a different alarm interval is used for domestic ?ights than for International

?ights.

14. The system of claim 10 Wherein billing schedules retrieved for a client are converted into tWo or more records, one being a memo pad record detailing the details of the bill, and another being a things-to-do record to remind the client of the time the bill is due.

US 2003/0061307 A1

Mar. 27, 2003

15. The system of claim 14 wherein an alarm record is entered to generate an alarm prior to the time the bill is due, to remind the client that the bill is due.

16. The system of claim 1 Wherein the intermediary server system is implemented in association With an Internet Ser vice provider site.

17. The system of claim 1 Wherein the intermediary server system includes an aggregation service for aggregating client-speci?c records prior to transmission to client devices.

18. The system of claim 17 further comprising a synchro niZation service for keeping data on client devices synchro niZed With data from sources on the Internet and from the

aggregation service.

19. The system of claim 18 Wherein the synchroniZation service uses an algorithm enabled to adaptively minimiZe round trip messages betWeen the intermediary server system and the client device according to Whether the client device is more limited by latency or bandWidth.

20. The system of claim 19 Wherein the algorithm com

putes Cyclic Redundancy Check (CRC) codes for input and

output records, and computes intersections betWeen CRCs on records on the client device and at the aggregation

service, the output of the algorithm being exactly the records

that need to be sent to the client device and exactly the list of records that need to be deleted form the client device to keep the data sets in synchroniZation. tion records from Internet sources, comprising steps of:

(a) collecting a record in a ?rst data form from an Internet source by an intermediary server system connected to the Internet;

(b) transforming the record into a second data form speci?c to an application other than an Internet broWser application, the application executable by a client device connectable to the intermediary server system; and

(c) transmitting the transformed record to the client device for display With the client device connected by a data link to the intermediary server system.

22. The method of claim 1 Wherein the intermediary server system is connected to the Internet by an Internet compatible link and the client device is connected to the intermediary server system by other than an Internet-com

patible link.

23. The method of claim 22 Wherein the other-than

Internet-compatible link is an Internet Protocol Telephony link.

24. The method of claim 22 Wherein the other-than

Internet-compatible link is a conventional telephony link

operating by a conventional telephony protocol.

25. The method of claim 22 Wherein the other-than

Internet-compatible link is a Wireless cellular telephony link.

26. The method of claim 22 Wherein the other-than

Internet-compatible link is a Wireless satellite enhanced link.

27. The method of claim 21 further comprising a personal computer (PC) connected to the intermediary server system by a conventional Internet-compatible link and the client device connects to the PC by an other than Internet-com

patible link, and Wherein, in step (c) the system transmits the

transformed record ?rst to the PC Which then transmits the transformed record to the client device.

28. The system of claim 21 Wherein the intermediary server system is a subscription system, and maintains client pro?les for subscribers to the system, the client pro?les including data relative to information destinations on the

Internet for a speci?c client, data records to be retrieved from the destinations, and data forms for transformation of

speci?c records.

29. The method of claim 28 Wherein in step (b) the intermediary server system maintains input and output tem

plates for individual clients, the input templates having slots

mapping records by type as received from Internet sources, and the output templates having slots mapping data records by type to be transmitted to the client, there being speci?c

correlation betWeen input template slots and output template

slots for an individual client.

30. The method of claim 28 Wherein data forms for transformation to transmit to client devices include one or more of conventional telephone protocol, Internet protocol telephony Protocol (IPNT), voice mail, e-mail, pager mes sage, and records for applications common to personal digital assistants (PDAs), including one or more of appoint

ment-book data records, memo-pad records, alarm records,

and things-to-do records.

31. The method of claim 30 Wherein airline reservations retrieved for a client from the Internet are converted into

multiple appointment-book entries displayable by an

appointment-book application on a PDA, one appointment book entry for each individual ?ight in a reservation.

32. The method of claim 30 Wherein an alarm is generated for each ?ight at a time preceding ?ight time for each ?ight.

33. The method of claim 32 Wherein a different alarm interval is used for domestic ?ights than for International

?ights.

34. The method of claim 30 Wherein billing schedules retrieved for a client are converted into tWo or more records, one being a memo pad record detailing the details of the bill, and another being a things-to-do record to remind the client of the time the bill is due.

35. The method of claim 34 Wherein an alarm record is entered to generate an alarm prior to the time the bill is due, to remind the client that the bill is due.

36. The system of claim 21 Wherein the intermediary server system is implemented in association With an Internet

Service provider site.

37. The method of claim 21 Wherein the intermediary server system includes an aggregation service for aggregat ing client-speci?c records prior to transmission to client devices.

38. The method of claim 37 further comprising a syn chroniZation service for keeping data on client devices synchroniZed With data from sources on the Internet and from the aggregation service.

39. The method of claim 38 Wherein the synchroniZation service uses an algorithm enabled to adaptively minimiZe round trip messages betWeen the intermediary server system and the client device according to Whether the client device is more limited by latency or bandWidth.

40. The system of claim 39 Wherein the algorithm com

putes Cyclic Redundancy Check (CRC) codes for input and

output records, and computes intersections betWeen CRCs on records on the client device and at the aggregation

service, the output of the algorithm being exactly the records

that need to be sent to the client device and exactly the list of records that need to be deleted form the client device to keep the data sets in synchroniZation.

* * * * *

Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement