Frame-based knowledge representation system and methods
First Claim
1. A computer-readable medium encoded with a relational database for storing a frame-based knowledge system having classes, relations, and instances of said classes, said relational database comprising:
- a frames table having columns for storing;
a) frames comprising class frames representing said classes and instance frames representing said instances;
b) at least one slot associated with each of said frames, said slots representing said relations and comprising class slots, wherein said relations include an instance-of relation; and
c) a value associated with each of said slots, said values comprising class values.
1 Assignment
0 Petitions
Accused Products
Abstract
A frame-based knowledge representation system is built on a relational database that is completely transparent to the user. A user at a client machine sends standard knowledge base queries across a distributed computer system and the system translates the queries into a language suitable for querying the database, such as Structured Query Language (SQL). The system stores a hierarchical data model that includes classes, particular instances of the classes, and relations among the classes and instances. Primitive objects, such as classes and instances, are organized with their associated attributes into frames. The system consists of three main tables and auxiliary tables. The frames table stores frames with associated slots and values, along with associated ownerships, access permissions, and other facets. The superclass-set table stores the frames and associated superclasses or ancestor classes. The third table, the classes table, stores class frames, slots, and values, and a slot type designating a slot as own or template. The database also includes tables for security definitions, logging, and other features. To query the knowledge base, the user submits a query, preferably according to the Open Knowledge Base Connectivity protocol, and the system translates the query into SQL. The result is formatted and processed to check user permissions before being returned to the user over the computer network. The system is accessed through a variety of interfaces, including a Web browser and various application programming interfaces.
113 Citations
25 Claims
-
1. A computer-readable medium encoded with a relational database for storing a frame-based knowledge system having classes, relations, and instances of said classes, said relational database comprising:
-
a frames table having columns for storing;
a) frames comprising class frames representing said classes and instance frames representing said instances;
b) at least one slot associated with each of said frames, said slots representing said relations and comprising class slots, wherein said relations include an instance-of relation; and
c) a value associated with each of said slots, said values comprising class values. - View Dependent Claims (2, 3, 4, 5, 6)
a) said class frames;
b) said class slots, wherein said class slots are associated with said class frames and comprise own slots and template slots;
c) said class values, wherein said class values are associated with said class slots; and
d) a slot type associated with each of said class slots, wherein said slot type comprises own and template, and wherein a corresponding instance frame in said frames table is associated with each template slot associated with a particular class frame, wherein said corresponding instance frame represents a particular instance of a particular class represented by said particular class frame.
-
-
3. The computer-readable medium of claim 1 wherein said frames table further comprises a column for storing an access permission associated with each of said slots.
-
4. The computer-readable medium of claim 1 wherein said frames table further comprises a column for storing an ownership associated with each of said slots.
-
5. The computer-readable medium of claim 1 wherein said frames table further comprises a column for storing at least one facet associated with each of said slots.
-
6. The computer-readable medium of claim 1 wherein said relational database further comprises a class hierarchy table having columns for storing said class frames and at least one superclass associated with each of said class frames.
-
7. In a server in a distributed computer system, a method for querying a frame-based knowledge representation system comprising a set of relational database tables having columns for storing frames and associated attributes said method comprising the steps of:
-
a) receiving a query for a subset of said frames from a client computer, wherein said query is in a first format;
b) translating said query into a second format for querying said tables, wherein said second format comprises a predetermined attribute, wherein said predetermined attribute is related to said query in said first format, and wherein said associated attributes comprise said predetermined attribute;
c) applying said query in said second format to said set of tables to select said subset, wherein each frame in said subset is associated with said predetermined attribute; and
d) transmitting output comprising said subset to said client computer. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15, 16)
a) said frames, wherein said frames comprise class frames and instance frames;
b) at least one slot associated with each of said frames, said slots comprising class slots associated with said class frames and c) a value associated with each of said slots, said values comprising class values associated with said class slots, wherein said associated attributes comprise said slots and said values, and wherein said predetermined attribute comprises a predetermined slot and a predetermined value.
-
-
9. The method of claim 8 wherein said set of relational database tables further comprises a classes table having columns for storing said class frames, said class slots, said class values, and a slot type associated with each of said class slots.
-
10. The method of claim 8 wherein said set of relational database tables further comprises a class hierarchy table having columns for storing said class frames and at least one superclass associated with each of said class frames.
-
11. The method of claim 7 further comprising the step of processing said subset to generate formatted output, and wherein said transmitted output comprises said formatted output.
-
12. The method of claim 11 wherein said relational database tables further comprise columns for storing an access permission associated with each of said frames, and wherein said processing step comprises comparing an access permission of each frame in said subset with a client identifier to determine whether said client computer may access said subset.
-
13. The method of claim 7 wherein said first format is a knowledge base format, and said second format is a relational database format.
-
14. The method of claim 13 wherein said first format is Open Knowledge Base Connectivity.
-
15. The method of claim 13 wherein said second format is Structured Query Language.
-
16. The method of claim 7 wherein said frame-based knowledge representation system is stored on a database computer in said distributed computer system, wherein said database computer is distinct from said server.
-
17. In a server in a distributed computer system, a method for adding data to a frame-based knowledge representation system comprising a set of relational database tables having columns for storing frames and associated attributes, said method comprising the steps of:
-
a) receiving a query to create a new frame from a client computer, wherein said query is in a first format;
b) translating said query into a second format for querying said tables, wherein said second format comprises parameters related to said query in said first format, wherein said associated attributes comprise said parameters; and
c) applying said query in said second format to said set of tables to create a new record in said set of tables, wherein said new record represents said new frame and comprises said parameters. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
a) said frames, wherein said frames comprise class frames representing classes and instance frames representing instances;
b) at least one slot associated with each of said frames, said slots comprising class slots associated with said class frames; and
c) a value associated with each of said slots, said values comprising class values associated with said class slots;
wherein said associated attributes comprise said slots and said values, and said parameters comprise a predetermined slot and a predetermined value.
-
-
19. The method of claim 18 wherein said set of relational database tables further comprises a classes table for storing said class frames;
- said class slots, wherein said class slots comprise own slots and template slots;
said class values; and
a slot type associated with each of said class slots.
- said class slots, wherein said class slots comprise own slots and template slots;
-
20. The method of claim 18 wherein said set of relational database tables further comprises a class hierarchy table for storing said class frames and at least one superclass associated with each of said class frames.
-
21. The method of claim 17 wherein said new record further comprises a client identifier associated with said client computer.
-
22. The method of claim 17 wherein said first format is a knowledge base format, and said second format is a relational database format.
-
23. The method of claim 22 wherein said first format is Open Knowledge Base Connectivity.
-
24. The method of claim 22 wherein said second format is Structured Query Language.
-
25. The method of claim 17 wherein said frame-based knowledge representation system is stored on a database computer in said distributed computer system, wherein said database computer is distinct from said server.
Specification