|
|
|
| United States Patent | 6169992 |
| Link to this page | http://www.wikipatents.com/6169992.html |
| Inventor(s) | Beall; Christopher W. (Boulder, CO), Motycka; John D. (Evergreen, CO), Pendleton; Samuel S. (Louisville, CO), Terpening; Brooke E. (Golden, CO), Appelbaum; Matthew A. (Boulder, CO), Neal; Michael R. (Superior, CO) |
| Abstract | A system is disclosed for remotely accessing database management systems
(5130) and performing guided iterative queries of knowledge bases (110)
over a communication circuit such as the Internet (5124). The system
includes a Web browser (5120) having a Java.TM. runtime environment
(4015), and executable content client (5121) that may be downloaded from a
remote location (103). A Krakatoa proxy server (5128), socket (5021), and
tunnel (5129) establish a mechanism for remote procedure calls through
firewalls (5126) via an HTTP server (5127). Guardrail counts (750) are
preferably displayed to the remote searcher to facilitate guided iterative
queries of the remote knowledge base (110). A configurable graphical
action region (700) is preferably provided to the remote searcher via a
graphical user interface to provide powerful navigation and linking of
diverse useful information which varies based upon contexts selected by
the remote searcher. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 6169992 |
|
|
Search engine for remote access to database management systems |
|
| Inventor |
Beall; Christopher W. (Boulder, CO) , Motycka; John D. (Evergreen, CO) , Pendleton; Samuel S. (Louisville, CO) , Terpening; Brooke E. (Golden, CO) , Appelbaum; Matthew A. (Boulder, CO) , Neal; Michael R. (Superior, CO) |
|
|
|
| Publication Date |
January 2, 2001 |
|
|
|
|
|
| Filing Date |
November 8, 1996 |
|
|
|
|
|
|
|
|
|
|
|
| Parent Case |
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of the filing date of provisional
patent application Ser. No. 60/006,317, filed Nov. 7, 1995, by Christopher
W. Beall, et al., for SEARCH ENGINE FOR REMOTE OBJECT ORIENTED DATABASE
MANAGEMENT SYSTEM, the entire disclosure of which is incorporated herein
by reference. This application incorporates by reference the entire
disclosure of application Ser. No. 08/339,481, filed Nov. 10, 1994, by
Thomas S. Kavanagh, et al., for OBJECT ORIENTED DATABASE MANAGEMENT
SYSTEM, now U.S. Pat. No. 5,838,965. This application also incorporates by
reference the entire disclosure of application Ser. No. 08/527,161, filed
Sep. 12, 1995, by Thomas S. Kavanagh, et al., for METHOD AND APPARATUS FOR
CONCURRENCY IN AN OBJECT ORIENTED DATABASE, now U.S. Pat. No. 5,742,813.
In addition, this application incorporates by reference the entire
disclosure of application Ser. No. 08/526,555, filed Sep. 12, 1995, by
Thomas S. Kavanagh, et al., for IMPROVEMENTS IN AN OBJECT ORIENTED
DATABASE MANAGEMENT SYSTEM, now U.S. Pat. No. 5,835,910. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 5835910 Kavanagh 707/103R Nov,1998 |      Your vote accepted [0 after 0 votes] | | 5838965 Kavanagh et al.
Nov,1998 |      Your vote accepted [0 after 0 votes] | | 5761499 Sonderegger 707/10 Jun,1998 |      Your vote accepted [0 after 0 votes] | | 5754830 Butts
May,1998 |      Your vote accepted [0 after 0 votes] | | 5742768 Gennaro 709/203 Apr,1998 |      Your vote accepted [0 after 0 votes] | | 5736984 Jellinek 715/710 Apr,1998 |      Your vote accepted [0 after 0 votes] | | 5734119 France 84/622 Mar,1998 |      Your vote accepted [0 after 0 votes] | | 5727950 Cook, deceased 434/350 Mar,1998 |      Your vote accepted [0 after 0 votes] | | 5696965 Dedrick
Dec,1997 |      Your vote accepted [0 after 0 votes] | | 5560005 Hoover
Sep,1996 |      Your vote accepted [0 after 0 votes] | | 5530852 Meske, Jr. 709/206 Jun,1996 |      Your vote accepted [0 after 0 votes] | | 5446880 Balgeman 707/9 Aug,1995 |      Your vote accepted [0 after 0 votes] | | 5446883 Kirkbride 707/10 Aug,1995 |      Your vote accepted [0 after 0 votes] | | 5416917 Adair 707/203 May,1995 |      Your vote accepted [0 after 0 votes] | | 5404506 Fujisawa 707/4 Apr,1995 |      Your vote accepted [0 after 0 votes] | | 5398336 Tantry 707/103R Mar,1995 |      Your vote accepted [0 after 0 votes] | | 5283865 Johnson 715/854 Feb,1994 |      Your vote accepted [0 after 0 votes] | | 5260866 Lisinski 705/29 Nov,1993 |      Your vote accepted [0 after 0 votes] | | 5257365 Powers 707/100 Oct,1993 |      Your vote accepted [0 after 0 votes] | | 5218699 Brandle
Jun,1993 |      Your vote accepted [0 after 0 votes] | | 5210868 Shimada 707/5 May,1993 |      Your vote accepted [0 after 0 votes] | | 5191534 Orr 700/105 Mar,1993 |      Your vote accepted [0 after 0 votes] | | 5146404 Calloway 705/1 Sep,1992 |      Your vote accepted [0 after 0 votes] | | 5133075 Risch 707/201 Jul,1992 |      Your vote accepted [0 after 0 votes] | | 5109337 Ferriter 705/29 Apr,1992 |      Your vote accepted [0 after 0 votes] | | 5021992 Kondo 706/50 Jun,1991 |      Your vote accepted [0 after 0 votes] | | 4984155 Geier 705/26 Jan,1991 |      Your vote accepted [0 after 0 votes] | | 4930071 Tou 707/4 May,1990 |      Your vote accepted [0 after 0 votes] | | 4918602 Bone 705/1 Apr,1990 |      Your vote accepted [0 after 0 votes] | | 4887206 Natarajan 705/29 Dec,1989 |      Your vote accepted [0 after 0 votes] | | 4879648 Cochran 715/841 Nov,1989 |      Your vote accepted [0 after 0 votes] | | 4318184 Millett 707/1 Mar,1982 |      Your vote accepted [0 after 0 votes] | | 5206949 Cochran 707/4 Dec,1969 |      Your vote accepted [0 after 0 votes] | | 3343133 Dirks
Sep,1967 |      Your vote accepted [0 after 0 votes] | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
What is claimed is:
1. An apparatus for guided interactive queries of an object oriented knowledge base, comprising:
a hypertext markup language browser capable of managing executable content, said browser being adapted to provide a virtual machine runtime environment for an executable content client application, said browser being coupled to a communications
circuit capable of transmitting packets of digital information according to a network protocol;
an executable content client application capable of running in the virtual machine runtime environment of the browser, said executable content client application having a remote procedure call mechanism written as executable content which is
capable of running in the virtual machine runtime environment of the browser, said remote procedure call mechanism being capable of translating remote procedure calls into digital information that can be transmitted over said communications circuit by
said browser;
a data base management system server, said server being located at a remote location; and
an interface mechanism, said interface mechanism being coupled to said communications circuit at the remote location, said interface mechanism being coupled to said data base management system server, said interface mechanism being capable of
translating digital information received from said browser via said communications circuit into remote procedure calls to said data base management system server.
2. The apparatus according to claim 1, wherein:
said communications circuit is a wide area network.
3. The apparatus according to claim 1, wherein:
said executable content client application is downloadable over said communications circuit so that said executable content client application may be transferred over said communications circuit to a browser capable of managing executable
content.
4. The apparatus according to claim 1, wherein:
said communications circuit is the Internet.
5. The apparatus according to claim 4, wherein:
said data base management system server comprises an object oriented knowledge base server.
6. The apparatus according to claim 5, further comprising:
an object oriented knowledge base associated with and accessible by said object oriented knowledge base server.
7. The apparatus according to claim 6, wherein:
when a user interacts with said browser and chooses to search a data base, said executable content client application is downloaded over said communications circuit so that said executable content client application runs in the virtual machine
runtime environment of the browser, said executable content client application including a client database retrieval applet, said executable content client application including a graphical user interface to said client database retriever applet, whereby
said user can interact through said graphical user interface to navigate a class hierarchy of said object oriented knowledge base associated with said object oriented knowledge base server.
8. The apparatus of claim 1 wherein said remote procedure call mechanism translates procedure calls into a format that is conforms to a document transfer protocol.
9. The apparatus of claim 8 wherein said protocol is the hypertext transfer protocol.
10. The apparatus of claim 8 wherein said mechanism encodes procedure calls into text characters.
11. A method for performing queries of a knowledge base from a remote site, comprising the steps of:
executing a client application within a browser that is running on a computer located at said remote site;
generating a remote procedure call within said client application;
encoding said remote procedure call into a request having a format which conforms with a document transfer protocol;
transmitting the encoded request to the site of a database management system via a communications network, in accordance with said protocol;
decoding the request, to reconstruct the procedure call;
executing a query within the database management system in accordance with said procedure call, to retrieve a result;
encoding said result in a format which conforms to said protocol;
transmitting the encoded result to the remote site via said communications network, in accordance with said protocol; and
retrieving the encoded result within said client application and displaying the result.
12. The method of claim 11 wherein said protocol is the hypertext transfer protocol.
13. The method of claim 11 wherein said procedure calls are encoded into text characters.
14. The method of claim 11 further including the initial step of transferring the client application from the site of the database management system to the browser running at said remote site via said communications network.
15. The method of claim 11 wherein said database management system is an object-oriented database management system. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
BACKGROUND OF THE INVENTION
On the past, there has been a long felt need for world-wide access to information in a speedy, cost effective and convenient manner. The present invention addresses this need. While the invention will be described herein in connection with an
object oriented database management system, certain features and aspects of the invention have broader application.
In an object oriented database management system, it is often advantageous to provide access to knowledge base over a communications circuit that has a finite bandwidth. The communications circuit, for example, may be a local area network
("LAN"), a wide area network ("WAN"), or the internet. Suitable communications circuits can permit access to a knowledge base for remote locations that may be separated by great distances. However, speed is an important consideration that must be
adequately addressed in any practical system in order for it to be successful. Although improvements in network protocols and speed have been the focus of much attention, nevertheless networks have limitations on the amount of traffic and the throughput
that can be accommodated. Performance may be adversely impacted by delays inherent in moving large amounts of data over such a communications circuit. The performance problems with, for example, the Internet persist even as network transmission speeds
and capacity are increased. The Internet may be compared to a multi-lane highway. Increases in speeds may be analogized to raising the speed limit on a highway. Increases in capacity may be analogized to widening the highway to provide more lanes.
Yet, the highway may still slow to a crawl during rush hour. The problem is that as quickly as additional lanes can be built, the number of cars using the highway increases just as fast or faster. Similarly, the number of users of the Internet has
grown almost exponentially, resulting in an increase in the amount of data that must be transported by the network during a given period of time. Therefore, performance and speed remain important issues that must be addressed regardless of incremental
improvements in the speed or capacity of the Internet or other networks.
Remote access to a database such as an object oriented knowledge base may be achieved over a communications circuit. It is desirable to provide a system for remote access that provides great flexibility and speed. A suitable search engine and
interface are needed for remote access. For example, a need exists for a system that allows an object oriented database system to be accessed in a manner which permits guided iterative queries at speeds and performance levels that are consistent with
cost effective, time efficient and productive use of such data, for example, by engineering and design personnel, and other customers in general. Un particular, a search engine is needed to permit guided iterative queries of an object oriented database
system over the Internet, in a seamless environment that permits navigation of the World Wide Web (sometimes referred to simply as "the Web") via hypertext links in HTML documents in conjunction with queries of the object oriented database system.
There are many examples where a search engine such as that provided by the present invention is needed. One example may be a new product design project where the major components need to be specified in a time efficient manner, and it is
necessary or desirable to research what components are available.
For example, an electronic product may need a series of integrated circuits (IC's) that will boost performance beyond the current design--and beyond the professed operation of a new product that a competitor has just announced. Even if, for
example, a supplier such as National Semiconductor has just come out with a new IC that would work, the information concerning such a brand new component available from a supplier would not be found in any of the data books available at the offices of
the engineers and designers of the product. Alternatively, at the temperature tolerances a new product needs, the designers and engineers may not be able to find a databook for available components that states exactly how given components of interest
will perform. In the past, it was typically necessary to order preliminary data sheets, (which typically are incomplete in nature and sometimes inaccurate), order some samples of components that appeared to be suitable, design them in, prototype the
product, test it, and hope that the silicon produced still met what the original specification sheets said. This may consume valuable time, and delay the introduction of a new product.
In the past, this scenario may have been repeated in many companies because of a lack of timely, accurate and complete information on available components and parts that are commercially available for use in a particular design of a new product.
In addition, there has been a long felt need for engineers and designers to have access to this information without having to know any part numbering sequence, data sheet naming scheme or description text. They needed to have access to information about
products based on how they think about them--i.e., accessing the information according to the attributes of the component or product that is needed. For IC's, it may be power levels, tolerances, and package types; for office supplies it may be product
type, size and cost, an so forth.
It is desirable for engineers and designers to get access to this information almost instantly. In the past, searching through catalogs has been cumbersome and time-consuming. Maintaining an up-to-date library of catalogs at the office of the
engineer or designer has been relatively costly and time-consuming. Obtaining up-to-date information by calling a sales representative of a supplier has not been entirely satisfactory, and further consumes time. There has been a need to minimize the
time required to search for and find each component that is needed for a product design, so that the engineers and designers can get on with the useful work that they need to do to produce a new product.
Engineers and designers need to be able to successively narrow their search for a needed component, and to be able to quickly look for substitutes if they do not find what they originally requested. And they need to have access to any
information unique to them as a customer, such as special pricing, delivery times, or even preannounced components or parts available only to strategic customers. Moreover, engineers and designers have needed access to such component and design
information to be provided at little or no cost, for example, as an extension of their relationship with the vendors of the components.
The above described examples are sufficient to demonstrate that prior art methods have not been entirely satisfactory. However, the present invention has broad application beyond the limited examples discussed above.
SUMMARY OF THE INVENTION
The present invention involves the use of executable content (for example, Java.TM. applets) downloadable over a network or a wide area network (such as the Internet or the World Wide Web) to local processing equipment in order to enable
interactive search of a remotely located information repository such as an object oriented database which must be accessed over a communications channel having limitations on bandwidth and throughput.
The present invention may be advantageously used in a database management system to facilitate efficient and speedy remote access to, for example, an object oriented database or schema over a communications circuit having a limited bandwidth or
throughput capability. The present invention reduces or eliminates time consuming transmission of unnecessary digital information over the communications circuit and allows access to information in a database in conjunction with executable applets while
providing the ability to navigate and access resources available over the communications circuit.
The present invention provides engineers and designers with the possibility that they can get direct access to their key supplier's data on-line, via the Internet. Not only is this information typically accessible at any time day or night, but
it is data far richer than what is typically published in a static databook, catalog or product brochure. And such information can be absolutely current and up-to-date.
A preferred embodiment has been implemented in a product offered under the trademark "Krakatoa.TM.", available from CADIS, Inc. of Boulder, Colo., which utilizes a language and runtime system distributed by Sun Microsystems under the name
"Java.TM.."
For example, a Java.TM. implementation of a | | |