Hybrid Ontology-Oriented Programming for Semi-Structured Data Processing

71 Pages Posted: 20 Mar 2020

Date Written: March 6, 2020


In this work a design of a hybrid ontology-oriented programming language is introduced. It combines declarative style for building a model of domain and imperative style for processing it. The model of domain takes the form of an ontology and consists of a set of interrelated concepts. The syntax of the concept definition allows to create a new concept based on existing ones by linking them with logic relations. It is also possible to create concepts using inheritance, nested concepts, aggregation, higher-order logic and instances generation function. The imperative style allows to prepare initial data for the model in an object-oriented or functional style, dynamically create its elements, implement some of its elements in the form of a deterministic sequence of calculations, process the results of queries to the model. The declarative and imperative components are tightly integrated. Concepts combine logical, object-oriented and functional semantics. Definitions of concepts are first-class citizens of the component of computing. They can include variables, operators and functions. This makes it possible to combine the styles in one application. The key principles of the hybrid programming language implementation are considered. They include the scope of concepts, structures for storing local values of stateful language elements, inference algorithms. The proposed hybrid programming language simplifies the creation and work with a unified model of domain based on semi-structured data or data from diverse sources. It is suitable for tasks of information extraction, automated testing, process automation, business process modeling, creation of applications based on ontologies.

Keywords: Multi-Paradigm Programming, Logic Programming, Ontology, Semi-Structured Data, Information Extraction

Suggested Citation

Voropai, Oleksii, Hybrid Ontology-Oriented Programming for Semi-Structured Data Processing (March 6, 2020). Available at SSRN: https://ssrn.com/abstract=3555711 or http://dx.doi.org/10.2139/ssrn.3555711

Do you have a job opening that you would like to promote on SSRN?

Paper statistics

Abstract Views
PlumX Metrics