Prof. Dr. Ralf Lämmel
Joint work with Andrei Varanovich and Martin Leinberger
The SoLaSoTe ontology of software languages, technologies, and concepts
20 November 2014
SoLaSoTe is a core ontology applying to the field of software languages and associated technologies and concepts; it covers domains such as programming and more specific sub-domains of programming (e.g., XML or GUI programming), software engineering, language processing, technological space travel, and model-driven engineering.
On one hand, the set of entity types of SoLaSoTe includes rather general types such as "language", "technology", and "concept". On the other hand, the set of types also includes more specific types related to the demonstration of languages, technologies, and concepts in actual systems, e.g., "contribution" (said software systems), "feature" (software features of said systems), and "contributor" (developers of said systems).
All entities are classified, e.g., in the sense of classifying languages according to paradigms. Whole-part relationships are identified, e.g., in the sense of one technology to be part of another technology. Dependence relationships are identified, e.g., in the sense of a given technology to "imply" the use of a certain language. Usage relationships are identified, e.g., in the sense of a given contribution to use several languages and technologies or concepts (such as a design pattern). There are yet other relationships for forming triples over the entities of SoLaSo; the entities can also be associated to Wikipedia resources.
SoLaSoTe depends on a specific metamodeling approach which uses a semantic wiki as the primary authoring system and a derived triple store which is automatically populated and validated with the help of a metamodel that is essentially property-based and assumes a closed-world assumption for the entities and the relationships. Validation is actually performed by means of SPARQL queries that are schematically derived from the metamodel's declarations of properties and subtyping.
In this presentation, we describe the design of the ontology, demonstrate the ecosystem for authoring and validation, and illustrate the ontology's role in the management of knowledge related to languages, technologies, and concepts. SoLaSoTe has been developed hand in hand with the software chrestomathy 101companies.