Semantic Programming Framework for developing ontology-controlled Applications

Tracking #: 2142-3355

This paper is currently under review
Lars Vogt
Roman Baum
Christian Köhler
Sandra Meid
Björn Quast
Peter Grobe

Responsible editor: 
Eero Hyvonen

Submission type: 
Full Paper
We demonstrate that ontologies are not restricted to modeling a specific domain, but can be used for programming as well. We introduce the Semantic Programming Ontology (SPrO) and its accompanying Java-based middleware, which we use as a semantic programming language. SPrO provides ontology instances as well as annotation, object, and data properties, which function as commands, attributes, and variables that the middleware interprets. We use SPrO for describing data-centric Semantic Web applications. Each description forms an ontology itself, i.e., the application’s source code ontology (SCO). The Java-based middleware produces the respective application and controls its behavior based on the descriptions contained in the SCO. The middleware thus functions like an interpreter that interprets the descriptions in the SCO in reference to SPrO. It treats descriptions as specifications of the application and dynamically executes them. The goal of our semantic programming approach is to have a development framework that not only seamlessly integrates the RDF world with the HTML world but also allows domain experts to develop their own data-centric Semantic Web applications with as little programming experience required as possible. SPrO and its accompanying Java-based middleware and its interface are available from (
Full PDF Version: 
Under Review