Working with metadata in Elvis 6
From a system administrator's point of view, working with metadata (in general and within the context of Elvis) can become quite complex quite quickly, with many different standards, options and settings to be aware of.
This article provides a high-level overview of working with metadata in Elvis 6. Use the links to find out more detailed information about each subject.
In Elvis, definitions for metadata fields are stored in various files which are combined into new files at the moment Elvis Server is started.
The main concept is as follows:
- All standard metadata fields in Elvis are stored within the system in a central file.
- Any changes to these standard fields as well as definitions of custom fields are made in a separate configuration file.
This way, the central file is always left intact, thereby making it possible to revert to a default configuration in case any configuration errors are made.
When Elvis Server is started for the very first time, the central file and the configuration file are combined into a new file.
A duplicate of this file is made and this file is now seen as the 'base' file containing the correct settings.
When Elvis Server is started a following time, the central file and the configuration file are again combined in a new file, thereby overwriting the original 'new' file.
This time the new file is compared against the duplicate file from the previous start-up so that any changes can be detected and validated.
When the validation fails, the original duplicate file is retained and errors are logged in the log file.
When the validation passes, the original duplicate file is overwritten to act as the new base file.
This process is shown in the following diagram:
- Changing the default metadata field options in Elvis 6 Server
- Creating a custom metadata field in Elvis 6
- Errors appear in the log files after updating the asset index of Elvis 6 Server
Various industry standards exist for storing metadata values. This means that values of the same type are not always stored in the same fields for each asset.
Example: In one standard 'tags' are stored in the 'Keywords' field while in other standards 'tags' are stored in the 'Subject' field.
When an asset is imported in Elvis, some metadata values may be moved to a more generic metadata field in Elvis (such as the 'tags' field for values from the 'Keywords' and 'Subject' example above). When the asset is exported from Elvis, the values are put back in their original field according to the standard that is used in the asset.
Availability to assets
Metadata fields can be made available to all assets within Elvis or can be restricted to specific assets only. This is done by making the metadata field part of a particular level within a hierarchical structure.
This structure is referred to as the 'Asset Type Base' structure and is shown below.
Example: To only make a metadata field available to audio files, make it part of 'AudioFields'. Because of its place in the hierarchy, an audio file will also have access to all metadata fields that are defined in all levels above it in the structure (from 'RootSystemFields' to 'ImageAndVideoFields'). Any fields that are defined in 'VideoFields' and 'FlashFields' are not accessible for audio files.
For an explanation of this structure, see Controlling metadata field availability in Elvis 6.
Understanding the XML structure
Info: Some basic knowledge of XML is required.
Metadata in Elvis is organized in XML format with the following tree structure:
<fullAssetsInfo> <assetsInfo> ... //settings for default metadata fields </assetsInfo> <assetsInfoExt> <fieldGroups> ... //group definitions </fieldGroups> <assets> ... //custom metadata fields </assets> <fieldExtensions> ... //extensions to default metadata fields </fieldExtensions> </assetsInfoExt> </fullAssetsInfo>
This structure can be viewed in the full_assetinfo.xml file.
Elvis Server/Elvis Hot Data/elvis-data/assetInfo
This file is generated during the start-up of Elvis Server and combines the settings of the central file with that of the configuration file (see Core file versus working files).
The settings for the default fields are defined at the start of the file between the
Any settings for non-standard fields are defined between the
<assetsInfoExt></assetsInfoExt> tags, where 'Ext' stands for 'Extention'.
This section contains 3 sub-sections:
- Groups are defined in the <fieldGroups> section. (See Groups below)
- Custom metadata fields are defined in the <assets> section
- Changes to default metadata fields are defined in the <fieldExtensions> section
For more information, see The metadata structure of Elvis 6.
In Elvis, related metadata fields are combined into groups. This way, related fields can be quickly found and easily worked on.
Figure: Related metadata fields are displayed in groups, as seen here in the dialog box for choosing the metadata fields to display in the Metadata panel of the Pro client.
For an overview of all groups and their fields, see Metadata field information for Elvis 6.
Changing the group to which a default Elvis metadata field belongs can be done by overruling the group option for that metadata field.
Metadata when importing assets
When assets are imported, their metadata is added to the Elvis search index.
During the import process, metadata that is specific to Elvis is also added (such as the ID of the asset in Elvis).
For a typical metadata field, the values are stored in the search index and only optionally in the asset itself.
Embedding metadata slows down the processing and thereby negatively affects performance.
When overruling default metadata field options, you can control whether or not the metadata should be embedded.
For custom fields the values are always embedded.
When exporting an asset from Elvis (for example by downloading the original file), the metadata values are placed in the fields according to the XML standard used in that asset.
Example: When the values were extracted during the import from the 'Keywords' field and placed in the 'tags' field in Elvis, all values from the 'tags' field are placed in the 'Keywords' field.
Note: For custom metadata fields it is not possible to define to which standard the values should be exported which is one main reason why not to use custom metadata fields and use existing fields instead (and rename them).
Searchable and non-searchable fields
Some metadata fields store data that should not automatically appear in the search results. These fields can be configured in such a way that their values are excluded from the search results. It can still be made possible to search for the values by directly referencing that field.
Example: The default metadata field that stores the folder path (folderPath) is typically not a field of which its value should appear in a general search result. However, users should still be able to search on the field when they want to.
Making metadata required
Some metadata fields store information that is important or even vital to track, such as copyright information. For such fields, users should at least be made aware of the field or even be required to enter that information.
This awareness or requirement can be configured in Elvis for assets that are imported or for assets that already exist in Elvis:
- For assets that are imported, users can be notified or required to add metadata
- For assets that already exist, users can be notified to add metadata
For more information, see Making metadata input required in Elvis 6.
Highlighting metadata fields by using icons
When the user's attention needs to be drawn to specific metadata, an icon (also referred to as a 'flag') can be added as a visual indicator (a process also known as 'flagging').
Example: You may want to visually display a status or indicate that a field contains specific information such as copyright info.
Such icons appear above thumbnails in the search results and can be set for any standard metadata field or custom metadata field.
Figure: Assets in the Pro client showing icons for the Status, Approval and Copyright fields.
Custom metadata fields
In case none of the provided metadata fields fit the kind of data that you want to store, a custom metadata field can be created.
Using pre-defined values (taxonomies)
When a value is added to a metadata field it is important that this value is correctly entered. This is preferably done by all users using a generally used term and the correct spelling. When this is not (consistently) done the chance exists that the asset is not included in the search results when users search for the asset (using these general terms and correct spelling).
To streamline this process, a metadata field in Elvis can be set up to use a 'taxonomy list' from which the user can choose a predefined value to use.
This saves the user from having to enter the term manually and thereby ensures consistent input.
The name of a metadata field that is shown in the user interface of a client — such as the metadata panel in the Pro client — can be replaced by a custom name.
You would do this to:
- Use a default metadata field under a name that more fits your needs and requirements (a recommended alternative to using a custom metadata field).
- Localize a label of a metadata field in another language.
- Provide users with a more user friendly name for a custom metadata field (which always starts with 'cf_' and cannot contain spaces or special characters).
For more information, see Renaming a metadata field in Elvis 6.
Viewing metadata field descriptions
To see a description of each metadata field, use the Select Fields window for adding fields to the Metadata panel in the Pro client.