As of 20.2, hierarchical metadata from VidiCore can also be mapped to the MediaPortal index. If necessary, this can also be done in a flattened manner. This allows one to create multi-layered hierarchical metadata structures when configuring metadata in ConfigPortal.


Example
In this example, one can create a metadata group reflecting an address containing another metadata group "Name" - which in in itself contains both the given name and surname, e.g. like follows:


Under ConfigPortal's "MediaPortal" section, you can define search index mappings for the different kind of assets, like video, image, audio. It is also here where one can map global asset metadata, which are not part of a group hierarchy directly to the "root" of MediaPortal index. Additionally, you can map grouped metadata to the index.
As shown in the example below, global metadata like "description", "city", "country" are already mapped.



In above example, global metadata like "description", "city", "country" are mapped already mapped.
In addition, "city" and "country" are mapped as part of the parent group "Address". Grouped metadata will always be shown in an extra section in the mapped metadata view. In above example "GivenName" and "Surname" of the sub-group "Name" will be also added to the search index.
The result looks like follows:



Given name and surname are added as an extra section. If you open e.g. the "GiveName" by selecting the three dots "…", you will get a popup for further specifications as shown in the screenshot.
This popup has known options such "Is List of Values" and Namespace. The behavior of these options has not been changed.
You will also see that by default, the hierarchy of the metadata is reflected by the periods in between the metadata group and field names, "Address.Name.GivenName" in the example. If you do not change this default, the same hierarchy will be mapped to the MediaPortal search index. In the example, it will be mapped to default namespace "custom" as single value.
The result of above mapping will appear as follows in the MediaPortal search index, if the hierarchy and values are set accordingly on the asset in VidiCore:

Mapping Result in MediaPortal Search Index

"custom" : {
"City" : "Kuala Lumpur",
"Country" : "Malaysia",
"category" : "Technology",
"Description" : "First Item Description",
"keywords" : "Integration, Release, erm",
"mediastate" : "Ingested",
"Address" : [
{
"Streetname" : "Neusser Str.",
"Housenumber" : "12",
"Country" : "Germany",
"City" : "Cologne",
"Name" : [
{
"GivenName" : "John",
"Surname" : "Smith"
}
}



You can even change the hierarchy that will mapped to the MediaPortal index by removing one or more dots and editing the names in the mapping.
Based on the previous example, if you change the mapping in the example above from "Address.Name.Surname" to "Address.Surname", the result wil be like follows.

Example

"Address" : [
{
"Streetname" : "Neusser Str.",
"Housenumber" : "12",
"Country" : "Germany",
"City" : "Cologne",
"Surname" : "Smith"

"Name" : [
{
"GivenName" : "John",
}
}



In this manner, one is able to flatten the hierarchy in the mapping or even change the name of the section to which the metadata will be mapped.
Hierarchical mapping is also supported on a segment level.