WO1999040507A1 - Method of updating display frames while preserving information associated therewith - Google Patents

Method of updating display frames while preserving information associated therewith Download PDF

Info

Publication number
WO1999040507A1
WO1999040507A1 PCT/US1999/002512 US9902512W WO9940507A1 WO 1999040507 A1 WO1999040507 A1 WO 1999040507A1 US 9902512 W US9902512 W US 9902512W WO 9940507 A1 WO9940507 A1 WO 9940507A1
Authority
WO
WIPO (PCT)
Prior art keywords
database
recited
information objects
html
pixels
Prior art date
Application number
PCT/US1999/002512
Other languages
French (fr)
Inventor
Taggard W. Andrews
Todd Chronis
Makoto Goto
Stacey Pogoda-Curtis
Original Assignee
Manning & Napier Information Service
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Manning & Napier Information Service filed Critical Manning & Napier Information Service
Priority to AU25862/99A priority Critical patent/AU2586299A/en
Publication of WO1999040507A1 publication Critical patent/WO1999040507A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • the present invention relates to programmable computer systems. More particularly, the present invention is directed to a computer system ideally suited for efficient data communication over a data network.
  • Data networks such as the "Internet, " typically include a plurality of users using client computers communicating with a remote server computers to transfer information therebetween.
  • GUI graphical user interface
  • the users employ a computer system having a "web” browser that provides graphical user interface (GUI)-based communication with a "web page” obtained from a server.
  • GUI graphical user interface
  • One popular collection of servers uses a standardized Hypertext Transfer Protocol (HTTP) to provide information and is known as the "World Wide Web. " The information is presented as web pages written as text with standardized formatting and control symbols known as HyperText Mark-up Language (HTML).
  • HTML HyperText Mark-up Language
  • HTML provides basic document formatting and allows a server to specify "links" to other servers and files.
  • Use of an HTML-compliant browser involves specification of a link via a Uniform Resource Locator (URL).
  • URL Uniform Resource Locator
  • the user's client computer makes a TCP/IP request to the server identified in the link and receives an HTML file that is 2 interpreted by the browser so that a electronic HTML document made up of one or more web pages may be displayed on the client's computer.
  • the HTML markup language is analogous in some ways to the formatting codes used in word processing documents.
  • a word processing document viewed through a word processing program is actually a combination of a visual representation of text and a series of non-visually perceivable formatting codes (e.g., carriage return, bold, underline) which instruct the word processing program to display the word processing document in a specified way.
  • an HTML file is actually a combination of the visually perceivable text, referred to as an HTML document and a series of non-visually perceivable "tags" or “anchors" (for new paragraphs, graphics images, hypertext links, etc.) which instruct the browser program to display the hypertext document in a specified way.
  • HTML files are usually broken down into sections, with each section delineated by one or more HTML tags.
  • HTML tags are formatting codes surrounded by the characters ⁇ and > (less than and greater than symbols).
  • Some HTML tags have a start tag and an end tag.
  • end tags are in the format ⁇ /"symbol" > where the "symbol” is the character string found between the characters ⁇ and> in the start tag.
  • Heading level 1 is the largest heading size and heading level 6 is the smallest heading size. Finally, it is good practice to indicate the author of the document at the bottom of the document using the tags ⁇ address > and ⁇ /address > .
  • HTML template text is added to create a basic HTML document.
  • character and paragraph formatting tags may be added to the HTML file.
  • the ⁇ p > tag 3 instructs the browser to begin a new paragraph. If an author wants to highlight some text in bold, the author inserts the ⁇ b > tag at the beginning of the text to be highlighted and inserts a ⁇ /b > tag at the end of the text to be highlighted.
  • the tags ⁇ i> and ⁇ /i> indicate text to display in italics.
  • additional tags have been provided to allow "linking" to additional files.
  • a reader of a HTML document wants to know more about a topic before reading the rest of the current HTML document, the reader selects a "link” or "hot link", which retrieves a new HTML file to display a new HTML.
  • the link could take the reader to a second HTML file (i.e., a "destination document") having the same URL.
  • a hot link to a destination document is made by placing a "reference anchor" around the text to be highlighted and then providing a network location, typically using a URL, where the destination file is located.
  • a service type is a required part of a URL. The service type tells the client's browser how to contact the server for the requested data. The most common service type employed is the Hypertext Transport Protocol or http. The web can handle several other services including gopher, wais, ftp, netnews, and telnet and can be extended to handle new service types.
  • a system name is also a required part of a URL. The system name is the fully qualified domain name of the server which stores the dam being requested.
  • a port is an optional part of a URL. Ports are the network socket addresses for specific protocols.
  • a directory path is a required part of a URL. Once connected to the system in question, a path to the file must be specified.
  • a filename is an optional part of a URL. The file name is the data file itself. The server can be configured so that if a filename isn't specified, a default file or directory listing is returned.
  • a search component is another optional part of a URL. If the URL is a request to search a data base, the query can be embedded in the URL.
  • HTML files have been traditionally used with common Information Processing Common Gateway Interface (CGI) script to pass client requests to an information engine on a server.
  • the server typically includes an information engine 4 that retrieves multiple files or real-time news.
  • Specific implementations of the information engine include, without limitation, conventional boolean search engines such as those produced by Digital Equipment Corporation, information engines employing natural language processing such as DR-LINK produced by Manning & Napier Information Services, news retrieval systems such a those produced by PointCast Technologies, Inc., and the like.
  • a drawback with CGI script is that dynamic creation of HTML documents by the client's computer is not facilitated. This proves problematic with interactive HTML documents such as a HTML document that includes computational functions associated with calculator programs. For each computation performed on the web page, the server must be contacted to perform the same. Each time a the server is contacted, a varying delay occurs before the resulting HTML document showing the computational results is returned to the client's computer. This delay is typically on the order of seconds and represents the major delay, and, arguably, the major drawback of efficiently obtaining information from today's WWW.
  • JavaScript overcomes many of the drawbacks associated with CGI script. Specifically, JavaScript allows executable content to be embedded in HTML files. In this fashion, JavaScript allows programmatic control over the browser, as well as the content of HTML documents. This facilitates dynamically updating the content of HTML documents on the client computer, thereby significantly reducing the wait-time when invoking a server call.
  • dynamically created content is information which is derived from code being executed by the browser.
  • a visual representation of an HTML document is in a browser window having a plurality of pixels associated therewith which correspond to a subset of the memory address location of the client computer's RAM.
  • Information objects and the properties thereof, such as variables, necessary for dynamically updating the content of an HTML document are typically present in RAM so they can be accessed quickly as described in chapters 11 and 12 of JavaScript, The Definitive Guide, published by O'Reilly and Associated (2nd ed.).
  • JavaScript A problem exists with JavaScript, however, in that access to the information objects, as well as the properties thereof, is often lost 5 when the browser window is redrawn or refreshed, such as when a window or frame displaying a HTML page that uses the information objects is resized or redisplayed.
  • an additional server call is required to reload information objects that are necessary to display the pages within the window and/or frames, thereby slowing the overall communication between the time that the client requests the information objects and the time in which the same are received.
  • One prior art method to retain information objects is to use an "invisible frame. " The invisible frame is not displayed on a user's screen but, instead, is used to hold objects that other visible frames need to display their pages. Such a method is described at pp. 204-205 of the O'Reilly reference, W ⁇ &, but often necessitates additional server calls to update frames when the same is resized or redrawn.
  • the present invention provides a method and apparatus for resizing or redrawing windows without requiring additional server calls to supply the necessary information objects to dynamically update the content associated therewith.
  • the invention does so by dividing a window into a plurality of frames, defining a reference window, and initializing all the information objects when the reference window is loaded into the client's computer.
  • the invention is based upon the discovery that by employing the invisible frame technique, user defined variables associated with the information objects that have been dynamically updated are reset to initial values if the window containing the information objects is redrawn and/or resized
  • the information objects and the variables associated therewith are associated with a subset of the plurality of memory address locations of the RAM with which the reference window is associated. This prevents overwriting the memory address locations in which the information objects and the properties 6 associated therewith, such as variables, are located, because the lifetime of a reference window is as long as the same is open. Thus, information objects present in the memory address associated therewith are not considered freed-up by the browser until the reference window is closed. All information associated with the frames are loaded outside of the memory address locations associated with the reference window.
  • content of the frames may be dynamically updated by populating the frames with the information objects associated with the reference window.
  • the information objects necessary to redraw the frames are maintained in the client's computer, as well as the properties associated with these information objects, such as user defined variables.
  • Fig. 1 is an example of a series of HTML file tags forming a template for a HTML file of the prior art.
  • Fig. 2 is simplified plan view of a computer network is which the present invention is implemented.
  • Fig. 3 is a block diagram of a client computer shown above in Fig. 2.
  • Fig. 4 is plan view of a reference window having a visual representation of an HTML document shown therein in accord with the present invention.
  • Fig. 5 is an exploded perspective view of the reference window, shown above in Fig. 4 in relation to a top level window of a client-side browser.
  • a large area network is shown, such as the Internet, which includes a plurality of networked “servers” 10 that are accessible by “clients” 12. Communication between the servers 10 and the clients 12 typically occurs over a publicly accessible network, such as a public switched telephone network over ASDL telephone lines or large bandwidth trunks, such as Tl or OC3 service.
  • the clients 12 access the various servers 10 through an Internet service 7 provider, e.g., America On-Line, Prodigy, CompuServe and the like, by executing application specific software, commonly referred to as a "browser", on a computer 14, shown more clearly in Fig. 3.
  • an Internet service 7 provider e.g., America On-Line, Prodigy, CompuServe and the like
  • the computer 14 includes a system unit 20 having one or more system buses 22 placing various components of the system in data communication.
  • a microprocessor 24 is placed in data communication with both a read only memory (ROM) 26 and random access memory (RAM) 28 via the system bus 22.
  • the ROM 26 contains among other code, the Basic Input-Output system (BIOS) which controls basic hardware operation such as the interaction with peripheral components such as disk drives 30 and 32, as well as the keyboard 34.
  • the RAM 28 is the main memory into which the operating system and application programs are loaded.
  • the memory management chip 36 is in data communication with the system bus 22 to control direct memory access (DMA) operations. DMA operations include passing data between the RAM 28 and the hard disk drive 30 and the floppy disk drive 32.
  • DMA direct memory access
  • a keyboard controller 38 provides a hardware interface for the keyboard 36
  • the mouse controller 40 provides the hardware interface for a mouse 46, or other point and click device
  • the video controller 40 provides a hardware interface for a display 48.
  • a modem 50 enables data communication over the network.
  • the operating system 52 of the computer 14 may be DOS, WINDOWS 3.x, WINDOWS 95, OS/2, or other known operating system.
  • the RAM 28 also supports a number of Internet access tools, including, for example, an HTTP-compliant web browser having a JavaScript interpreter, such as Netscape Navigator 3.0, Microsoft Explorer 3.0 and the like.
  • the browser 54 employs a tcp/ip connection to pass a request to a server 10 running an HTTP "service” (under the WINDOWS operating system) or a "daemon” under the UNIX operating system.
  • the request is typically achieved employing a protocol that can be used to communicate between the server 10 and the client 12.
  • the HTTP server 10 responds to the protocol, typically by sending a "web 8 page" formatted as an HTML file.
  • the browser 54 interprets the HTML file and may form a visual representation of the same using local resources, e.g., fonts and colors.
  • the aforementioned protocol comprises of scripting language such as JavaScript. Referring to Figs.
  • the browser 54 upon interpreting an HTML file, provides a visual representation of an HTML document 56, among a plurality of rectangular pixel regions on the display of the client's computer 14, defining a browser region shown as 58 in Fig. 5.
  • the rectangular pixel regions can be segmented into windows or frames, each displaying an associated HTML page or other information.
  • the source code corresponding to the HTML document 56 is shown in the Appendix which is attached hereto and has embedded therein, script language that incorporates a plurality of information objects.
  • information objects may have associated therewith, functions, variables, arrays and other objects, data or executable code. Examples of information objects are as follows:
  • One of the objects in the script language is a Window object which is the first object created by the browser when a web page is located.
  • the Window object supports, 9 inter alia, methods to pop-up dialog boxes to display messages to obtain input from the client 12, as well as provides a method by which to create new browser windows 58 and frames, such as 62, without necessitating an additional server call.
  • the Window object includes methods, such as alert and prompt, which allow programs for the window to load a new document, including documents present at a differing URL. In this fashion, dynamic generation of an HTML document may be achieved.
  • the approach of the present invention to preserve information objects and the properties associated therewith, such as variables, even upon resizing or redisplaying a window or frame is to create a plurality of frames 60 and 62 associated within the window 56, with the window 56 defining a reference window.
  • the reference window 56 is typically displayed within a top level window 58 of the browser 54 in which the uppermost portion includes a menu bar 66.
  • Each of the frames 60 and 62 consists of a subset of the plurality of pixels associated with the reference window 56, mutually exclusive of the subset of the plurality of pixels of the remaining frames. In this fashion, each of the frames 60 and 62 is associated with a mutually exclusive subset of the plurality of address locations in the RAM 28.
  • a plurality of subframes 68, 70, 72 and 74 are associated with frame 62.
  • frame 60 is a static frame in that no information is updated without necessitating an additional server call.
  • the code necessary to update these frames would be associated with frame 60.
  • the content of frame 62, or any of its corresponding subframes 68, 70, 72 or 74 may be updated without overwriting the code necessary to carry out the update method.
  • a problem was encountered upon resizing or moving the reference window 56, i.e., having the reference window 56 corresponding to a different subset of the plurality of pixels on the display 48. This resulted in the information objects, and the properties associated therewith such as user defined variables, associated with the frames 60 and 62 becoming lost. Specifically, it was recognized that the 10 ⁇ ⁇ ' information objects were lost in a manner similar to when frames have content updated, i.e., the memory address locations of the RAM 28 storing the information objects were overwritten. This problem would occur when the window was resized, moved, or associated with a new URL. To avoid this problem, information objects are stored in the memory address locations of the RAM 28 associated with information of the HTML file that creates the reference window 56.
  • the information objects are initialized in the reference window 56 in which the frames are defmed upon the HTML file being written to RAM 28. This procedure stores the information objects at memory addresses which the browser 54 does not allow to be overwritten until the reference window 56 is closed. This rninimizes the number of server calls necessitated when updating the content of a frame, because the information objects necessary to achieve the same are resident in the client's computer 14 at RAM 28.
  • the information objects are populated in the frames 60, 62, 68, 70, 72 or 74, when an updating is required.
  • var currentAlertSend def .alertSend
  • var currentAlertPrecision def .aler Precision
  • var currentAlertFrequency def.alertFrequency
  • var currentAlertDocsRet def .alertDocsRe
  • var current rin IncQuery def .printIncQuery
  • var currentPrin IncDbs def .printlncDbs
  • var currentPrintIncDates def.printlncDates
  • var currentPrintContent def .
  • Database a new Object () ;
  • Database .name "Aerospace/Defense IntellX”;
  • Database .value 80;
  • Database .checked false;
  • Database » new Object () ;
  • Database .name "Agriculture - MNIS";
  • Database .value 809;
  • Database .checked false;
  • Database .money false;
  • Database new Ob ect ( ) ;
  • Database .name "Banking MNIS”;
  • Database .money false;
  • Database ' 11] new Object () ;
  • Database [42 - new Object () ;
  • Database [42 .name "Tokyo Financial Wire - Comline”;
  • Database [42 .value - 796;
  • Database [42 .checked false;
  • Database [42 .money true;
  • Subject [0 new Object ( ) ;
  • Subject [0 .name "Biotechnology, Healthcare S- Pharmaceuticals”;
  • Subject [4 ⁇ new Object () ; Subject [4 .name - "Government, Military & Politics”; Subject [4 .databases "0:19:33";
  • Vendor new Array( ) ;
  • ⁇ s[i] t.substring(0, ) ; t ** t. substring(p+l) ;
  • ResDatabase new Array () ;
  • OldResDatabase new Array0 ;
  • top.ResDBs top.ResDBs + top.Database[i]. value + ":";
  • top.ResDBs top.ResDBs + top. Database[i]. value + ":";
  • ⁇ display 7DRLv3stat mBodyAlertsResF.htm";
  • top.location 7HTTPB3/DRLINKv3/mainF/' + top.UserlD + ' + ' + top.PID;
  • HREF "javaScript:changeHTTPB(' ALERTS', 'mTocAlerts.htm'); " >
  • HREF "javaScript:changeSection( , mBodyPrefsF.htm , , 'mTocPrefs.htm'); " >
  • top. currentQuery top.mBody.mbDisplay.mbdTop.document.queryEntryForm.queryText.value; ⁇
  • top.currentDocsRequested me.options[me.selectedIndex] .value;
  • DR-LINK is a trademark of Manning & Napier Information Services. ⁇ /center> ⁇ /BODY> ⁇ /HTML> ⁇ HTML> ⁇ HEAD>
  • top.helpTopicsfO new ObjectO
  • top.helpTopicspj .text "Viewing Current Request Information”
  • top.helpTopics[0 .page "hAgInfoREF.htm”;

Abstract

A method and apparatus for resizing or redrawing windows (58) without requiring additional server calls to supply the necessary information objects to dynamically update the content associated therewith. The invention does so by dividing a window into a plurality of frames (60 and 62), defining a reference window (56), and initializing the information objects when the reference window (56) is loaded into a client's computer (12). In this fashion, the information objects are associated with a subset of the plurality of memory address locations of the RAM (28) in the client's computer (12) with which the reference window (56) is associated. This prevents overwriting the memory address locations in which the information objects are located, because the lifetime of a reference window is as long as the same is open. Thus, information objects present in the memory address locations associated therewith are not considered freed-up by the browser (54) until the reference window (56) is closed.

Description

METHOD OF UPDATING DISPLAY FRAMES WHILE PRESERVING INFORMATION ASSOCIATED THEREWITH
COPYRIGHT NOTICE
A portion of the disclosure recited in the specification contains material which is subject to copyright protection. Specifically, a source code appendix is included that lists instructions for a process by which the present invention is practiced in a computer system. The copyright owner has no objection to the facsimile reproduction of the specification as filed in the Patent and Trademark Office. Otherwise all copyright rights are reserved.
BACKGROUND OF THE INVENTION The present invention relates to programmable computer systems. More particularly, the present invention is directed to a computer system ideally suited for efficient data communication over a data network. Data networks, such as the "Internet, " typically include a plurality of users using client computers communicating with a remote server computers to transfer information therebetween. To facilitate the transfer, the users employ a computer system having a "web" browser that provides graphical user interface (GUI)-based communication with a "web page" obtained from a server. One popular collection of servers uses a standardized Hypertext Transfer Protocol (HTTP) to provide information and is known as the "World Wide Web. " The information is presented as web pages written as text with standardized formatting and control symbols known as HyperText Mark-up Language (HTML). HTML provides basic document formatting and allows a server to specify "links" to other servers and files. Use of an HTML-compliant browser involves specification of a link via a Uniform Resource Locator (URL). Upon such specification, the user's client computer makes a TCP/IP request to the server identified in the link and receives an HTML file that is 2 interpreted by the browser so that a electronic HTML document made up of one or more web pages may be displayed on the client's computer.
The HTML markup language is analogous in some ways to the formatting codes used in word processing documents. A word processing document viewed through a word processing program is actually a combination of a visual representation of text and a series of non-visually perceivable formatting codes (e.g., carriage return, bold, underline) which instruct the word processing program to display the word processing document in a specified way. Similarly, an HTML file is actually a combination of the visually perceivable text, referred to as an HTML document and a series of non-visually perceivable "tags" or "anchors" (for new paragraphs, graphics images, hypertext links, etc.) which instruct the browser program to display the hypertext document in a specified way.
A HTML file is usually broken down into sections, with each section delineated by one or more HTML tags. HTML tags are formatting codes surrounded by the characters < and > (less than and greater than symbols). Some HTML tags have a start tag and an end tag. In general, end tags are in the format < /"symbol" > where the "symbol" is the character string found between the characters <and> in the start tag. FIG. 1 is an example of a series of HTML document tags forming a template for a typical hypertext document using the tags <html> and </html> Then the "head" to the document, which typically includes a title, is defmed using the tags <head> , </head> , < title > , and < /title > , respectively. Following the head comes the "body" of the document which is often organized into subtopics with different levels of headings. The body is defined by the tags <body > and </body > . Headings are indicated by the tags <h#> and </h#> , where #is the level of the heading. Heading levels indicate the relative size of the heading.
Heading level 1 is the largest heading size and heading level 6 is the smallest heading size. Finally, it is good practice to indicate the author of the document at the bottom of the document using the tags < address > and < /address > .
Once the HTML template has been established, text is added to create a basic HTML document. In order to improve readability, character and paragraph formatting tags may be added to the HTML file. For example, the <p > tag 3 instructs the browser to begin a new paragraph. If an author wants to highlight some text in bold, the author inserts the < b > tag at the beginning of the text to be highlighted and inserts a < /b > tag at the end of the text to be highlighted. The tags < i> and < /i> indicate text to display in italics. To provide additional versatility to HTML files, additional tags have been provided to allow "linking" to additional files. If a reader of a HTML document wants to know more about a topic before reading the rest of the current HTML document, the reader selects a "link" or "hot link", which retrieves a new HTML file to display a new HTML. The link could take the reader to a second HTML file (i.e., a "destination document") having the same URL.
A hot link to a destination document is made by placing a "reference anchor" around the text to be highlighted and then providing a network location, typically using a URL, where the destination file is located. A service type is a required part of a URL. The service type tells the client's browser how to contact the server for the requested data. The most common service type employed is the Hypertext Transport Protocol or http. The web can handle several other services including gopher, wais, ftp, netnews, and telnet and can be extended to handle new service types. A system name is also a required part of a URL. The system name is the fully qualified domain name of the server which stores the dam being requested. A port is an optional part of a URL. Ports are the network socket addresses for specific protocols. By default, http connects at port. Ports are only needed when the server does not communicate on the default port for that service. A directory path is a required part of a URL. Once connected to the system in question, a path to the file must be specified. A filename is an optional part of a URL. The file name is the data file itself. The server can be configured so that if a filename isn't specified, a default file or directory listing is returned. A search component is another optional part of a URL. If the URL is a request to search a data base, the query can be embedded in the URL.
HTML files have been traditionally used with common Information Processing Common Gateway Interface (CGI) script to pass client requests to an information engine on a server. The server typically includes an information engine 4 that retrieves multiple files or real-time news. Specific implementations of the information engine include, without limitation, conventional boolean search engines such as those produced by Digital Equipment Corporation, information engines employing natural language processing such as DR-LINK produced by Manning & Napier Information Services, news retrieval systems such a those produced by PointCast Technologies, Inc., and the like.
A drawback with CGI script is that dynamic creation of HTML documents by the client's computer is not facilitated. This proves problematic with interactive HTML documents such as a HTML document that includes computational functions associated with calculator programs. For each computation performed on the web page, the server must be contacted to perform the same. Each time a the server is contacted, a varying delay occurs before the resulting HTML document showing the computational results is returned to the client's computer. This delay is typically on the order of seconds and represents the major delay, and, arguably, the major drawback of efficiently obtaining information from today's WWW.
A relatively new scripting language, JavaScript overcomes many of the drawbacks associated with CGI script. Specifically, JavaScript allows executable content to be embedded in HTML files. In this fashion, JavaScript allows programmatic control over the browser, as well as the content of HTML documents. This facilitates dynamically updating the content of HTML documents on the client computer, thereby significantly reducing the wait-time when invoking a server call. For purposes of the present invention, dynamically created content is information which is derived from code being executed by the browser. Typically, a visual representation of an HTML document is in a browser window having a plurality of pixels associated therewith which correspond to a subset of the memory address location of the client computer's RAM. Information objects and the properties thereof, such as variables, necessary for dynamically updating the content of an HTML document are typically present in RAM so they can be accessed quickly as described in chapters 11 and 12 of JavaScript, The Definitive Guide, published by O'Reilly and Associated (2nd ed.). A problem exists with JavaScript, however, in that access to the information objects, as well as the properties thereof, is often lost 5 when the browser window is redrawn or refreshed, such as when a window or frame displaying a HTML page that uses the information objects is resized or redisplayed. In order for the client's computer to reacquire the information objects after a resizing or redrawing operation, an additional server call is required to reload information objects that are necessary to display the pages within the window and/or frames, thereby slowing the overall communication between the time that the client requests the information objects and the time in which the same are received.
One prior art method to retain information objects is to use an "invisible frame. " The invisible frame is not displayed on a user's screen but, instead, is used to hold objects that other visible frames need to display their pages. Such a method is described at pp. 204-205 of the O'Reilly reference, W Σ&, but often necessitates additional server calls to update frames when the same is resized or redrawn.
What is needed, therefore, is an apparatus and method for resizing or redrawing windows without requiring additional server calls to supply the necessary information objects to dynamically update the content associated therewith.
SUMMARY OF THE INVENTION The present invention provides a method and apparatus for resizing or redrawing windows without requiring additional server calls to supply the necessary information objects to dynamically update the content associated therewith. The invention does so by dividing a window into a plurality of frames, defining a reference window, and initializing all the information objects when the reference window is loaded into the client's computer. The invention is based upon the discovery that by employing the invisible frame technique, user defined variables associated with the information objects that have been dynamically updated are reset to initial values if the window containing the information objects is redrawn and/or resized In the present invention, the information objects and the variables associated therewith, are associated with a subset of the plurality of memory address locations of the RAM with which the reference window is associated. This prevents overwriting the memory address locations in which the information objects and the properties 6 associated therewith, such as variables, are located, because the lifetime of a reference window is as long as the same is open. Thus, information objects present in the memory address associated therewith are not considered freed-up by the browser until the reference window is closed. All information associated with the frames are loaded outside of the memory address locations associated with the reference window. In this fashion, content of the frames may be dynamically updated by populating the frames with the information objects associated with the reference window. Thus, when a frame is resized or moved, such as when the reference window is resized or moved, the information objects necessary to redraw the frames are maintained in the client's computer, as well as the properties associated with these information objects, such as user defined variables.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is an example of a series of HTML file tags forming a template for a HTML file of the prior art.
Fig. 2 is simplified plan view of a computer network is which the present invention is implemented.
Fig. 3 is a block diagram of a client computer shown above in Fig. 2. Fig. 4 is plan view of a reference window having a visual representation of an HTML document shown therein in accord with the present invention.
Fig. 5 is an exploded perspective view of the reference window, shown above in Fig. 4 in relation to a top level window of a client-side browser.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring to Fig. 2, a large area network is shown, such as the Internet, which includes a plurality of networked "servers" 10 that are accessible by "clients" 12. Communication between the servers 10 and the clients 12 typically occurs over a publicly accessible network, such as a public switched telephone network over ASDL telephone lines or large bandwidth trunks, such as Tl or OC3 service. The clients 12 access the various servers 10 through an Internet service 7 provider, e.g., America On-Line, Prodigy, CompuServe and the like, by executing application specific software, commonly referred to as a "browser", on a computer 14, shown more clearly in Fig. 3.
Referring to Fig. 3, the computer 14 includes a system unit 20 having one or more system buses 22 placing various components of the system in data communication. For example, a microprocessor 24 is placed in data communication with both a read only memory (ROM) 26 and random access memory (RAM) 28 via the system bus 22. The ROM 26 contains among other code, the Basic Input-Output system (BIOS) which controls basic hardware operation such as the interaction with peripheral components such as disk drives 30 and 32, as well as the keyboard 34. The RAM 28 is the main memory into which the operating system and application programs are loaded. The memory management chip 36 is in data communication with the system bus 22 to control direct memory access (DMA) operations. DMA operations include passing data between the RAM 28 and the hard disk drive 30 and the floppy disk drive 32. Also in data communication with the system bus 22 are various I/O controllers: a keyboard controller 38, a mouse controller 40, a video controller 42, and an audio controller 44. The keyboard controller 38 provides a hardware interface for the keyboard 36, the mouse controller 40 provides the hardware interface for a mouse 46, or other point and click device, and the video controller 40 provides a hardware interface for a display 48. A modem 50 enables data communication over the network. The operating system 52 of the computer 14 may be DOS, WINDOWS 3.x, WINDOWS 95, OS/2, or other known operating system. The RAM 28 also supports a number of Internet access tools, including, for example, an HTTP-compliant web browser having a JavaScript interpreter, such as Netscape Navigator 3.0, Microsoft Explorer 3.0 and the like.
Referring to both Figs. 2 and 3, to access information over the Internet, the browser 54 employs a tcp/ip connection to pass a request to a server 10 running an HTTP "service" (under the WINDOWS operating system) or a "daemon" under the UNIX operating system. The request is typically achieved employing a protocol that can be used to communicate between the server 10 and the client 12. The HTTP server 10 then responds to the protocol, typically by sending a "web 8 page" formatted as an HTML file. The browser 54 interprets the HTML file and may form a visual representation of the same using local resources, e.g., fonts and colors. In the preferred embodiments, the aforementioned protocol comprises of scripting language such as JavaScript. Referring to Figs. 3 and 4, upon interpreting an HTML file, the browser 54 provides a visual representation of an HTML document 56, among a plurality of rectangular pixel regions on the display of the client's computer 14, defining a browser region shown as 58 in Fig. 5. The rectangular pixel regions can be segmented into windows or frames, each displaying an associated HTML page or other information. The source code corresponding to the HTML document 56 is shown in the Appendix which is attached hereto and has embedded therein, script language that incorporates a plurality of information objects. For purpose of the present invention, information objects may have associated therewith, functions, variables, arrays and other objects, data or executable code. Examples of information objects are as follows:
/ User Information var UserlD = "drldev" ; var PID = "4728"; var currentlnfoView = 0; var currentProjectlD = ""; var currentRequestName = " " ; var cuπ-entDateTimeStamp = ""; var currentMImDateTimeStamp = ""; var PRPRUser = false;
// User Defaults var def = new Object(); def.Email = "mak@textwise.com"; def. query = "I would like information about "; def.dateRange = "all"; def.fromDate = "01/01/60"; def.toDate = "11/25/97";
One of the objects in the script language is a Window object which is the first object created by the browser when a web page is located. The Window object supports, 9 inter alia, methods to pop-up dialog boxes to display messages to obtain input from the client 12, as well as provides a method by which to create new browser windows 58 and frames, such as 62, without necessitating an additional server call. To that end, the Window object includes methods, such as alert and prompt, which allow programs for the window to load a new document, including documents present at a differing URL. In this fashion, dynamic generation of an HTML document may be achieved.
Referring to Figs. 3, 4 and 5, the approach of the present invention to preserve information objects and the properties associated therewith, such as variables, even upon resizing or redisplaying a window or frame is to create a plurality of frames 60 and 62 associated within the window 56, with the window 56 defining a reference window. The reference window 56 is typically displayed within a top level window 58 of the browser 54 in which the uppermost portion includes a menu bar 66. Each of the frames 60 and 62 consists of a subset of the plurality of pixels associated with the reference window 56, mutually exclusive of the subset of the plurality of pixels of the remaining frames. In this fashion, each of the frames 60 and 62 is associated with a mutually exclusive subset of the plurality of address locations in the RAM 28. In the exemplary embodiment of the present invention, a plurality of subframes 68, 70, 72 and 74 are associated with frame 62. In the present invention, for example, frame 60 is a static frame in that no information is updated without necessitating an additional server call. To update the content in any of the remaining frames, such as frame 62 comprising subframes 68, 70, 72 or 74, the code necessary to update these frames would be associated with frame 60. In this fashion, the content of frame 62, or any of its corresponding subframes 68, 70, 72 or 74, may be updated without overwriting the code necessary to carry out the update method.
A problem was encountered upon resizing or moving the reference window 56, i.e., having the reference window 56 corresponding to a different subset of the plurality of pixels on the display 48. This resulted in the information objects, and the properties associated therewith such as user defined variables, associated with the frames 60 and 62 becoming lost. Specifically, it was recognized that the 10 ■ ■ ' information objects were lost in a manner similar to when frames have content updated, i.e., the memory address locations of the RAM 28 storing the information objects were overwritten. This problem would occur when the window was resized, moved, or associated with a new URL. To avoid this problem, information objects are stored in the memory address locations of the RAM 28 associated with information of the HTML file that creates the reference window 56. This is accomplished by defining the information objects in the window 56 definition using the HTML of Appendix A. The information objects are initialized in the reference window 56 in which the frames are defmed upon the HTML file being written to RAM 28. This procedure stores the information objects at memory addresses which the browser 54 does not allow to be overwritten until the reference window 56 is closed. This rninimizes the number of server calls necessitated when updating the content of a frame, because the information objects necessary to achieve the same are resident in the client's computer 14 at RAM 28. The information objects are populated in the frames 60, 62, 68, 70, 72 or 74, when an updating is required.
Thus, the invention has been described in connection with specific embodiments thereof. However, nothing in the specification shall be construed to limit the scope of the invention. Rather, the invention is determined solely by the appended claims.
11
APPENDIX
<HTML> <HEAD>
<TITLE>DR-LINK</TITLE>
<BASE Href--http://hostl49.mnis.ne :8082/DRv3stat/> <SCRIPT Languages' javascrip ' >
// opener. location = 'http://www.mnis.net';
// Variables & Arrays var HLwindow == false; var HelpWindow = false; var savedRequest = false; var bgColor = "ccccff"; var textColor = "000066"; var visNames = new Array("Bar Chart Visualizer") ; var visShortNames = new Array( "BarChart" ) ; var today =- new Date () ; " var justDate - (today. getMonth () +1) +«/" + today.getDate () + "/"
+ today.getYear() ;
// User Information var UserID - "drldev" ; ar PID = "20442"; var currentlnfoView = 0; var currentPro ectlD = ""; var currentRequestName =- " " ; var currentDateTimeS mp =- " " ; var currentMlπiDateTi eSta-πp = " " ;
// User Defaults var def = new σbjec () ; def.Email = "mak@textwise.con." ; def .query = "I would like information about "; def .dateRange = "all"; def.fromDate =» "01/01/60"; def.toDate = "11/25/97"; def.DBS = ""; def.docsRet = 100; def .view = "Rel"; def. sort = "Ran"; def.alertSend = "hi"; def.alertPrecision = "high"; def.alertFrequency = "twice" ; def .alertDocsRet = "5"; 12
de .printIncQuery = true; def .printIncDbs = true; def .printIncDates «- true; def .printContent = "hi"; def .printDocs = "marked"; def .Highlight = "AllHL"; def.visDoc = "marked"; def.visType = "BarChart"; var currentQuery = def. query; var UserEmail = def.Email; var currentDateRange = de . dateRange; var currentFromDate = de . fromDate ; var currentToDate = def.toDate; var currentDocsRequested -» def.docsRet var currentResView = def .view; var currentResSort = def . sort ; var currentAlertSend = def .alertSend; var currentAlertPrecision = def .aler Precision; var currentAlertFrequency = def.alertFrequency; var currentAlertDocsRet = def .alertDocsRe ; var current rin IncQuery = def .printIncQuery; var currentPrin IncDbs = def .printlncDbs; var currentPrintIncDates = def.printlncDates; var currentPrintContent = def . rin Content; var currentPrintDocs == def.printDocs ; var currentHighlight = def .Highlight; var currentVisDσcs = def.visDoc; var currentVisType = def.visType;
// Query Review var QRURL; var Anallnfo; var CEDim; var AttribQ; var Pred; var EvalCom; var TFPast; var TFPresent; var TFFuture; var TFA11; var User anTerms; var ManTerms; var ProperNouns ; var TermAlternatives; var Subjects; var HiddenPN;
// Results var haveResults = false; 13
var QueryKey; Result » new Array () ; ResSubject = new Array() ; ResDatabase = new Array ( ) ; var ResQuery; var ResFromDate; var ResToDate; var ResDBs; var ResMl = false;
Mlm = false; var CurrentResult = 0; var CurrentRank = 0; var resultlndex = new Array () ;
// More Like Marked
OldResult =- new Array ( ) ; OldResSu ject =■ new Array () ; OldResDatabase -= new Array (. ;
// Alerts var haveAlertsResuits = false;
AlertDates = new Array
('11/10/97' , '11/11/97' . '11/12/97' , '11/13/97' , '11/14/97' , '11/15/97 ' , '11/16/97' , '11/17/97' , '11/18/97' , '11/19/97' , '11/20/97' , '11/21/9 7' , '11/22/97' , '11/23/97' , '11/24/97' , '11/25/97' , '11/26/97' ,' 11/27/ 97' , '11/28/97' , '11/29/97' , '11/30/97' , '12/01/97' , '12/02/97', '12/03 /97' , '12/04/97' , '12/05/97' , '12/06/97' , '12/07/97' , '12/08/97' , '12/0 9/97'); var begiπAlertDate = AlertDates. length - 1; var endAlertDate = AlertDates . length - l;
Alerts =- new Array() ; var currentAlert - -1;
AlertsRes = new Array () ; var currentAlertResIndex = 0; var alertQuery; var alertDBs; var alertsIndexArray; var alertsDateTimeSta p;
// Help 14
var currentHelplndex = 0;
// Databases
Database = new Array () Selected = new Array ()
Database a new Object () ; Database .name = "Aerospace/Defense IntellX"; Database .value = 80; Database .checked = false; Database .money -- true;
Database = new Ob ec ( ) ; Database .name = "AFX-ASIA" ; Database .value = 472; Database .checked = false; Database .money = false;
Database = new Object () ; Database .name - "AFX-EUROPE"; Database .value = 6; Database .checked = false; Database .money = false;
Database =» new Object () ; Database .name = "Agriculture - MNIS"; Database .value = 809; Database .checked = false; Database .money = false;
Database = new Object () ; Database .name = "Auto IntellX"; Database .value = 75; Database .checked = false; Database .money = true;
Database = new Ob ect ( ) ; Database .name = "Banking MNIS"; Database .value m 798; Database .checked » false; Database .money = false;
Database = new O ject () ; Database .name = "Banking IntellX"; Database .value = 76; Database .checked = false; Database .money = true;
Database = new Object ( ) ; Database .name = "Biotech IntellX"; Database .value = 77;
Database .checked = false; 15
Database [7] .money = true;
Database [8] = new ob ect () ;
Database [8] .name = "Computer IntellX"
Database [8] .value = 78;
Database [8] . checked = false;
Database [8] .money = true;-
Database [9] = new Ob ect ( ) ;
Database [9] . name = "Computer Sciences & Engineering - CSA" ,-
Database [91 . value = 836;
Database [9] . checked = false;
Database 19] . money = false;
Database [101 = new Object 0 ;
Database -10] .name = "Computers, Software & Technology - MNIS";
Database :ιo- .value = 157;
Database !io] .checked = false;
Database [10] .money = false;
Database '11] = new Object () ;
Database :n] .name = "Construction IntellX";
Database :ιi] .value = 79;
Database [11] .checked = false;
Database [11] .money = true;
Database [12] =• new Object ( ) ;
Database ;i2] .name =* "Consumer News - Comline";
Database [12] .value = 794;
Database ;i2] .checked = false;
Database [12] .money - true;
Database [13] = new Object ( ) ;
Database ;i3] .name = "Electronics - Comline";
Database :i3] .value = 793;
Database [13] .checked = false;
Database [13] .money = true;
Database [14] = new Object () ;
Database :i ] .name = "Energy IntellX";
Database [14] .value = 81;
Database :i ] .checked = false;
Database .14] .money = true;
Database [15] * new Object () ;
Database [15] .name = "Entertainment IntellX";
Database [15] .value = 82;
Database [15] . checked = false ;
Database [15] .money = true;
Database [16] = new Object () ;
Database [16] .name = "Environment/Waste IntellX";
Database [16] .value = 83;
Figure imgf000017_0001
Database [16] .checked = false; 16
Database [16] .money = true;
Database [17] = new Object 0 ;
Database :i7] .name = "Food & Beverage IntellX";
Database [17] . alue = 8 ;
Database '17] .checked = false;
Database [17] .money = true;
Database [18] = new Object ( ) ;
Database [18] .name = "General Business IntellX";
Database ;i8] .value = 85;
Database [18] .checked = false;
Database [18] .money = true;
Database [19] = new Object () ;
Database [19] .name = "Government IntellX";
Database :i9] .value = 100;
Database ;i9] .checked - false;
Database [19] .money = true;
Database [20] = new O ect ( ) ;
Database ;20] .name = "Healthcare IntellX";
Database !20] .value = 86;
Database :20] .checked = false;
Database [20] .money = true;
Database [21] - new Object 0 ;
Database [21] .name - "IAC Market Collection (1997)";
Database [21] .value = 808;
Database !21] .checked = false;
Database [21] .money = true;
Database [22] = new Object () ;
Database [22] .name » "IAC Market Research (1996)";
Database [22] .value * 806;
Database [22] .checked - false;
Database [22] .money = true;
Database [23] = new Object ( ) ;
Database [23] .name = "IAC Newsletter Collection (1995)"
Database [23] .value = 857;
Database [23] , checked = false;
Database [23] .money » true;
Database [24] β new Object () ;
Database [24] .name = "IAC Newsletter Collection (1996)
Database [24] .value = 155;
Database [24] . checked = false;
Database [24] .money = true;
Database [25] = new Obj ec ( ) ;
Database [25] .name = "IAC Newsletter Collection (1997)
Database [25] .value = 807;
Figure imgf000018_0001
Database [25] .checked = false; 17
Database [25] .money = true,
Database [26 = new object () ,• Database [26 .name = "IEE/INSPEC (1990-1991)"; Database [26 .value = 870; Database [26 .checked = false; Database [26 .money = false;
Database [27 = new Object 0 ; Database (27 .name = "IEE/INSPEC (Jan 1 1960 - Feb 28 1981)"; Database [27 .value = 398; Database [27 .checked = false; Database [27 .money = false;
Database [28 = new Object 0 ; Database [28 .name = "IEE/INSPEC Database (1960-1989)"; Database [28 .value = 29; Database [28 .checked = false; Database [28 .money = false;
Database [29 = new Object () ; Database [29 .name = "IEE/INSPEC Updates and Additions (Jan 1993 Dec 1996) " ; Database [29 .value a 399; Database [29 •checked = false; Database [29 .money - false;
Database [30 = new Ob ect ( ) ; Database [30 .name = "Information Technology & Computers - Comline" ; Database [30 .value = 792; Database [30 .checked = false; Database [30 .money = true ;
Database [31 = new Ob ec ( ) ; Database [ 1 .name = "Insurance IntellX"; Database [31 .value = 87; Database [31 .checked = false; Database [31 •money =• true;
Database [32 = new Object () ; Database [32 .name = "Labor and Economics - MNIS"; Database [32 .value = 819; Database [32 .checked » false; Database [32 .money = false?
Database [33 » new Object 0 ; Database [33 -name = "Military - MNIS"; Database (33 .value =- 822; Database [33 . checked = false ; Database [33 .money = false;
Database [34 = new Object () ; Database [34 .name = "Multimedia/Interactive IntellX"; 18
Database [34 .value = 88; Database (34 .checked = false; Database (34 .money = true;
Database [35 « new Object () ; Database (35 .name -- "Nris (1960-1969)"; Database [35 .value = 23; Database [35 .checked = false; Database [35 .money = false;
Database [36 ■» new Object () ; Database [36 .name = "NTIS (1980-1989)"; Database [36 .value = 20; Database [36 . checked = false ; Database (36 .money = false;
Database [37 = new Obj ect () ; Database [37 .name - "NTIS (1990-1994)"; Database (37 •value = 15; Database [ 7 .checked = false; Database [37 .money = false;
Database [38 =» new Object () ; Database [38 .name - "Packaging/Forest Products IntellX"; Database (38 .value = 89; Database [ 8 .checked = false; Database [38 .money = true;
Database [39 = new Object 0 ; Database (39 .name = "Science and Engineering - MNIS"; Database [39 •value = 824; Database [39 .checked = false; Database [39 .money = false;
Database [40 = new Object () ; Database (40 .name = "Social Sciences - MNIS (1990-1994)"; Database [40 .value = 825; Database [40 .checked = false; Database [40 .money = false;
Database [41 - new Objec ( ) ; Database [41 •name = "Telecommunications - Comline"; Database [41 .value β 795; Database [41 .checked = false; Database [41 .money = true;
Database [42 -» new Object () ; Database [42 .name = "Tokyo Financial Wire - Comline"; Database [42 .value =- 796; Database [42 .checked = false; Database [42 .money = true;
Database [43 = new Ob ect ( ) ; Database [43 .name = "Transportation & Shipping IntellX"; 19
Database [43 .value = 93;. Database [43 .checked = false; Database (43 .money = true;
Database [44 « new Object () ; Database [44 .name = "Travel & Tourism IntellX"; Database [44 .value = 94; Database [44 .checked = false; Database [44 .money = true;
Database [45 = new Object () ; Database [45 .name - "Utilities IntellX"; Database [45 .value = 95; Database (45 .checked = false; Database [45 .money = true;
// Subjects
Su ect = new Array ( ) ;
Subject [0 = new Object ( ) ; Subject [0 .name = "Biotechnology, Healthcare S- Pharmaceuticals"; Subject [0 .databases - "7:20:35:36:37";
Subject [l = new Object ( ) ; Subject [1 •name = "Business, Economics &- Finance"; Subject [1 .databases = "5:6:18:21:22:23:24:25:31:32:42";
Sub ect [2 ■ new Object () ; Subject [2 .name = "Computers & Telecommunications"; Subject [2 .databases - "8:9:10:26:27:28:29:30:34:35:36:37:41";
Subject [3 ■ new Object () ; Subject [3 .name = "Consumer Affairs"; Subject [3 .databases =- "12:15:17:44";
Subject [4 β new Object () ; Subject [4 .name - "Government, Military & Politics"; Subject [4 .databases = "0:19:33";
Subject [5 = new Object () ; Subject [5 .name = "Natural & Applied Sciences, Engineering"; Subjec [5 .databases =
"3:4:9:11 13:14:16:26:27:28:29:35:36:37:38:39:43:45";
Subjec [6 * new Objec ( ) ; Subject [6 .name = "Newspapers & Newswires"; Subj ct (6 .databases = "1:2:12:13:23:24:25:30:41:42";
Subject (7 = new Object ( ) ; Subject [7 .name = "Social Sciences & Humanities"; Subject [7 .databases = "40"; 20
// Vendors
Vendor = new Array( ) ;
Vendor (0 = new Object () ; Vendor [0 .name = "AFX News Limited"; Vendor [0 .databases = "1:2";
Vendor [1 = new Object () ; Vendor [1 .name = "Cambridge Scientific Abstracts"; Vendor [1
Vendor [2 = new Object () ,• Vendor [2 .name = "Comline Business Data, Inc."; Vendor (2 .databases = "12:13:30:41:42";
Vendor [3 <-- new Object () ; Vendor(3 .name = "Information Access Company"; Vendor [3 .databases = "21:22:23:24:25";
Vendor [4 =• new Object () ; Vendor [4 .name = "Institution of Electrical Engineers"; Vendor (4 .databases -■ "26:27:28:29";
Vendor [5 = new Object () ; Vendor[5 .name - "Intell.X" ; Vendor[5 .databases = "0:4:6:7 8 :11:14 :15:16 :17 : 18 : 19 :20 :31 :3 :38 : 3 :44 : 5" ;
Vendor[ β new Objec () ; Vendor [6 .name = "Manning & Napier Information Services, Inc." Vendor(6 .databases = "3:5:10:32:33:39:40";
Vendor [7 = new Object 0 ; Vendor [7 .name = "National Technical Information Service"; Vendor [7 •databases » "35:36:37n;
//
// History historyArray = new Array0 ; var currentHistory;
// Saved Queries savedArray = new Array () ; var currentSavedQuery;
// Help 21
var currentHelplndex = 0; var helpTopics;
// Functions function split (d,t) s « new Array() ; for (i=0; true; i++)
{ p = .indexOf (d) ; - if (p « -1) s(i] = t; brea ;
} s[i] = t.substring(0, ) ; t ** t. substring(p+l) ;
} return a;
} function resetDefaultDBs ()
{
DBs - split ( " : " ,def .DBs) ; for (var i = 0; i < DBs. length; i++) for (var j » 0; j < Database.length; j++) if (i — 0) top.Database [j] .checked false; if (Database [j] .value ■« DBs [i] )
Database [j] .checked « true;
}
}
} resetDe aultDBs () ; function onDBSelCancel ()
{ for (var i = 0; i < Database. length; i++)
Database [i] .checked = false; } for ( var i = 0; i < Selected.length; i++)
{
Database [Selected[i] ] .checked = true;
} 22
} function viewSummary(thisRank, thislndex)
CurrentRank = thisRank;
CurrentResult = thislndex; to . mBody. mbDisplay.mbdTo . location Resul [thisRank] . suHref; } function viewFullText (thisRank, thislndex)
CurrentRank = thisRank;
CurrentResult = thislndex; top.mBody. mbDispla .mbdTo . location Result [thisRank] . ftHref; } function clearResultlnde O
{ resul Index = new Arra () ;
function initResArrays ()
Result » new Arra () ; ResSub ect * new Array() ;
function initQRArrays ()
ManTer s = new Array0 ; Subjects -- new Array() ; ProperNouns « new Array() ; TermAlternatives = new Array() ;
function initResDatabaseObject (Dblndex)
ResDatabase [Dblndex] = new Object ();
function initResSubjectOb ect (Dblndex)
ResSubject [Dblndex] = new Objec ();
function initResultObject (Dblndex)
Result [Dblndex] - new Object 0;
function initManTermsObject (Dblndex) 23
{
ManTerms [Dblndex] = new Objec O;
function initProperNounsObjec (Dblndex)
ProperNouns [Dblndex] = new Object 0; ProperNouns [Dblndex] .array = new Array() ;
function initProperNounsObjectArray(Dblndex, ArrayIndex)
ProperNouns [Dblndex] .array[Arraylndex] » new Object ;
function initTermAlternativesOb ect (Dblndex)
TermAlternatives [Dblndex] = new ObjectO; TermAlternatives [Dblndex] .array =- new Array0 ;
function initTermAltemativesObjectArray(Dblndex, Arraylndex)
TermAlternatives [Dblndex] .array[Arraylndex] = new O ect () ;
function initSubjectsObjec (Dblndex)
Subjects [Dblndex] = new Object () ;
function initResult ()
{
Result a new Array() ;
} function initOldResult ()
{
OldResult = new Array() ;
function initResSubject 0
ResSubject = new Array() ;
function initOldResSubject ()
OldResSubject = new Array() ;
unction initResDatabase () { 24
ResDatabase = new Array () ;
function initOldResDatabase ()
OldResDatabase = new Array0 ;
function initHelpTopics helpTopics = new Array 0 ;
function initAlertsO
Alerts -= new Array() ;
function initAlertsObject (index)
Alerts [index] » new ObjectO;
unction initAlertsRes ()
AlertsRes = new Array() ;
function initAlertsResObject (index)
AlertsRes [index] = new ObjectO; AlertsRes [index] .array = new Array() ;
function initAlertsResArrayObject (thisArray, index)
AlertsRes [thisArray] .array[index] « new ObjectO;
function initAlertsIndexArray alertslndexArray =» new Array0 ;
</SCRIPT>
</HEAD>
<FRAMESET ROWS=»50,+" NAME=»main"> <FRAME
SRC=>"http://host149.mnis .ne :8082/DRLv3stat/mTocAgent.htm" NAME-"mToc" MARGINWIDTH=5 25
MARGINHEIGHT=5
FRAMEBORDER=-yes
SCROLLING=no
NORESIZE
>
<FRAME
SRC="htt : //hostl49. mnis .ne : 8082/DRLv3stat/mBodyAgentF htm" NAME="mBody" FRAMESPACING=5 FRAMEBORDER=yes > </FRAMESET>
<NOFRAMES->
This is where to put text that browsers without frames support will display.
</NOFRAMES>
</HTML>
26
<HTML> <HEAD > <meta http-equiv= "pragma" content= "no-cache" >
< TITLE > mTocAgent < /TITLE >
< script language = "javascript" >
function changeSection(display, me)
{ top.modifyAlert = 0; top.ResQuery = top. currentQuery; top.ResFromDate = top.currentFromDate; top.ResToDate = top.currentToDate; top.ResMlm = top.Mlm; top.MIm = false;
top.ResDBs = ""; for (i = 0; i < top. Database. length; i+ +)
{ if (top. Databasefi]. checked)
{ top.ResDBs = top.ResDBs + top.Database[i]. value + ":";
} }
display = "/DRLv3stat/" + display;
top.currentlnfoView = 0;
parent.mBody. location = display; location = me; 27
}
function changeHTTPB (display, me)
{ top.modifyAleit = 0; top.ResQuery = top. currentQuery; top.ResFromDate = top.currentFromDate; top.ResToDate = top.currentToDate; top.ResMlm = top.Mlm; top.Mlm = false;
top.ResDBs = ""; for (i = 0; i < top. Database. length; i+ +)
{ if (top.Database[i]. checked)
{ top.ResDBs = top.ResDBs + top. Database[i]. value + ":";
} }
if (display = = "ALERTS" && top. have AlertsResults)
{ display = 7DRLv3stat mBodyAlertsResF.htm";
} else
{ display = "/HTTPB3/DRLINKv3/" + display + "?" + top.UserlD;
}
top.currentlnfoNiew = 0; 28 parent. mBody. location = display; location = me;
}
function resetSystem()
{ top.location = 7HTTPB3/DRLINKv3/mainF/' + top.UserlD + ' + ' + top.PID;
}
< /script >
</HEAD >
< BODY BGCOLOR= "ffffff" >
< TABLE Width= 100% Border =0> <TR>
<TD Valign=Top Align=Left>
<IMG SRC = "agentToc.gif" WIDTH=506 HEIGHT=38 USEMAP= "#mTopMap" border=0>
< map name = "mTopMap " >
<area shape=rect coords= "224,1,279,38"
HREF= "javaScript:changeHTTPB('SAVED' , 'mTocSaved.htm'); " >
<area shape=rect coords = "305,1,362,38"
HREF= "javaScript:changeHTTPB(' ALERTS', 'mTocAlerts.htm'); " >
<area shape=rect coords= "383,1,423,38"
HREF= "javaScript:changeSection(,mBodyPrefsF.htm, , 'mTocPrefs.htm'); " >
<area shape=rect coords = "449,0,500,38"
HREF= "javaScript:changeSection('mBodyContactF.htm' , 'mTocContact.htm'); " >
</map>
< /TD >
< TD Valign = Center Align= Right > 29
<A Href=javascript:resetSystem(); > < IMG Src=stop.gif Border=0> < /A>
</TD >
< /TR>
< /TABLE >
< /BODY>
< /HTML>
<HTML>
<HEAD >
< TITLE > mBody AgentF < /TITLE >
< SCRIPT Language = 'JavaScript' > top.bgColor = "ccccff";
< /SCRIPT >
</HEAD >
< FRAMESET COLS = "150,*" >
< FRAME SRC= "blank.htm" NAME= "wholeToc" MARGINWIDTH=0 MARGINHEIGHT=0 FRAMESPACING=0 FRAMEBORDER=0 >
< FRAME
SRC = "mbDisplayAgentF.htm"
NAME = "mbDisplay"
MARGINWIDTH=0
MARGINHEIGHT=0
FRAMESPACING=0
FRAMEBORDER=0
> 30
< /FRAMESET >
< /HTML>
<HTML> <HEAD >
< TITLE > whoieTocF < /TITLE >
< frameset rows = " 130, * " >
< FRAME
SRC = "tocTop.htm"
NAME= "mbTocTop"
MARGINWIDTH=5
MARGINHEIGHT=5
FRAMESPACING=0
FRAMEBORDER=0
SCROLLING = auto
NORESIZE
>
< FRAME
SRC = "mbAgentQEToc.htm" NAME= "mbToc" MARGINWIDTH=5 MARGINHEIGHT=5 FRAMESPACING=0 FRAMEBORDER=0 SCROLLING = no NORESIZE >
< /FRAMESET > < /HEAD > 31
< /HTML>
<HTML>
<HEAD>
< script > function writeTopPage(mylndex)
{ document.writeC < BODY Bgcolor = ".top.bgColor," > "); document.writeC < font size =2 face = "helvetica, arial" > ');
if (my Index = =0)
{ document.writeC < B > Request');
if (top.Mlm)
{ document.writeC' (MLM)");
}
document.writeC: </B> <BR> <FONT Size =2 face = "helvetica, arial" > *); document. write(top .currentQuery) ;
else if (mylndex= = 1)
{ document.writeC < B > Date Range: < /B > < BR> < FONT Size=2 face = "helvetica, arial" > '); document. writelnC < table > <tr> <td align=right> '); document.writeC From: < /td> <td> '); document. write(top.currentFromDate); document.writeC </tr> <tr> <td align=right> '); 32 document.writeC To: '); document. writeln( ' < /td> < td> '); document. write(top . currentToDate) ; document. writeln( ' < /td> < /tr> < /table > ');
}
else if (mylndex= =2)
{ document.writeC < B > Databases: </B > <BR> < FONT Size=2 face = "helvetica, arial" > ');
var flag = true; var a=top.Database.length for (x=0; x< a; x+ +)
{ if (top. Database[x]. checked)
{
document.writeC < hr height= 1 noshade > ');
if (top. Database[x]. money)
{ document. write(" <FONT Color= 339900 > $ < /FONT > ");
} document. write(top.Database[x] .name); document. writelnC <br> '); flag = false;
} x
} 33
if (flag)
{ document.writeC < center > (No Databases
Selected) < /center > '); }
} }
< /script > </HEAD >
< script > writeTopPage(top.currentΙnfoView); < /script >
</BODY>
</HTML>
<HTML>
<HEAD >
<meta http-equiv= "pragma" content= "no-cache" >
< TITLE > mbAgentQEToc.htm < /TITLE>
< script language = "javascript" >
top.bgColor = "ccccff";
function doInfoClick(myNum)
{ if (myNum = = 0)
{ 34 top. currentQuery = top.mBody.mbDisplay.mbdTop.document.queryEntryForm.queryText.value; }
top . currentlnfoView = myNum; parent . mbTocTop . location = " tocTop . htm "
}
function launchSelection(me)
{ if (me= = "p") window.open("/HTTPB3/DRLINKv3/HISTORY?" + top.UserlD, "history",
"toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars = l,resizable = l,width=570,height=450");
else if (me= = "n")
{ top.modifyAlert = 0; top.currentQuery = top. def. query;
top.mBody.mbDisplay.mbdTop.document.queryEntryForm.queryText.value top.def.query; top.currentDBs = top.def.DBs; top.currentToDate = top.def.toDate; top.currentFromDate = top.def.fromDate; top.currentDocsRequested = top.def.docsRet; top.currentProjectlD = ""; top . resetDefaultDBsO ; doInfoClick(top . currentlnfoNiew) ; top.haveResults = false; 35 top.mBody. mbDisplay. mbdTop. location = 'agentNewQE.htm';
} }
< /script > </HEAD>
< BODY BGCOLOR = "ccccff" >
< FORM NAME= "infoForm" >
< table cellspacing =0 cellpadding=0> <tr>
<td> <font size=2> <INPUT TYPE="RADIO" checked NAME="queryInfo" VALUE="" onClick="doIπfoClick(0)">Request&nbsp;
<IΝPUT TYPE="RADIO" NAME =" query Info" VALUE="" onClick= "doInfoClick(l);" >Dates&nbsp; </font> </td> </tr> <tr>
<td> <font size=2> <INPUT TYPE="RADIO" NAME=" query Info" VALUE="" onClick="doInfoClick(2);">Databases</font> </td> </tr> < /table > <p>
< center >
< table > <tr>
<td> <a href="javascript:launchSelectionCp');"> <img src= "viewHistory.gif" border=0> </a></td> </tr>
<tr> 36
< td > < a href = "javascript:launchSelection('n'); " > < img src= "newRequest.gif" border =0> < /a> < /td> < /tr> < /table > < /center >
< /FORM >
</BODY >
</HTML>
<HTML>
<HEAD >
<ΗTLE> < /ΉTLE>
<META NAME = "EDITOR" CONTENT = "HTML Assistant Pro 97 - http://www.brooknorth.com/" >
</HEAD >
< FRAMESET ROWS = " *,40" >
< FRAME
SRC = "agentNewQE.htm"
NAME = "mbdTop"
MARGINWIDTH=5
MARGINHEIGHT=5
FRAMEBORDER=0
NORESIZE
>
< FRAME
SRC = "agentQEControls.htm"
NAME= "mbdControls"
FRAMESPACING=0
MARGINWIDTH=2
MARGINHEIGHT=2 37 ■ " '
FRAMEBORDER=0 SCROLLING = no > < /FRAMESET >
< /HTML>
<HTML>
<HEAD>
^πTLE>agentNewQE</TITLE>
<SCRIPT LANGUAGE=JavaScript> function loadPage()
{ top.mBody.wholeToc.location= 'wholeTocF.htm'; document.queryEntryForm.queryText.value= top.currentQuery
}
function doDBSelectionO
{ window.open("dbSelectionF.htm", "dbSelection",
"toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars= 1 ,resizable= 1 ,widt h=570,height=430");
}
function doDateSelectionO
{ window.open("dateSelectionF.httn", "dateSelection", "toolba_=0,location^,directories=0,status ),menuba_=0,scrollbars==0,resizable=l,widt h=300,height=330")
} 38 function updateQuery()
{ top.currentQuery = document.queryEntryForm.query Text, value;
if (top.currentlnfoNiew — 0)
{ top.mBody.wholeToc.mbToc.doInfoClick(O);
}
function changeDocs(me)
{ top.currentDocsRequested = me.options[me.selectedIndex] .value;
}
function getQEDefsO
{ document. writeln('<FORM ΝAME="queryEntryForm">'); document.writeln('<rEXTAREA ROWS=7 COLS=40 NAME="queryText" WRAP="VIRTUAL">*); document.writeln('</TEXTAREA>'); document.writeln('<TABLE BORDER=0>'); document. write("<TR><td>Project ID:<br><INPUT TYPE=TEXT NAME=ProjectID SIZE=20 value=\""); document. write(top.currentProjectID); document. writeln("\"></td>"); document. writeln("<td>&nbsp;&nbsp;</td>"); document.writeln("<td>Documents Requested: <br>"); 39 document. writeln("<SELECT NAME=DocsRequested SIZE=1 width=4 onChange='changeDocs(this);'>"); document. write("<option Value=l 00"); if (top.currentDocsRequested = 100) document.writeC selected"); document. writeln("> 100"); document. write("<option Value=75"); if (top.currentDocsRequested = 75) document. write(" selected"); document.writeln(">75"); document. write("<option Value=50"); if (top.currentDocsRequested = 50) document. write(" selected"); document.writeln(">50"); document. write(" <option Value=25 ") ; if (top.currentDocsRequested = 25) document. rite(" selected"); document. writeln(">25"); document. write("<option Value=l 0"); if (top.currentDocsRequested = 10) document. rite(" selected"); document. writeln("> 10"); document^vriteln("</SELECT></FORM></td </tr></table>");
} </SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
&nbsp;<BR>
<center>
<table idth="100%">
<tr> 40
<td align=center valign=top><A hre_="javascript:doDBSelection();" onClick=updateQuery();><img src="selectDBs.gif ' border=0></a>
<td align=center valign=top><a href="javascript:doDateSelection();" onClick=updateQuery();><img src="selectDates.gif' border=0></a></td> </tr> </table>
<br>
<FONT SIZE=2><I>Type your request into the box below. <br>Please capitalize the first letter of all proper nouns (e.g., "India").<p></I></FONT>
<P>
<script> getQEDefsO; loadPageO; </script>
<hr>
<center><font size=l>Copyright r- 1997 Manning & Napier Information
Services<BR>
All Rights Reserved. DR-LINK is a trademark of Manning & Napier Information Services.</center> </BODY> </HTML> <HTML> <HEAD>
<meta http-equiv= "pragma" content= "no-cache" > < TITLE > mbdControls < /ΗTLE > 41
< script language = "javascript" >
top.helpTopics = new Array (); top.bgColor = "ccccff"; top.textColor = "000066";
top.helpTopicsfO; = new ObjectO; top.helpTopicspj .text = "Viewing Current Request Information"; top.helpTopics[0 .page = "hAgInfoREF.htm";
top.helpTopics[l = new ObjectO; top.helpTopics[l .text = "Using Your Request History"; top.helpTopics[l .page = "hAgHistF.htm";
top.helpTopics[2 = new ObjectO; top.helpTopics[2 .text = "Selecting Databases"; top.helpTopics[2 .page = "hAgDBF.htm";
top.helpTopics[3 = new ObjectO; top.helρTopics[3 .text = "Selecting a Date Range"; top.helpTopics[3 .page = "hAgDateF.htm";
top.helpTopics[4; = new ObjectO; top.helpTopics[4' .text = "Writing an Effective Query"; top.helpTopics[4; .page = "hAgQueryF.htm";
top.helpTopics[5 = new ObjectO; top.helpTopics[5 .text = "Project ID"; top.helpTopics[5 .page = "hAgProjIDF.htm";
top.helpTopics[6] = new Object(); 42 top.helpTopics[6].text = "Documents Requested"; top.helpTopics[6].page = "hAgDocsReqF.htm";
top.helpTopics[7] = new ObjectO; top.helpTopics[7].text = "Starting Your Search"; top.helpToρics[7].page = "hAgStartSearchF.htm";
top.helpTopics[8] = new ObjectO; top.helpTopics[8].text = "Starting A New Request"; top.helpTopics[8].ρage = "hAgNewReqREF.htm";
top.helpTopics[9] = new ObjectO; top.helpTopics[9].text = "Show Help Index"; top.helpTopics[9].page = "helpIndexF.htm";
function helpSelectionO
{ window.openChelpSelectionF.htm" , "helpSelection" ,
"toolbar=0,location=0,directories =0,status =0,menubar =0,scrollbars =0,resizable = l,width=360,height= 150");
}
function enterQueryO
{ var noDBsFlag = true; for (i = 0; i < top. Database. length; i+ +)
{ if (top. Databasefi]. checked)
{ noDBsFlag = false; 43
}
if (noDBsFlag)
{ alert ("You must select at least one database for searching. "); return; }
top. currentProjectlD = parent.mbdTop . document, query Entry Form. ProjectID . value parent.mbdTop .updateQueryO ; top.currentlnfoView = 0; top.r__Body.mbDisplay.mbdTop.location= "blankQuerySubmit.htm" top.animatedGifC'Blue'');
}
< /script >
</HEAD>
< BODY BGCOLOR= "ccccfP >
< table cellspacing=0 cellpadding=2 width="100%" > <tr>
< td valign=top > < a href = "javascript:helpSelectionO; " > < img src= "help.gif border=0> </a> </td> 44
<td align=right valign=top> <a href =javascript:enterQueryO; > <img src = " startSearch.gif" border =0> </a></td>
</tr> < /table > </FORM>
</BODY> </HTML>

Claims

45 WHAT IS CLAIMED IS:
1. A method for transferring data in a script-based communications system having a display, said method comprising the steps of: receiving information including an HTML file and executable code having a plurality of information objects contained therein; forming a visual representation of said HTML file on said display, defining a reference window, said window having a plurality of pixels; creating, from a subset of said plurality of pixels, an HTML document, defining a frame; and dynamically updating said HTML document by invoking one of said plurality of information objects while preserving a subgroup of said plurality of information objects .
2. The method as recited in claim 1 wherein said system includes a memory having a plurality of address locations and said updating step includes storing said subgroup of information in a subset of said plurality of address locations associated with said reference window.
3. The method as recited in claim 1 wherein said updating step includes a step of initializing said plurality of information objects in said reference window.
4. The method as recited in claim 1 wherein said updating step includes associating said frame with a different URL.
5. The method as recited in claim 1 wherein said updating step includes associating said frame with a differing subset of pixels.
6. The method as recited in claim 1 wherein said updating step includes resizing said frame. 46
7. The method as recited in claim 1 wherein said creating step creates a plurality of HTML documents, each of which is associated with a group of pixels of said plurality of pixels, mutually exclusive of pixels associated with the remaining HTML documents.
8. The method as recited in claim 1 wherein said script-based data includes JavaScript.
9. The method as recited in claim 2 wherein said subgroup includes all of said plurality of information objects.
10. A method to facilitate data communication within a script-based system including a visual display and a memory having a plurality of address locations, said method comprising: receiving an HTML file having executable code embedded therein, said executable code including a plurality of information objects; creating a visual representation of said text information, defining a reference window; storing a subgroup of said plurality of information objects among a subset of said plurality of address locations, with said subset being associated with said reference window; forming, in said reference window, a frame having content associated therewith; dynamically updating said content by referencing at least one information object associated with said reference window.
11. The method as recited in claim 10 wherein said updating step includes a step of initializing said plurality of information objects in said reference window.
47 12. The method as recited in claim 10 wherein said updating step includes associating said frame with a different URL.
13. The method as recited in claim 10 wherein said updating step includes associating said frame with a differing subset of pixels.
14. The method as recited in claim 10 wherein said updating step includes resizing said frame.
15. The method as recited in claim 10 wherein said creating step creates a plurality of HTML documents, each of which is associated with a group of pixels of said plurality of pixels, mutually exclusive of pixels associated with the remaining HTML documents.
16. The method as recited in claim 10 wherein said script-based data includes JavaScript.
17. The method as recited in claim 10 wherein said subgroup of said plurality of information objects includes all of said plurality of information objects.
18. In a processing system of the type including a processor, a memory in data communication with said process and a display having a plurality pixels, with said memory having a plurality of address locations, a subset of which stores an HTML file and executable code having a plurality of information objects contained therein, with said source code having a first subroutine adapted to form a visual representation of said HTML file on said display, defining a reference window, said window having a plurality of pixels, a second subroutine adapted to create from a subset of said plurality of pixels, an HTML document, defining a frame, wherein an improvement comprises of a third subroutine stored in said memory which is adapted to dynamically update said HTML document by invoking one of said plurality of 48 information objects while preserving a subgroup of said plurality of information objects.
19. The system as recited in claim 18 wherein said third subroutine is further adapted to store subgroup of information objects in a subset of said plurality of address locations associated with said reference window.
20. The system as recited in claim 18 wherein said third subroutine is further adapted to store all of said information objects in a subset of said plurality of address locations associated with said reference window.
PCT/US1999/002512 1998-02-06 1999-02-05 Method of updating display frames while preserving information associated therewith WO1999040507A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU25862/99A AU2586299A (en) 1998-02-06 1999-02-05 Method of updating display frames while preserving information associated therewith

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US2009898A 1998-02-06 1998-02-06
US09/020,098 1998-02-06

Publications (1)

Publication Number Publication Date
WO1999040507A1 true WO1999040507A1 (en) 1999-08-12

Family

ID=21796734

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/002512 WO1999040507A1 (en) 1998-02-06 1999-02-05 Method of updating display frames while preserving information associated therewith

Country Status (2)

Country Link
AU (1) AU2586299A (en)
WO (1) WO1999040507A1 (en)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002043365A2 (en) * 2000-11-21 2002-05-30 Kohn Juergen Method and device for displaying an image composed of pixels
WO2005013165A2 (en) * 2003-07-26 2005-02-10 Surrey Technologies Limited System and method for making a reservation and/or purchase
US7246324B2 (en) * 2002-05-23 2007-07-17 Jpmorgan Chase Bank Method and system for data capture with hidden applets
US7685013B2 (en) 1999-11-04 2010-03-23 Jpmorgan Chase Bank System and method for automatic financial project management
US7689504B2 (en) 2001-11-01 2010-03-30 Jpmorgan Chase Bank, N.A. System and method for establishing or modifying an account with user selectable terms
US7756816B2 (en) 2002-10-02 2010-07-13 Jpmorgan Chase Bank, N.A. System and method for network-based project management
US7783578B2 (en) 2001-09-21 2010-08-24 Jpmorgan Chase Bank, N.A. System for providing cardless payment
US7941533B2 (en) 2002-02-19 2011-05-10 Jpmorgan Chase Bank, N.A. System and method for single sign-on session management without central server
US7966496B2 (en) 1999-07-02 2011-06-21 Jpmorgan Chase Bank, N.A. System and method for single sign on process for websites with multiple applications and services
US7987501B2 (en) 2001-12-04 2011-07-26 Jpmorgan Chase Bank, N.A. System and method for single session sign-on
US8160960B1 (en) 2001-06-07 2012-04-17 Jpmorgan Chase Bank, N.A. System and method for rapid updating of credit information
US8185940B2 (en) 2001-07-12 2012-05-22 Jpmorgan Chase Bank, N.A. System and method for providing discriminated content to network users
US8185877B1 (en) 2005-06-22 2012-05-22 Jpmorgan Chase Bank, N.A. System and method for testing applications
US8190893B2 (en) 2003-10-27 2012-05-29 Jp Morgan Chase Bank Portable security transaction protocol
US8301493B2 (en) 2002-11-05 2012-10-30 Jpmorgan Chase Bank, N.A. System and method for providing incentives to consumers to share information
US8335855B2 (en) 2001-09-19 2012-12-18 Jpmorgan Chase Bank, N.A. System and method for portal infrastructure tracking
US8438086B2 (en) 2000-06-12 2013-05-07 Jpmorgan Chase Bank, N.A. System and method for providing customers with seamless entry to a remote server
US8473735B1 (en) 2007-05-17 2013-06-25 Jpmorgan Chase Systems and methods for managing digital certificates
US8571975B1 (en) 1999-11-24 2013-10-29 Jpmorgan Chase Bank, N.A. System and method for sending money via E-mail over the internet
US8793490B1 (en) 2006-07-14 2014-07-29 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication
US8849716B1 (en) 2001-04-20 2014-09-30 Jpmorgan Chase Bank, N.A. System and method for preventing identity theft or misuse by restricting access
US9374366B1 (en) 2005-09-19 2016-06-21 Jpmorgan Chase Bank, N.A. System and method for anti-phishing authentication
US9419957B1 (en) 2013-03-15 2016-08-16 Jpmorgan Chase Bank, N.A. Confidence-based authentication
US9608826B2 (en) 2009-06-29 2017-03-28 Jpmorgan Chase Bank, N.A. System and method for partner key management
US10148726B1 (en) 2014-01-24 2018-12-04 Jpmorgan Chase Bank, N.A. Initiating operating system commands based on browser cookies
US10185936B2 (en) 2000-06-22 2019-01-22 Jpmorgan Chase Bank, N.A. Method and system for processing internet payments
US10275780B1 (en) 1999-11-24 2019-04-30 Jpmorgan Chase Bank, N.A. Method and apparatus for sending a rebate via electronic mail over the internet
US10726417B1 (en) 2002-03-25 2020-07-28 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727159A (en) * 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US5748188A (en) * 1995-10-12 1998-05-05 Ncr Corporation Hypertext markup language (HTML) extensions for graphical reporting over an internet
US5778356A (en) * 1994-11-10 1998-07-07 Cadis, Inc. Dynamically selectable language display system for object oriented database management system
US5812134A (en) * 1996-03-28 1998-09-22 Critical Thought, Inc. User interface navigational system & method for interactive representation of information contained within a database
US5883626A (en) * 1997-03-31 1999-03-16 International Business Machines Corporation Docking and floating menu/tool bar
US5889520A (en) * 1997-11-13 1999-03-30 International Business Machines Corporation Topological view of a multi-tier network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778356A (en) * 1994-11-10 1998-07-07 Cadis, Inc. Dynamically selectable language display system for object oriented database management system
US5748188A (en) * 1995-10-12 1998-05-05 Ncr Corporation Hypertext markup language (HTML) extensions for graphical reporting over an internet
US5812134A (en) * 1996-03-28 1998-09-22 Critical Thought, Inc. User interface navigational system & method for interactive representation of information contained within a database
US5727159A (en) * 1996-04-10 1998-03-10 Kikinis; Dan System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers
US5883626A (en) * 1997-03-31 1999-03-16 International Business Machines Corporation Docking and floating menu/tool bar
US5889520A (en) * 1997-11-13 1999-03-30 International Business Machines Corporation Topological view of a multi-tier network

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7966496B2 (en) 1999-07-02 2011-06-21 Jpmorgan Chase Bank, N.A. System and method for single sign on process for websites with multiple applications and services
US7685013B2 (en) 1999-11-04 2010-03-23 Jpmorgan Chase Bank System and method for automatic financial project management
US10275780B1 (en) 1999-11-24 2019-04-30 Jpmorgan Chase Bank, N.A. Method and apparatus for sending a rebate via electronic mail over the internet
US8571975B1 (en) 1999-11-24 2013-10-29 Jpmorgan Chase Bank, N.A. System and method for sending money via E-mail over the internet
US8458070B2 (en) 2000-06-12 2013-06-04 Jpmorgan Chase Bank, N.A. System and method for providing customers with seamless entry to a remote server
US8438086B2 (en) 2000-06-12 2013-05-07 Jpmorgan Chase Bank, N.A. System and method for providing customers with seamless entry to a remote server
US10185936B2 (en) 2000-06-22 2019-01-22 Jpmorgan Chase Bank, N.A. Method and system for processing internet payments
WO2002043365A3 (en) * 2000-11-21 2003-09-04 Juergen Kohn Method and device for displaying an image composed of pixels
WO2002043365A2 (en) * 2000-11-21 2002-05-30 Kohn Juergen Method and device for displaying an image composed of pixels
US8849716B1 (en) 2001-04-20 2014-09-30 Jpmorgan Chase Bank, N.A. System and method for preventing identity theft or misuse by restricting access
US10380374B2 (en) 2001-04-20 2019-08-13 Jpmorgan Chase Bank, N.A. System and method for preventing identity theft or misuse by restricting access
US8160960B1 (en) 2001-06-07 2012-04-17 Jpmorgan Chase Bank, N.A. System and method for rapid updating of credit information
US8185940B2 (en) 2001-07-12 2012-05-22 Jpmorgan Chase Bank, N.A. System and method for providing discriminated content to network users
US8335855B2 (en) 2001-09-19 2012-12-18 Jpmorgan Chase Bank, N.A. System and method for portal infrastructure tracking
US9646304B2 (en) 2001-09-21 2017-05-09 Jpmorgan Chase Bank, N.A. System for providing cardless payment
US7783578B2 (en) 2001-09-21 2010-08-24 Jpmorgan Chase Bank, N.A. System for providing cardless payment
US8145522B2 (en) 2001-11-01 2012-03-27 Jpmorgan Chase Bank, N.A. System and method for establishing or modifying an account with user selectable terms
US8732072B2 (en) 2001-11-01 2014-05-20 Jpmorgan Chase Bank, N.A. System and method for establishing or modifying an account with user selectable terms
US7689504B2 (en) 2001-11-01 2010-03-30 Jpmorgan Chase Bank, N.A. System and method for establishing or modifying an account with user selectable terms
US7987501B2 (en) 2001-12-04 2011-07-26 Jpmorgan Chase Bank, N.A. System and method for single session sign-on
US7941533B2 (en) 2002-02-19 2011-05-10 Jpmorgan Chase Bank, N.A. System and method for single sign-on session management without central server
US10726417B1 (en) 2002-03-25 2020-07-28 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication
US7246324B2 (en) * 2002-05-23 2007-07-17 Jpmorgan Chase Bank Method and system for data capture with hidden applets
US7756816B2 (en) 2002-10-02 2010-07-13 Jpmorgan Chase Bank, N.A. System and method for network-based project management
US8301493B2 (en) 2002-11-05 2012-10-30 Jpmorgan Chase Bank, N.A. System and method for providing incentives to consumers to share information
WO2005013165A3 (en) * 2003-07-26 2005-03-24 Surrey Technologies Ltd System and method for making a reservation and/or purchase
WO2005013165A2 (en) * 2003-07-26 2005-02-10 Surrey Technologies Limited System and method for making a reservation and/or purchase
US8190893B2 (en) 2003-10-27 2012-05-29 Jp Morgan Chase Bank Portable security transaction protocol
US8185877B1 (en) 2005-06-22 2012-05-22 Jpmorgan Chase Bank, N.A. System and method for testing applications
US10027707B2 (en) 2005-09-19 2018-07-17 Jpmorgan Chase Bank, N.A. System and method for anti-phishing authentication
US9374366B1 (en) 2005-09-19 2016-06-21 Jpmorgan Chase Bank, N.A. System and method for anti-phishing authentication
US9661021B2 (en) 2005-09-19 2017-05-23 Jpmorgan Chase Bank, N.A. System and method for anti-phishing authentication
US9679293B1 (en) 2006-07-14 2017-06-13 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication
US8793490B1 (en) 2006-07-14 2014-07-29 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication
US9240012B1 (en) 2006-07-14 2016-01-19 Jpmorgan Chase Bank, N.A. Systems and methods for multifactor authentication
US8473735B1 (en) 2007-05-17 2013-06-25 Jpmorgan Chase Systems and methods for managing digital certificates
US9608826B2 (en) 2009-06-29 2017-03-28 Jpmorgan Chase Bank, N.A. System and method for partner key management
US10762501B2 (en) 2009-06-29 2020-09-01 Jpmorgan Chase Bank, N.A. System and method for partner key management
US9419957B1 (en) 2013-03-15 2016-08-16 Jpmorgan Chase Bank, N.A. Confidence-based authentication
US10339294B2 (en) 2013-03-15 2019-07-02 Jpmorgan Chase Bank, N.A. Confidence-based authentication
US10148726B1 (en) 2014-01-24 2018-12-04 Jpmorgan Chase Bank, N.A. Initiating operating system commands based on browser cookies
US10686864B2 (en) 2014-01-24 2020-06-16 Jpmorgan Chase Bank, N.A. Initiating operating system commands based on browser cookies

Also Published As

Publication number Publication date
AU2586299A (en) 1999-08-23

Similar Documents

Publication Publication Date Title
WO1999040507A1 (en) Method of updating display frames while preserving information associated therewith
US6405192B1 (en) Navigation assistant-method and apparatus for providing user configured complementary information for data browsing in a viewer context
US5826031A (en) Method and system for prioritized downloading of embedded web objects
US6272493B1 (en) System and method for facilitating a windows based content manifestation environment within a WWW browser
US6031989A (en) Method of formatting and displaying nested documents
US7278092B2 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US6272484B1 (en) Electronic document manager
US8793341B2 (en) Web page content translator
US7360166B1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US6636856B2 (en) System and method for facilitating a windows based content manifestation environment within a WWW browser
US7216290B2 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US6356908B1 (en) Automatic web page thumbnail generation
US5572643A (en) Web browser with dynamic display of information objects during linking
EP1220113A2 (en) Dynamically displaying markup language form elements
US7523158B1 (en) System and method for partial page updates using a proxy element
US20050131992A1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US20050097458A1 (en) Document display system and method
JP2000090001A (en) Method and system for conversion of electronic data using conversion setting
KR19990044850A (en) Method and system for international support of Internet web pages
EP1690199A1 (en) System and method of retrieving and presenting partial (skipped) document content
JP2002196967A (en) Method for redirecting source of data object displayed on html document
CN110647699A (en) Web page rendering method and device, computer equipment and storage medium
US7437660B1 (en) Editable dynamically rendered web pages
Mahdavi et al. Web transcoding for mobile devices using a tag-based technique
US20020113819A1 (en) Method for controlling a screen display

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): 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 IN 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

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase