X3ML Toolkit

Coordinator: Ms. Maria Theodoridou <mariaATics.forth.gr>

The Centre for Cultural Informatics works as competence center for the CIDOC CRM (ISO 21127), by building up and exchanging application know-how, consultancy to implementers and researchers, and contribution to the dissemination, maintenance and evolution of the standard itself. CCI in collaboration with CIDOC for the last 20 years, received basic empirical input and developed a significant number of mapping specifications using a formalism based on the declaration of equivalences and the interpretation of each source schema as a set of nodes and links.  Such mappings were used to validate the CRM. The X3ML mapping definition language, a declarative XML language, was the culmination of this experience and formalism. It describes schema mappings in such a way that they can be collaboratively created and discussed by experts who are  able to produce the semantics of a mapping. It is human and machine readable and is the ultimate communication means on the semantic correctness of the mapping.

Following the X3ML definition, we developed and used an efficient  transformation algorithm which processes the declarative X3ML statements and produces equivalent rdf statements. Different cases of semantic heterogeneity that were encountered in different applications are covered.  In parallel, the CIDOC CRM SIG started working on the SYNERGY framework, a rich and comprehensive Reference Model for a better practice of data provisioning and aggregation processes, primarily in the cultural heritage sector, but also for e-science. The aggregation of heterogeneous data from different institutions has the potential to create rich data resources useful for a range of different purposes, from research to education and public interests. Along this line, CCI has developed the X3ML Toolkit, a set of small, open source, microservices that follow the SYNERGY Reference Model. They are designed with open interfaces and they can be easily customized and adapted to complex environments. The X3ML Toolkit consists of a set of software components that assist the data provisioning process for information integration. The key components of the toolkit are: (a) Mapping Memory Manager, (b) 3M Editor, and (c) X3ML Engine.


X3ML mapping definition language

X3ML is an XML based language which describes schema mappings in such a way that they can be collaboratively created and discussed by experts. X3ML was designed on the basis of work that started in FORTH in 2006 and emphasizes on establishing a standardized mapping description which lends itself to collaboration and the building of a mapping memory to accumulate knowledge and experience.


3M - the Mapping Memory Manager

3M is a tool for managing mapping definition files. It’s based on FIMS management system for the administration of the files and also on the 3MEditor for editing and viewing the files. It provides a number of administrative actions that assist the experts to manage their mapping definition files.
3M is available online and is free to use. The source code is open source available on github.


3M Editor

The 3M Editor component is a web application suite containing several software sub-components and exploits several external services. It is available online through 3M and its main functionality is to assist users during the mapping definition process, using a human-friendly user interface and a set of sub-components that either suggest or validate the user input. The source code is open source available on github.


X3ML Engine

The X3ML Engine realizes the transformation of the source records to the target format. The engine takes as input the source data (currently in the form of an XML document), the description of the mappings in the X3ML mapping definition file and the URI generation policy file and is responsible for transforming the source document into a valid RDF document which corresponds to the input XML file, with respect to the given mappings and policy. The source code is open source available on github.


RDF Visualiser

RDF Visualizer is a generic browsing mechanism that gives the user a flexible, highly configurable, detailed overview of a dataset/database encoded in RDF. It has been integrated in the 3M interface of the X3ML Toolkit for data mapping and transformation. It enhances 3M with an important validation tool for transformed data. Domain experts can easily check and correct their mapping and transformations on the fly resulting, enabling an iterative and collaborative evaluation of the resultant RDF.