The figure provides an overview of the
reused ontology modules and the modules we contribute. Besides DOLCE,
we also need
theories for contextualization, for plans and for information objects. Descriptions
& Situations, the Ontology of Plans
and the Ontology of Information Objects
realize such theories and come in the form of ontology modules. Our
contributed ontologies are the Core Software Ontology and the Core
Ontologies of Software Components and Services.
The Core Ontology of Software formalizes the most fundamental concepts which are required to model both software components and Web services. This includes concepts such as software, data, users, access rights or interfaces. Such concepts are formalized by reusing the modelling basis of DOLCE, Descriptions & Situations, Ontology of Plans and the Ontology of Information Objects. We separated the fundamental concepts in the Core Software Ontology to facilitate reuse.
The Core Ontology of Software
Components is based on the Core Software Ontology to formalize our
understanding of the term
software component. It requires special attention as there is a variety
of interpretations that leads to ambiguity. We also put libraries and
licenses in this core ontology and define a component profile that
aggregates all relevant aspects of a
component. It is expected that this grouping makes browsing and
querying for developers more
convenient. The component profile is envisioned to act as the central
information
source for software components rather than having bits and pieces all
over
the place. The Core Ontology of Web
Services is based on
the Core Software Ontology. It formalizes our
understanding of the term Web service and introduces the notion of
service profiles.
The KAON SERVER ontology (not shown in the figure) reuses the Core Ontology of Software Components to specialize and extend its concepts and associations such that they reflect the idiosyncracies of the KAON SERVER. The KAON SERVER is an ontology-based application server and can be obtained at http://kaon.semanticweb.org/server. We introduce MBeans as a special kind software components and by defining additional kinds of profiles. Note that component providers can further extend the ontology by introducing customized profiles to categorize specific components, e.g., ontology stores.
The classification allows clarifying how the ontologies were built. We started by analysing whether the quality of existing ontologies suffice for our goals of having core, reference and heavyweight ontologies. As this wasn't the case, we decided to build the ontologies anew by choosing a suitable foundational ontology according to ontological choices (descriptive vs. revisionary, multiplicative vs. reductionist, actualism vs. possibilism, endurantism vs. perdurantism as well as several extrinsic properties). Eventually, we took DOLCE and some its modules (see above) as foundation (generic, reference and heavyweight). DOLCE is used as a starting point to arrive at our contributed ontologies, viz., the Core Software Ontology and the Core Ontologies of Software Components and Services, which are classified as.
In order to reuse one of our core ontologies in a specific setting, the following three steps have to be taken: (i) specialize the core concepts and associations to reflect the idiosyncracies of the platform. For example, we have to introduce EnterpriseBean as a special kind of COSC:SoftwareComponent in a J2EE-based platform. The result of this step is a domain, reference and heavyweight version of our core ontologies. Step (ii) removes concepts and associations that have been introduced merely for reference purposes. As an example, it is unlikely and not required to model particular Computational Objects or Computational Activities for the reasoning at run time. Abstract concepts, i.e., ones which are not instantiated, are of no use in a running system and can be removed. The result is a domain, application and heavyweight version. Finally, step (iii) requires a decision for an executable ontology language that can be reasoned with at run time. Accordingly, the axiomatization has to be adapted to this language. This might be a description logic such as OWL-DL which is less expressive than modal logic S5. The result of this step is a domain, application and lightweight version of the core ontologies.
Consequently, we offer the axiomatization of the core, reference and heavyweight axiomatizations on paper in modal logic S5. The domain, application and lightweight versions are available in OWL-DL and KAON.
Module |
Namespace |
.owl File |
.kaon File |
DOLCE |
http://www.loa-cnr.it/ontologies/DOLCE-Lite# |
DOLCE-Lite_397.owl |
dolce.kaon |
Descriptions & Situations |
http://www.loa-cnr.it/ontologies/ExtendedDnS# |
ExtDnS_397.owl |
dolce.kaon |
Ontology of Information
Objects |
http://www.loa-cnr.it/ontologies/ExtendedDnS# |
Information_397.owl |
dolce.kaon |
Ontology of Plans |
http://www.loa-cnr.it/ontologies/Plans# |
Plans_397.owl |
oop.kaon |
Core Software Ontology |
http://cos.ontoware.org/cso# |
cso.owl |
cso.kaon |
Core Ontology of
Software Components |
http://cos.ontoware.org/cosc# |
cosc.owl |
cosc.kaon |
Core Ontology of Services |
http://cos.ontoware.org/cos# |
cows.owl |
cows.kaon |
KAON SERVER Ontology |
http://kaon.semanticweb.org/server# |
server.owl |
server.kaon |