One of the reasons why we believe in LogiQL as a programming language is its ability to support data modeling, but at the same time allow itself to be executable, and executable in a very performant way over large data sets. We collaborate and support researchers in the data modeling community to help us continue to develop LogiQL as a suitable modeling language. Terry Halpin, part time LogicBlox employee and professor at INTI International University, Malaysia, is an expert in modeling. In this latest publication, Terry compares and contrasts several different languages for modeling, with Datalog (the foundation of LogiQL) being one of them.
Abstract A conceptual data model for an information system specifies the fact structures of interest as well as the constraints and derivation rules that apply to the business domain being modeled. The languages for specifying these models may be graphical or textual, and may be based upon approaches such as Entity Relationship modeling, class diagramming in the Unified Modeling Language, fact orientation (e.g. Object-Role Modeling), Semantic Web modeling (e.g. the Web Ontology Language), or deductive databases (e.g. datalog). Although sharing many aspects in common, these languages also differ in fundamental ways which impact not only how, but which, aspects of a business domain may be specified. This paper provides a logical analysis and critical comparison of how such modeling languages deal with three main structural aspects: the entity/ value distinction; existential facts; and entity reference schemes. The analysis has practical implications for modeling within a specific language and for transforming between languages.