<?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">Using Ontologies to Compose Transformations of XML Schema Based Documents</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Christian</forename><surname>Koncilia</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Dep. of Informatics-Systems</orgName>
								<orgName type="institution">University of Klagenfurt</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Marek</forename><surname>Lehmann</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Dep. of Informatics-Systems</orgName>
								<orgName type="institution">University of Klagenfurt</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Horst</forename><surname>Pichler</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Dep. of Informatics-Systems</orgName>
								<orgName type="institution">University of Klagenfurt</orgName>
							</affiliation>
						</author>
						<title level="a" type="main">Using Ontologies to Compose Transformations of XML Schema Based Documents</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">D22F6D7C60C67386F297075EC0604FF2</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-23T21:33+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>We discuss how ontologies can be used to facilitate the construction of transformations between XML documents. We introduced a method to compose transformations for XML documents reusing existing (smaller) transformations to define transformations for more complex documents. Linking the types on which these transformations are built to the elements (concepts) of an ontology supports the identification of candidate transformations potentially useful for the composition. If no applicable transformations exist, the ontology can be used for identifying semantically equivalent elements and types of source and target XML-Schema.</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>XML <ref type="bibr" target="#b0">[1]</ref> has become a standard for data interchange and publication, in particular for data published on the web or transmitted through web services. Open exchange of electronic documents in XML formats frequently requires the transformation to different XML Schemas <ref type="bibr" target="#b6">[7]</ref> or DTDs. The most widely used and popular way to transform an XML document from one schema to another is to use XSLT transformations <ref type="bibr" target="#b1">[2]</ref>. XSLT allows to write simple transformations for small documents quite easy, but complexity and error-rates increase dramatically with the size of the documents. To define transformations the programmer requires domain knowledge and a deep understanding of the concepts being transformed. Maintenance and reuse of XSLT-code is also very difficult, therefor the creation of transformations tends to be time consuming and tedious.</p><p>We proposed to support XSLT-programmers with the concepts of the XML components and the composition of the XML transformations. We presented a solution for DTD based documents <ref type="bibr" target="#b5">[6]</ref>, which was later extended for XML Schema based documents <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b8">9]</ref>. The key idea of this approach is: Given a source schema S and a target schema T, we can transform a document of S into T by decomposing the document into components for we find transformations in our transformation base and compose the transformation of the whole document from transformations of its parts. Part of this procedure is the identification of components (types, elements) of the target schema which are semantically similar to a component of the source schema. Now we propose to link the components of both schemas to the concepts of a common ontology <ref type="bibr" target="#b4">[5]</ref> and use this semantic relationships in the search for proper transformations. Linking the concepts of ontologies to XML components used to compose XSLT transformations will ease the production of such transformations between complex XML vocabularies.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Composition of Transformations for XML Documents</head><p>An XML component is a semantically meaningful unit of the problem domain. In an XML document the tags can be interpreted as delimiters of a component defined in such a way. In the tree model the same component is defined as a subtree identified through its root element. We extended this idea by transformations based on types defined in XML Schemas <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b8">9]</ref>. The composition of XML documents allows us to write a separate transformation for every component. In our proposal the XML Schema enables us to attach a source type and a target type to XSLT transformations. A library stores information about available transformations and their relation to schemas and types and is instrumental in decomposing a document in a way that promotes the application of already available transformations on subcomponents.</p><p>XML Schema gives the programmers flexibility in defining schemas for the same documents in many different ways. There have been some efforts to define design patterns for the XML Schema <ref type="bibr" target="#b2">[3]</ref>. In our approach the most useful pattern was called the Venetian Blind Design. In this pattern all meaningful components of an XML document (e.g. an address) are defined as named complex types, which can easily be reused in many parts of a document (e.g. elements personalAddress and officeAddress both of type addressT ).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Concepts in Ontologies</head><p>An ontology is a shared common understanding of a domain that can be communicated across people and computers <ref type="bibr" target="#b9">[10]</ref>. They are generally used to build semantic-aware information systems which includes efforts to develop the socalled semantic web, medical information systems and so forth. An ontology may be represented as a set of concepts and their relationships. A concept is uniquely named within this ontology. It may be composed of other concepts, related to other concepts or be similar to other concepts. In <ref type="bibr" target="#b4">[5]</ref> XML components were linked to concepts of an ontology. This allows to look up the exact definition of the component in the ontology, to find similar or more general or more specialized concepts and components.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Linking Ontological Concepts and XML Components</head><p>It is possible to link concepts of an ontology to XML components to support transformations between different XML vocabularies related to the same ontology. Thus the semantic description of the meaning of tags is no longer simply in their name, but different named tags may represent the same concept. Some preliminary work for the DTD based documents was done in <ref type="bibr" target="#b7">[8]</ref>. We want to extend this idea for XML Schema based documents. Fig. <ref type="figure" target="#fig_0">1</ref> shows a metamodel which links XML documents typed with XML Schema to concepts in an ontology.</p><p>Each XML element is of a particular XML Schema type. Types are either simple or complex. A complex type can have attributes and elements. Attributes are always of a simple type, elements can be either of a simple or a complex type. Additionally a new type can be derived from existing types.</p><p>Elements of a type can be transformed to elements of another type by applying a transformation between the source and the target XML Schema type. Each element may be related to some concept.</p><p>A concept may be composed of other concepts, related to other concepts, be similar to other concepts or be refinement of other concepts.</p><p>The ontology can be used as a data dictionary for XML Schemas and XML documents based on them, which puts the authors of transformations to a better understanding of the vocabularies being transformed.</p><p>The composition of XML transformations presented in <ref type="bibr" target="#b3">[4]</ref> works best when all meaningful components of an XML document are defined as named complex types. Concepts related to XML elements of anonymous XML Schema types (defined locally within the element) can be identified as XML components, which enables us to attach transformations to them. This would ease the composition of transformations for XML Schemas written with a design pattern other than Venetian Blind (e.g. Russian Doll Design) <ref type="bibr" target="#b2">[3]</ref>.</p><p>The composition of XML transformation between two documents may be improved by searching the ontology for concepts related to the components of these documents and the relations between them (e.g. composition).</p><p>This extended structure is now used for decomposing an XML document and to identify suitable transformations. Given a document of schema S and the target schema T. We can decompose the document in its immediate components (elements, subtrees). Using the ontology we can search for elements and types in the target schema which are semantically equivalent to the components of the actual document and we can search for transformations of the these components. We can use the generalization hierarchy to search for transformations on more general or more specific components. If we do not find a satisfying transformation we can present a similar one to the programmer and. If there are still no matching transformations we can at least support the programmer by identifying the elements and types of the target schema which the components of the source schema should be transformed to.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Conclusions</head><p>Linking ontologies with types and elements of XML Schema descriptions can not only semantically enrich the schema definition and the metadata of XML documents but can also support the construction of transformation programs necessary for integrating independently built information systems with own document formats. Adorning the definition of XSLT programs with source and target types and registering them in a transformation library can ease the job of transformation programming. Ontologies provide the missing link between different schema definitions and allow to search for reusable transformation of components which can be composed to a transformation of the whole document.</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. Metamodel for ontological description of XML components</figDesc></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<author>
			<persName><forename type="first">T</forename><surname>Bray</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Paoli</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">M</forename><surname>Sperberg-Mcqueen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Maler</surname></persName>
		</author>
		<title level="m">Extensible Markup Language (XML) 1</title>
				<imprint>
			<biblScope unit="page">0</biblScope>
		</imprint>
	</monogr>
	<note>Second Edition. W3C Recommendation</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<author>
			<persName><forename type="first">J</forename></persName>
		</author>
		<title level="m">Clark XSL Transformations</title>
				<imprint/>
	</monogr>
	<note>XSLT) v1.0. W3C Recommendation</note>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">Professional XML Schemas</title>
		<author>
			<persName><forename type="first">K</forename><surname>Cagle</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Ducket</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2001">2001</date>
			<publisher>Wrox Press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Composition of Transformations for XML Schema Based Documents</title>
		<author>
			<persName><forename type="first">J</forename><surname>Eder</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Lehmann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ADBIS 2003</title>
				<imprint/>
	</monogr>
	<note>Short paper</note>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Ontologies for Managing Knowledge about Forms for Goverment Processes</title>
		<author>
			<persName><forename type="first">J</forename><surname>Eder</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Missikoff</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of 2nd International Workshop on Knowledge Management in E-Government</title>
				<meeting>2nd International Workshop on Knowledge Management in E-Government</meeting>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Composition of XML-Transformations</title>
		<author>
			<persName><forename type="first">J</forename><surname>Eder</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Strametz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">LNCS</title>
		<imprint>
			<biblScope unit="volume">2115</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<title level="m" type="main">XML Schema Part 0: Primer. W3C Recommendation</title>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">C</forename><surname>Fallside</surname></persName>
		</author>
		<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">Application of Ontologies to Transformations of XML Documents</title>
		<author>
			<persName><forename type="first">B</forename><surname>Keimel</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
		<respStmt>
			<orgName>the University of Klagenfurt</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Master Thesis at</note>
	<note>In German</note>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Exploiting Generalization for the Composition of Transformations of XML Schema Based Documents</title>
		<author>
			<persName><forename type="first">M</forename><surname>Lehmann</surname></persName>
		</author>
		<ptr target="CEUR-WS.org/" />
	</analytic>
	<monogr>
		<title level="m">CAiSE Forum 2003</title>
				<imprint>
			<biblScope unit="volume">74</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Ontologies: Principles, Methods and Applications</title>
		<author>
			<persName><forename type="first">M</forename><surname>Uschold</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Gruninger</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Knowledge Engineering Review</title>
		<imprint>
			<biblScope unit="volume">11</biblScope>
			<biblScope unit="issue">2</biblScope>
			<date type="published" when="1996">1996</date>
		</imprint>
	</monogr>
</biblStruct>

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