Abstract:
A network interactive apparatus and a method for the retrieval, storage and analysis of time variable data. An interactive session is conducted with a user via a network, such as the network may be the Internet or World Wide Web, to obtain a user definition of a first time variable data item, its location on the network, and a sampling interval. The values or content of the data item are then obtained at sample times defined by the sampling interval. Another interactive session is conducted to determine a second data item for comparative analysis with the first data item. The analysis is then presented to the user in a format such as a graph, a table, or the like.

Description:
FIELD OF INVENTION 
     This invention relates to a network interactive apparatus and a method for identifying a time variable data item, the retrieval of the content of the data item at different times and the presentation of the data in a desired analysis format. 
     BACKGROUND OF INVENTION 
     Networks, such as the Internet, the World Wide Web (WWW), and the like, provide a communication medium for rapid access to an enormous amount of information. Time variable data, such as commodity prices and futures, utility costs, weather, stock prices and the like, are factors that are useful in business planning. Currently available procedures notify a user of a change of such data, e.g., a stock price, or of its value or content on demand. However, when it is desired to analyze a relation between a first data item and a second data item, the user must go to different web sites to retrieve both data items and then conduct the analysis. 
     In the process control industry, it is known to collect the values of time variable data items (e.g., pressure and temperature), build a history of the values over time and conduct various analyses thereof. Generally, the data items and analyses are specified for the process being controlled. That is, there is little flexibility for a user to define data items or variables outside of the universe allowed by the process design. 
     There is a need for a system and method that permits the retrieval, development of a content history and analysis of one or more data items without regard to a particular process. Also, the system and method should not require a user to actively seek out different web sites, collect the data content over time and then generate an analysis. 
     SUMMARY OF INVENTION 
     The foregoing needs are satisfied with the method of the present invention, which utilizes a communication network, such as the Internet, the WWW or the like, to facilitate the gathering of time variable data items of any nature, building a history thereof over time and providing an analysis thereof. In an interactive session with a user, a first time variable data item, its location on the network and a sampling interval are determined. The content, or value, of the data item is retrieved from the network location at sample times defined by the sampling interval. A history of the contents is built and stored. A second data item is determined for a comparative analysis with the first data item. The comparative analysis is then presented to the user. For example, the prices of two or more stocks over a time range can be compared in a format, such as a graph, a table or the like. As another example, the price of a utility stock or the cost of energy could be compared to temperature. 
     The apparatus of the present invention comprises a computer that includes a program that performs the method of the invention. A storage medium of the present invention stores a program that controls a computer to perform the method of the invention. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Other and further objects, advantages and features of the present invention will be understood by reference to the following specification in conjunction with the accompanying drawings, in which like reference characters denote like elements of structure and: 
     FIG. 1 is a block diagram of a system that includes the network interactive apparatus of the present invention; 
     FIG. 2 is a block diagram of the PHD server/database of the FIG. 1 system; 
     FIGS. 3-5 depict display screens that can be used to configure the API program of the FIG. 2 computer; 
     FIG. 6 is a flow diagram of the API program of the FIG. 2 computer; 
     FIG. 7 is a flow diagram of the RDI program of the FIG. 2 computer; 
     FIGS. 8 and 9 depict display screens that can be used with the data analysis program of the FIG. 2 computer; and 
     FIG. 10 is a flow diagram of the data analysis program of the FIG. 2 computer. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring to FIG. 1, a network interactive apparatus, shown as a PHD server/database  22 , communicates with a plurality of user devices  24  via a network  28 . Also connected to network  28  are a plurality of web sites, of which only one, web site  26 , is shown. User devices  24  may be any suitable device upon which a browser may run, such as a personal computer, a telephone, a television set, a hand held computing device and the like. It will be appreciated by those skilled in the art that the number of user devices and web sites is limited only by the capacity of network  28 . Network  28  may be an Internet, a WWW, an Intranet, a wired or wireless telephone network, and the like, or any combination thereof. 
     PHD server/database  22  may be a single computer with a memory system for the storage of data or may comprise a separate computer server and a separate database that are interconnected directly or via network  28 . PHD server/database  22  may be any suitable server, presently known or developed in the future, that is capable of communicating via network  28  with user devices  24  in a protocol that is compatible with the browser capability of user devices  24  and that is capable of running applications that supply web page data and interact with web page actions taken by user devices  24 . 
     Referring to FIG. 2, PHD server/database  22  includes a processor  30 , a communications unit  32  and a memory  36  that are interconnected via a BUS  34 . Memory  36  includes an operating system  38 , an API program  39 , a RDI program  40 , a PHD data storage  41 , and a data analysis program  48 . Other programs, such as utilities and other applications, may also be stored in memory  36 . All of these programs may be loaded into memory  36  from a storage medium, such as a hard disk  42 . 
     Processor  30  is operable under the control of operating system  38  to execute RDI program  40  to collect data from web site  26  via network  28 . API program  39  is operable under the control of operating system  38  to present web pages via communication unit  32  to user devices  24  during a session and to receive and interact with responses from user devices  24 . The web pages, if frequently served, may reside in a cache (not shown) of memory  36 . 
     API program  39  and data analysis program  48  conduct interactive sessions with a user device  24 . RDI program  40  automatically gathers data from web sites via network  28  and builds a history of the content or value of the data over time. 
     API program  39  will initially be described for a typical session with user device  24 . With reference, to FIG. 3, a web page  50  is presented to user device  26 . Web page  50  includes an area  52  for the user to enter a location in the form of a uniform resource locator (URL) or WWW address of a web site that either contains the data or a pointer to another web site that does. User selection of a ‘Get URL’ button  53  causes API program  39  to retrieve and present the data to user device  24 . 
     Referring to FIG. 4, the data of the selected web site is displayed at an area  54  of web page  50 . In the example shown in the drawing, the web site contains financial news and stock prices. This data is presented in several tables 56 that are identified with table selection buttons that are numbered  1  through  7 . Selection of a table 56-4 by operation of table selection button  4  causes the presentation of a further area  58  shown in FIG.  5 . 
     Area  58  contains table 56-4, a selector  60 , a name identifier  70 , a sampling interval area  76  and a data type area  82 . Selector  60  includes a line  62  for selection of an absolute address of a data item contained in table 56-4 and a line  64  for selection of a relative address of the data item. For example, to select the stock price, the user enters  3  and  2  in the column and row entry spots  66  and  68 , respectively, of absolute address line  62 . Relative address line  64  is used, when more than one row of data is present, to identify a look-up column and a look-up value. If the look-up value is found in a row of the look-up column, a value will be taken from the data column of that row. The user specifies a column number for the data to retrieve. For example, to look up hockey points for Jagr in the following table, the value from column  2  is specified for the case where column 1=“Jagr”. 
     
       
         
               
               
               
             
           
               
                   
                   
               
             
             
               
                   
                 Sutter 
                 60 
               
               
                   
                 Jagr 
                 55 
               
               
                   
                 Smith 
                 50 
               
               
                   
                 Fleury 
                 44 
               
               
                   
                   
               
             
          
         
       
     
     This is important when data is sorted as the “absolute” row in which the data that will be entered is unknown. 
     Name identifier  70  includes a name entry area  72  and a create tag button  74 . The user enters a name for the data item, for example, Honeywell stock, in name area  72  and then selects create tag button  74  to complete the entry. 
     Sampling interval area  76  includes an entry area  78  for entry of a sampling interval. For example, the sample interval may be a number of seconds apart (e.g.,  60  seconds), and the like data type area  82  includes a number spot  84 , a date spot  86 , a time spot  88  and a textual string spot  90  that define the type of the data item being identified. For example, number spot  84  is selected if the data item is a number. It will be apparent to one skilled in the art that though areas  52 ,  54 ,  56 ,  58 ,  76  and  82  are presented on the same web page  50 , they could be presented on two or more web pages. 
     Referring to FIG. 6, API program  39  begins at step  100  with a verification of the user&#39;s identity. Step  102  then presents web page  50  to user device  24  with area  52  for user entry of a web site address. Step  104  retrieves the data from the web site and presents it in area  54  of web page  50 . Step  106  then presents any drill down data selected by the user by a drill down procedure. Step  108  presents any user selected data portion, such as table 56-4 of tables  56 . Step  110  presents a format identification selector  60  and name identifier  70  on web page  50 . Step  112  presents data type area  82  and step  114  presents sampling interval area  76 . In step  116 , when the user signals okay, all of the data selected or entered is collected and stored in memory  36 . 
     Referring to FIG. 7, RDI program  40  begins with start step  118  and proceeds to step  120 . Step  120  determines if the current time and date match the sample time and interval of the data item and, if so, retrieves the current content of the data item. Step  122  stores the retrieved content in memory  36  and returns control to start step  120 . 
     Referring to FIG. 8, a web page  140  includes an area  142  for entry of a time range, an area  144  for entry of two or more stocks to be compared, an area  146  for entry of the comparison format and an area  148  for presentation of the comparison. In this example, the date range from Jan. 1, 2000, to Jan. 10, 2000, is entered into area  142 , stocks A and B are entered into area  144  and graphical format is entered into area  146 . An analysis of stocks A and B is then presented in graphical form in area  148 . 
     Referring to FIG. 9, web page  140  is shown for a comparison of a utility stock price with temperature. For this example, the date range is Jan. 1, 2000, to Jan. 10, 2000, the data items to be compared are the utility stock price and the temperature and the comparison format is graphical. Graphs of the temperature and the stock price are presented in analysis area  148 . 
     Referring to FIG. 10, data analysis program  48  begins at start step  124  and control passes to step  126 . Step  126  presents a request web page  140  (FIGS. 8 and 9) to user device  24  for the user to identify a type of analysis in area  146 . Step  128  presents area  144  for the user to identify the data items to be compared and step  130  presents area  142  for the user to identify the date range of the comparison. Step  132  then presents the analysis in area  148 . 
     The present invention having been thus described with particular reference to the preferred forms thereof, it will be obvious that various changes and modifications may be made therein without departing from the spirit and scope of the present invention as defined in the appended claims.