Upper Cyc Ontology as MS Access Database

Here is the Cyc's upper-level ontology as an MS Access 97 MDB file, zipped. It can be freely redistributed under the License Agreement at the end of this message.

Below follow few sentences on Cyc, it's Upper Ontology and conventions. Next, there are some comments about the MDB file and usage instructions.

At the end, you will find the License Agreement. The content of this message is also avalilable as ReadMe form in the database.

Ontology of the Upper Cyc Ontology

The Upper Cyc Ontology contains the most general 3000 constants out of the Cyc KB as well as the relations between them. From ontological viewpoint, most interesting seem to be the relations #$genls and #$isa.
The first one is generalization relation and in fact have few variations: #$genlAttributs, #$genlPreds, #$genlInverse and #$genlMt. So, (#$genl* A B) in CycL means that what is represented by A is
generalized by what is reprezented by B.

It is important to mention that in Cyc #§isa relations do not have its most popular meaning - the one encoded in Cyc via #$genl*. In contrast, (#$isa I C) means that the individual I is member of the set C. So, #$isa is equivalent to what's usually called INSTANCE_OF if C is a class or type.

It is also important to understand that Cyc constants are not concepts. They are just named entities in the Cyc's KB. Some of them represent types, but other can represent individuals, relations, functions, etc. The instances of ObjectType can be considered  as types. Such are 1439 constants.

More information about what is Upper Cyc Ontology can be found in the Cyc Ontology Guide at http://www.cyc.com/cyc/

About MDB file

The CYC_TOP.MDB file attached can be opened with MS Access version 97 or later. It was automatically derived from a file that identifies itself like that:

;;; Upper CYC(R) Ontology flat-file
;;; Copyright Cycorp 1997.  All rights reserved.

It's a relational database, that can be either queried and managed via MS Access. Alternatively, it can be used from other programs via ODBC, JDBC or other similar facilities.

Inside there are few tables - the names of the tables and the columns are the only source of intuition about the DB structure. There are also a number of queries that have descriptions in their Properties (right-click on the object, and you'll find them). See the next section for more information about the queries.

The DB has all the information available in the flat-file with the following exceptions:

- CycL formula starting with logical operators (#$not,#$and,#$or,#$implies) are omitted. In total there are 403 such complex formula in the flat-file

- the comments are cut at the 255th character. The CR and LF are replaced by intervals. To see the full comments, try the CYC® Ontology Guide

- for constants with multiple #$comment statements, they were concatenated using "<<<COMMENTn>>>" as a separator in the string

One more comment is required - expressions like (#$GroupFn #$Event) are CycL constants even that they are not atomic constants. They are represented as usual constants in the MDB.
 

Queries

The queries can be run via the following procedure:
- open the MDB file (in MS Access)
- select Query tab
- double-click on the query
- if the query has a parameter, the system will ask you to enter a value
- enjoy the result

The parameters for all the queries are not case sensitive, so you'll obtain the same results for both 'MoneyForNothing' and 'moneyfornothing'.

There is also one more catch - they are always interpretted as an end of the constant name. Which means that "abc" entered as a parameter value will be interpretted as "*abc", where * will be matched with any sequence of characters. It is implemented this way, to avoid typing #$ infront of each name. However, it has certain disadvantages, while asking for "LexicalItem" you will get also "NonLexicalItem".

To match constants that contain a string but doesn't finish with it put * symbol at the end. For example, "Meeting*" will match both "#$MeetingSomeone" and "#$MeetingTakingPlace".

Typical use cases:
- to get the direct generalizations of a constant use the "Taxonomy Above C" query
- to get all the constants related to a some constant use "All relations about C"

In both cases, MS Access will ask you to enter the constant name.

Each query has a description accessible via right-click, Properties.

License Agreement (Terms of Use)

The conditions are exactly the same as the Cycorp's ones (see below): you can freely use and redistribute the MDB file, but you have to acknowledge
    OntoText Lab.,
    Sirma AI Ltd.         or e-mail: naso@sirma.bg
    IT Center Office Express
    135 TsarigradskonShose
    Sofia 1784 Bulgaria

Using the MDB file, you should still follow the license agreement for the flat-file, so, both Atanas Kiryakov and Cycorp should be acknowledged.

The original beginning of the Cycorp's source file follows

;;; Upper CYC(R) Ontology flat-file
;;; Copyright Cycorp 1997.  All rights reserved.

;;;Cycorp License Agreement

;;;Cycorp is providing this material from the Cyc(tm) Upper
;;;Ontology at no charge, for everyone to use, including
;;;commercial service use and incorporation into products.
;;;However, it is not 'Public Domain.'  Please acknowledge
;;;Cycorp, 3721 Executive Center Dr., Austin, TX 78731 in
;;;any use or citation of this material, and request that each
;;;further user include a full copy of this notice as well,
;;;in any use or citation they make of the material.  All
;;;these terms equally apply to renamings and other
;;;logically equivalent reformulations of the material in
;;;any natural or formal language.  Cycorp intends to
;;;amend and expand the material from time to time; the
;;;latest version is available at  http://www.cyc.com