Semantic mapper
Encyclopedia
A semantic mapper is tool or service that aids in the transformation of data element
s from one namespace
into another namespace. A semantic mapper is an essential component of a semantic broker
and one tool that is enabled by the Semantic Web
technologies.
Essentially the problems arising in semantic mapping are the same as in data mapping
for data integration
purposes, with the difference that here the semantic relationships are made explicit through the use of semantic nets or ontologies which play the role of data dictionaries
in data mapping.
A semantic mapper processes on a list of data elements in the source namespace. The semantic mapper will successively translate the data elements from the source namespace to the destination namespace. The mapping does not necessarily need to be a one-to-one mapping. Some data elements may map to several data elements in the destination.
Some semantic mappers are static in that they will do a one-time data transforms. Others will generate an executable program to repeatedly perform this transform. The output of this program may be any transformation system such as XSLT
, a Java
program or a program in some other procedural language.
Data element
In metadata, the term data element is an atomic unit of data that has precise meaning or precise semantics. A data element has:# An identification such as a data element name# A clear data element definition# One or more representation terms...
s from one namespace
Namespace
In general, a namespace is a container that provides context for the identifiers it holds, and allows the disambiguation of homonym identifiers residing in different namespaces....
into another namespace. A semantic mapper is an essential component of a semantic broker
Semantic broker
A semantic broker is a computer service that automatically provides semantic mapper services. A semantic broker is frequently part of a semantic middleware system that leverage semantic equivalence statements...
and one tool that is enabled by the Semantic Web
Semantic Web
The Semantic Web is a collaborative movement led by the World Wide Web Consortium that promotes common formats for data on the World Wide Web. By encouraging the inclusion of semantic content in web pages, the Semantic Web aims at converting the current web of unstructured documents into a "web of...
technologies.
Essentially the problems arising in semantic mapping are the same as in data mapping
Data mapping
Data mapping is the process of creating data element mappings between two distinct data models. Data mapping is used as a first step for a wide variety of data integration tasks including:...
for data integration
Data integration
Data integration involves combining data residing in different sources and providing users with a unified view of these data.This process becomes significant in a variety of situations, which include both commercial and scientific domains...
purposes, with the difference that here the semantic relationships are made explicit through the use of semantic nets or ontologies which play the role of data dictionaries
Data dictionary
A data dictionary, or metadata repository, as defined in the IBM Dictionary of Computing, is a "centralized repository of information about data such as meaning, relationships to other data, origin, usage, and format." The term may have one of several closely related meanings pertaining to...
in data mapping.
Structure of a semantic mapper
A semantic mapper must have access to three data sets:- List of data elements source namespaceNamespace (computer science)A namespace is an abstract container or environment created to hold a logical grouping of unique identifiers or symbols . An identifier defined in a namespace is associated only with that namespace. The same identifier can be independently defined in multiple namespaces...
- List of data elements in destination namespace
- List of semantic equivalent statements between source and destination (e.g. owl:equivalentClass, owl:equivalentProperty or owl:sameAs in OWLWeb Ontology LanguageThe Web Ontology Language is a family of knowledge representation languages for authoring ontologies.The languages are characterised by formal semantics and RDF/XML-based serializations for the Semantic Web...
).
A semantic mapper processes on a list of data elements in the source namespace. The semantic mapper will successively translate the data elements from the source namespace to the destination namespace. The mapping does not necessarily need to be a one-to-one mapping. Some data elements may map to several data elements in the destination.
Some semantic mappers are static in that they will do a one-time data transforms. Others will generate an executable program to repeatedly perform this transform. The output of this program may be any transformation system such as XSLT
XSLT
XSLT is a declarative, XML-based language used for the transformation of XML documents. The original document is not changed; rather, a new document is created based on the content of an existing one. The new document may be serialized by the processor in standard XML syntax or in another format,...
, a Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
program or a program in some other procedural language.
See also
- Ontology matching
- Semantic integrationSemantic integrationSemantic integration is the process of interrelating information from diverse sources, for example calendars and to do lists; email archives; physical, psychological, and social presence information; documents of all sorts; contacts ; search results; and advertising and marketing relevance derived...
- semantic translationSemantic translationSemantic translation is the process of using semantic information to aid in the translation of data in one representation or data model to another representation or data model...
- data modelData modelA data model in software engineering is an abstract model, that documents and organizes the business data for communication between team members and is used as a plan for developing applications, specifically how data is stored and accessed....
- mediationMediationMediation, as used in law, is a form of alternative dispute resolution , a way of resolving disputes between two or more parties. A third party, the mediator, assists the parties to negotiate their own settlement...
- Enterprise Application IntegrationEnterprise application integrationEnterprise Application Integration is defined as the use of software and computer systems architectural principles to integrate a set of enterprise computer applications.- Overview :...
- Semantic Mapping