Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
The fifth release candidate of Cycorp's Java API suite, and the first in which the Core API
specification and the Core Client implementation are packaged as wholly separate artifacts.
1.0.0-rc5 is not backwards-compatible with earlier API releases. Note that ResearchCyc 4.0q and
EnterpriseCyc 1.7-preview require server code patching for compatibility with the 1.0.0-rc5
release. See the Cyc Core Client for details.
The overarching goal of this revision is to be the last release before 1.0.0 with any compatibility-
breaking changes. Note, however, that this is not a guarantee: additional disruptive changes may
be made before 1.0.0 if deemed necessary.
API & implementation division
There is now a clean division between the Core APIs and their reference implementation; they have
been split into two artifacts:
- The implementation-independent Core API specification:
- The Core Client reference implementation:
core-api-suiteproject has been split into two sibling projects:
- The relevant artifacts generated by these projects (the artifacts that projects are typically
expected to specify as dependencies) are
- Introduces implementation-independent factory classes for Core API objects. Code written against
cyc-core-apishould typically not need to refer to any implementation-specific classes or
methods (although an implementation library will need to be present at run-time.)
In short, you'll typically need to include two dependencies to use the Core APIs. For example, in
<dependency> <!-- Core API specification --> <groupId>com.cyc</groupId> <artifactId>cyc-core-api</artifactId> <version>1.0.0-rc5</version> <scope>compile</scope> </dependency> <dependency> <!-- Reference implementation for the Core API --> <groupId>com.cyc</groupId> <artifactId>cyc-core-client-impl</artifactId> <version>1.0.0-rc5</version> <scope>runtime</scope> </dependency>
Caveat: Some functionality, such as proofview generation, is not yet represented in the Core API
spec, so there are still some cases in which the user might need to write code against
cyc-core-client-impl. This functionality will be added to the Core API Spec in an upcoming revision.
cyc-core-apiclass names and method signatures conform to the
Google Java Style coding standards.
- The Cyc Core API GitHub repository has been renamed and expanded into the
Cyc Java API Suite repository, of which
- Reorganization of classes (especially exceptions) within the com.cyc.* package space.
- Implementation projects built on the Base Client have had their artifactIds renamed to incorporate
the word "client". E.g.,
- Project/module directories have been renamed to mirror their artifactIds, dropping the "cyc-"
prefix. E.g., the
cyc-session-clientproject lives in the
cyc-core-client-parentPOMs now inherit from
which inherits from
- Assorted bug fixes.