System and methods are described for efficient storage and processing of non-uniform data records. An exemplary embodiment includes a Databank system having a Database Engine, a Database Engine API (Application Program Interface), a Databank Engine, a Databank Engine Class Interface, and a Databank (storage). The Databank storage itself comprises a Descriptor Table (Form Definition) and a Data Repository. The Descriptor Table comprises a plurality of field descriptors for characterizing user information stored in the Databank. The Data Repository, on the other hand, stores the actual data from the non-uniform data records. It comprises "static" fields and a "dynamic" field. The static fields store core fields necessary for characterizing each data record (irrespective of what type of information a given data record stores). User data are stored in a structured, pre-defined manner using logical fields (or "subfields") of the dynamic field. The system correctly interprets the dynamic contents based on the information stored in the descriptors. Methods are described for storing and retrieving information from the Databank in a manner which is transparent to clients, thus allowing the Databank subsystem to easily replace existing storage subsystems.
The present application is a division of application Ser. No. 08/451,734, filed May 26, 1995, now U.S. Pat. No. 5,682,524.
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
A global database library contains multiple records from which a hierarchical graphical listing or chart can be formed. Each record includes a set of generic key fields and a Type field that allows the generic key fields to assume or represent different characteristics according to the value or data in Type field. The type field allows the single set of generic key fields to correspond to different types of information for the different records of different organizations, for example.
A natural (e.g., handwriting or speech) input recognition system and method that uses contextual mapping to improve recognition accuracy by biasing recognition based on the context of an input field. As natural input data is being entered into an application field, the context (type) of the field is determined and used to locate context-based validation rules and context-based user bias data. When entry is complete, the context-based validation rules and context-based user bias data are provided to a recognition engine with the natural input data. The recognizer biases its recognition result by using the rules and the user bias data to recognize the natural input. A field signature generator is described that determines each field's context, independent of the application, and a data harvesting engine is described that automatically collects user bias data from various data stores.
An address book database includes household records in addition to contact records and group records. A household record contains a household distribution list that identifies a household group of contact records and a family group of contact records. The household distribution list further contains information about the relative hierarchy of each contact record in the family group, and that hierarchical information can be used to generate family trees. Each household record further contains a name field and other types of fields. Contact records that are included in the household distribution list include a household property which points to the household record so that entries of the household record can be displayed in place of entries of the contact records. Additionally, when a household record is created based upon a previously created contact record, entries of the contact record are copied to the household record, and entries for a name field, letter salutation field and address name field of the household record are created based at least partially upon the entry in the name field of the contact record.
A system and method for creating customizable views of a database so that database users may view and update tables in a manner that requires no knowledge of the underlying database schema or of the database commands. The system includes a view database and a view/update utility. The view database includes database tables for associating a relational table with a particular view and for associating one or more fields of the relational table with the view. The view/update utility utilizes the view database in performing the processes of creating, displaying, and updating views.
A method and system providing category based sort and display instructions for a computer system having a database of information stored therein are described. A database of contact information is maintained in the computer with each record containing information related to a personal contact. Each record can be assigned a custom category type defining the kind of contact that the record is. The user is allowed to display a condensed listing of the contacts associated with each category. When the list is displayed, the list can be sorted by a field specific to that category type. Each category type can have its own sorting instructions. The sorting instructions also define the way in which the lists are displayed. The user can define and edit the category based instructions at any time.