Welcome to BESSER’s Object Constraint Language (B-OCL) interpreter Documentation#
B-OCL is a tool designed to parse and evaluate the OCL constraints defined on BESSER models. It is a Python-based implementation built on an ANTLR4 grammar and a visitor-driven evaluator that walks the resulting AST to check constraints against object models.
BESSER is a low-modeling low-code open-source platform built on top of our Python-based personal interpretation of a “Universal Modeling Language”
Note
BESSER and B-OCL are funded thanks to an FNR Pearl grant led by the Luxembourg Institute of Science and Technology with the participation of the Snt/University of Luxembourg and open to all your contributions!
Figure below show the workflow for B-OCL Interpreter. For more details on defining and evaluating OCL constraints please look at examples/How to define and evaluate constraints
Note
Kindly note that with boolean attribute the expected value (True/False) much be added in the constraint. B-OCL does not support default value (i.e., True) for boolean attributes. Also note that for LoopExpressions it is important to mention the type of iterator.
Note
B-OCL-Interpreter is compatible with VScode. It can be easily installed using VSCode terminal