The ontoprise implementation of ObjectLogic provides some built-in features which greatly extend the expressivity and versatility of the language. OntoBroker supports procedural attachments that can be used to do operations that are not really suitable for a logics-based mechanism, such as arithmetic or string-operations. Additionally, this mechanism allows access to external data sources at run time and the integration of data external to the knowledge base into the reasoning and query-answering process.
The procedural attachments are integrated into the logic framework in the shape of built-in predicates. These predicates cannot be syntactically distinguished from ordinary predicates. The inference engine calls some external Java code to compute the extension of the predicates instead of executing its normal logics-based reasoning.
An overview of all of the built-ins provided by OntoBroker is given in the OntoBroker documentation. Here, we only briefly describe a few built-ins.