The Rel Language

Full documentation for the Rel language.

Rel is an expressive, declarative, and relational language designed for modeling domain knowledge. The Rel documentation includes How-To Guides and Rel Concepts with examples of advanced use cases, a Language Reference which explains details on Rel syntax and abstractions, and a Library Reference that covers library relation definitions along with examples.

For new Rel users, check out the Rel Tutorials first for an introduction to the language.

Rel Primer

Our Rel Primer series is designed specifically to help developers learn and understand Rel. There are three parts, in increasing levels of complexity:

How-To Guides

How-To Guides are designed to guide you through the steps needed to take on specific tasks and problems. They are more advanced than Tutorials and assume some background knowledge of the Rel language and RKGMS.

Rel Concepts

Rel Concepts cover topics and concepts important to developing quality applications in Rel. They are more high-level than How-To Guides and include more explanation.


References contain more detailed technical information about the Rel language, including how aspects of the language work, and examples. They assume a background understanding of Rel concepts. The Language Reference includes explanations of Rel terminology and syntax, but at a more concise, technical level than Rel Concepts. The Library References contain complete relation definitions for each library along with examples.