Many languages exist to model the structure of data. Well-known examples include Entity-Relationship Diagram (ERD) by Chen, UML class diagrams and the Object-Role Modeling (ORM) language. Each notation has its own graphical notation. To model constraints additional languages are required. For example, the Object Constraint Language (OCL) can be used for UML class diagrams. However, the basics of data modeling resides in set theory and first-order logic.

It’s a True World is a tool to create information models based on first order logic on finite sets with equality. In this tool, an information model is a set of types, relations and constraints expressed in first order logic. A *population* is an instantiation of this world. It consists of a set of elements for each type, and predicates (also called facts) over these elements. A population is valid with respect to a model, if it satisfies all constraints.

## Download

It’s a True World is written in Java, requiring JRE 1.8 or newer.