← Back to Patent Explorer
US5749079A Expired / Lapsed US ⏱️ 0.0 years remaining

End user query facility including a query connectivity driver

Assignee: Singapore Computer Systems Ltd
•
Filing: 1995-01-26
•
Granted: 1998-05-05
•
Expires: 2015-01-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An end user query technology is taught which is capable of automatically understanding the database model and guiding the user to scout for the desired information, thereby increasing productivity and ease of information access. The user is freed from the need to understanding the database model, with the end user query facility of this invention quickly guiding the user to acquire the information. This is made possible by the end user query facility of this invention first recapturing the application semantics from the existing database model to provide a set of derived semantics. The derived semantics are then used by the end user query facility to intelligently guide the user to scout for the desired information in the database. In addition, the derived semantics can be easily updated by the end user query facility when the database model is changed.

Inventors

  • 👤 Dennis Yong
  • 👤 Viktor Choong-Hung Cheng
  • 👤 Christopher Leng-Hong Yo
  • 👤 Liat Lim

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 13:26
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/24; G06F16/242; G06F16/2423; G06F16/28; G06F16/289; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99933

Claims Analysis

Total Claims: 89
Claim 1
Independent Claim 209 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of linkages of the database model, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a semantics extractor for reading said database model and extracting the semantics of said database model, and which stores in said knowledge base said set of linkages; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 2
Dependent Claim 209 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of linkages of the database model, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a semantics extractor for reading said database model and extracting the semantics of said database model, and which stores in said knowledge base said set of linkages; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 3
Dependent Claim 58 words
An end-user query facility as in claim 1 wherein said inference engine comprises: means for inferring new acquired knowledge threads and storing said new acquired knowledge threads in said knowledge base; means for determining an access path to said database using either said basic knowledge threads or said acquired knowledge threads as required to meet the user query.
Claim 4
Dependent Claim 66 words
An end-user query facility as in claim 2 wherein said acquired knowledge thread is derived through a combination in parallel of two or more of said basic knowledge threads such that one of the said basic knowledge threads has one or more of its consecutive files in common with the corresponding number of consecutive files starting from the thread head of another said basic knowledge threads.
Claim 5
Dependent Claim 22 words
An end-user query facility as in claim 3 wherein said thread head is a first file on a said basic knowledge thread.
Claim 6
Dependent Claim 43 words
An end-user query facility as in claim 1 wherein said semantics extractor further comprises means for reading source code of application programs that access said database, extracting the semantics of said application programs and storing in said knowledge base said set of linkages.
Claim 7
Dependent Claim 246 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; an application, which supports end-user query, to obtain from an user choices based on said classes as a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 8
Dependent Claim 246 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; an application, which supports end-user query, to obtain from an user choices based on said classes as a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 9
Dependent Claim 282 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a knowledge thread analyzer receiving as its input said linkage(s) determined by said inference engine, and which breaks down said linkage(s) into simple linkage(s); and a program generator which accesses said simple linkages obtained by said knowledge analyzer and generates programs, one for each said simple linkage, to extract said desired information from said database as a plurality of simple query results, one for each generated program.
Claim 10
Dependent Claim 282 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database; a query facility connectivity driver for connecting said application to said query facility, and for connecting said query facility to said database through a database connectivity driver; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a knowledge thread analyzer receiving as its input said linkage(s) determined by said inference engine, and which breaks down said linkage(s) into simple linkage(s); and a program generator which accesses said simple linkages obtained by said knowledge analyzer and generates programs, one for each said simple linkage, to extract said desired information from said database as a plurality of simple query results, one for each generated program.
Claim 11
Dependent Claim 38 words
An end-user query facility as in claim 7 wherein a said simple query result is one that does not contain repeated numeric values in any of the column(s) that corresponds to a non-key numeric item of said database.
Claim 12
Dependent Claim 40 words
An end-user query facility as in claim 7 wherein a said simple query result is one that does not contain two or more columns belonging to items whose database files are multi-valued dependencies of another database file in said database.
Claim 13
Dependent Claim 292 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of linkages of the database model, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a semantics extractor for reading said database model and extracting the semantics of said database model, and which stores in said knowledge base said set of linkages; a keyword library which stores a set of keywords of said database model; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 14
Dependent Claim 292 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of linkages of the database model, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a semantics extractor for reading said database model and extracting the semantics of said database model, and which stores in said knowledge base said set of linkages; a keyword library which stores a set of keywords of said database model; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted from said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 15
Dependent Claim 35 words
An end-user query facility as in claims 1, 6 or 7 wherein both said application and said query facility connectivity driver have the same data access interface that conforms to a data access interface standard.
Claim 16
Dependent Claim 38 words
An end user query facility as in claims 1, 6 or 7 wherein both said query facility connectivity driver and said database connectivity driver have the same data access interface that conforms to a data access interface standard.
Claim 17
Dependent Claim 25 words
An end user query facility as in claims 11 or 12 wherein said data access interface standard is Microsoft Corporation's Open Database Connectivity (ODBC) standard.
Claim 18
Dependent Claim 25 words
An end user query facility as in claim 11 or 12 wherein said data access interface standard is Apple Computer's Data Access Language (DAL) standard.
Claim 19
Dependent Claim 40 words
An end user query facility as in claims 1 or 10 wherein said semantics extractor comprises means for deriving basic knowledge threads comprising a set of linkages of said database model and storing said knowledge threads in said knowledge base.
Claim 20
Dependent Claim 69 words
An end-user query facility as in claim 15 wherein each said basic knowledge thread comprises a set of two or more of said database files serially linked together such that one file is serially linked to the next file through an item that has the same domain as the item in the next file and that this same item is a unique or repeating key of the next file.
Claim 21
Dependent Claim 49 words
An end-user query facility as in claim 15 wherein each said basic knowledge thread comprises a set of two or more of said database files serially linked together such that one file has a repeating or foreign key that references the unique or primary key of the next file.
Claim 22
Dependent Claim 334 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; a keyword library which stores a set of keywords of said set of classes including the names of said classes and their attributes; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted form said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 23
Dependent Claim 334 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; a keyword library which stores a set of keywords of said set of classes including the names of said classes and their attributes; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted form said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; and a program generator which accesses the linkages obtained by said inference engine and generates a program to extract said desired information from said database.
Claim 24
Dependent Claim 376 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; a keyword library which stores a set of keywords of said set of classes including the names of said classes and their attributes; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted form said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; a knowledge thread analyzer receiving as its input said linkage(s) determined by said inference engine, and which breaks down said linkage(s) into simple linkage(s); and a program generator which accesses said simple linkages obtained by said knowledge analyzer and generates programs, one for each said simple linkage, to extract said desired information from said database as a plurality of simple query results, one for each generated program.
Claim 25
Dependent Claim 376 words
An end user query facility for accessing a database having a plurality of database files formed using a database model, comprising: a knowledge base which stores a set of classes and a set of linkages of the database model, each said class represents a hierarchical grouping of a subset of said database files, each said linkage representing a relation between two of said database files in which a first file has a key that references an equivalent key of a second file; a class generator for reading said database model and generating said set of classes and said set of linkages of the database model and which stores in said knowledge base said set of classes and said set of linkages; a keyword library which stores a set of keywords of said set of classes including the names of said classes and their attributes; an application, which supports end-user query, to obtain from a user a designation of the information to be extracted from said database using said keyword library; a first connectivity driver for connecting said application to said keyword library; an inference engine which, based upon said designation of information to be extracted form said database, identifies one or more of said database files which contain the desired information and searches said knowledge base to determine the linkage(s) connecting said one or more identified files; a first e-mail agent for said first connectivity driver to interface with an e-mail system, said first e-mail agent being used to post said designation of information to be extracted from said database to the mailbox of said inference engine; a second e-mail agent for the said inference engine to interface with said e-mail system, the said second e-mail agent being used to access said mailbox of said inference engine to obtain said designation of information to be extracted from said database; a knowledge thread analyzer receiving as its input said linkage(s) determined by said inference engine, and which breaks down said linkage(s) into simple linkage(s); and a program generator which accesses said simple linkages obtained by said knowledge analyzer and generates programs, one for each said simple linkage, to extract said desired information from said database as a plurality of simple query results, one for each generated program.
Claim 26
Dependent Claim 119 words
An end user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said application comprises: means for obtaining from a user a user supplied key word indicative of the data desired to be extracted from said database; means for obtaining from a user a user supplied key word indicative of the data desired to be extracted from said database; means for determining all keywords in said database model having a predefined relationship with said user supplied keyword; and means for causing a user to select one or more of said keywords having a predefined relationship, said one or more keywords thus selected serving as said designation of the information to be extracted from said database.
Claim 27
Dependent Claim 38 words
An end user query facility as in claims 6, 7, 18 or 19 wherein each said class comprises a data model of a subset of database files of said database model, the said data model comprising a tree.
Claim 28
Dependent Claim 47 words
An end user query facility as in claim 21 wherein said tree of said class has a root comprising a database file of kernel entity type and a plurality of branches each comprising a linkage of one or more database files from said subset of database files.
Claim 29
Dependent Claim 63 words
An end-user query facility as in claim 22 wherein said class generator comprises: a semantics extractor to derive a set of binary relationships and to derive the entity type of each database file of said database model; a means to derive said set of classes using said set of binary relationships and said entity type of each database file of said database model.
Claim 30
Dependent Claim 44 words
An end-user query facility as in claim 23 wherein said entity type is selected from a set of entity types which comprise a kernel entity type, a subtype entity type, a characteristic entity type, an associative entity type or a pure lookup entity type.
Claim 31
Dependent Claim 43 words
An end-user query facility as in claim 23 wherein said binary relationship comprises a linkage between two files in said database model in which one file has a repeating or foreign key that references the unique or primary key of the other file.
Claim 32
Dependent Claim 35 words
An end user query facility as in claim 25 wherein said set of binary relationships comprises "has -- children", "has -- wards", "inverse -- of -- pure -- lookup" or "has -- subtype" binary relationships.
Claim 33
Dependent Claim 44 words
An end user query facility as in claim 26 wherein said set of binary relationships further comprises "inverse -- of -- has -- children", "inverse -- of -- has -- wards", "pure -- lookup" or "inverse -- of -- has -- subtype" binary relationships.
Claim 34
Dependent Claim 58 words
An end user query facility as in claim 27 wherein said "inverse -- of -- has -- children" binary relationship is one in which the target file is not a pure -- lookup entity type and has a one-to-many relationship with the source file, and the source file does not have its own independent unique or primary key.
Claim 35
Dependent Claim 54 words
An end user query facility as in claim 27 herein said "inverse -- of -- has -- wards" binary relationship is one which the target file is not a pure lookup entity type and has a one-to-many relationship with the source file, and the source file has its own independent unique or primary key.
Claim 36
Dependent Claim 47 words
An end user query facility as in claim 27 wherein said "inverse -- of -- has -- subtype" binary relationship is one in which its target file has a one-to-one relationship with its source file and the source file is a subtype entity of the target file.
Claim 37
Dependent Claim 27 words
An end-user query facility as in claim 27 wherein said "pure -- lookup" binary relationship is a binary relationship whose target file is a pure lookup entity.
Claim 38
Dependent Claim 53 words
An end user query facility as in claim 26 wherein said "has -- children" binary relationship is one in which the source file is not a pure lookup entity type and has a one-to-many relationship with the target file, and the target file does not have its own independent unique or primary key.
Claim 39
Dependent Claim 52 words
An end user query facility as in claim 26 wherein said "has -- wards" binary relationship is one in which its source file is not a pure lookup entity type and has a one-to-many relationship with its target file, and its target file has its own independent unique key or primary key.
Claim 40
Dependent Claim 42 words
An end user query facility as in claim 26 wherein said "has -- subtype" binary relationship is one which its source file has a one-to-one relationship with its target file and the target file is a subtype entity of the source file.
Claim 41
Dependent Claim 32 words
An end-user query facility as in claim 26 wherein said "inverse -- of -- pure -- lookup" binary relationship is a binary relationship whose source file is a pure -- lookup entity.
Claim 42
Dependent Claim 39 words
An end-user query facility as in claim 23 wherein said semantics extractor further comprises means for deriving basic knowledge threads comprising a set of linkages of said database model and storing said basic knowledge threads in said knowledge base.
Claim 43
Dependent Claim 69 words
An end-user query facility extractor as in claim 36 wherein each said basic knowledge thread comprises a set of two or more of said database files serially linked together such that one file is linked to the next file through an item that has the same domain as the item in the next file and that this same item is a unique or repeating key of the next file.
Claim 44
Dependent Claim 50 words
An end-user query facility extractor as in claims 37 wherein each said basic knowledge thread comprises a set of two or more of said database files serially linked together such that one file has a repeating or foreign key that references the unique or primary key of the next file.
Claim 45
Dependent Claim 41 words
An end-user query facility ads in claim 22 wherein said class further comprise a set of relationship names each of which specifies the nature of the relationship between two adjacent database files in each branch of said tree of said class.
Claim 46
Dependent Claim 70 words
An end-user query facility as in claim 39 wherein said class generator comprises: a semantics extractor to derive a set of binary relationships and to identify the entity type of each database file of said database model; a means to derive said set of classes and their said set of relationship names using said set of binary relationships and said entity type of each database file of said database model.
Claim 47
Dependent Claim 30 words
An end-user query facility as in claim 40 wherein said class generator further comprises a means for a user to modify said relationship names in the said set of classes.
Claim 48
Dependent Claim 55 words
An end-user query facility as in claim 6, 7, 18 or 19 wherein said application comprises an interface that displays all or selected said classes and that allows a user to formulate a query by picking the desired class attributes from said class as a designation of the information to be extracted from said database.
Claim 49
Dependent Claim 47 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 which further comprises a model purifier for a user to alter said database model by defining new keys for database files or by altering existing keys of database files of said database model.
Claim 50
Dependent Claim 16 words
An end-user query facility as in claim 43 wherein said keys comprise unique or repeating keys.
Claim 51
Dependent Claim 16 words
An end-user query facility as in claim 43 wherein said keys comprise primary or foreign keys.
Claim 52
Dependent Claim 46 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 which further comprises a model purifier for a user to alter said database model by defining new item(s), new key(s) or new file(s) using items of database files of said database model.
Claim 53
Dependent Claim 56 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 which further comprises a program analyzer for analyzing and deriving new item(s), new key(s) or new file(s) from source code of applications that access said database model, and for altering said database model using said new item(s), new key(s) or new file(s).
Claim 54
Dependent Claim 46 words
An end-user query facility as in claims 46 or 47 wherein said program generator comprises means to generate source program that produce data from said new items of said new files and wherein said end-user query facility further comprises a compiler for compiling said source program.
Claim 55
Dependent Claim 36 words
An end-user query facility as in claim 43, 46 or 47 wherein said class generator further comprises a means to read said altered database model to regenerate said set of classes and said set of linkages.
Claim 56
Dependent Claim 43 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 which further comprises a security model specifier to allow a user to input a security model which specifies restrictions on the information a user can obtain from said database.
Claim 57
Dependent Claim 63 words
An end-user query facility as in claim 50 wherein said security model comprises: item securing which specifies a set of database files and items selected from said database which a user or class of users can access; and value security which specifies a set of conditions to restrict said user or class of users to a certain range(s) of values of said database.
Claim 58
Dependent Claim 23 words
An end user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said program comprises a source code program.
Claim 59
Dependent Claim 20 words
An end user query facility as in claim 52 which further comprises a compiler for compiling said source code program.
Claim 60
Dependent Claim 96 words
An end user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said application comprises: means for obtaining from a user a user supplied keyword indicative of the data desired to be extracted from said database; means for determining all keywords in said database model having a predefined relationship with said user supplied keyword; and means for causing a user to select one or more of said keywords having a predefined relationship, said one or more keywords thus selected serving as said designation of the information to be extracted from said database.
Claim 61
Dependent Claim 64 words
An end-user query facility as in claims 6, 7, 10, 18 or 19 wherein said inference engine comprises: means for inferring new acquired knowledge threads and storing said new acquired knowledge threads in said knowledge base; and means for determining an access path to said database using either said basic knowledge threads or said acquired knowledge threads as required to meet the user query.
Claim 62
Dependent Claim 67 words
An end-user query facility as in claim 55 wherein said acquired knowledge thread is derived through a combination in parallel of two or more of said basic knowledge threads such that one of the said basic knowledge threads has one or more of its consecutive files in common with the corresponding number of consecutive files starting from the thread head of another of said basic knowledge threads.
Claim 63
Dependent Claim 22 words
An end-user query facility as in claims 56 wherein said thread head is a first file on a said basic knowledge thread.
Claim 64
Dependent Claim 22 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base comprises pre-created knowledge base.
Claim 65
Dependent Claim 24 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base comprises a run-time created knowledge base.
Claim 66
Dependent Claim 23 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base comprises a persistent knowledge base.
Claim 67
Dependent Claim 23 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base comprises a transient knowledge base.
Claim 68
Dependent Claim 26 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base is implemented in data dictionary of said database.
Claim 69
Dependent Claim 26 words
An end-user query facility as in claims 1, 6, 7, 10, 18 or 19 wherein said knowledge base is implemented in system catalog of said database.
Claim 70
Dependent Claim 31 words
An end-user query facility as in claims 10, 18 or 19 which further comprises a second connectivity driver for connecting said program generator to said database through a database connectivity driver.
Claim 71
Dependent Claim 32 words
An end-user query facility as in claims 10, 18 or 19 wherein said second e-mail agent further comprises means to post said desired information extracted from said database to the user mailbox.
Claim 72
Dependent Claim 30 words
An end-user query facility as in claims 18 or 19 which further comprises a second connectivity driver for connecting said program generator to said database through a database connectivity driver.
Claim 73
Dependent Claim 34 words
An end user query facility as in claim 66 wherein both said second connectivity driver and said database connectivity driver have the same data access interface that conforms to a data access interface standard.
Claim 74
Dependent Claim 25 words
An end user query facility as in claims 70 or 67 wherein said data access interface standard is Microsoft Corporation's Open Database Connectivity (ODBC) standard.
Claim 75
Dependent Claim 26 words
An end user query facility as in claims 70 or 67 wherein said data access interface standard is Apple Computer Incorporated's Data Access Language (DAL) standard.
Claim 76
Dependent Claim 33 words
An end-user query facility as in claims 18 or 19 wherein both said application and said first connectivity driver have the same data access interface that conforms to a data access interface standard.
Claim 77
Dependent Claim 494 words
An end user query facility for accessing an existing database having a plurality of database files formed using a database model, comprising: an entity relationship (ER) model generator for reading said databases and deriving a plurality of entity-relationship models, said ER model generator comprising: an entity type classifier for classifying each said database file into one of a plurality of entity types, said entity types including a "kernel" entity type, a "subtype" entity type, a "characteristic" entity type, an "associative" entity type, and a "pure lookup" entity type; a binary relationship generator for generating a plurality of binary relationships between said database files, each said binary relationship associated with a linkage representing a relation between a first file having a key that references an equivalent key of a second file, said binary relationships including: a "has -- children" type that represents a first database file that is not classified as a "pure lookup" entity type and has a one-to-many relationship with a second database file, and said second database file does not have a unique key; a "has -- wards" type that represents a first database file that is not of a "pure lookup" entity type and has a one-to-many relationship with a second database file having a unique key; a "has -- subtype" type that represents a first database file having a one-to-one relationship with a second database file and said second database file is classified as a "subtype" entity type; and an "inverse -- of -- pure -- lookup" that represents a first database file is classified as a "pure -- lookup" entity type; a model constructor for constructing said entity-relationship models, each said entity-relationship model representing a tree having a root and a plurality of branches, said root associated with one of said database files classified as a "kernel" entity type, said model constructor utilizing said entity types and said binary relationships to associate one or more branches with each said entity-relationship model; a knowledge base that stores said ER models; an application for interfacing with a user to obtain from said user choices based on said entity-relationship model as a designation of the information to be extracted from said database; an inference engine that, based upon said designation of information to be extracted from said database, identifies one or more of said database files that contain the desired information and searches said knowledge base to determine one or more linkages connecting said identified files; a program generator that accesses said linkages obtained by said inference engine and generates a program to extract said desired information from said database; and a query facility connectivity driver that comprises: a first connectivity interface coupled to said application that conforms to Microsoft open database connectivity (ODBC) standard to interface with said inference engine and said knowledge base; and a second connectivity interface coupled to said inference engine and said knowledge base to interface with said existing database using Microsoft open database connectivity (ODBC) driver.
Claim 78
Dependent Claim 494 words
An end user query facility for accessing an existing database having a plurality of database files formed using a database model, comprising: an entity relationship (ER) model generator for reading said databases and deriving a plurality of entity-relationship models, said ER model generator comprising: an entity type classifier for classifying each said database file into one of a plurality of entity types, said entity types including a "kernel" entity type, a "subtype" entity type, a "characteristic" entity type, an "associative" entity type, and a "pure lookup" entity type; a binary relationship generator for generating a plurality of binary relationships between said database files, each said binary relationship associated with a linkage representing a relation between a first file having a key that references an equivalent key of a second file, said binary relationships including: a "has -- children" type that represents a first database file that is not classified as a "pure lookup" entity type and has a one-to-many relationship with a second database file, and said second database file does not have a unique key; a "has -- wards" type that represents a first database file that is not of a "pure lookup" entity type and has a one-to-many relationship with a second database file having a unique key; a "has -- subtype" type that represents a first database file having a one-to-one relationship with a second database file and said second database file is classified as a "subtype" entity type; and an "inverse -- of -- pure -- lookup" that represents a first database file is classified as a "pure -- lookup" entity type; a model constructor for constructing said entity-relationship models, each said entity-relationship model representing a tree having a root and a plurality of branches, said root associated with one of said database files classified as a "kernel" entity type, said model constructor utilizing said entity types and said binary relationships to associate one or more branches with each said entity-relationship model; a knowledge base that stores said ER models; an application for interfacing with a user to obtain from said user choices based on said entity-relationship model as a designation of the information to be extracted from said database; an inference engine that, based upon said designation of information to be extracted from said database, identifies one or more of said database files that contain the desired information and searches said knowledge base to determine one or more linkages connecting said identified files; a program generator that accesses said linkages obtained by said inference engine and generates a program to extract said desired information from said database; and a query facility connectivity driver that comprises: a first connectivity interface coupled to said application that conforms to Microsoft open database connectivity (ODBC) standard to interface with said inference engine and said knowledge base; and a second connectivity interface coupled to said inference engine and said knowledge base to interface with said existing database using Microsoft open database connectivity (ODBC) driver.
Claim 79
Dependent Claim 148 words
An end user query facility as in claim 71 wherein said binary relationships further comprises: an "inverse -- of -- has -- children" type that represents a second database file that is not classified as a "pure -- lookup" entity type and has a one-to-many relationship with a first database file having a unique key; an "inverse -- of -- has -- wards" type that represents a first database file that is not classified as a "pure lookup" entity type and has a one-to-many relationship with a second database file having a unique key; a "pure -- lookup" type wherein said second database file is classified as a "pure lookup" entity type; and an "inverse -- of -- has -- subtype" type wherein said second database file has a one-to-one relationship with said first database file, and said first database file is classified as a "subtype" entity type.
Claim 80
Dependent Claim 54 words
An end-user query facility as in claim 71 wherein said information scout comprises an interface that displays all or selected ones of said entity-relationship models and that allows a user to formulate a query by picking desired attributes from said entity-relationship model as a designation of the information to be extracted from said database.
Claim 81
Dependent Claim 38 words
An end-user query facility as in claim 71 which further comprises a model purifier for a user to alter said database model by defining new keys for database files or by altering existing keys of said database files.
Claim 82
Dependent Claim 46 words
An end-user query facility as in claim 71 which further comprises a model purifier for a user to alter said database model by defining one or more new items, one or more new keys or one or more new files using items of said database files.
Claim 83
Dependent Claim 73 words
An end-user query facility as in claim 71 which further comprises a program analyzer for analyzing and deriving one or more new items, one or more new keys or one or more new files from source code of applications that access said database model, and for altering said database model using one or more of said new items, one or more of said new keys, or one or more of said new files.
Claim 84
Dependent Claim 47 words
An end-user query facility as in claims 75 or 76 wherein said program generator comprises means to generate a source program that produce data from said new items of said new files and wherein said end-user query facility further comprises a compiler for compiling said source program.
Claim 85
Dependent Claim 38 words
An end-user query facility as in claim 71 which further comprises a security model specifier to allow a user to input a security model which specifies restrictions on the information a user can obtain from said existing database.
Claim 86
Dependent Claim 64 words
An end-user query facility as in claim 78 wherein said security model comprises: item security which specifies a set of database files and items selected from said database which a user or class of users can access; and value security which specifies a set of conditions to restrict said user or class of users to one or more ranges of values of said database.
Claim 87
Dependent Claim 17 words
An end user query facility as in claim 71 wherein said program comprises a source code program.
Claim 88
Dependent Claim 19 words
An end-user query facility as in claim 80 which further comprises a compiler to compile said source code program.
Claim 89
Dependent Claim 27 words
An end-user query facility as in claim 71 which further comprises a means for a user to modify relationship names in the said set of entity-relationship models.

References Cited (Backward Citations)

US4631664A Cited
US5123103A Cited
US4815005A Cited
US4982340A Cited
US5072406A Cited
US5193185A Cited
US5043929A Cited
US5224206A Cited
US5283856A Cited
US5325465A Cited
EP0589070A1 Cited
US5386571A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-05-04 2001-11-03 2002-05-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-05-04 2005-11-03 2006-05-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-05-04 2009-11-03 2010-05-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag