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.
What is a taxonomy list?
A taxonomy list is a list of restricted, predefined, related terms that follow a controlled hierarchy. They are also known as 'controlled vocabularies'.
Example: Here, 'health' is defined in the categories 'health treatment' and 'medicine' of which 'health treatment' is further defined in 'dietary supplements', and 'medicine' is further defined in 'herbal' and 'western'.
Show me an example of a full taxonomy list
The following list is the content of the keyword-list.txt file, found in the Elvis Server/Config/taxonomies folder: Photo specs Image type Action Aerial Background Close-up Conceptual Full body Group Headshot Indoor Landscape Outdoor Portrait Profile Silhouette Still life Time exposure Scans 35mm print 35mm transparency Large format Medium format Panoramic Time Day Night Sunrise Sunset Stock categories Abstract Agriculture Animals Architecture Backgrounds Business Celebrations City Culture Documentary Education Entertainment Fantasy Fine art Flowers Food Glamour Government Health Historic Holiday Homes Industry International Landscapes Leisure Lifestyles Manufacturing Medical Military Models Nature Nautical Nostalgia Outdoors People Adults Baby Boy Children Couple Girl Man Woman Political Recreation Religion Science Signs Sports Still life Symbols Technology Tourism Traditional Transportation Travel Underwater Vintage Weather Wildlife Photojournalism Arts Conceptual Environment Feature Magazine Nature News Domestic Election General International Newspaper Personality Photo essay Portrait Sequence Sports Action Feature Individual Team |
Recommended reading: Taxonomies and controlled vocabularies best practices for metadata (source: Palgrave Macmillan).
Where to get a taxonomy list from
Various taxonomy lists are provided by metadata standard groups such as the IPTC. Using such lists ensures consistent use of such terms across the industry.
Using a taxonomy list in Elvis
For information about using a taxonomy list in Elvis, see the following articles:
- Working with metadata in the Pro client of Elvis 5
- Working with taxonomies in the Desktop client of Elvis 5
Configuration
Configuring a metadata field for using taxonomy lists is a 2-step process:
Step 1. Making the list available on Elvis Server.
Step 2. Configuring the metadata field.
Note: Taxonomies can only be used for fields of data type 'text' (datatype=text). To see which fields support this data type, refer to the list of metadata field information.
1. Making the taxonomy lists available on Elvis Server
Taxonomy files are stored in the following location:
<Elvis Server>/Config/taxonomies
Tip: Various taxonomy files for every format are included in the taxonomies folder which can be used as examples for setting up taxonomies in Elvis.
Note: Taxonomy files in RDF format also require a settings file to be placed in this same location. For example, the 'taxonomy subject-code.rdf' file needs to be accompanied by settings file 'subject-code.properties.txt'. For details about the settings, see the example files in the taxonomies folder. |
Place any additional taxonomy files (and for RDF: their settings file) in this folder and restart Elvis Server to make them available in the clients and to add them to the search index.
Making a list unavailable
To (temporarily) make a taxonomy list unavailable, add a hyphen "-" as a prefix and restart Elvis Server.
Example: -keyword-list.txt
Supported taxonomy formats
The following taxonomy formats are supported in Elvis:
- RDF
- CSV
- Plain text (tab-delimited)
2. Configuring a metadata field
To add the use of a taxonomy list to a metadata field, add the <taxonomy> element in the custom-assetinfo.xml file:
For information about editing this file, see Changing the Elvis 5 Server configuration for a running cluster.
<fieldExt name="tags">
<data>
<taxonomy source="keyword-list.txt" ancestorsSelectable="false" ancestorsSearchable="true" onlyFromList="false" sort="true"/>
</data>
</fieldExt>
Example of a custom field:
<field group="Taxonomy Test" name="cf_MyTaxonomyField">
<storage storeInMetadata="true"/>
<compass index="tokenized" excludeFromAll="false" store="yes"/>
<data datatype="text" editable="true">
<taxonomy ancestorsSearchable="true" ancestorsSelectable="false" onlyFromList="true" source="my-custom-taxonomy.txt"/>
</data>
</field>
For more information about the XML structure of a metadata field, see The metadata structure of Elvis 5.
Note: To do this for default metadata fields, see Changing the default metadata field options in Elvis 5 Server. To do this for custom metadata fields, see Creating a custom metadata field in Elvis 5.)
- source. This is a required field and specifies the name of the source file that contains the taxonomy terms.
- ancestorsSelectable. When set to 'true', the user can set the parent value as the metadata value.
Example: Consider the following taxonomy structure:
When ancestorsSelectable is set to 'false', only 'dietary supplements', 'herbal' and 'western' can be chosen as a value, not 'health treatment', 'medicine' or 'health'. When ancestorsSelectable is set to 'true', all levels in the hierarchy can be chosen as a value. |
Note: When not setting this option it defaults to 'false'.
- ancestorsSearchable. When set to 'true', it is possible to search on parent values when a child value is entered.
Note: ancestorsSearchable requires the index setting for the field to be set to "tokenized"
Example: Consider the following taxonomy structure:
When "Earth" is set as a value for the metadata field of an asset, the asset can also be found by searching for 'Planet' or 'Galaxy'. |
Note: When not setting this option it defaults to 'true'.
- onlyFromList. When set to 'true', the user can only enter options from the taxonomy list.
Note: When not setting this option it defaults to 'true'.
- sort. When set to 'true', The taxonomy terms are sorted in alphabetical order.
Note: When not setting this option it defaults to 'true'.
The following example shows a taxonomy added for the tags field that allows the user to add custom values and is sorted on the order of the taxonomy:
<fieldExt name="tags">
<data>
<taxonomy source="keyword-list.txt" ancestorsSelectable="true" onlyFromList="false" sort="false"/>
</data>
</fieldExt>
Editing a taxonomy list that is used in production
Changes to a taxonomy file or its settings are automatically applied after 1 minute.
Tip: A taxonomy manager can perform live edits on taxonomy files because the server does not require a restart to reflect these changes.
Document history
- 16 October 2018: Updated section 2 'Configuring a metadata field' by adding an example of a custom field.
- 16 October 2018: Updated 'ancestorsSearchable' by adding a note stating that the index needs to be set to tokenized.
- 16 October 2018: Updated 'sort' by removing note 'To be able to sort on a field, it has to be either un_tokenized or tokenized with a pureLowerCase analyzer and it cannot be multivalue'.
Comment
Do you have corrections or additional information about this article? Leave a comment! Do you have a question about what is described in this article? Please contact Support.
0 comments
Please sign in to leave a comment.