In my previous post, I explained why one uses a taxonomy definition as part of building out the relationship model between your entity definitions. This is a crucial step in determining how you prepare ContentHub for your content creators and managers to work with your content.
Please note you will require the appropriate feature license of Content Hub – Free Modeling to leverage creation of custom taxonomy definitions.
In this post, I will show how one can go about creating an example of two taxonomy definitions. I will apply the use case of creating an Ingredient Type and Ingredient for a fictitious company which manages ingredients.
I will also like Ingredient Type to be made searchable by facet once I build out the ingredient listings later. Additionally, Ingredient Type can be later configured to be secured later based on a given user group policy. As such, Ingredient Type must be configured as a Taxonomy definition according to the principles of security and metadata inheritance.
In the Manage page, click on Taxonomy Definition tile and click on the ‘New Taxonomy’ button.
Next, fill in the details correctly with the word ‘Ingredient Type’ in the Name and Label field as below.
I will then go ahead to add several values as part of my IngredientType taxonomy definitions. Do note that I am using a single level hierarchy for this as it is just simple flat list of values.
Step 1: Look for the ‘+’ icon at the top right and enter a value ‘Acid Regulator’ in Name field and Label field.
Step 2: Repeat for the next set of values as below.
Once this is completed, you can view the value definition by inspecting the info icon.
Alternatively, you can also view the entities of the Taxonomy definition by browsing to the Entities tile.
Step 1: On the Manage page, click on the ‘Entities’ tile.
Step 2: In the search bar, key in the name of the taxonomy definition – FL.IngredientType or a keyword of it so that it brings up the definition in the listings.
Step 3: Click through into the FL.IngredientType row in the above step to view the list of values.
I will apply the same steps in creating the taxonomy definition for Ingredient. This time I will apply the following custom properties onto the Ingredient definition upon creation time.
- Entity Name: FL.Ingredient
- Entity Label: Ingredient
Ensuring the following custom properties are classified as such according to the field type and its expected behaviour. This is typically prepared well ahead of implementing the configuration in Content Hub so that you have a well organised and accurately defined schema with the correct property types and its relationship cardinality. This can certainly help avoid mistakes which otherwise will be very difficult to rectify later in the project – when content is later populated into unintentionally incorrect property fields.
|Field Name||Description||Field Type|
|IngredientName||Display the ingredient name||String – Singleline|
|IngredientDescription||Display the ingredient description||String – Multiline|
|UnitOfMeasurement||Display the unit of measurement||OptionList – Single Value|
|IngredientCalories||Display the calories for a given unit of measurent||String – Singleline|
|IngredientTypeToIngredient||Display one or more ingredient types||Taxonomy Relation – Many to Many|
|IngredientToFile||Displays a thumbnail image of the ingredient when displaying this in a listing.||Taxonomy Relation – One to One|
Please note when configuring a property of a taxonomy relation to reference a rendition / image in Content Hub, you must enable the property, ‘Is rendering relation’ as part of the relation. This can be found under the ‘Advanced’ tab of the member property. In my case, IngredientToFile is configured as such below.
As such you will expect to have the following property fields added and configured as such below for the FL.Ingredient taxonomy entity definition.
In my next post, I will go onto show how we can go about configuring a search and listing page which lists the ingredients with a searchable facet filter field called – Ingredient Type. Additionally, we will also create a basic Ingredient Detail page to display the details of a specific ingredient – providing the basic content management experience for content authors.