Alfred Desktop presents “forms” with data & metadata in views and panels. Alfred Desktop has extensive configuration possibilities for displaying and working with the metadata in your Alfresco system.
The style of configuration is heavily inspired on the Share Forms configuration in Alfresco. Alfred Desktop comes with a default configuration set for metadata and works straight out of the box, but you might want to configure how your custom dictionary model is displayed and used.
Forms are used in the following components of Alfred Desktop:
The metadata panel is a dynamic panel that evaluates the selected document or folder, looks at the document type, available aspects and properties and generates a customized form. This panel supports three different modes: (1) view mode – the default; (2) edit mode – to edit metadata; and (3) create mode – when creating new documents from a document template.

The list of properties in the search-dropdown (both in the quick-search as in the second tab) can be configured using a forms-configuration, which simply lists all the properties you would like to have available in the dropdown.

In the folder view, the user can select properties to display or hide in a column in the view. This menu can be fully configured, including support for submenus.

The forms can be configured in specific YAML files. See paragraph 5.5.
In these YAML files, the following terms can be found:
A configuration file is referred to as Forms Configuration Collection. It consists of:
| Parameter Name | Remarks | Type | Description | 
|---|---|---|---|
| Id | required {required} | string {type} | Used to identify the forms configuration collection | 
| Version | required {required} | int {type} | Version of the configuration model | 
| Evaluator | required {required} | string {type} | Possible values are: task-type,node-type,aspectandstring-compare. | 
| Forms | required {required} | FormConfiguration[] {type} | A collection of form configurations that apply for the specified evaluator. | 
Each individual form configuration has:
| Parameter Name | Remarks | Type | Description | 
|---|---|---|---|
| Fields | required {required} | Field[] {type} | A collection of sub-fields or sub-field-sets. | 
A field can be either Field or Field Set. A field that contains
sub-fields or sub-field-sets. If the Field collection property is
empty, the object is considered a regular field. Field sets groups
fields together under a section (with an optional template).
Multi-layered field sets are typical for Columns or Column Set
configuration. All other configurations (metadata forms configurations)
are limited to 1 layer of field sets (top level field or field set and
the underlying first layer of fields), other layers are ignored and not
displayed.
Here is a list of properties that define a field.
| Parameter Name | Remarks | Type | Description | 
|---|---|---|---|
| Id | required {required} | string {type} | Used to identify the individual field (potentially field set if it contains fields) | 
| Template | optional | string {type} | The template serves to describe a specific predefined UI control feature. For additional information, see Template description below. | 
| RenderMode | optional | string[] {type} | Describes the different states in which the field is available. Possible values are: create,edit,viewandhidden. Also, thehiddenmode overrides the other definitions and can be overridden with theforceproperty of the field (see below). | 
| ReadOnly | optional | bool {type} | Limits the possibility to edit the field in any RenderMode. | 
| Text | optional | string {type} | Free text for the label of the field. | 
| Description | optional | string {type} | Free text for the description text (on hover) of the field. | 
| ForegroundColor | optional | string {type} | This property is a System.Drawing.Color. It can be configured in two manners:ARGB(See https://docs.microsoft.com/en-us/dotnet/api/system.drawing.color.fromargb?view=netframework-4.5) ORColor Name(See https://docs.microsoft.com/en-us/dotnet/api/system.drawing.color.fromname?view=netframework-4.5) | 
| Parameters | optional | Dictionary<string,string> {type} | A key-value store (Dictionary {type}) of a variety of custom configuration options, such as height, width, autocomplete parameters, etc. | 
Here is a list of properties that define a field set.
| Parameter Name | Remarks | Type | Description | 
|---|---|---|---|
| Id | required {required} | string {type} | Used to identify the individual field (potentially field set if it contains fields) | 
| Template | optional | string {type} | The template serves to describe a specific predefined UI control feature. For additional information, see Template description below. | 
| Appearance | optional | string {type} | Possible values are: title,section,submenuandnone. Submenu is for columns only! | 
| RenderMode | optional | string[] {type} | Describes the different states in which the field is available. Possible values are: create,edit,viewandhidden. Also, thehiddenmode overrides the other definitions and can be overridden with theforceproperty of the field (see below). | 
| Text | optional | string {type} | Free text for the label of the field. | 
| Description | optional | string {type} | Free text for the description text (on hover) of the field. | 
| Fields | optional | Field[] {type} | A collection of sub-fields or sub-field-sets. | 
| Parameters | optional | Dictionary<string,string> {type} | A key-value store (Dictionary {type}) of a variety of custom configuration options, such as height, width, autocomplete parameters, etc. | 
The template serves to describe a specific predefined UI control feature.
The Template property for field sets supports the following values:
gui.controlfactory.fieldset.centered - the default field set in
the metadata panelgui.controlfactory.fieldset.group - draws a border to ‘group’
fields together.
collapsible: true|falsestart-collapsed: true|falsecentered: true|falsegui.controlfactory.fieldset.1-columngui.controlfactory.fieldset.2-columngui.controlfactory.fieldset.3-columnThe centered-field-set is the default. It right-aligns the
field-labels and left-aligns the field-values around the center. The
group-field-set draws a border around the Fieldset, with an optional
title provided by the Label attribute. The column-variants put fields
in 1 or more columns.
The Template property for fields supports the following values:
gui.controlfactory.property.textbox - general purpose textbox
controlgui.controlfactory.property.label - read only controlgui.controlfactory.property.textarea - multi-line textbox controlgui.controlfactory.property.listconstraint - dropdown - only
applicable for properties that have a ListConstraintgui.controlfactory.property.datetimepicker - date picker control -
only applicable for data-type d:date or d:datetimegui.controlfactory.property.categorypicker - category picker
control - only applicable for data-type d:categorygui.controlfactory.property.checkbox - checkbox controlgui.controlfactory.property.currency - display number as
currency - only applicable for data-type d:int and d:longgui.controlfactory.property.size - displays file size - only
applicable for data-type d:contentgui.controlfactory.property.mimetype - displays file mime type -
only applicable for data-type d:contentgui.controlfactory.property.authority - people picker control -
only applicable for data-type d:text
key-type: name|referenceauthority: user|group|bothThe textbox template will give a textbox as input field. The list constraint template will display a combo box as input field. The typeahead template will give a text box with type ahead function enabled. The text area template will give a large text area.
A sample of the form configuration template looks as follows:
  - Id: default-node
    Version: 1
    Evaluator: string-compare
    Forms:
      - Fields:
          - Fields:
              - Id: cm:name
              - Id: type
              - Id: template-name
          - Id: type
          - Id: auditable
          - Id: auto
            Fields:
              - Id: cm:content
                RenderMode:
                  - Hidden
              - Id: cm:source
                RenderMode:
                  - Hidden
              - Id: cm:destination
                RenderMode:
                  - Hidden
              - Id: xenit-hash:schemeId
                RenderMode:
                  - Hidden
              - Id: xenit-hash:hash-value
                RenderMode:
                  - Hidden
          - Id: rm
          - Id: aspect-picker-set
            Fields:
              - Id: aspect-picker
The skeleton of the form configuration template looks as follows:
  - Id: string
    Version: int
    Evaluator: string
    Forms: # FormConfiguration[]
      - Id: string
        Fields: # Field[]
          - Id: string
            Appearance: string
            Template: string
            RenderMode: string[]
            ForegroundColor: string
            Text: string
            Description: string
            Fields: # Field[]
              - Id: string
                Appearance: string
                Template: string
                RenderMode:  string[]
                ForegroundColor: string
                Text: string
                Description: string
                ReadOnly: bool
                Parameters: Dictionary<string,string>
            Parameters: Dictionary<string,string>
Legacy sample: Terminology JSON Sample
In order to make the transition from JSON to YAML smoother, Xenit developed a configuration converter tool that will transform existing JSON forms configuration to YAML forms configuration.
CMD> ConfigConverter.exe --help
Xenit.Fred.Tools.Config 1.0.0.0
  -i, --input      Required. Input path with JSON configuration to be
                   converted.
  -o, --output     Required. Output path for the converted  product - Yaml
                   configuration.
  --help           Display this help screen.
Example:
ConfigConverter.exe -i json_input_folder\ -o yaml_output_folder\ConfigConverter.exe -i old-forms-config.json -o new-forms-config.yamlYou can also find the default configuration for Alfred Desktop in: -
C:\Program Files (x86)\Xenit Solutions\Alfred Desktop\Xenit.Repository.Alfresco
In Alfred Desktop the following form configurations are available by default.
| Filename | Scope | 
|---|---|
| metadata-forms-config.yaml | View/Edit Metadata | 
| columns-forms-config.yaml | Columns in the detail pane | 
| working-copy-columns-forms-config.yaml | Columns in the detail pane | 
| column-sets-forms-config.yaml | Columns in the detail pane | 
| search-columns-default-forms-config.yaml | Search / Quick Search | 
These files are written to work with a default alfresco installation. To create your own configuration file, you can choose any file name as long as it ends with forms-config.yaml. If you want to override a forms configuration of the default file, you have to use the same id in the main properties (see 5.3.1). After you have created your custom configuration file, you have to insert it in the Company Home/Data Dictionary/Fred/Forms folder. Alfred Desktop will automatically download this file on startup and override all the default configuration that are specified in your file.
The syntax of the form configuration will be explained by two examples.
Let’s create a form for a custom type xenit:mytype. We create a file named xenitCustomType-forms-config.yaml. Note that any file name will do, as long as it ends with forms-config.yaml and if it is placed in the Company Home/Data Dictionary/Fred/Forms folder in your alfresco.
  - Id: xenit:mytype
    Evaluator: node-type
    Version: 1
    Forms:
      - Fields:
          - Id: title
            Fields:
              - Id: cm:name
                RenderMode:
                  - View
                  - Edit
                  - Create
          - Id: auditable
          - Id: auto
            Fields:
              - Id: cm:categories
                RenderMode:
                  - View
                  - Edit
Legacy Sample: Forms Configuration of a Type JSON Sample
The id of the forms configuration is the same as the name of the type. The evaluator attribute tells Alfred Desktop under which condition the configuration must be used. The following values are supported:
string-compare: the condition is matched when the id attribute
equals the given one.node-type: the condition is matched when the type of the selected
node equals the id attribute.aspect: the condition is met when the selected node has an aspect
specified using the id attribute.In the field visibility we define which fields need to be displayed if the evaluator condition is met. In our example the field cm:name will be displayed in all three modes (View, Edit and Create) and the field cm:categories will only be displayed in View and Edit mode.
The cm:name field will be displayed in the title set. Next to the title set there are two sets visible. The most important one is the auto set. The “auto” set will be a container for all the fields for which there is no forms configuration. If you have a custom property and there is no forms configuration that puts the corresponding field into a set, the field will be added to the “auto” set.
A good practice is to configure fields using an aspect evaluator. (when applicable) This allows you to set default configuration for aspect properties while still enabling specific configuration for some document types that require a different rendering of a property.
For instance, specify a configuration for cm:titled, but override this for cm:folder to hide the field.
  - Id: cm:titled
    Evaluator: aspect
    Version: 1
    Forms:
      - Fields:
          - Id: auto
            Fields:
              - Id: cm:title
  - Id: cm:folder
    Evaluator: node-type
    Version: 1
    Forms:
      - Fields:
          - Id: auto
            Fields:
              - Id: cm:title
                RenderMode:
                  - Hidden
Legacy sample: By Type vs by Aspect JSON Sample
The order of metadata fields can be configured. Let us have a look at an example:
  - Id: xenit:mytype
    Evaluator: node-type
    Version: 1
    Forms:
      - Fields:
          - Id: basic
            Fields:
              - Id: cm:name
              - Id: type
          - Id: aspecttitled
          - Id: auto
            Fields:
              - Id: cm:content
                RenderMode:
                  - Hidden
              - Id: cm:source
                RenderMode:
                  - Hidden
              - Id: cm:destination
                RenderMode:
                  - Hidden
Legacy sample: Order of Metadata Fields Type JSON Sample
This configuration will determine the order of the field sets for nodes with type “xenit:mytype”. The evaluator is set to “node-type”.
Under “Sets” you can see that there are 3 field sets: “basic”, “aspecttitled” and “auto”. The “basic” set contains 2 fields. The order of these fields is determined by the order in which they are defined in the set. This means that in this case the “cm:name” property will be followed up by the “type” property in the metadata panel. The “titleaspectset” set is configured as follows:
  - Id: cm:titled
    Version: 1
    Evaluator: aspect
    Forms:
      - Fields:
          - Id: aspectTitled
            Fields:
              - Id: cm:title
                RenderMode:
                  - Hidden
              - Id: cm:description
                RenderMode:
                  - Hidden
Legacy sample: Order of Metadata Fields Aspect JSON Sample A
There are 2 fields defined in the “aspectTitled” set. “cm:titled” will be followed up by the “cm:description” property in the metadata panel. The “aspectTitled” set follows the “basic” set in the metadata panel. The “auto” set, which contains all fields that are not added to a specific set, is shown at the bottom of the metadata panel, after the other sets.
In this example the “aspectTitled” set is only used for properties of the cm:titled aspect. However, properties of multiple aspects can also be part of the same set. Please have a look at the following example:
  - Id: cm:titled
    Evaluator: aspect
    Version: 1
    Forms:
      - Fields:
          - Id: title
            Fields:
              - Id: cm:title
              - Id: cm:description
  - Id: cm:author
    Evaluator: aspect
    Version: 1
    Forms:
      - Fields:
          - Id: title
            Fields:
              - Id: cm:author
Legacy sample: Order of Metadata Fields Aspect JSON Sample B
In this example we see that fields for cm:titled, cm:description and cm:author are all part of the “title” field set. The order of the fields cannot be determined unambiguously. The field for the cm:description property will always follow the field for the cm:titled property but the field for cm:author can be above or below those 2 fields. It depends on which aspect (cm:titled or cm:author) is loaded in first in Alfred Desktop.
By default, the aspect picker (edit mode) will display all aspects that are defined in the models which are referred to by their namespace in the config.js file (see Custom Default Configuration section). However, you might want to put a restriction on the available aspects in the aspect picker. Document models can contain technical aspects that are not supposed to be viewed by the user or some aspects might be irrelevant for certain types. It is possible to restrict the aspects shown in the aspect picker by configuring it in the forms-configuration.
You can specify a static list of aspects to that extend on a node-type or aspect basis, just like you configure the visibility of node properties. Let’s limit the aspect picker to cm:titled for all nodes with aspect cm:versionable.
  - Id: cm:versionable
    Version: 1
    Evaluator: aspect
    Forms:
      - Fields:
          - Id: aspect-picker-set
            Fields:
              - Id: aspect-picker
                Parameters:
                  aspect.1: cm:titled
          - Id: auto
            Fields:
              - Id: cm:title
Legacy sample: Configuration of the aspect-picker JSON Sample
If you want certain controls to be more striking you could change the label colors or add a field set with a legend.
To change the label color of a control add the property “ForegroundColor” to a field. The following code snippet also adds a field set with legend “Info” and wraps around the cm:name and type property.
  - Id: default-node
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Template: gui.controlfactory.fieldset.group
            Text: Info
            Fields:
              - Id: cm:name
                ForegroundColor: DarkOrange
              - Id: type
                ForegroundColor: DarkOrange
            Parameters:
              centered: true
              collapsible: false
              start-collapsed: false
Legacy sample: Label colors JSON Sample
Default when a date property is empty it will stay empty, although this can be configured. When a date property should always be the date of today, we can add the parameter “override-default-value” and set the value to “today”. Static dates are also supported (format: DD/MM/YYYY).
  - Id: default-node
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Id: example-set
            Fields:
              - Id: fred:exampleDate
                Parameters:
                  override-default-value: today
Legacy sample: Date Picker JSON Sample
Default the people picker will search for users but this can be configured. It is configurable by adding the parameter “authority” to the “gui.controlfactory.property.authority” template. The value of this parameter can be set to “user”, “group” or “both” to search for users, groups or both respectively.
  - Id: people-picker-example
    Evaluator: aspect
    Version: 1
    Forms:
      - Fields:
          - Id: example-set
            Fields:
              - Id: fred:examplePeople
                Template: gui.controlfactory.property.authority
                Parameters:
                  authority: group
Legacy sample: People Picker JSON Sample
Show content properties like size and mime type in the metadata-panel.
  - Id: default-node
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Id: example-content-props-set
            Fields:
              - Id: sizeProperty
                Template: gui.controlfactory.property.size
                Text: Size
                Parameters:
                  type: property
                  qname: cm:content
              - Id: mimeTypeProperty
                Template: gui.controlfactory.property.mimetype
                Text: Mimetype
                Parameters:
                  type: property
                  qname: cm:content
Legacy sample: Size & mimetype JSON Sample
The types that are visible in the document type picker of the metadata panel can be configured in the config.js file (see Custom Default Configuration section).
The visible types in the document type picker con be further specified via forms configuration. Consider the following example:
- Id: default-node
  Evaluator: string-compare
  Version: 1
  Forms:
    - Fields:
        - Fields:
            - Id: cm:name
            - Id: template-name
              RenderMode:
                - Create
            - Id: type
              Parameters:
                doctype.1: cm:content
                doctype.1.1: prefix:docType1
                doctype.1.2: prefix:docType2
                doctype.1.2.1: prefix:docType3
                doctype.1.3: prefix:docType4
                doctype.2: cm:folder
        - Id: title
        - Id: auditable
        - Id: auto
          Fields:
            - Id: cm:content
              RenderMode:
                - Hidden
            - Id: cm:source
              RenderMode:
                - Hidden
            - Id: cm:destination
              RenderMode:
                - Hidden
            - Id: xenit-hash:schemeId
              RenderMode:
                - Hidden
            - Id: xenit-hash:hash-value
              RenderMode:
                - Hidden
            - Id: sys:cascadeCRC
              RenderMode:
                - Hidden
            - Id: sys:cascadeTx
              RenderMode:
                - Hidden
        - Id: rm
        - Id: aspect-picker-set
          Fields:
            - Id: aspect-picker
              RenderMode:
                - Edit
                - Create
In this example, for documents there will only be 5 different node types
available in the document type dropdown: cm:content,
prefix:docType1, prefix:docType2, prefix:docType3,
prefix:docType4.
├── cm:content
    ├── prefix:docType1
    ├── prefix:docType2
    │   ├── prefix:docType3
    ├── prefix:docType4
For folders there will only be 1 node type available: cm:folder.
├── cm:folder
It is possible to add an autocomplete metadata field where the results are based on the contents of a source file.
In edit mode you can start typing in the text box and based on the values in a source file it will suggest all possible values. Multi-value properties and single-value properties are both supported.


This feature is similar to a list constraint (defined in the model) on a property but the list has the advantage of being fully editable. You do not have to make changes to the document model. you only need to change the list in the source file.
To enable this feature you will need 2 custom made webscripts. The first web script is responsible for searching a value in the source file. The second web script is responsible for looking up a key in the source file and resolving it to the corresponding value.
Both webscripts should return a json result that looks like the following the following output:
  [
    {
        "guid":"1",
        "label":"Colette"
    },
    {
        "guid":"2",
        "label":"Alfredo"
    },
    {
        "guid":"3",
        "label":"Drew"
    },
    {
        "guid":"4",
        "label":"Fidelia"
    },
    {
        "guid":"5",
        "label":"Gary"
    },
    {
        "guid":"6",
        "label":"Rickie"
    },
    {
        "guid":"7",
        "label":"Nickolas"
    },
    {
        "guid":"8",
        "label":"Vivien"
    },
    {
        "guid":"9",
        "label":"Dominique"
    },
    {
        "guid":"10",
        "label":"Billi"
    }
  ]
The following configurations are also required:
  - Id: repo.resources
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Id: guid
            Fields:
              - Id: lookup
                Parameters:
                  endpoint: '{url:base}/service/resource/csv/translate?id={0}&format=json&alf_ticket={auth:ticket}'
                  resource-key: guid
                  resource-value: label
                  resource-error: error
              - Id: query
                Parameters:
                  endpoint: '{url:base}/service/resource/csv/search?property={parameter:qname}&query={0}&format=json&alf_ticket={auth:ticket}'
                  resource-key: guid
                  resource-value: label
                  resource-error: error
Legacy sample: Configuration of autocomplete dropdown based on source file JSON Sample Query
Note: {url:base} syntax is described in URL
Addressability
Under “Fields” you can see 2 objects. The first object is the “lookup” object. This object is used to show the property value in view mode. The “endpoint” is the url to the webscript that is responsible for the lookup. The second object is the “query” object. This object is used to search for all possible values for the property in edit mode. The “endpoint” is the url to the web script that is responsible for querying.
Now you also need to configure the dropdown control for the metadata panel. You can do this in the following way:
  - Id: sample:myAspect
    Evaluator: aspect
    Version: 1
    Forms:
      - Fields:
          - Id: dropdown-set
            Text: Dropdown Data
            Fields:
              - Id: sample:myProperty
                Template: gui.controlfactory.property.dropdown
                Text: My property value
                Parameters:
                  type: property
                  qname: sample:myProperty
                  resolver: repo.resources.guid
                  max-display-result: 10
                  min-input-length: 1
Legacy sample: Configuration of autocomplete dropdown based on source file JSON Sample Form Configuration
The template that has to be used is the “gui.controlfactory.property.dropdown” template. The “type” parameter has to be kept the same as in this example. The “qname” parameter value has to be set toe the qname of the property. The “resolver” parameter value points to the id of the field set containing the lookup object and the query object (see previous configuration snippet). If you use that configuration snippet, this value can be kept the same as in the example configuration. The “max-display-result” can be set to a value of choice. This is the max amount of items that are suggested when querying all possible property values in the metadata panel. By default this value is set to 500. Lower values will result in better performance. The “min-input-length” is the minimum amount of characters needed in the property input field before it starts querying for all possible values. By default this is set to 0. For larger source lists it is recommended to change this to a higher number like 2 or 3 to increase performance.
Users can select which columns they want to view in Alfred Desktop’s folder view.
Alfred Desktop comes with 2 sets of configuration that define how users can select different columns:

The syntax to define the list of columns a user can select:
  - Id: default-column-list
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Id: System
            Text: System Properties
            Appearance: section
            Fields:
              - Id: Format
              - Id: Location
              - Id: Info
              - Id: WorkingCopy
                Appearance: submenu
                Fields:
                  - Id: cm:workingCopyOwner
Legacy sample: Column List Configuration JSON Sample
Note that Id can either by “default-column-list” of “column-list”.
The former will replace the whole list of built-in column-properties under “System Properties”. The latter will prepend the forms-config-defined list to the “System Properties”
Using the Appearance option, a subsection can be rendered as either a section or a submenu.
The color of one or more columns can be changed through forms configuration. You can change the text and/or the background.
The text color can be changed by adding the “foreColor” parameter. If you want to change the background color of a column you will need the “backColor” parameter.
In this example we change the text color to red (RGB value of “255,0,0”) and the background color to blue (RGB value of “0,0,255”) for the column containing the property with QName sample:property.
      - Id: SubmenuID
        Appearance: submenu
        Text: Submenu
        Fields:
        - Id: sample:property
          Text: Sample Property
          Parameters:
            foreColor: "255,0,0"
            backColor: "0,0,255"
It is also possible to change the background color and the text color of a column based on the value of the cell. In order to change the text color you need to use the “foreColorOverrides” parameter. To change the background color you need to use the “backColorOverrides” parameter.
In this example we change the text color and background color of the column with QName sample:property. If the cell has “value1” as content the text color is black (RGB value of “0,0,0”) and the background color is a kind of blue (RGB value of “66,223,244”). If the cell has “value2” as content the text color is black (RGB value of “0,0,0”) and the background color is green (RGB value of “0,255,0”). If the cell has “value3” as content the text color is black (RGB value of “0,0,0”) and the background color is a kind of orange (RGB value of “244,155,66”).
       - Id: SubmenuID
        Appearance: submenu
        Text: Submenu
        Fields:
        - Id: sample:property
          Text: Sample Property
          Parameters:
            foreColorOverrides:
              "value1": "0,0,0"
              "value2": "0,0,0"
              "value3": "0,0,0"
            backColorOverrides:
              "value1": "66,223,244"
              "value2": "0,255,0"
              "value3": "244,155,66"
In this configuration, individual fields represent the columns in a set (and are not rendered in the menu). The sections are the column-set menu items.
The configuration of search facets used to be part of the forms configuration. Starting from Fred 3.5 this configuration is no longer supported.
Available search facets in Alfred Desktop are now configurable through
the Facet Manager of Alfresco Share. You can access the Facet Manager
following this url:
http://{hostname}:{port}/share/page/dp/ws/faceted-search-config.
Adding a facet here will also make it available in Alfred Desktop.
The concept of URL addressability was introduced in Alfred Desktop to increase configuration flexibility and reduce the maintenance required to maintain the configuration across different Alfresco servers.
Components supporting this functionality:
Supported parameters:
{url:schema}
{url:host}
{url:port}
{url:context}
{url:base}
{url:share}
{data:id}
{data:kind}
{node:name}
{node:ref}
{node:ref:id}
{node:ref:storeprot}
{node:ref:storeid}
{node:propertyPrefix:propertyLocalName}
{auth:ticket}
{username}
{user:name}
{user:node:ref:id}
{settings:lang}
Given the following arguments:
http://www.xenit.eu:8080/alfrescoTestName{url:base}?repo={node:name}&nodeTitle={node:cm:title}&id={auth:ticket}The expected result should look like this:
http://www.xenit.eu:8080/alfresco?repo=TestName&nodeTitle=title
&id=TICKET_1ae81ec51a2264e8eddde248c6e89372d3fdfea6
The node has property cm:title set to “title”. In the parameterized url {node:cm:title} is replaced by the value of the cm:title property. Of course, other properties are also supported. If you have a property with short qname “prefix:localName” you just add the following parameter to the url: {node:prefix:localName}
To expand {url:base} to the full syntax, here is the piece-by-piece
parameterized URL:
{url:schema}://{url:host}:{url:port}/{url:context}?repo={node:name}&id={auth:ticket}
To create documents from document templates in the Alfresco repository, you have to add the templates to the folder ‘Node Templates’ in Data Dictionary.

All the documents that are inserted in this folder will be shown under “New Document” in the context menu.

Within the “Node Templates” folder you can also create subfolders and put your document templates in it to group them together.
You can configure which templates will be available for which user or group by setting permissions on the templates in the Document Template folder. So you can attribute a template to the finance department.
It can be useful to group properties together in such a way that the user can instantly select the group or set of properties.

This can be defined via the column set configuration:
  - Id: default-column-sets
    Evaluator: string-compare
    Version: 1
    Forms:
      - Fields:
          - Id: AuditSet
            Text: Who / When
            Fields:
              - Id: cm:author
              - Id: cm:modified
          - Id: ByApsectsSets
            Text: By Aspects
            Fields:
              - Id: AuditableAspect
                Text: Auditable
                Fields:
                  - Id: cm:creator
                  - Id: cm:created
                  - Id: cm:modifier
                  - Id: cm:modified
Legacy sample: Column Set Configuration JSON Sample
In this configuration, individual fields represent the columns in a set (and are not rendered in the menu). The sections are the column-set menu items.
By default, in the metadata panel, every field will be added to the
auto field set unless there is a custom forms configuration that adds
it to another field set ( see section Forms configuration of a
type).
This behaviour can be slightly changed. For node type specific forms
configurations it is possible to only allow fields to be shown that are
part of a field set, except for the auto field set. Fields will no
longer be added automatically to the auto field set.
This change in behaviour can be achieved by adding parameter
forms.fieldsets.auto.show-all-fields to the extended section in that
config.js file and setting its value to false.
path:
$tomcat/shared/classes/alfresco/extension/templates/webscripts/
eu/xenit/config/config.js
    var configByGroup = {
        "default": {
            "namespace"     : "",
            "rootdoctype"   : "{http://www.alfresco.org/model/content/1.0}content",
            "rootnoderef"   : (this.companyhome != null)?companyhome.nodeRef.toString():"",
            "extended"      : {
                "forms.fieldsets.auto.show-all-fields" : "true"
            }
        },
    };
The default value of forms.fieldsets.auto.show-all-fields is true.