<?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 MDD annotation methodology for Semantic Enhanced Service Oriented Architectures</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author role="corresp">
							<persName><forename type="first">Lorenzo</forename><surname>Pondrelli</surname></persName>
							<email>lorenzo.pondrelli@gruppoformula.it</email>
							<affiliation key="aff0">
								<orgName type="department">Gruppo Formula</orgName>
								<address>
									<addrLine>Via Mateotti 5</addrLine>
									<postCode>40050</postCode>
									<settlement>Villanova di Castenaso (BO)</settlement>
									<country key="IT">Italy</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">An MDD annotation methodology for Semantic Enhanced Service Oriented Architectures</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">9DBE21332387D410E0C12ABE54980F7A</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T11:17+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>Service Oriented Architectures are increasingly being used to achieve interoperability among heterogeneous systems. SOAs help developers to integrate different architectures in order to reuse legacy systems and extend software boundaries. Semantics could improve SOA features adding a common understanding of the resources shared among different systems. Model Driven Development could be useful to produce a scalable and neutral methodology for guiding developers through software development and integration processes, employing reusable approaches and platform independency. In this context it is necessary to understand how we can use the MDD approach to enhance Service Oriented Architecture with semantics. This paper proposes to use a common visualization of ontologies and services, based on the industry-standard UML modelling language and its profiling system, to solve the resources annotation process in a SOA context. A first analysis of the main UML approaches for modelling ontologies is followed by the explanation of a general method for describing service interfaces and the resources exchanged among them.</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>Semantic Oriented Architectures simplify the development of complex architectures, introducing the concepts of black box components and interface programming. Black boxes are units whose output is a specified function of the input, but for which the method of converting input to output is not necessarily specified <ref type="bibr" target="#b0">[1]</ref>, in other words pieces of software that can be used without knowledge of its inner workings, for which the user supplies the input assuming the output to be correct. Following this approach the most important thing in the developing and in the integration process is the definition of the interfaces of the software components and their description. If we want to ensure the interoperability among these interfaces we need to add not only a human understandable explanation but also a computer comprehensible common interpretation of the resources shared among the different systems. To achieve these results we can use two different approaches: using standards or using ontologies to share common knowledge.</p><p>Ontologies could be used to build common knowledge that can be shared among different interfaces in order to exchange information between heterogeneous systems. In particular Domain Ontologies are formal organization of domain knowledge and in that way enable knowledge sharing between different knowledge-base applications <ref type="bibr" target="#b1">[2]</ref>, thus applicable to SOAs. In a SOA context we can use Domain Ontologies collections to annotate all resources, both interfaces and content schemas, in order to obtain shared descriptions of knowledge. There are software applications that allow the annotation of resources, in particular most of them permit the annotation of web pages (Ontomat <ref type="bibr" target="#b2">[3]</ref>, MnM <ref type="bibr" target="#b3">[4]</ref>, Cohse <ref type="bibr" target="#b4">[5]</ref> and Smore <ref type="bibr" target="#b5">[6]</ref>) or text documents <ref type="bibr">(Trellis [7]</ref> and Melita <ref type="bibr" target="#b7">[8]</ref>). Service Oriented Architectures are strictly related to the Web services technology and the associated standards such as SOAP <ref type="bibr" target="#b8">[9]</ref>, WSDL <ref type="bibr" target="#b9">[10]</ref> and UDDI <ref type="bibr" target="#b10">[11]</ref>. It is more difficult to find tools for the annotation of Web services and in general for the annotation of distributed application interfaces. One example is the METEOR-S Web Service Annotation Framework (MWFAS) <ref type="bibr" target="#b11">[12]</ref> that produces WSDL-S descriptions of service interfaces. However for the purpose of this paper the key point of is the abstraction from particular technologies, such as WSDL and SOAP, generalizing from Web services technologies in order to find a more general solution. An MDD <ref type="bibr" target="#b12">[13]</ref> approach should allowing platform independent development. In this context UML seems to be the best solution for proposing a complete developing framework for adding semantics to SOAs, in particular a profile for describing ontologies and a method for modeling black box interfaces which have been semantically enriched.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Using UML for modeling ontologies</head><p>The semantic languages, used to express ontologies, are not readable by humans because their representation syntaxes are built for machine understandability. From this perspective, one of the main open issues in this field is related to the visualization of ontologies for human readers. Most of the ontologies tools and editors, such as the most famous Protégé, use a tree arrangement to visualize ontologies following the structure of classes, slots, properties and instances. There are many proposals regarding the possibility to use UML, the industry-standard of modeling languages, for solving that issue. Some of the proposals consider the possibility to create a new MOF metalanguage at the same level of UML <ref type="bibr" target="#b13">[14]</ref>, [15] but most of them are related to UML profiles for ontologies <ref type="bibr" target="#b14">[16]</ref>, <ref type="bibr" target="#b15">[17]</ref>, <ref type="bibr" target="#b16">[18]</ref>. The main difference is that the UML profiling system is not a first-class extension mechanism so it cannot be used to modify existing metamodels but only for adapting metamodels with constructs for a particular domain. It allows the extension of metamodels in order to adapt them for different purposes. The problem is that the ontology languages have many features that UML does not support. In this perspective could be useful to understand completely the relationships between the main ontology concepts and UML. Table <ref type="table" target="#tab_0">1</ref> explains the most common similarities between them: The methods based on UML profiles allow the using of UML, so UML editors too, for building and managing ontologies. This fact means also that we can represent ontologies, abstracting from the different semantic languages, using XMI (now also Protégé contains a plug-in that includes a storage format compatible to the metadata standard MOF, obviously based on XMI <ref type="bibr" target="#b17">[19]</ref>).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Semantic description of interfaces and their content</head><p>After the ontology modeling stage, the consequently step is the development of a methodology to semantically describe interfaces, such as Web services. Each interface needs two different levels of description. The first one regards the meaning of the interface itself and its operations. The second is related to the content of the objects exchanged among interfaces, in other words the meaning of the input and output parameters of each interface.</p><p>If we want to use UML as base of our annotation process, we need to profile both these two different kinds of resources:</p><p>• Component Interfaces, such as Web services.</p><p>• Business Objects to describe parameters exchanged among interfaces.</p><p>In <ref type="bibr" target="#b18">[20]</ref>, <ref type="bibr" target="#b19">[21]</ref>, <ref type="bibr" target="#b20">[22]</ref>, <ref type="bibr" target="#b21">[23]</ref> there are proposals about UML profiles for services that can be used therefore to express Component interfaces. For Business Objects we can suppose to use an UML profile for XML schemas (as in <ref type="bibr" target="#b21">[23]</ref>) that allows the description of semi-structured documents as proposed in <ref type="bibr" target="#b22">[24]</ref>, <ref type="bibr" target="#b23">[25]</ref>, <ref type="bibr" target="#b24">[26]</ref>, <ref type="bibr" target="#b25">[27]</ref>, <ref type="bibr" target="#b26">[28]</ref>, <ref type="bibr" target="#b27">[29]</ref>. In this manner we can fully complete the description of all our resources, using UML and XMI, at a platform independent level. The last step is the creation of a general technique for linking ontologies designed following a particular profile with other resources. Our proposal regards only the methodology and does not consider the choice of particular profiles. It is based on a double annotation: − The first phase annotation is a visual annotation produced using UML dependency artifacts stereotyped with simples "semRef" labels or more specific stereotypes, between ontology elements and resource elements, such as service , attributes and operations. In Figure <ref type="figure" target="#fig_0">1</ref> there is an simple example of this kind of annotation using the Provost's service example proposed in <ref type="bibr" target="#b21">[23]</ref> and a related ontology built following <ref type="bibr" target="#b14">[16]</ref>. − The second phase annotation produces a more detailed annotation performed using tagged values related to each resource elements. For instance, it is possible to add more exhaustive descriptions of the single parameters of the service operations or particular business information regarding services, such as Business Entities involved in the service lifecycle or Quality of Service information. − Obviously, we can suppose to add also a method for including more human understandable information, using the UML notes system. In this manner we ensure a complete platform independent description of the resources involved in SOA with the support of ontologies to guarantee interoperability.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Conclusions</head><p>Using our methodology it is possible to describe interfaces, such as Web services, and all the resources related, in a platform independent way using UML. The annotation process allows to add, at the same time, computer and human understandable metadata to each element of SOA resources, using common ontologies for sharing the information among different systems. In this manner we can suppose to use UML tools as ontology editors and annotators. XMI could become a neutral common language for describing elements related to ontologies and Service Oriented Architectures in order to utilize model transformation capabilities to get different Platform Specific Model for singular technologies.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. First phase annotation example using "semRef" dependencies between Component Interface, Business Objects and ontology on the base of example proposed in [23].</figDesc><graphic coords="4,124.74,193.38,345.72,178.50" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 .</head><label>1</label><figDesc>Mapping between UML and the main ontology languages concepts</figDesc><table><row><cell>UML</cell><cell>Ontology concepts</cell></row><row><cell>Packages</cell><cell>Ontologies</cell></row><row><cell>Classes</cell><cell>Classes</cell></row><row><cell>Attributes, associations and classes</cell><cell>Properties</cell></row><row><cell>Navigable</cell><cell>Domain, range</cell></row><row><cell>Note</cell><cell>Comment</cell></row><row><cell>Multiplicity</cell><cell>Cardinality</cell></row><row><cell>Data types</cell><cell>Data types</cell></row><row><cell>Objects</cell><cell>Instances</cell></row></table></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="http://roland.lerc.nasa.gov/~dglover/dictionary/" />
		<title level="m">Dictionary of technical terms for aerospace use</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">A translation approach to portable ontology specifications</title>
		<author>
			<persName><forename type="first">T</forename><forename type="middle">R</forename><surname>Gruber</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Knowledge Acquisition</title>
		<imprint>
			<biblScope unit="volume">5</biblScope>
			<biblScope unit="issue">2</biblScope>
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<ptr target="http://annotation.semanticweb.org/ontomat/index.html" />
		<title level="m">OntoMat-Annotizer</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<monogr>
		<author>
			<persName><surname>Mnm</surname></persName>
		</author>
		<ptr target="http://kmi.open.ac.uk/projects/akt/MnM/" />
		<title level="m">Ontology Driven Semi-Automatic and Automatic Support for Semantic Web</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<author>
			<persName><surname>Cohse</surname></persName>
		</author>
		<ptr target="http://cohse.semanticweb.org/" />
		<title level="m">The Conceptual Open Hypermedia Project</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<author>
			<persName><surname>Smore</surname></persName>
		</author>
		<ptr target="http://www.mindswap.org/2005/SMORE/" />
		<title level="m">Semantic Markup, Ontology and RDF Editor</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<author>
			<persName><surname>Trellis</surname></persName>
		</author>
		<ptr target="http://www.isi.edu/ikcap/trellis/" />
		<title level="m">I-Knowlegde-Capture</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title/>
		<author>
			<persName><forename type="first">Melita</forename></persName>
		</author>
		<ptr target="http://nlp.shef.ac.uk/melita/" />
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<ptr target="http://www.w3.org/TR/soap/" />
		<title level="m">Simple Object Access Protocol specifications</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<ptr target="http://www.w3.org/TR/wsdl" />
		<title level="m">Web Service Description Language specifications</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<ptr target="http://www.uddi.org/specification.html" />
		<title level="m">Universal Description, Discovery and Integration specifications</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<author>
			<persName><surname>Mwsaf</surname></persName>
		</author>
		<ptr target="http://lsdis.cs.uga.edu/Projects/METEOR-S/MWSAF/" />
		<title level="m">METEOR-S We Service Annotation Framework</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<monogr>
		<ptr target="http://www.omg.org/mda/" />
		<title level="m">Model Driven Architecture web site</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<monogr>
		<author>
			<persName><forename type="first">Kenneth</forename><surname>Baclawski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mieczyslaw</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jeffrey</forename><forename type="middle">E</forename><surname>Kokar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Evan</forename><forename type="middle">Wallace1</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jerzy</forename><surname>Letkowski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Manfred</forename><forename type="middle">R</forename><surname>Koethe1</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Paul</forename><surname>Kogut</surname></persName>
		</author>
		<title level="m">UOL: Unified Ontology Language 15</title>
				<imprint/>
	</monogr>
	<note>Ontology Definition Metamodel</note>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<author>
			<persName><forename type="first">D</forename><surname>Djuric</surname></persName>
		</author>
		<ptr target="http://www.comsis.fon.bg.ac.yu/ComSISpdf/Volume01/Papers/DraganDjuric.pdf" />
		<title level="m">MDA-based Ontology Infrastructure</title>
				<imprint>
			<date type="published" when="2004">2004</date>
			<biblScope unit="volume">1</biblScope>
		</imprint>
		<respStmt>
			<orgName>Computer Science and Information Systems</orgName>
		</respStmt>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Extending the Unified Modeling Language for ontology development</title>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">K</forename><surname>Baclawski</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Kokar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Kogut</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">E</forename><surname>Hart</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Letkowski</surname></persName>
		</author>
		<author>
			<persName><surname>Emery</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal Software and Systems Modeling (SoSyM)</title>
		<imprint>
			<biblScope unit="volume">1</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="142" to="156" />
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<monogr>
		<title level="m" type="main">A UML profile and mapping for the generation of ontology-specific content languages</title>
		<author>
			<persName><forename type="first">Cranefield</forename><surname>Stephen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Purvis</forename><surname>Martin</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<monogr>
		<ptr target="http://protege.stanford.edu/plugins/xmi/" />
		<title level="m">Protégé plug-in for XMI support</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<monogr>
		<title level="m" type="main">Model-driven Web Services Development</title>
		<author>
			<persName><forename type="first">R</forename><surname>Grønmo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Skogan</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Solheim</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Oldevik</surname></persName>
		</author>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<monogr>
		<ptr target="http://www.acegis.net/" />
		<title level="m">Adaptable and Composable E-commerce and Geographic Information Services</title>
				<imprint/>
	</monogr>
	<note>ACE-GIS</note>
</biblStruct>

<biblStruct xml:id="b20">
	<monogr>
		<ptr target="http://www-128.ibm.com/developerworks/rational/library/05/419_soa/#N10041" />
		<title level="m">IBM UML 2.0 Profile for software services</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<monogr>
		<author>
			<persName><forename type="first">W</forename><surname>Provost</surname></persName>
		</author>
		<ptr target="http://webservices.xml.com/pub/a/ws/2003/08/05/uml.html?page=2" />
		<title level="m">Uml for Web services</title>
				<imprint>
			<date type="published" when="2003">2003</date>
		</imprint>
	</monogr>
	<note>XML.</note>
</biblStruct>

<biblStruct xml:id="b22">
	<monogr>
		<title level="m" type="main">Representing XML Schema in UML -An UML Profile for XML Schema</title>
		<author>
			<persName><forename type="first">Martin</forename><surname>Bernauer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Gerti</forename><surname>Kappel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Gerhard</forename><surname>Kramler</surname></persName>
		</author>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b23">
	<monogr>
		<title level="m" type="main">XML Schema Profile Definition</title>
		<author>
			<persName><forename type="first">Nicholas</forename><surname>Routledge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Andrew</forename><surname>Goodchild</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Linda</forename><surname>Bird</surname></persName>
		</author>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b24">
	<analytic>
		<title level="a" type="main">UML and XML Schema</title>
		<author>
			<persName><forename type="first">Nicholas</forename><surname>Routledge</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Andrew</forename><surname>Goodchild</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Linda</forename><surname>Bird</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">13th Australian Database Conference (ADC2002)</title>
				<imprint>
			<publisher>ACS</publisher>
			<date type="published" when="2002">2002</date>
			<biblScope unit="page" from="157" to="166" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b25">
	<monogr>
		<title level="m" type="main">Modeling XML Applications with UML</title>
		<author>
			<persName><forename type="first">D</forename><surname>Carlson</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2001">2001</date>
			<publisher>Addison-Wesley</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b26">
	<monogr>
		<author>
			<persName><forename type="first">R</forename><surname>Eckstein</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Eckstein</surname></persName>
		</author>
		<title level="m">XML und Datenmodellierung</title>
				<imprint>
			<publisher>dpunkt.verlag</publisher>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b27">
	<monogr>
		<title level="m" type="main">UML For W3C XML Schema Design</title>
		<author>
			<persName><forename type="first">W</forename><surname>Provost</surname></persName>
		</author>
		<ptr target="http://www.xml.com/lpt/a/2002/08/07/wxs_uml.html" />
		<imprint>
			<date type="published" when="2002-08">August 2002</date>
		</imprint>
	</monogr>
</biblStruct>

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