Technical documentation - AssetProvider to map assets to presentations

The user may select an asset for display, when doing this the system may look up presentations to attach to the asset. Presentations are displayed, with the asset, in a grid with images, details, names, attributes etc.

So, how are assets and presentations related? Data is stored in two databases so the relation is a way to search in both databases for matching data. Starting with the asset a join-value is computed, and used to look up presentations. Rules for how to compute assets join-value and related presentations are stored in the profile.config file for selected site.

Here is an example of a section with such a definition.

<AssetProvider> <AssertDbAssetProvider> <Settings> <!--AssetAttribute>Identity</AssetAttribute--> <AssetPropertyCode>CatalogueIdentity</AssetPropertyCode> <!--PresentationAttribute>Identity</PresentationAttribute--> <PresentationSpecificationType>CatlogId</PresentationSpecificationType> </Settings> </AssertDbAssetProvider> </AssetProvider>

Elements defining the asset displayed to the user

AssetAttribute: select one of Identity or PersistentIdentity. Corresponding attribute is used to select a value from the asset database to match to presentations. The value of the property is used when comparing assets and presentations.

AssetPropertyCode: this is a property type code used to select assets. Any asset with a property of this type (with specified code) is selected, and corresponding property value is used when comparing assets and presentations.

The user selects one asset, so above property will give us one join-value to use when looking for related presentations in the next step.

Elements defining what presentations to match and join

PresentationAttribute: select one of Identity or LogicalIdentity or PersistentIdentity. Corresponding attributes value is used to select presentations from the site database.

PresentationSpecificationType: this is a specification type code used to select presentations. Any presentation with a specification of this type (with specified code) is selected, and corresponding specification value is used to select presentations from the site database.

Matching

When selected asset has defined the join-value, presentations in the site database is looked up for corresponding value. Primarily from from presentations with a particular specification, secondarily from presentation with an attribute.

Definition rules and limitations

Each element is specified once in the profile.config file, duplicate definitions overwrite each other.

When AssetPropertyCode is defined, assets join-value is defined by the property type. If not defined, the AssetAttribute is used to define the join-value. Only one of the two is specified in the profile.

When PresentationSpecificationType is defined, presentation are only found by the specification type. If not defined, the PresentationAttribute is used to locate presentations. Only one of the two is specified in the profile.

Site and asset databases

The web application server.config file defines what site data and what asset data is used for a user. Each site has a separate definition of corresponding asset database.

Filter by label

There are no items with the selected labels at this time.