Abstract

This paper presents a project whose main objective is to explore the ontological based development of Domain Specific Languages (DSL), more precisely, of their underlying Grammar. After reviewing the basic concepts characterizing Ontologies and DSLs, we introduce a tool, Onto2Gra, that takes profit of the knowledge described by the ontology and automatically generates a grammar for a DSL that allows to discourse about the domain described by that ontology. This approach represents a rigorous method to create, in a secure and effective way, a grammar for a new specialized language restricted to a concrete domain. The usual process of creating a grammar from the scratch is, as every creative action, difficult, slow and error prone; so this proposal is, from a grammar engineering point of view, of uttermost importance. After the grammar generation phase, the Grammar Engineer can manipulate it to add syntactic sugar to improve the final language quality or even to add specific semantic actions. The Onto2Gra project is composed of three engines. The main one is OWL2DSL, the component that converts an OWL ontology into a complete Attribute Grammar for the construction of an internal representation of all the input data. The two additional modules are Onto2OWL, converts ontologies written in OntoDL into standard OWL, and DDesc2OWL, converts domain instances written in the new DSL into the initial OWL ontology.

Highlights

  • The use of Domain-Specific Languages (DSL) [16,27] enables a quick interaction with different domains, thereby taking a greater impact on productivity because there is no need for special or deep programming skills to use that language [18,20]

  • In this paper we propose an approach: to derive the grammar for the DSL from a formal definition of the domain based on an ontology

  • The last parameter is the pathname for the input DDesc text file. This file, written by the end-user in the DSL notation according to the rules defined by the generated Attribute Grammar (AG), describes instances that will create the individuals of the ontology

Read more

Summary

Introduction

The use of Domain-Specific Languages (DSL) [16,27] enables a quick interaction with different domains, thereby taking a greater impact on productivity because there is no need for special or deep programming skills to use that language [18,20]. The work hereby presented takes advantage of the processable nature of OWL [6,17] ontologies [8,26,30] to generate DSLs from the enclosed domain knowledge This is expected to automatize, at a certain extent, the language-engineer's task of bringing program and problem domains together. Commercial Off-the-Shelf – use of existing tools that are applied to a specific domain (XML-based DSLs) to implement the new language constructions. The downfall of these approaches is that they are complex because they require that the programmer have some expertize on the application domain, on grammar engineering, and language implementation.

Related work
Ontologies – knowledge formal representation
Grammars – language formal representation
Mapping ontologies to grammars
CFG generation
Attribute grammar generation
Onto2Gra architecture
OWL2DSL
A running example
Grammar generation
Java class set generation
Template generation
Project evaluation
Measuring the quality of the generated DSL
Assessing the DSL
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call