Carrying out a mapping
In this example we will show a mapping to the CARARE schema. Before starting it is well worth knowing that you can stop and start, to develop your mapping over several sessions. The mapping is saved each time you close the Mapping window.
Find the element in your input schema to be mapped. You can do this either by expanding the tree or by running a search for the element name.

Next, find the element in the target schema that you want to map the element to. You can do this by either expanding the schema or by using the Navigation.
Once you can see both elements in your window, hover your curser over the element in the input schema. Grab it by right clicking and then drag it across to the box displayed below the element in the target schema. When you see a tick appear you can drop the element into place.

A mapped element
In some cases, you will need to add a constant value to every record in your dataset. For example, the name of the organisation providing the data is needed by Europeana but this information is generally not included in native datasets. To add a constant:
Find the element in the target schema and double click on the unmapped area. You can then type the value needed into the field.

Adding a constant
Note: Adding a constant can be very useful when you want the same data to appear in every record. You may wish to do this when the statistics show the provided data is inconsistent.
For some elements, you will be required to pick a value from an enumerated list. If your dataset includes exactly the same value in an element you can use the drag and drop method. If the data is not available in your dataset (and the element is mandatory) you will need to pick a value from the enumerated list.
Find the element in the target schema and then double click on it, you will then be offered a list of values. Select the appropriate value and click on the “Apply” button. The same value will be inserted on each record.

Selecting a value from an enumerated list
In some cases, you will want to concatenate (or combine) more than one value when creating your mapping. This can be helpful when information is divided between separate elements in your native dataset but can usefully be combined in the mapping to the target schema. It can also be helpful when you wish to add information for users. To concatenate values:
Find the element in the target schema. Complete the initial mapping and then click on to add a new line. Now you can add the new mapping.

Note: When you concatenate values in this way, the data is combined in the same line. To avoid words running together, add a line with a constant to create a space between the elements.
In some cases, you will want to use the mapping editor to modify the value being input from your target source. This can be useful when, for example, an element in your native dataset contains a series of keywords that can usefully be split between separate elements in the mapping.
First find the elements that you want to map, drag and drop the element from the input schema to the target schema. Once this has been completed you will notice the function icon
appears. Click on this to open the Functional mapping area on the right-hand side of the screen. This offers you a series of functions to modify the data including:

Function | Description |
Substring | You specify from which character in a string to start and how many characters to include in the substring. For example, s is the 5th character (including gaps) of the sentence above, specifying 7 characters going backwards from the f character of the word "from" gives the substring ‘specify’. |
Substring after | You specify a value after which a substring in the original string is included in the mapping. For example, if the value is “mapping” substring after “included in the” gives the correct value. |
Substring before | You specify a value before which a substring in the original string is included in the mapping. For example, if the value is “You” substring before “specify” gives the correct value. |
Substring between | You specify the value before and after the substrings that you wish to include. For example, the value after the character “r the“ and the value before “ that” gives “substrings”. |
Replace string | You set a string to be replaced and the replacement |
Trim | Trims spaces. |
Replace with regex | Replace all occurrences matching the regular expression (first argument) with the second argument (string). |
Split | You set the delimiter for tokenization and the start index of the original string . |
Tokenize content and generate an element per content | You set the delimiter for tokenization and the start index of the original string. For example, your element contains “castle; fort; tower”. By specifying “;” as the delimiter you can split this string so that one keyword appears in each element (which repeats). |
Custom function | You can create a custom XSLT function (this is recommended only for technical expert users). |
In the example shown below, a functional mapping has been used to select the substring before the “,”.

Functional mapping
Note: Contact the support desk if you need help with functional mappings.
Mappings can be restricted so that they will apply only under certain conditions. This can be very useful when, for example you specify a constant as part of a concatenated mapping. Specifying a condition can make sure that the constant is included only when data is present in a certain element.
First find the elements that you want to map, once you have completed the mapping you will notice the condition icon
appears. To define the condition, click on this icon and the condition editor will appear. You can use this to specify one or more conditions joined by AND or OR. The conditions include:

Condition | Description |
Is equal to | this condition is satisfied when the given element is equal to the given value. |
Is not equal to | this condition that is satisfied when the given element is not equal to the value. |
Exists | sets a condition that is satisfied if the given element exists in a record.
(The presence of an element name in the input tree does not mean that the element exists in every record in the set). |
Does not exist | sets a condition that is satisfied if the given element does not exist. |
Contains | sets a condition that is satisfied if the given element contains the given value. |
Does not contain | sets a condition that is satisfied if the given element does not contain the given value. |
Starts with | sets a condition that is satisfied if the given element starts with the given value. |
Does not start with | sets a condition that is satisfied if the given element does not start with the given value. |
Ends with | sets a condition that is satisfied if the given element ends with the given value. |
Does not end with | sets a condition that is satisfied if the given element does not end with the given value. |

Specifying a condition
In the example illustrated above, the input element contains three values. The condition used specifies that only one of these values is mapped to the target element.
In some cases, you will need to repeat an element in the target schema to add a new mapping. You can do this by clicking on the
icon displayed on the right-hand side of an element name.



Repeating an element
In the example shown, the Heritage Asset type element has been repeated to enable a mapping to be added to the UID for a term in the Getty’s Art and Architecture Thesaurus. It is also useful to be able to repeat an element in the target schema if more than one element in your input dataset conforms to its scope.
When elements in the target schema have attributes you will see this icon displayed. If certain of the attributes are mandatory for that element, the icon will be red until they have been completed.

Missing language attribute
The attributes are used to define certain characteristics of the data. Language is a mandatory attribute for most text elements being provided to Europeana as this improves the multi-lingual support that can be offered.
To complete the attribute, double click on the
icon. The attributes for the element will then be displayed. Double click on the attribute and you will then be able to enter a constant or a value mapping.
