Abstract:
A system including a method for cohesively storing and retrieving heterogeneous classification systems. The database schema of the present invention is constructed of three data substructures, the Attribute Classification, Attribute Value Instance and Attribute Value schemes. The three structures track globally uniquely identified representations of the descriptions, values, and attributes of various differing classification systems and their respective contents. The use of uniquely identifiable elements throughout the database schema allows computerized management of noncompatible classification systems without programming modifications as required in the prior art systems.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of Invention 
     The present invention is directed to computerized classification systems and storage/retrieval thereof. Specifically, the preset invention is directed to a system which uses database formatting of unique identifications of classifications and values to allow for storage/retrieval of heterogenous classification systems. 
     2. Related Materials and Definitions 
     This application is related to the following co-pending applications which are hereby incorporated by reference: 
     UNIVERSAL TAG IDENTIFIER ARCHITECTURE (application Ser. No. 07/963,885), U.S. Pat. No. 5,414,841, METHOD FOR GENERATING CONNECTIONS BETWEEN OBJECTS IN A COMPUTER NETWORK (GRINDING) (application Ser. No. 08/262,999), pending, 
     FACILITY FOR THE INTELLIGENT SELECTION OF INFORMATION OBJECTS (PERSONA) (application Ser. No. 08/262,834), pending 
     FACILITY FOR THE STORAGE AND MANAGEMENT OF INFORMATION OBJECTS (NOUMENA SERVER) application Ser. No. 08/263,146), now U.S. Pat. No. 5,557,790 
     METHOD FOR THE ASSOCIATION OF HETEROGENEOUS INFORMATION (application Ser. No. 08/262,838), pending and 
     FACILITY FOR THE STORAGE AND MANAGEMENT OF CONNECTIONS (CONNECTION SERVER) (application Ser. No. 08/267,022), pending. 
     The following definitions may be helpful to the understanding of the terminology as cited throughout the above related materials. This terminology may be used throughout the background, specification and claims of the present invention: 
     Tags: Tags are globally unique identifiers. Tags are sequentially numbered identifiers identifying data objects (i.e. video, text, audio, observations, opinions, etc.) 
     Phenomena: The logical structure of the system begins with a unit of human perception, the &#34;phenomena&#34;. In the universe of a computer system, &#34;Phenomena&#34; is defined as a representation of phenomena which exist in the universe of human experience. Phenomena can be ideas, written matter, video, computer data, etc. Examples include viewing a computer file using a wordprocessor, watching a digital video clip, or listening to a digital audio segment. 
     Connections: That which gathers (or links) Phenomena into interrelated collections. Connections are that which lead the user from one Phenomena to another Phenomena. Connections are not simply a road-map from a Phenomena to all other Phenomena. More specifically, Connections represent an observation of related Phenomena made by human or by computer observers. 
     Connection Attributes: In the logical structure of the system, &#34;Connection Attributes&#34; allow the entire network of Phenomena and Connections to become usable to each user of the system. Connection Attributes store the rationale behind each connection. In fairly generic terms, Connection Attributes describe the Who, What, Where, When and Why of a particular observation. 
     Noumena: Another concept in the logical structure of the system is &#34;Noumena&#34;. Noumena are that which lie beyond the realm of human perception. In computer-based systems, such as the instant invention, they are the computer stored data, examples are &#34;computer files&#34; or datasets&#34;. When these computer files, the Noumena, are observed in their &#34;raw&#34; form, they do not resemble pictures, sounds, nor words. These Noumena resemble a series of bits, bytes, or numbers. These computer files must be manipulated by computer programs, &#34;Phenominated&#34;, to become as they appear to the observer. In the present system, Noumena are all of the generic format computer files needed to produce a representation of a Phenomena. This includes the computer data files as well as the computer program files. 
     Grinding: Grinding is a systematic, computer-based observation of Phenomena. This is typically done with a &#34;narrow view&#34;. The programs are usually looking for well defined criteria. When Phenomena are observed by the computer programs, the programs make Connections between the observed Phenomena and other Phenomena known by the programs. In effect, acting as a human observer would when viewing a Phenomena and manually Connection it to other Phenomena. 
     Persona: to determine the value of information based on each user&#39;s subjective preferences. 
     Capture: During knowledge capture, the human or computer observer Connects two Phenomena and provides the rationale for the Connection by supplying Connection Attributes. The user can also Connect the new Phenomena to previously existing Phenomena. 
     Retrieve: During knowledge retrieval, an observer navigates from Phenomena to Phenomena via Connections. Knowledge is delivered by experiencing the reconstituted Phenomena. Which knowledge is delivered is controlled by the Connections and the assessment of the Connection Attributes, preferably under the auspices of a Persona. 
     The present invention supports the overall system of co-pending application &#34;Method for Association of Heterogeneous Information&#34; It supports the Tag Architecture, Connection Server, Grinding, Noumena Server and the design and infrastructure of the overall system, but is not limited thereto. The term &#34;Phenomena&#34; could be read &#34;object&#34;, and the term &#34;Connection&#34; could be read &#34;link&#34; in this disclosure. The distinction between Noumena and Phenomena is made to distinguish between objects as experienced by users (Phenomena) and objects as they are actually stored (Noumena). 
     The &#34;Connection Server&#34; utilizes the Classification systems data structures to efficiently organize and store Connection Attributes. The &#34;Noumena Server&#34; utilizes the Classification systems data structures to efficiently organize and store Noumena Attributes. The &#34;Persona facility&#34; utilizes the Classification systems data structures to provide the Connections Attributes which will be evaluated by the Persona. 
     DISCUSSION OF PRIOR ART 
     The prior art has failed to provide a system for storing, retrieving, and using generic representations of heterogeneous classification systems, taxonomies. The emergence of multi-media data has exacerbated this problem. 
     Computer databases today store information for individual classification systems. For each new classification system to be supported, these computer systems must be extensively modified. This modification normally requires a change to the database schema for each new classification systems. No computer database system, alone, is able to store heterogeneous classification systems effectively. 
     A computer database system today can also retrieve classification systems information. However, the query must account for the latest complete database schema in order to retrieve the information for all classification systems. This normally requires changes to the database query for every new classification system supported. In addition, changes to the existing program which uses the old classification system maybe necessary. Because of the constant changes needed when adding or maintaining classification systems, a computer database system, alone, is unable to retrieve heterogenous classification systems effectively. 
     Classification systems come in many forms. Some examples: 
     Books are classified by the Dewey Decimal System, Library of Congress number, or International Standard Book Number (ISBN). 
     Products are classified by brand name, part number, or Uniform Product Code (UPC). 
     Colors are classified by wavelength, Red-Green-Blue (RGB), Chromanance-Luminance (Y/C), or Hue-Intensity-Saturation (HIS). 
     Locations are classified by Latitude-Longitude-Altitude or Country-State-Town. 
     Animals are classified by common name or Binomial Nomenclature. 
     Measurements are classified by the Metric system or the English system. 
     Value/Worth is classified by the Dollar, Yen, Mark, Pound, etc. 
     Many classification systems exist and new classification systems are constantly being invented. 
     Using classification systems cohesively becomes important when describing complex multi-media objects (phenomena). Many objects cannot be fully described using only one classification system. These objects require compound or complex classification systems to characterize their different dimensions. As an example, a television set can be described in terms of Measurement, Value/Worth, Colors and Product. Completely different classification systems could be used to describe the program on the screen and the sound. The viewer-observed phenomena would include both the TV set and the programming. To describe objects, it is frequently necessary to use classification system in conjunction with each other. 
     In the prior art, each time a new classification system is added a new and separate table system must be added (see FIG. 1). In the present invention, when a new classification system is added additional classification attributes can be simply added to existing tables (see FIG. 2). If computer systems are to be able to describe objects, they must be able to store, retrieve and use heterogeneous classification systems cohesively. 
     OBJECTS OF THE INVENTION 
     It is an object of the present invention to manage heterogeneous classification systems. 
     It is further an object of the invention to seamlessly allow multi-media classifications, often comprised of many differing classification systems simultaneously, to co-exist together. 
     SUMMARY OF THE INVENTION 
     A system including a method for cohesively storing and retrieving heterogeneous classification systems. The database schema of the present invention is constructed of three data substructures, the Attribute Classification, the Attribute Value Instance and optionally the Attribute Value schemes. The three structures track globally uniquely identified representations of the descriptions, values, and attributes of various differing classification systems and their respective contents. The use of uniquely identifiable elements throughout the database schema allows computerized management of noncompatible classification systems without programming modifications as required in the prior art systems. 
     Conflicts with any other current or future system are eliminated since each classification system is uniquely identified (via unique Tags), each attribute-value pair is also globally unique. This facilitates any desired future merging of attributes or multiple separate systems. 
     The database schema is determined by the number of value data-types, not the number of classification systems, the queries to retrieve information need not be concerned with a frequently changing database schema. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1--Illustrates the prior art table classification management system. 
     FIG. 2--Illustrates, conceptually, the present invention table management system. 
     FIG. 3--Illustrates the database schema of the present invention. 
     FIG. 4--Illustrates an example of an implementation of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Classification Systems (taxonomies) 
     Each supported Classification system is uniquely identified with a globallyunique persistent identifier. Each supported classification system is responsible for the domain of its classification values. These values may be discrete or continuous. Classification values for a classification system need not be of the same data type. 
     Examples of values: 
     Character strings (&#34;oval&#34;, &#34;circular&#34;, &#34;square&#34;, . . . ) 
     Sequential whole numbers (0,1,2,3, . . . ) 
     Random real numbers (234.234, 7245.73, 13.028734, . . . ) 
     Date/Time (1992-04-04-17:54:55.295683, 1992-05-18-09:25:12.509345, . . . ) 
     Tags (1ABCD0123456, &lt;1ABCD9123457) (co-pending application &#34;UNIVERSAL TAG IDENTIFIER ARCHITECTURE&#34;) 
     Example: In a classification system of &#34;Emotions&#34;, 
     &lt;1ABCD0123456 represents &#34;hate&#34; 
     &lt;1 ABCD9123457 represents &#34;love&#34; 
     &lt;1ABCD8123458 represents &#34;indifference&#34; 
     &lt;1ABCD7123459 represents &#34;rage&#34;etc. 
     DATABASE SCHEMA 
     FIG. 3 details the database schema which consists of three types of data sub-structures: 
     ATTRIBUTE --  CLASSIF --  SYSTEM (30) 
     ATTRIBUTE --  VALUE --  INSTANCE (31) 
     ATTRIBUTE --  VALUE (32) 
     The following is a description of key elements of the Classification systems database schema. This description uses SQL and Relational DatabaseManagement System terminology. However, there is no dependency on or restriction to a relational database for implementation. 
     The first type of table is an ATTRIBUTE --  CLASSIF --  SYSTEM table.The ATTRIBUTE --  CLASSIF --  SYSTEM, table&#39;s responsibility is to record the description of each classification system. The significant columns of the table contain: 
     * The Tag which identifies one of the classification systems used. 
     * The description of this classification system. 
     Example: Tag &#34;&lt;1ABC91&#34; identifies the classification system of &#34;area in terms of square feet&#34;. 
     In the following two tables, sets of &#34;attribute-value pairs&#34; are used. These &#34;attribute-value pairs&#34; are defined here as an ordered collection of: 
     1. A Tag representing the classification system used to describe an object. 
     2. A value representing the description within the classification system. This value may be a Tag or other data type (number, character string, etc.). 
     For instance, the classification system may be &#34;temperature in Fahrenheit&#34; known by tag &#34;&lt;1ABC82&#34; and the value may be 75. the attribute-value pair would be (&#34;&lt;1ABC82&#34;, 75). An object is described by a collection of attribute-value pairs. 
     The second type of table is an ATTRIBUTE --  VALUE --  INSTANCE table. For each instantiation of the present invention, there may be many ATTRIBUTE --  VALUE --  INSTANCE tables. Each ATTRIBUTE --  VALUE --  INSTANCE table is attribute-value pairs for a particular data-type. One ATTRIBUTE --  VALUE --  INSTANCE table may hold integers attribute-values, yet another may hold Tag attribute-values. The rows in each ATTRIBUTE --  VALUE --  INSTANCE table hold classification values for a particular data-type from all classification systems. The significant columns of the table contain: 
     * The object which is being described. 
     * The tag which identifies the classification system used to classify the object. 
     * The value within the classification system which describes the object. 
     Borrowing from the above examples, a room known as &#34;X&#34; may be described in several ATTRIBUTE --  VALUE --  INSTANCE tables: 
     (&#34;X&#34;, &#34;&lt;1ABC91&#34;, 143.5) from the ATTRIBUTE --  VALUE --  INSTANCE table of real numbers. 
     (&#34;X&#34;, &#34;&lt;1ABC82&#34;, 75) from the ATTRIBUTE --  VALUE --  INSTANCE table of integers. 
     meaning that the room has an area of 143.5 square feet and a temperature of75 degrees Fahrenheit. 
     The third type of table is an ATTRIBUTE --  VALUE table. For each instantiation of the present invention, there may be an ATTRIBUTE --  VALUE table. This table provides one level of indirection between the ATTRIBUTE --  CLASSIF --  SYSTEM table and certain ATTRIBUTE --  VALUE --  INSTANCE tables. This level of indirection provides: 
     * The classification of abstract, non-continuous values (e.g. &#34;Emotions&#34; are love, anger, fear, hate, joy). 
     * The compression of lengthy values into a compact symbol. The ATTRIBUTE --  VALUE --  INSTANCE tables which contain integer, real number, timastamp and other continuous-function data-types do not require an ATTRIBUTE --  VALUE table. The significant columns of the Attribute --  Value table contain: 
     * The tag which identifies the classification system. 
     * The value within the classification system. 
     * A Tag representing the value within this classification system. 
     The ATTRIBUTE --  VALUE table provides resolution from a symbol, presumably a Tag, to the actual value and vice versa. Returning to the example for the room known as &#34;X&#34;, the ATTRIBUTE --  CLASSIF --  SYSTEM table may contain Tag &#34;&lt;1ABC73&#34; which identifies the classificationsystem as &#34;types of rooms&#34;. The ATTRIBUTE --  VALUE table may contain: 
     (&#34;&lt;1ABC73&#34;, &#34;Bedroom&#34;, &#34;&lt;1ABC64&#34;) 
     (&#34;&lt;1ABC73&#34;, &#34;Bathroom&#34;, &#34;&lt;1ABC55&#34;) 
     (&#34;&lt;1ABC73&#34;, &#34;Kitchen&#34;, &#34;&lt;1ABC46&#34;) 
     Room &#34;X&#34; may now be described in several ATTRIBUTE --  VALUE --  INSTANCE tables: 
     (&#34;X&#34;, &#34;&lt;1ABC91&#34;, 143.5) from the ATTRIBUTE --  VALUE --  INSTANCE tables of real values. 
     (&#34;X&#34;, &#34;&lt;1ABC82&#34;, 75) from the ATTRIBUTE --  VALUE --  INSTANCE table of integers. 
     (&#34;X&#34;, &#34;&lt;1ABC73&#34;, &#34;&lt;1ABC46&#34;) from the ATTRIBUTE --  VALUE --  INSTANCEtable of Tags. 
     meaning that the room has an area of 143.5 square feet and a temperature of75 degrees Fahrenheit and is a Kitchen. 
     Since each classification system is identified by a unique Tag which is an attribute in all sub-structures (column in all tables), the database schema is not sensitive to any particular classification system. It also provides for a virtually unlimited number classification systems to be described and used together with facilities to coordinate access to multiple taxonomies or classification systems; 
     In use, a requestor of classification information for a certain object presents simple queries to the database. For each ATTRIBUTE --  VALUE --  INSTANCE table queried, the database can return information from multiple classification systems. The number of queries presented is not dependent on the number of classification systems, rather it is dependent on the number of value data-types. Multi-data-type representations can exist within a single classification system. By definition, only one data type should be used for each tagged classification system. Additionally, several tagged classification systemscould be grouped into one &#34;logical&#34; classification system. 
     For a logical classification system, certain classification values my reside in an ATTRIBUTE --  VALUE --  INSTANCE table for integers, other values may reside in an ATTRIBUTE --  VALUE --  INSTANCE tablefor real numbers, still others may be in an ATTRIBUTE --  VALUE --  INSTANCE table for Tags. The values in an ATTRIBUTE --  VALUE --  INSTANCE table could be quite lengthy. In this case, by substituting a short unique symbol for the value, the length of the column containing thevalues in an ATTRIBUTE --  VALUE --  INSTANCE table is minimized. 
     Queries may be selective and filter results by looking for Attribute-value from only a single classification system or a set of classification systems. Provides for symbolic representation of attribute-value pairs. 
     The system provides for security on the value description. The values in anATTRIBUTE --  VALUE --  INSTANCE table could be of sensitive nature requiring high security. By substituting a short unique symbol for the value, the visibility of the column containing the values in an ATTRIBUTE --  VALUE --  INSTANCE table is minimized. The values stored in the table could also be encrypted. 
     The system design allows structural independence of most processes enablingexploitation of computers that may be loosely coupled, multi-threaded, and/or support parallel processing. In addition, classifications systems data may be distributed. The classifications systems data may be deployed and utilized at a single location (node) or throughout a network (distributed) of connected locations (nodes). 
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The preferred embodiment will describe the database schema using SQL and a Relational Database Management System. However, there is no dependency on or restriction to a relational data base for implementation. 
     Attribute --  Classif --  System--descriptions of classification systems 
     Columns: 
     Created: Data/Time when an Attribute row was inserted. 
     Version: Version number of the row format. 
     Attribute --  Tag: Tag representing Attribute class. 
     Summary: Short description of classification system. 
     Detail: The complete definition of what the classification system represents. 
     (Rules, qualifications, restrictions, characteristics, usage, . . . ) 
     
         ______________________________________CREATE TABLE Attribute.sub.-- Classif.sub.-- System (Created       timestamp     NOT NULL,Version       varchar(30)   NOT NULL,Attribute.sub.-- Tag         varchar(30)   NOT NULL,Summary       varchar(50)   NOT NULL,Detail        varchar(2000) NOT NULL,PRIMARY KEY (Attribute));CREATE UNIQUE INDEX Attribute.sub.-- IX1 ONAttribute.sub.-- Classif.sub.-- System (Attribute.sub.-- Tag);Attribute.sub.-- Value - Description of an attribute-valuecombination.Columns:Created: Date/Time when a row was inserted.Version: Version number of the row format.Attribute.sub.-- Tag: Tag for attribute class.Value: A specific, defined characteristic within theattribute class.Sumary: A short description of what the attribute-value represents.Detail: The complete definition of what the attribute-value represents.(Rules, qualifications, restrictions, characteristics,usage, . . .)CREATE TABLE Attribute.sub.-- Value (Created       timestamp     NOT NULL,Version       varchar(30)   NOT NULL,Attribute.sub.-- Tag         varchar(30)   NOT NULL,Value         varchar(30)   NOT NULL,Summary       varchar(50)   NOT NULL,Detail        varchar(2000) NOT NULL,PRIMARY KEY (Attribute.sub.-- Tag, Value),FOREIGN KEY  (Attribute.sub.-- Tag) REFERENCESAttribute.sub.-- Classif.sub.-- System ON DELETE CASCADE);CREATE UNIQUE INDEX Attribute.sub.-- Value.sub.-- IX1 ON attribute.sub.--Value(    Attribute, Value    );Attribute.sub.-- Value.sub.-- Instance.sub.-- Discrete - Discreteattribute-value pairsColumns:Created: Date/Time when a row was inserted.Version: Version number of the row format.Object.sub.-- ID: Tag for object associcated with attribute-value pair.Attribute.sub.-- Tag: Tag for attribute class.Value: A, specific, defined characteristic within theattribute class.CREATE TABLE Attribute.sub.-- Value.sub.-- Instance.sub.-- Discrete(Created       timestamp     NOT NULL,Version       varchar(30)   NOT NULL,Object.sub.-- ID         varchar(30)   NOT NULL,Attribute.sub.-- Tag         varchar(30)   NOT NULL,Value         varchar(30)   NOT NULL,FOREIGN KEY  (Attribute.sub.-- Tag, Value) REFERENCESAttribute.sub.-- Value ON DELETE CASCADE);CREATE INDEX Discrete.sub.-- IX1 ON Attribute.sub.-- Value.sub.--Instance.sub.-- Discrete(Object.sub.-- ID);Attribute.sub.-- Value.sub.-- Instance.sub.-- Continuous - Continuousattribute-value pais.Columns:Created: Date/Time when a row was inserted.Version: Version number of the row formt.Object.sub.-- ID: Tag for object associated with attribute- -value pair.Attribute.sub.-- Tag: Tag for attribute class.Value: A specific, defined characteristic within theattribute class which has, in this example, a time-stamp data type.CREATE TABLE Attribute.sub.-- Value.sub.-- Instance.sub.-- Continuous(Created       timestamp     NOT NULL,Version       varchar(30)   NOT NULL,Object.sub.-- ID         varchar(30)   NOT NULL,Attribute.sub.-- Tag         varchar(30)   NOT NULL,Value         timestamp     NOT NULL,FOREIGN KEY  (Attribute.sub.-- Tag)  REFERENCESAttribute.sub.-- Classif.sub.-- System ON DELETE CASCADE);CREATE INDEX Continuous.sub.-- IX1 ON Attribute.sub.-- Value.sub.--Instance-Continuous (Object.sub.-- ID);______________________________________ 
    
     CONCLUSION 
     A system and method has been shown in the above embodiments capable of managing heterogeneous classification systems through the a systematic interrelating of unique identifiers. While various preferred embodiments have been shown and described, it will be understood that there is no intent to limit the invention by such disclosure, but rather, is intended to cover all modifications and alternate constructions falling within the spirit and scope of the invention as defined in the appended claims.