XML configuration

Action

Represents an action in the view of a search. It will be possible to capture the click on an action from a search extension class (afterSelectDocuments).

Example

<actions>
    <action name="myAction" label="LG_MY_ACTION_DISPLAY_LABEL"/>
</actions>

Attributs

Attribute Mandatory Description Synopsis
label Yes The translation key displayed on the button Type : String
name Yes The system name of the action that will be used in the afterSelectDocuments (String, java.util.Collection) method of your BaseSearchExtension Type : String

Column

Represents a column in a View.

Example

<column name="EXTENSION" label="LG_EXTENSION" type="text"/>

Attributes

Attribute Mandatory Description Synopsis
name Yes System name of the linked CustomTag Type : String
See : CustomTag
label Yes Column label (translation key) Type : String
type Yes Data type Type : String
Value : [text, date, boolean, number, file]
format No Depends on the type of data used. Type : String
Dependencies :
- If type “number”, we can pass a display format here by following the standard defined by the Java object “DecimalFormat”
- If type “date”, we can pass here “date”, “time” or “datetime”
sortable No Allows you to sort on this column. Type : String
collection No This attribute is used to define a column for a multiple display Type : Boolean
Default value : false
See : CustomTag
Dependencies : list of values for “collection” custom tags
hidden No Allows you to hide a column when displaying the results view; the data in this column will still be accessible via the Excel export. Type : Boolean
Default value : false
exportable No Allows to hide a column in the Excel export of the results view. Type : Boolean
Default value : true
width No Column width. Type : px or %
hyperLink No This field is used to reference a CustomTag containing a URL on which we can build a hypertext link. Type : String
hyperLinkPrefix No This attribute is used to complete the previous one. It allows to add a prefix to the URL that will be displayed in the hyperlink.
Example: the prefix “mailto:” can be used to add a mailto link on an indexed email.
Type : String
toolTips No Allows you to fill in one or more fields which will be used as a “tooltip” when the user hovers the mouse over the column. This tooltip overrides the view one.
The content will be truncated if it exceeds a certain number of characters.
Type : String (Collection with ‘|’ )
See : CustomTag
Dependencies : Valid only if the type is “text”
maxTextSize No Allows to truncate ’text’ type columns. Type : Integer
Since Xtended-Search1.5.0
Dependencies : Valid only if the type is “text”

Sub-nodes

Attribute Mandatory Description Synopsis
Navigation (1) No It is possible to define navigation extension classes on a column.
Concretely, this functionality makes it possible to add an additional icon in the column which will be able to carry out a treatment. You can develop your own navigation classes through the SDK.
A navigation extension class is provided by Process “com.axemble.axvdocsearch.extensions.implementation.INavigationExtension/navigation.PopUpNavigationExtension”, it allows the establishment of a link that opens a new Search in a popup window . This new search can be filtered in relation to the result line from which you have browsed (see the dedicated paragraph below).
See : INavigationExtension
Remark : A list of parameters can be sent depending on the navigation extension class.
navigation/parameters/parameter (*) No Since Xtended-Search1.5.0

CustomTag

Exemple

<customtag name="Champlistesimple" type="text" label="LG_Champlistesimple" list="true"/>

Attributs

Attribute Mandatory Description Synopsis
LOG No
name Yes System name of the tag Type : String
See : Search and Index
Dependencies : Be careful in the case of a Search: this CustomTag name must have been declared in the index (s) concerned by the search (or be one of the “system” CustomTags).
label Yes Label of the tag (translation key) Type : String
Dependencies : Mandatory only for Search
type Yes Data type Type : String
Value : [text, date, boolean, number, file]
collection No To be set to “true” if the “Source” field returns a collection of data. Type : Boolean
list No Used to present a list of possible choices in this CustomTag. The content of this list is created automatically with the different values present in the index. Type : Boolean
Default value : false
listOperator No Allows you to change the operator applied when you filter on a value in a list. Type : String
Default value : contents
Value : [equals, startsWith, endsWith, contents]
operators No You can place the operators you want for this tag here; you will thus override the operators associated by Process for the associated data type.
However, it will of course be necessary to respect a logic between the operators chosen and the type of data.
Example: For a search on the reference, I only want the operators “starts with” and “equals”. So I can ask: operators = “startsWith|equals”
Type : String (Collection with ‘|’)
Value : [equals, startsWith, endsWith, contents, before, after, between, minor, major]
defaultOperator No Here you can configure the operator selected by default when your search is displayed; natively, the system chooses the first in the list. Type : String
Value : CustomTag#listOperator
aliasFor No Allows you to define an alias on a CustomTag. Type : String
Since Xtended-Search1.5.0
Dependencies : Only valid in an Index
description No Allows you to define a tooltip for the search form (translation key). Type : String
Since Xtended-Search1.5.0
Dependencies : Only valid in a Search
hideSingleOperator No Hide the operator if there is only one item in the list. Type : Boolean
tree No Allows the implementation of a “data tree” control.
It is in fact a multiple list field with a particular syntax: “/” in the data allow to build the tree structure.
Type : Boolean
Default value : false
multipleSearch No Multiple choice search.
If set to “true”, the simple list control is replaced by a “checkbox” control.
Type : Boolean
Default value : false
multipleSearchMode No Graphic control display mode: in list (list with toggle) or in checkboxes (by default in checkboxes).
Remark : In the case of a display in check boxes, you can set the number of columns for your boxes by passing an XML parameter in the Search: CHECKBOXGROUP_NB_COLUMNS.
Type : String
Default value : checkboxes
Value : [checkboxes, list]
onChangeList No If set to “true”, allows triggering an SDK dynamism event between several list controls. Type : Boolean
Default value : false
interval No Currently only used for “date” type fields but can be extended; it allows you to enter an interval, a period to filter. Type: Boolean
Dependencies: Valid only if the type is “date”
optional No Allows to make optional fields.
These fields can be added at the user’s request. The user performing the search will be able to dynamically add filtering fields among the fields configured as “optional”.
Type: Boolean
Default value: false
customControl No Use this attribute to specify a customizable filtering field class name.
These customizable filtering fields allow you to create personalized filtering renderings and thus not be limited to a text field, a list, checkboxes …
Example: com.axemble .vdp.ui.core.document.fields.AutocompleteListField (Multiple predictive list)
Type: String
throwEventsOnLoad No Allows to inhibit “onchange” events when loading the search form. Type: Boolean
Default value: true
defaultValue No Pre-filled value in the search form (supports syntaxes from formula extension). Type: String
Default value: null
excludeFromFullText No Allows you to exclude a field from the full text search. Type: Boolean
Default value: false
listIndexingMode No From version 6.1.0: Used to index the key of a list field (key) or its value (value). Type: String
Default value: value

Sub-nodes

Attribute Mandatory Description Synopsis
foreign (1) No It is possible to make links (1..N) between several indexes when you build an index.
It is therefore possible to perform a join to another “sub-index” thanks to a join on the “customtags” of the 2 indexes.
See : Foreign
parameters/parameter (*) No

FacetComparator

Attributes

Attribute Mandatory Description Synopsis
faceting No

Faceting

A “faceting” mode can be activated on searches (note: the fullText search must be activated).

Info

Activating faceting and fulltext mode creates an error message in the logs. This should not be taken into account because these 2 modes must be activated at the same time for the faceting to work correctly.

It is currently not possible to combine faceting and another filtering source. Inconsistent operation occurs if, for example, faceting and filterGroups are combined.

This mode will allow us filtering assistance as the user performs these filters, the spectrum of corresponding documents is reduced. Thus, the filters with choice (lists, checkbox, trees, …) will be reduced automatically.

Example

<faceting sortOrder="byHits" displayHitCount="true" autoExecuteSearch="false"/>

Attributes

Attribute Mandatory Description Synopsis
sortOrder No Lets you know how the lists reworked by faceting must be sorted:
“byValue”: compared to Value: alphabetical order
“byHits”: by report to the number of results for each element of the list (from the largest number of results to the smallest)
Type: String
Default value: byValue
Value: [byValue, byHits]
displayHitCount No If set to “true”, add the number of associated results to the labels of list elements.
Warning: will have no effect on the “multiple lists” and “tree” fields.
Type: Boolean
Default value: false
autoExecuteSearch No If set to “true”, once the faceting is carried out dynamically on a filter, an automatic execution of the search is also carried out. Type: Boolean
Default value : false

Filter

This is a filtering element in a filtergroup (corresponds to filtering, as it could have been done in the interface).

Example

<filter name="myCustomtag" type="text" operator="contents" value="valuetotest" customValue="false" format=""
        normalized="false"/>

Attributes

Attribute Mandatory Description Synopsis
LOG No
name Yes System name of the CustomTag linked to the filter Type : String
type No Data type Type : String
Default value : text
Value : [text, date, number]
operator No Comparison operator. Type : String
Default value : equals
Value : [equals, startsWith, endsWith, contents, before, after, between, minor, major]
value No Value to test (only for a static filter).
If it is a date type, it will be necessary to use the format for the writing format of the date. (supports syntaxes from formula extension).
Type : Depends on type
customValue No If this value is “true”, the filter will be completed via SDK and not directly from the XML. Type : Boolean
Default value : false
normalized No Allows the filter to be carried out on the chain standardized by the indexing controller. Type : Boolean
Default value : false
format No Used to provide format information on the value entered.
For the moment only used for dates, we then inform here the format of the entered date. Example: dd/MM/yyyy. (supports syntaxes from formula extension).
Type : String

FilterGroup

The filtergroups allow you to establish “pre-filters” in your searches and therefore to reduce the spectrum of your searches. Filters placed in filtergroups will be added to standard filters and cannot be removed by the user from your searches.

It is currently not possible to combine faceting and another filtering source. Inconsistent operation occurs if, for example, faceting and filterGroup are combined.

Example

<filterGroups>
    <filterGroup default="true" name="myFilterGroup" label="LG_MY_FILTERGROUP">
        <filter.../>
    </filterGroup>
</filterGroups>

Attributes

Attribute Mandatory Description Synopsis
name Yes System name of the FilterGroup used at the SDK level to identify the FilterGroup. Type : String
label Yes Label of the FilterGroup (translation key).
This key is used to present a “tab” in the search header (possibly hideable via options on the “search”: Search)
Type : String
default No Configuration loaded by default. There can only be one “FilterGroup” with this flag set to “true”. Type : Boolean
Default value : false

Sub-nodes

Attribute Mandatory Description Synopsis
filter (*) Yes See : Filter

Foreign

It is possible to make links (1..N) between several indexes when you build an index.

It is therefore possible to perform a join to another “sub-index” thanks to a join on the “custom tags” of the 2 indexes.

We have 2 indexes, an index relating to the documents of a process and another index relating to the history of the documents of this process.

We want to find all the documents in which Mr. BERNARD intervened.

We are therefore going to integrate a “customtag” in the main index, pointing to the “intervenor” field of the history index.

In this case the join can be done on the ID of the parent document.

Remark :

  • This node is entered in the index concerned (not in the search)
  • Customtags resulting from join can be used as filters but not in the columns of search results

Example

<customtag name="Champlistesimpletableau" type="text">
    <foreign indexName="foreignIndexName" localKey="ID" foreignKey="PARENTID" />
</customtag>

<fullText>
<foreigns>
    <foreign indexName="foreignIndexName" localKey="ID" foreignKey="PARENTID" />
</foreigns>
</fullText>

Attributes

Attribute Mandatory Description Synopsis
indexName Yes System name of the index we want to join. Type : String
localKey Yes System name of the local custom tag on which we attach. Type : String
foreignKey Yes System name of the remote custom tag on which we attach. Type : String

FullText

Used for fulltext search definition on a linked index (foreign).

Example

<fullText>
    <foreigns>
        <foreign indexName="foreignIndexName" localKey="ID" foreignKey="PARENTID"/>
    </foreigns>
</fullText>

Sub-nodes

Attribute Mandatory Description Synopsis
foreigns/foreign (*) No The fulltext node can contain N Foreign nodes for joins on several indexes. See : Foreign

IFormulaSupport

ITooltipsSupport

Index

Represents the index, the storage “table” for your indexed items.

Example

<index name="myIndexUniqueName"
       label="LG_myIndexUnique"
       controller="com.axemble.axvdocsearch.core.controllers.implementation.LuceneController"
       extension="CLASSE D'INDEXATION"
       indexStorePath="vdocsearch\myIndexUniqueName"
       updateOnIndexedDocuments="true"
       locales="fr">

    <parameters>
        <!-- Input parameters for my indexing class -->
        <parameter key="PARAM1" value="VALUE1"/>
        <parameter key="PARAM2" value="VALUE2"/>
    </parameters>
    ...
</index>

Attributes

Attribute Mandatory Description Synopsis
name Yes System name of the index; without special characters, this system name will link the index to searches. Type : String
label Yes Index label (translation key). Type : String
controller Yes Indexing controller. Today, only the Lucene controller is available: com.axemble.axvdocsearch.core.controllers.implementation. LuceneController Type : String
extension Yes Path to the indexing SDK class which allows us to determine what we need to index.
These can be connectors already delivered by Process or specific connectors. The role of indexing classes is to provide the data that needs to be indexed.
Type : String
indexStorePath Yes Path to the server folder where the index should be stored.
In the case of Controller Lucene, this is a path on the disk, which can be absolute or relative (with respect to the “contentstore/index” folder).
Type : String
locales Yes List of locales managed in this index (separated by “|”) By default, we can therefore write: fr Type : String
Default value : false
updateOnIndexedDocuments No This Boolean attribute is used to know whether the indexing agent should update documents that are already indexed.
If we know that the indexed elements will never be modified, we can therefore set this attribute to “false”.
The indexing will therefore be optimized: we will only manage the addition of new elements and the deletion of existing elements.
Type : String
Default value : true
indexArchives No Defined if the archive files are indexed or not. Type : Boolean
Default value : false

Sub-nodes

Attribute Mandatory Description Synopsis
autodefinitions/autodefinition (*) No The customtags of your index can be defined manually but also automatically defined by a self-definition class.
If, for example, for each process, you indexed all the fields, there is no need to specify them manually each time; the self-definition class will do it for you :
<autodefinitions>
<autodefinition
name="com.axemble.axvdocsearch.extensions.implementation.IAutoDefinitionExtension.ResourceAutoDefinitionExtension">
<parameters>
<parameter key="CUSTOMTAGS_EXCEPTIONS" value="" />
</parameters>
</autodefinition>
</autodefinitions>
Warning com.axemble.axvdocsearch.extensions.base.implementation.IAutoDefinitionExtension is replaced by com.axemble.axvdocsearch.extensions.base.implementation.autodefinition since Xtended-Search10
customtag (*) Yes Here we can define our specific customtags.
This is the metadata that describes our indexed documents; it is from these custom tags that we can filter or display search results (columns).
See : CustomTag
parameters/parameter (*) No
fullText (1) No Under an index, we can define this node in order to integrate a FullText search on linked indexes. See : FullText
backup (1) No It is possible to configure automatic indexes backups. Here you can activate backups for the different types of indexing: full, incremental or unitary :
<backup complete="true" incremental="false" unit="false" />
Since : Xtended-Search1.4.7

Job

This use allows you to declare your own jobs.

Let’s imagine the following case: I have 3 indexes in my XML; for the first 2, the data source is updated at night and the amount of data being large, indexing is quite long.

On the other hand, my 3rd index is very small but the source data is constantly updated. If I schedule my agent every hour (what it would take for my 3rd index), I will unnecessarily reindex my first 2 indexes, which will greatly slow down my Process instance.

Example

<job name="caseBaseDirectoryUserIndexExtension" agent="caseBaseDirectoryUserIndexExtension">
    <index name="caseBaseDirectoryUserIndexExtension"/>
    <index name="caseBaseFileCenterIndexExtension"/>
</job>

Attributes

Attribute Mandatory Description Synopsis
name Yes The name of the job. It allows the definition of the job in several files. Type : String
agent No The name of the agent who must execute this job. Type : String

Sub-nodes

Attribute Mandatory Description Synopsis
Index (*) No This tag must specify the ’name’ of the indexes to run. See : Index

LifeCycleStatus

Attributes

Attribute Mandatory Description Synopsis
production No
development No

MoreLikeThis

Can be activated on a search.

Search for related documents from a search result.

If you activate this mode, on a search result, the user can request a search for the documents of the index closest to a given result.

Example

<moreLikeThis countDocuments="5"/>

Attributes

Attribute Mandatory Description Synopsis
DEFAULT_COUNT_DOCUMENTS No
DEFAULT_MIN_WORD_LENGTH No
DEFAULT_MAX_WORD_LENGTH No
DEFAULT_MIN_DOC_FREQ No
DEFAULT_MAX_DOC_FREQ No
countDocuments No Number of similar documents displayed Type : Integer
Default value : 7
linkCustomtag No Customtag used to display links to similar documents in the tag cloud Type : String
Default value : REFERENCE
toolTipCustomtag No Customtag used to display tooltips on links to similar documents in tag cloud. Type : String
Default value : TITLE
minWordLength No Minimum number of characters for a term to be used to analyze similarity Type : Integer
Default value : 3
maxWordLength No Maximum number of characters for a term to be used to analyze similarity Type : Integer
Default value : 0
minDocFreq No Minimum word frequency Type : Integer
Default value : 4
maxDocFreq No Maximum word frequency Type : Integer
Default value : Integer.MAX_VALUE
stopWords No Stop words which should not be used to analyze similarity (separation by “|”) Type : String

ResultGroups

This node will allow us to work on the search results: it is a question of grouping them according to a logic; this logic is encoded in extension classes.

Process offers two classes of resultgroups by default:

  • Grouping by indexes: com.axemble.axvdocsearch.extensions.implementation.IResultGroupsExtension.IndexesResultGroupsExtension (without parameters)
  • Grouping by values of a customtag: com.axemble.axvdocsearch.extensions.implementation.IResultGroupsExtension.CustomTagResultGroupsExtension
    • customTagKey: Name of the CustomTag concerned
    • customTagCollectionKey: (not mandatory) Boolean value to be set to “true” if the CustomTag is a “collection”
  • Grouping by indexes: com.axemble.axvdocsearch.extensions.implementation.resultgroups.IndexesResultGroupsExtension ( without parameters)
  • Grouping by values of a customtag: com.axemble.axvdocsearch.extensions.implementation.resultgroups.CustomTagResultGroupsExtension
    • customTagKey: Name of the CustomTag concerned
    • customTagCollectionKey: (not mandatory) Boolean value to be set to “true” if the CustomTag is a “collection”

Example

<resultGroups
        extension="com.axemble.axvdocsearch.extensions.implementation.IResultGroupsExtension.CustomTagResultGroupsExtension">
    <parameters>
        <parameter key="customTagKey" value="Champlistesimple"/>
    </parameters>
</resultGroups>
<resultGroups
        extension="com.axemble.axvdocsearch.extensions.implementation.resultgroups.CustomTagResultGroupsExtension">
    <parameters>
        <parameter key="customTagKey" value="Champlistesimple"/>
    </parameters>
</resultGroups>

Attributes

Attribute Mandatory Description Synopsis
LOG No
extension Yes Path to the extension class of the resultgroup Type : String
Default value : false
Value : [text, date, number, file]
Dependencies : valid only if the type is “text”
resultGroupsExtension No
showAll No Should we show the “All” mode? (a link without grouping) Type : Boolean
Default value : false
Since Xtended-Search1.5.0
showAllPosition No Position of “All” mode: first or last.
Remark: positioning first can cause performance problems: lifting all objects
Type : String
Default value : last
Since Xtended-Search1.5.0
Value : [first, last]
Dependencies : valid if “showAll” is true

Sub-nodes

Attribute Mandatory Description Synopsis
parameters/parameter ( * ) No

Design of advanced search interfaces (= search form).

Example

<search name="SEARCH NAME"
        label="SEARCH_LABEL"
        sourceIndexes="INDEX_NAME"
        securityExtension="com.axemble.axvdocsearch.extensions.implementation.ISecurityExtension.VDocSecurityExtension"
        fullTextInput="true"
        defaultViewRowsPerPage="10">
    ...
</search>
<search name="SEARCH NAME"
        label="SEARCH_LABEL"
        sourceIndexes="INDEX_NAME"
        securityExtension="com.axemble.axvdocsearch.extensions.implementation.security.VDocSecurityExtension"
        fullTextInput="true"
        defaultViewRowsPerPage="10">
    ...
</search>

Attributes

Attribute Mandatory Description Synopsis
LOG No
name Yes System name of the search, used to access the search from a portlet, screen or EasySite component Type: String
label Yes Search caption (translation key) Type: String
sourceIndexes Yes Names of the indexes on which the search is based (separated by “|”). In the case of an advanced search, the N indexes must implement the same names of CustomTags for the advanced search to be meaningful. Type: String
information No Allows to override the information in the header with your own internationalization key Type: String
Default value: Standard information
extension No Research presentation extension class (before and after the research). This class is optional; if left empty, a default search extension class is automatically assigned. Type: String
Default value: Standard extension class
securityExtension No Path to a Security SDK extension class.
In the case of data from Process modules (not GED), we can use the class com.axemble.axvdocsearch.extensions.implementation.ISecurityExtension/security.VDocSecurityExtension
This class uses the security management SDK in order to filter search results.

Remark : for the GED part, we will use the security class : com.axemble.axvdocsearch.extensions.implementation.ISecurityExtension.VDocDocumentManagementSecurityExtension
Type: String
fullTextInput No Should we display a Full-Text search or only a search by criteria ? Type: Boolean
Default value: true
autoExecuteSearch No Automatically run the search.
This flag only makes sense if a filtergroup has been set up; Otherwise the search will not give any results because Xtended Search only executes a query if at least one filter is filled in.
Type: Boolean
Default value: false
showFavorites No This attribute enables the favorites functionality for this search. Users will therefore be able, if this attribute is set to “true”, to manage their search favorites and to share them (if authorized). Type: Boolean
Default value: false
allowShareFavorites No This attribute is used to complete the previous attribute. It allows you to deactivate the possibility of sharing a favorite with other users. Type: Boolean
Default value: true
Dependencies: valid only if “showFavorites” is true
allowReset No This attribute is used to hide the “Clear filters” button. Type: Boolean
Default value: true
linkable No Should we set up hyperlinks on search results?
The system places the link on the 1st column found from the left.
Type: Boolean
Default value: true
linkController No Here we can define the full path to a class inheriting from BaseController. It is then this class that will be called when we click on a hypertext link in the search results.

HTTP parameters passed to the Controller:
- indexName: System name of the document index
- searchName: System name of the search concerned
- ID: ID of the selected document
Type: String
linkControllerAnonymous No If this attribute is true, the call to the linkController is done anonymously and not with the current session. Type: Boolean
Default value: false
Dependencies: valid only if linkController is entered
hideTabsGroup No Allows you to hide the tabs in the screen header (tabs produced by filtergroups). Type: Boolean
Default value: false
showInformation No Set to “false”, the information in the header is not displayed. Type: Boolean
Default value: true
selectable No We will set this flag to “true” in the case of an integration as a selector (from a process form, for example). This flag will allow you to add selection buttons in the search results, thus transforming the search screen into a selector.

On selection, you are called in your search extension class, on the “afterSelect” or “afterSelectDocuments” methods.

Warning, if you have a search extension class, the “isSelectionDisplayed” method must return “true” for the selection to be activated (goes above the XML attribute).
Type: Boolean
Default value: false
autoRefresh No This attribute is used to force the resetting of the search when you return to the page integrating the search (Portlet or EasySite). Type: Boolean
Default value: false
executeSearchOnRefresh No This attribute is used to force the execution of the search on the refresh. Type: Boolean
Default value: false
selectableType No Selection mode, single or multiple. Type: String
Value: [single, multiple]
Dependencies: valid only if selectable is “true”
formCols No Display the search form on N columns (column = label + field). Type: Entier
Default value: 1
showLastIndexationDate No Type: Boolean
Default value: false
icon No The icon to display in the global search selector Since: Xtended-Search2025.0.0
Example: icon_32_process

Sub-nodes

Attribute Mandatory Description Synopsis
customtag (*) No Customtags placed here will build the advanced search form
<search ... >
<customtag name="login" type="text" label="LG_LOGIN" />
<customtag name="FirstName" type="text" label="LG_FIRST_NAME" />
<customtag name="LastName" type="text" label="LG_LAST_NAME" />
...
See : CustomTag
section (*) No It is possible to position your customtags directly under the search node or to build subsections.
Warning: if you choose the sub-sections option, all the tags must be present in sections (we cannot mix the two modes)
<search ... >
<section name="1" label="LG_VDOC_SECTION">
<customtag name="login" type="text" label="LG_LOGIN" />
</section>
<section name="2" label="LG_USER_SECTION">
<customtag name="FirstName" type="text" label="LG_FIRST_NAME" />
<customtag name="LastName" type="text" label="LG_LAST_NAME" />
</section>
...
Since Xtended-Search1.5.0
See : Section
filterGroups/filterGroup (*) No We declare here the possible filtergroups positioned in the search. See : FilterGroup
formulaExtension (*) No We declare any extensions of formulas that we want to use in our search. Formula extensions allow you to take advantage of pre-filled bookmarks in the XML.
<formulaExtensions>
<formulaExtension name="com.axemble.axvdocsearch.extensions.implementation.IFormulaExtension.UserConnectedFormulaExtension"/>
<formulaExtension name="com.axemble.axvdocsearch.extensions.implementation.IFormulaExtension.DatesFormulaExtension"/>
</formulaExtensions>
Warning com.axemble.axvdocsearch.extensions.implementation.IFormulaExtension is replaced by com.axemble.axvdocsearch.extensions.implementation.formula since Xtended-Search10.
See : Formula extension
faceting (1) No Activation of faceting on our research. Since Xtended-Search1.4.7
See : Faceting
resultGroups (1) No Configuration of a possible resultGroups. See : ResultGroups
view (1) Yes Configuring the search results view. See : View
moreLikeThis (1) No Enabling the search for related documents from search results See : MoreLikeThis
parameters/parameter (*) No
template (*) No Template collection See : Template

Section

Used to order the CustomTag. If we use Section all CustomTags must be in sections.

Example

<section name="1" label="LG_VDOC_SECTION">
    <customtag name="login" type="text" label="LG_LOGIN" />
</section>

<section name="2" label="LG_USER_SECTION">
<customtag name="FirstName" type="text" label="LG_FIRST_NAME" />
<customtag name="LastName" type="text" label="LG_LAST_NAME" />
</section>

Attributes

Attribute Mandatory Description Synopsis
LOG No
name Yes The system name of the section (must be unique in the Search). Type : String
label Yes Section label (translation key). Type : String
position No Allows you to define the order of the Section Type : Integer
Default value : 0

Sub-nodes

Attribute Mandatory Description Synopsis
customtag (*) No The list of CustomTags in the section. See : CustomTag

Template

Allows you to modify the rendering of the view using the Process template system. You can use a formula with the @LOC function to retrieve translations ex : ${@LOC(“LG_TRAD_KEY”)} Template can also be enhanced with extensions : Using formula extension in XML

Example

<templates>
    <template name="myTemplate">
        <![CDATA[
            <div>
                <div class="creation-date">
					<h2>${@LOC("LG_TRAD_KEY")} - ${TITLE}</h2>
					$CREATIONDATE$
                </div>

                <div class="typname">
                    $TYPNAME$
                </div>
            </div>
        ]]>
    </template>
</templates>

Attributes

Attribute Mandatory Description Synopsis
path No The path of the template file (from the “templates” folder in the search configuration folder). Type : String
defaultTemplate No Allows you to define the default template. Type : boolean
name Yes The unique name of the template. It can be used in a search extension, via the getCustomTemplate method of the IResourceSearchExtension3 interface. Type : String
html No The content of the template (if no path defined).

View

We will define here the structure of the search results. What information do we need to show to the user?

Example

<view linksTarget="_blank">
    <column name="EXTENSION" label="LG_EXTENSION" type="text"/>
</view>

Attributes

Attribute Mandatory Description Synopsis
linksTarget No Target in the HTML sense when clicking on links. Type : String
Default value : vide
Value : target HTML
toolTips No Allows you to fill in one or more fields which will be used as a “tooltip” when the user hovers the mouse over the lines of the search result. The content will be truncated if it exceeds a certain number of characters. Type : String (Collection with ‘|’)
displayMode No Search results display mode. Type : String
Default value : table
Value : [table, list, links]
showReference No Should we show the reference as the result column ? Type : Boolean
Default value : true
showTitle No Should we show the title as the result column ? Type : Boolean
Default value : true
defaultSortingColumn No Name of the column in the view on which we need to filter by default. If this attribute is not filled in, we automatically filter on the 1st column of the view. Type : String
See : Column
defaultSortingAscending No Sort order for the default sort column. Type : Boolean
Default value : true
exportable No Allows you to export the view as an Excel file. (Standard export icon for Process views). Type : Boolean
Default value : true
showScore No Displays the relevance of search results. Type : Boolean
Default value : false
enableToolTipsLabel No Displays the CustomTag label in the tooltip. The translation keys for your custom tags will be built according to logic: LG_XtendedSearch_[SEARCHNAME]_[CUSTOMTAGNAME] Type : Booléan
Default value : false
scoreMode No Two methods of calculating the score are possible:
- absolute: the reported score is the absolute value returned by the indexer; the greater the value, the more relevant the document.
- relative: a percentage is calculated relative to the most relevant document; thus we obtain decreasing percentages for the scores of other documents.
Type : String
Default value : absolute
Value : [absolute, relative]
rowsPerPage No Number of results per page. Type : Integer
Default value : 0
Value : [5, 10, 25, 50, 100, 250, 500]
internalPagination No This attribute allows us to perform “low level” paging in the index and not in memory; this will be particularly useful in the case of large volumes. Type : Booléan
Default value : false
See : Le chapitre dédié aux modes de pagination

Sub-nodes

Attribute Mandatory Description Synopsis
column (*) No In this view, we are going to set up Columns. The result row will be built in the defined column order. See : Column
action (*) No Collection of Actions. See : Action
template (*) No Collection of Template. See : Template

Source : https://wiki.myvdoc.net/xwiki/bin/view/Dev+Floor/XtendedSearchDocumentationXML