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.
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/
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.
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.
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