Property or Dialog group assets bundle properties into groups that are suitable to be edited together by users. This allows censhare to present properties in a group inside a dialog or wizard. The article explains how to create and configure dialog groups in censhare.


Introduction

"Dialog group" assets bundle properties into groups that are suitable to be edited together by users. This allows censhare to present properties in a group inside a dialog or wizard, for example in the wizards for copying properties or editing multiple assets.

You can freely decide which properties you want to bundle in one group. For example, create a dialog group "Dimensions" and add the properties "Height", "Width" and "Length" to this group. Users in censhare Web will then see these three features in a section "Dimensions“ when using the "Edit multiples assets" action.

Specifying the properties to be edited

There are two options for specifying suitable properties to be edited together in a dialog group:

  • Adding properties one by one to a dialog group: This is the standard option. You can use it when configuring copying of properties or editing of multiple properties. You add the properties one by one on the Features widget of any Dialog group asset in censhare Web.

  • Specifying all suitable properties/dialog groups in an XSLT file: This option simplifies and speeds up the configuration of dialog groups. It allows for creating multiple dialog groups with all suitable properties in one XSLT file. You attach the XSLT file to your own Dialog group asset in censhare Web.

    This option is only available for configuring multiple property editing.

Configuring for copying properties

To set up dialog groups for the copying properties wizard, follow Setting up dialog groups and specify the properties on the Features widget.

Configuring for multiple property editing

To set up dialog groups for multiple property editing, you have the following options:

  • Specify the properties on the Features widget of a Dialog group asset only. In the wizard, the properties from the Features widget are displayed in the dialog group. Follow the section Setting up dialog groups.

  • Specify all properties for any dialog group in an XSLT file only and attach it to a Dialog group asset. In the wizard, the dialog groups/properties specified in the XSLT file are displayed. Follow section: Setting up dialog groups using an XSL transformation.

  • Specify properties on the Features widget plus attach an XSLT file, on the same Dialog group asset. If there are matching property specifications on the Features widget and in the XSLT file for any dialog group, preference is given to those on the Features widget. For that group, the properties specified on the Features widget are displayed in the wizard. Follow both key steps.

Key steps: Setting up dialog groups

To set up a dialog group, follow these steps:

  1. Create a "Dialog group" asset.

  2. Select suitable properties to be edited.

  3. Add the properties to the "Dialog group" asset.

Create a "Dialog group" asset

To create a dialog group asset:

  1. Log in to censhare Web.

  2. Create an asset of type "module.dialog.group": From the menu bar, click "Create asset", and on the "New asset" tab, select "Module / Dialog / Dialog group" as asset type.

  3. In the "Create asset" dialog, enter a suitable dialog group name. For instance, if you want to create a dialog group with dimension properties, it might be called "Dimensions". Note: When creating several dialog groups, their names must differ from each other.

    Additionally, in the Key field, under Resources, generate or add a resource key for the Dialog group asset. 

  4. Confirm with OK.

The Dialog group asset has been created.

Select suitable properties to be edited

To identify the properties to be included for editing in the previously created dialog group:

  1. Log in to censhare Admin Client.

  2. Select "Configuration", "Master Data", "Features" and double-click "Features".

  3. In the "Features" list, find the properties you want to include in the dialog group: Double-click any feature and copy the name and corresponding asset resource key or take a note of them.

Add the properties to the "Dialog group" asset

To add the selected properties on the Features widget of the "Dialog group" asset:

  1. In censhare Web, open the previously created "Dialog group" asset.

  2. Add the respective properties to the "Dialog group" asset: On the Overview tab, on the Features widget, click the Add button. From the asset chooser of the "Existing asset" tab, select the appropriate properties, such as "Height", "Width" and "Length" for a dialog group "Dimensions". The properties are displayed on the Features widget. Properties that are already added to the asset by default are not displayed on the Features widget.

  3. To check that you have picked the correct Feature assets, open any entry on the Features widget of an asset page and check the corresponding resource key in the Resource widget on the Overview tab.

The dialog group has been set up. Repeat the workflow for any additional dialog group you want to set up.

Key steps: Setting up dialog groups using an XSL transformation

This workflow is only applicable when you configure editing of multiple properties. 

To set up a dialog group using an XSL transformation:

  1. Create a "Dialog group" asset.

  2. Specify dialog groups/properties in an XSLT file.

  3. Add the XSLT file to the "Dialog group" asset.

Specify dialog groups/properties in an XSLT file

To specify any dialog group(s) with their respective properties in an XSLT file:

  1. Create an XSLT file. The structure and output should resemble the Sample XML.

  2. In the XSLT file, enter the specifications for the dialog group(s) you want to create, see Sample XML. You can include more than one group per XSLT file.

    When creating several dialog groups, their names must differ from each other. Also, make sure that the names you select for the groups in the XSLT file differ from the name of the dialog groups asset you want to attach the XSLT file to.

  3. Decide on the properties you want to include in a group. You can check the details of any property/feature specifications in the following "Master data" definition in censhare Admin Client, on the censhare Server file system: censhare-Server/app/config/insert-data.xml Search for the respective feature key (feature ID) of the property/feature you want to include, for instance "product.article-number". The data in there corresponds to the Features table of the Master data in the censhare Admin Client.

  4. Copy the relevant feature specification and paste it into the respective group element in the XSLT file, adjusting the details according to the Sample XML.

  5. Repeat steps 3-4 for any property you want to include in any group.

  6. Save the XSLT file.

The XSLT has been created.

Add the XSLT file to a "Dialog group" asset

To add the XSLT file to the previously created "dialog group" asset:

  1. Log in to censhare Web.

  2. Open the previously created "Dialog group" asset.

  3. Add the XSLT file to the "Dialog group" asset: On the Overview tab, on the Files widget, click the and upload the XSLT file. The file is added as master file to the "Dialog group" asset. 

    If the Files widget is not available, add it to the Overview tab, by clicking "Add widget" on the Actions menu of the asset page and selecting "Files" from the widget chooser.

The Dialog group(s) with the respective properties have been set up. For display results in the multiple property editing wizard, see Configuration for editing multiple assets.

Sample XML

The XSLT file should contain the specifications of the dialog groups and the properties to be included in the groups. The structure and output should resemble the sample XML shown below. You can specify more than one group per file.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    exclude-result-prefixes="xs"
    version="2.0">
  <xsl:template match="/">

       <root>
          <!--   optional localized names, fallback would be for @name -->
          <group name="Identification" type="group" name_de="deText" name_fr="frText" name_it="itText" name_ja="jaText">
                <feature key="censhare:product.asin" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="4" description="Amazon Standard Identification Number" name="ASIN (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="4486" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="asin" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="ASIN" rowid="AAAW1LAAIAAAG9yAAL" tcn="8" asset_resource_key="censhare:feature.product.asin"/>
               <feature key="censhare:product.article-number" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="4" description="Article number (product)" name="Article number (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="6010" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="articleNumber" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="Article number" tcn="1" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.article-number" rowid="AAAW1LAAIAAAPCiAAH"/>
                <feature key="censhare:product.ean" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="3" description="European article number (product)" name="EAN (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="4111" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="ean" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="EAN" tcn="6" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.ean" rowid="AAAW1LAAIAAAG9fAAI"/>
                <feature key="censhare:product.gtin" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="3" description="Global trade item number (product)" name="GTIN (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="4110" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="gtin" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="GTIN" tcn="9" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.gtin" rowid="AAAW1LAAIAAAG9fAAH"/>
                <feature key="censhare:product.manufacturer-number" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="4" description="Manufacturer number (product)" name="Manufacturer number (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="4112" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="manufacturerNumber" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="Manufacturer number " tcn="6" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.manufacturer-number" rowid="AAAW1LAAIAAAG9fAAJ"/>
                <feature key="censhare:product.order-number" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="4" description="Order number (product)" name="Order number (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" bdb_key="4160" color_type="0" language_type="0" enabled="1" trait="product" target_object_type="asset" has_relevance="0" trait_property="orderNumber" is_xml_attr="1" user_modifiable="1" trait_property_top_level="1" label="Order number" rowid="AAAW1LAAIAAAG9nAAA" tcn="2" asset_resource_key="censhare:feature.product.order-number"/>
            </group>
	    <group name="Dimensions" type="group" name_de="deText" name_fr="frText" name_it="itText" name_ja="jaText">
                <feature key="censhare:product.width" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Width (product)" name="Width (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="0" sorting="10" unit_set="censhare:length" color_type="0" language_type="0" bdb_key="4107" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="width" is_xml_attr="0" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.width" label="Width" tcn="15" rowid="AAAW1LAAIAAAG9fAAF"/>
               <feature key="censhare:product.height" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Height (product)" name="Height (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="0" sorting="20" unit_set="censhare:length" color_type="0" language_type="0" bdb_key="4108" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="height" is_xml_attr="0" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.height" label="Height" tcn="11" rowid="AAAW1LAAIAAAG9fAAG"/>
                <feature key="censhare:product.depth" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Depth (product)" name="Depth (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="0" sorting="30" unit_set="censhare:length" color_type="0" language_type="0" bdb_key="4109" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="depth" is_xml_attr="0" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.depth" label="Depth" tcn="11" rowid="AAAW1LAAIAAAG9HAAF"/>
            </group>
           <group name="Dimensions" type="group" name_de="deText" name_fr="frText" name_it="itText" name_ja="jaText">
               <feature key="censhare:product.weight" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Weight (product)" name="Weight (product)" ismultivalue="0" issearchable="1" assetinfo_sorting="1" isassetinfo="0" sorting="1" unit_set="censhare:weight" color_type="0" language_type="0" bdb_key="4106" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="weight" is_xml_attr="1" source="censhare-Server/app/config/insert-data.xml" asset_resource_key="censhare:feature.product.weight" label="Weight" tcn="6" rowid="AAAW1LAAIAAAG9fAAE"/>
            </group>
            <group name="Price" type="group" name_de="deText" name_fr="frText" name_it="itText" name_ja="jaText">
                <feature key="censhare:product.price.offer" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Offer price (product)" name="Offer price (product)" ismultivalue="1" issearchable="1" assetinfo_sorting="1" isassetinfo="2" sorting="1" unit_set="censhare:currency" color_type="0" language_type="0" bdb_key="4161" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="priceOffer" is_xml_attr="0" tcn="7" asset_resource_key="censhare:feature.product.price.offer" label="Offer price" rowid="AAAW1LAAIAAAG9nAAB"/>
                <feature key="censhare:product.price.retail" domain="root." storage="0" type="censhare:asset-feature" domain2="root." value_type="7" description="Retail price (product)" name="Retail price (product)" ismultivalue="1" issearchable="1" assetinfo_sorting="1" isassetinfo="0" sorting="1" unit_set="censhare:currency" color_type="0" language_type="0" bdb_key="4146" target_object_type="asset" has_relevance="0" enabled="1" trait="product" user_modifiable="1" trait_property_top_level="1" trait_property="priceRetail" is_xml_attr="0" tcn="7" asset_resource_key="censhare:feature.product.price.retail" label="Retail price" rowid="AAAW1LAAIAAAG9IAAD"/>
            </group>
        </root>
    </xsl:template>
</xsl:stylesheet>
CODE

Specification for dialog groups

For a dialog group, the following elements should be specified in the XSLT file:

  • <group> tag

  • group name, for example

    name="Identification"
  • group type

    type="group"
  • localization details for group name, for example

    name_de="deText"

Specification of properties (features)

For a property (feature), the following elements should be specified in the XSLT file:

  • <feature> tag

  • feature key (ID), for example

    key="censhare:product.article-number"
  • asset resource key, for example

    asset_resource_key="censhare:feature.product.article-number"
  • feature name, for example

    name="Article number (product)"
  • feature description, for example

    description="Article number (product)"
  • feature type, for example

    type="censhare:asset-feature"
  • domain 1 and 2, for example

    domain="root.", domain2="root."
  • storage, for example

    storage="0"
  • value type, for example

    value_type="4"
  • status, for example

    enabled="1"
  • trait property, for example

    trait_property="manufacturerNumber"
  • trait, for example

    trait="product"
  • trait property, for example

    trait_property_top_level="1"
  • target object, for example

    target_object_type="asset"

Further elements are optional.