<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">An ontology for describing model mapping/transformation tools and methodologies: the MoMo ontology</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Fulvio</forename><surname>D'antonio</surname></persName>
							<affiliation key="aff0">
								<orgName type="laboratory">LEKS -Lab for Enterprise Knowledge and Systems</orgName>
								<orgName type="institution">IASI -CNR</orgName>
								<address>
									<settlement>Rome</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Michele</forename><surname>Missikoff</surname></persName>
							<affiliation key="aff0">
								<orgName type="laboratory">LEKS -Lab for Enterprise Knowledge and Systems</orgName>
								<orgName type="institution">IASI -CNR</orgName>
								<address>
									<settlement>Rome</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Paolo</forename><surname>Bottoni</surname></persName>
							<email>bottoni@di.uniroma1.it</email>
							<affiliation key="aff2">
								<orgName type="institution">Universita&apos; &quot;La Sapienza&quot; di Roma -Dip</orgName>
								<address>
									<addrLine>Informatica Via Salaria</addrLine>
									<postCode>113 -00198</postCode>
									<settlement>Roma</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Axel</forename><surname>Hahn</surname></persName>
							<affiliation key="aff1">
								<orgName type="department">Business Information Systems Department of Computing Science</orgName>
								<orgName type="institution">University of Oldenburg</orgName>
								<address>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Kevin</forename><surname>Hausmann</surname></persName>
							<affiliation key="aff1">
								<orgName type="department">Business Information Systems Department of Computing Science</orgName>
								<orgName type="institution">University of Oldenburg</orgName>
								<address>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">An ontology for describing model mapping/transformation tools and methodologies: the MoMo ontology</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">466732BBA2CAA5025F9565415A2C05E6</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T06:55+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In this paper is briefly presented an ontology used to represent tools, methodologies and languages in the field of model mapping/transformation (Model Morphism tools). This ontology is thought to drive a software application that will guide an user having a mapping/transformation related problem to the choice of the correct technology (MoMo recommendation system).</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>In the field of conceptual modelling a great importance in the last period is being gained by concepts connected with the "operations" on models themselves: "model transformation", "model mappings", "model merging", "model refinement/abstraction" and many others; good surveys addressing such topics are <ref type="bibr" target="#b1">[2]</ref> [4] <ref type="bibr" target="#b2">[6]</ref>  <ref type="bibr" target="#b3">[7]</ref>. Contemporarily a lot of tools for realizing such operations have been developed; we believe that there's a need for a common framework for the classification of them, allowing an user to select the tool most suitable for the task, related to model mapping or transformation, he or she wants to achieve.</p><p>In this paper an ontology is proposed, to be used for the description and classification of such tools; we will refer to Model Morphism tools (MoMo-"Model Morphism" being one of the central concepts of our ontology) to indicate all those tools that realize one or more operations on models.</p><p>This ontology is thought to drive an application that will guide an user having a mapping/transformation -related problem to the choice of the correct technology (MoMo recommendation system): instances of concepts in the ontology will be used to describe existing MoMo solutions and the tool will enable searching and navigation mechanisms on such instances.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Use of the Model Morphism Ontology</head><p>The MoMo ontology is intended to provide a formal model to place approaches, tools, and methodologies in, which come from the research field of model transformation. In order to reveal the items collected to a potential user, e.g. somebody facing a mapping/transformation problem, the ontology needs to be accessible in a both extensible and intuitive manner. This requirement is met by employing an (user-) interface to the ontology, which on the one hand is published to the WWW and on the other hand hides away the formal and implementation-specific details of the model described in this paper. A research prototype for such an interface is the "alliknow.net software"<ref type="foot" target="#foot_0">1</ref> . It exploits the possibilities of sophisticated navigation and search on ontologies. For both navigation and search functionalities several functionalities have been implemented. Moreover, the software defines an adaptable framework of views which show parts, instances, or relations formalized in the ontology to the users. Ontology navigation reuses existing approaches of the WWW, exploiting the semantic richness provided by the underlying ontology. Such techniques include:</p><p>• Navigation on relations relies on the usage of relations between the elements of the model, which are made explicit by using an ontology. "Moving" from one element to another includes three steps: to select an initial element to start from (this step is only needed once in the very beginning of the navigation), to select the relation to follow, and to select one of the elements connected to the initial element via the relationship chosen. • Meta navigation uses additional (meta-) information on the elements of the ontologies. Implemented is for example a navigation approach based on the connectivity of the elements. Elements with high connectivity are usually more interesting when navigating and therefore highlighted. • History navigation allows the user to go back to an element viewed before. On ontologies we add for example the idea of taking only such elements into account whose connectivity exceeds a certain threshold. Thereby, we create a history with less, but more important items. The "alliknow.net software" bundles all these three approaches into the customisable views above-mentioned. Concerning search capabilities four approaches are currently available. First, keyword search provides a simple lexical matching access. Second, category search lists all instances of a certain concept defined by the ontology. Statement search, third, uses the RDF (Resource Description Framework) foundation OWL-ontologies are based on and allows the user to define, and to concatenate, statements to hold true for elements of the result set. Even more advanced users take advantage of query search, fourth, that enables the interface to submit SPARQL 2 queries to the ontology.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Ontology Structure</head><p>In figure <ref type="figure" target="#fig_0">1</ref>, the MoMo ontology, represented using an UML class diagram, is shown. In this paper, due to space restrictions, we describe only the most important concepts of such ontology letting the complete description (also of the relations existing among them) for future work. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">Model</head><p>"A model is a set of statements about some system under study" <ref type="bibr" target="#b0">[1]</ref>. The concept "model" addresses every abstraction of the reality used for description or computational purposes. This concept specializes in that of Metamodel: a metamodel makes statements about what can be expressed in the valid models of a certain modeling language <ref type="bibr" target="#b0">[1]</ref>; often metamodels are identified with modelling languages. We prefer to distinguish and introduce in the ontology the concept of "modelling language"; this will allow us to formulate descriptions such as "the metamodel of UML expressed using the modelling language UML", "the metamodel of ER expressed using the modelling language OWL".</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">ModelMorphism</head><p>In mathematics, a morphism is an abstraction of a structure-preserving process between two mathematical structures <ref type="bibr" target="#b1">[2]</ref>. We carry this term to the modelling world to indicate those functions that, given two models A and B, are meant to represent the correspondences between portions of A and B (such portions can be subgraphs if considering every kind of model as a graph). If A and B are meta-models, e.g. the UML and OWL metamodel, the morphism represents the correspondence of different languages modelling constructs or primitives; a possible correspondence could be UMLClass corresponds to OWL:Class and Associations/Attributes corresponds to Object/Datatype OWL Properties; here the "structure-preserving" property consists in the fact that an UML Association has as source and target an UML Class and as well an OWL Object Property has as source and target an OWL Class.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">ModelOperation</head><p>A model operation is every kind of manipulation that can be performed on one or more models. We distinguish between ModelCreation tasks, that are the usual steps of model buildings, and ModelProcessing, concerning, the operations that can be performed on models once they exist; interesting kinds of processing are "Model Transformations", operations supposed to take as input one or more models and returning as output a model, and ModelMorphismDiscovery, taking as input at least two models and returning a ModelMorphism (i.e. the correspondences discovered among the input models).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.4">Enabling Technology</head><p>A model operation can have 0 or n actual technologies realizing it; we refer to such realizations with the collective name of EnablingTechnology. We identified also three important sub-categories, namely:</p><p>• ModellingLanguage, about languages for expressing models including also those for designing the transformation themselves • Methodolog, the sets of principles, practices, and procedures to be applied to solve a given problem (e.g. a methodology for mapping discovery between two UML database schemata). • SoftwareTools, denoting all those applications realizing some kind of modelling creation or manipulation task.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.5">Approach</head><p>An Approach defines the set of properties common to different specifications of the abstract process through which a configuration can be transformed into another in a single step. For example, a grammatical approach is characterised by the replacement of a collection of elements, in which at least one non-terminal element is present, with one or many different collections. According to the characteristics of the collections in the antecedent or consequent we will have the different types of grammars. Along with formal approaches, approaches based on direct programming of the transformations have been developed.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.6">Purpose</head><p>A model transformation is performed with a purpose; examples of purposes are for example model merging when a transformation on multiple input models is performed with the purpose of joining them into a single comprehensive model, model refactoring, for breaking the model in smaller and/or reusable parts, model translation when it is needed a change of the formalism of representation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Summary and Outlook</head><p>In this paper we have shown the ongoing work about the modelling of the "mapping/transformation" domain. In the future, the ontology will be refined and will be used in a decision support application, guiding the user to the correct choice of the solution to his mapping/transformations related problems.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>References</head></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: The MoMo ontology</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">See http://alliknow.net/software</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">What models mean</title>
		<author>
			<persName><forename type="first">Ed</forename><surname>Seidewitz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Softw</title>
		<imprint>
			<biblScope unit="volume">20</biblScope>
			<biblScope unit="issue">5</biblScope>
			<biblScope unit="page" from="26" to="32" />
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">A Survey of Approaches to Automatic Schema Matching</title>
		<author>
			<persName><forename type="first">E</forename><surname>Rahm</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">A</forename><surname>Bernstein</surname></persName>
		</author>
		<ptr target="http://mathworld.wolfram.com/Morphism.html" />
	</analytic>
	<monogr>
		<title level="m">of the art of ontology-related techniques</title>
				<editor>
			<persName><forename type="first">F</forename></persName>
		</editor>
		<imprint>
			<date type="published" when="2001">2001. 2003. 2004</date>
			<biblScope unit="volume">4</biblScope>
		</imprint>
	</monogr>
	<note>D&apos;Antonio, Michele Missikoff, WP8 members</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">1: Specification of a common framework for characterizing alignment</title>
		<author>
			<persName><forename type="first">Giorgos</forename><surname>Stamou</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Enrico</forename><surname>Franconi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Knowledge Web NoE Deliverable</title>
				<imprint>
			<date type="published" when="2004">D2. 2004</date>
			<biblScope unit="volume">2</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">3: State of the art on current alignment techniques</title>
		<author>
			<persName><forename type="first">Giorgos</forename><surname>Stamou</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Diana</forename><surname>Maynard</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Knowledge Web NoE Deliverable</title>
				<imprint>
			<date type="published" when="2004">D2. 2004</date>
			<biblScope unit="volume">2</biblScope>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
