Page History
...
Another example: Using the standard search, a user would search for something like [wetland + "dc.author=Mitsch, William J" + dc.subject="water quality" ]. With filtered search, they can start by searching for [wetland ], and then filter the results by the other attributes, author and subject.
What is a tag cloud facet
Tag cloud facet is another way to display facets of your repository in a “tag cloud” form in which the importance of each tag is show with font size or color. This format is useful for quickly perceiving the most prominent terms.
This is a classic “tag cloud” facet in a DSpace repository.
Discovery Changelist
DSpace 4.0
...
- Sidebar browse facets that can be configured to use contents from any metadata field
- Dynamically generated timespans for dates
- Customizable "recent submissions" view on the repository homepage, collection and community pages
- Hit highlighting & search snippets
Enabling Discovery
Because Discovery was adopted as the default infrastructure for search and browse in DSpace 4, no manual steps are required to enable Discovery. If you want to enable Discovery on older versions of DSpace, please refer to the DSpace documentation for that particular version.
Configuration files
The configuration for discovery is located in 2 separate files.
- General settings: The
discovery.cfg
file located in the[dspace-install-dir]/config/modules directory
. - User Interface Configuration: The
discovery.xml
file is located in[dspace-install-dir]/config/spring/api/
directory.
General Discovery settings (config/modules/discovery.cfg
)
The discovery.cfg
file is located in the [dspace-install-dir]/config/modules
directory and contains following properties:
DSpace 5.0
However, the tag cloud facet feature is disabled by default. In order to enable it, you will need to set up the corresponding processor that the PluginManager will load to actually perform the tag cloud query on the relevant pages. This is configured in the dspace.cfg configuration file with the following options:
- plugin.sequence.org.dspace.plugin.CommunityHomeProcessor
- plugin.sequence.org.dspace.plugin.CollectionHomeProcessor
- plugin.sequence.org.dspace.plugin.SiteHomeProcessor
The tag cloud has been declared there for you but it is commented out.
Enabling Discovery
Because Discovery was adopted as the default infrastructure for search and browse in DSpace 4, no manual steps are required to enable Discovery. If you want to enable Discovery on older versions of DSpace, please refer to the DSpace documentation for that particular version.
Configuration files
The configuration for discovery is located in 2 separate files.
- General settings: The
discovery.cfg
file located in the[dspace-install-dir]/config/modules directory
. - User Interface Configuration: The
discovery.xml
file is located in[dspace-install-dir]/config/spring/api/
directory.
General Discovery settings (config/modules/discovery.cfg
)
The discovery.cfg
file is located in the [dspace-install-dir]/config/modules
directory and contains following properties:
Property: | search.server |
Example Value: |
|
Informational Note: | Discovery relies on a Solr index for storage and retrieval of its information. This parameter determines the location of the Solr index. |
Property: | index.ignore |
Example Value: |
|
Property: | search.server |
Example Value: |
|
Informational Note: | Discovery relies on a Solr index for storage and retrieval of its information. This parameter determines the location of the Solr index. |
Property: | index.ignore |
Example Value: |
|
Informational Note: | By default, Discovery will include all of the DSpace metadata in its search index. In cases where specific metadata is confidential, repository managers can include those fields by adding them to this comma separated list. |
Property: | index.authority.ignore[.field] |
Example Value: |
|
Informational Note: | By default, Discovery will use the authority information in the metadata to disambiguate homonyms. Setting this property to false will make the indexing process the same as the metadata doesn't include authority information. The configuration can be different on a field (<schema>.<element>.<qualifier>) basis, the property without field set the default value. |
Property: | index.authority.ignore-prefered[.field] |
Example Value: | |
Informational Note: | By default, Discovery will include all of the DSpace metadata in its search index. In cases where specific metadata is confidential, repository managers can include those fields by adding them to this comma separated list. |
Property: | index.authority.ignore[.field] |
Example Value: |
|
Informational Note: | By default, Discovery will use the authority information in the metadata to query the authority for the prefered labeldisambiguate homonyms. Setting this property to false will make the indexing process the same as the metadata doesn't include authority information (i.e. the prefered form is the one recorded in the metadata value). The configuration . The configuration can be different on a field (<schema>.<element>.<qualifier>) basis, the property without field set the default value. If the authority is a remote service, disabling this feature can greatly improve performance. |
Property: | index.authority.ignore-variantsprefered[.field] |
Example Example Value: |
|
Informational Note: | By default, Discovery will use the authority information in the metadata to query the authority for variantsthe prefered label. Setting this property to false will make the indexing process the same ,as the metadata doesn't include authority information (i.e. the prefered form is the one recorded in the metadata value). The configuration can be different on a per-field (<schema>.<element>.<qualifier>) basis, the property without field set the default value. If the authority is a remote service, disabling this feature can greatly improve performance. |
Modifying the Discovery User Interface (config/spring/api/discovery.xml
)
The discovery.xml
file is located in the [dspace-install-dir]/config/spring/api
directory.
Structure Summary
This file is in XML format, you should be familiar with XML before editing this file. The configurations are organized together in beans, depending on the purpose these properties are used for.
This purpose can be derived from the class of the beans. Here's a short summary of classes you will encounter throughout the file and what the corresponding properties in the bean are used for.
Download the configuration file and review it together with the following parameters
Property: | index.authority.ignore-variants[.field] |
Example Value: |
|
Informational Note: | By default, Discovery will use the authority information in the metadata to query the authority for variants. Setting this property to false will make the indexing process the same, as the metadata doesn't include authority information. The configuration can be different on a per-field (<schema>.<element>.<qualifier>) basis, the property without field set the default value. If authority is a remote service, disabling this feature can greatly improve performance. |
Modifying the Discovery User Interface (config/spring/api/discovery.xml
)
The discovery.xml
file is located in the [dspace-install-dir]/config/spring/api
directory.
Structure Summary
This file is in XML format, you should be familiar with XML before editing this file. The configurations are organized together in beans, depending on the purpose these properties are used for.
This purpose can be derived from the class of the beans. Here's a short summary of classes you will encounter throughout the file and what the corresponding properties in the bean are used for.
Download the configuration file and review it together with the following parameters
Class: | DiscoveryConfigurationService |
Purpose: | Defines the mapping between separate Discovery configurations and individual collections/communities |
Default: | All communities, collections and the homepage (key=default) are mapped |
Class: | DiscoveryConfigurationService |
Purpose: | Defines the mapping between separate Discovery configurations and individual collections/communities |
Default: | All communities, collections and the homepage (key=default) are mapped to defaultConfiguration |
Class: | DiscoveryConfiguration |
Purpose: | Groups configurations for sidebar facets, search filters, search sort options and recent submissions |
Default: | There is one configuration by default called defaultConfiguration |
Class: | DiscoverySearchFilter |
Purpose: | Defines that specific metadata fields should be enabled as a search filter |
Default: | dc.title, dc.contributor.author, dc.creator, dc.subject.* and dc.date.issued are defined as search filters |
Class: | DiscoverySearchFilterFacet |
Purpose: | Defines which metadata fields should be offered as a contextual sidebar browse options, each of these facets has also got to be a search filter |
Default: | dc.contributor.author, dc.creator, dc.subject.* and dc.date.issued |
Class: | HierarchicalSidebarFacetConfiguration |
Purpose: | Defines which metadata fields contain hierarchical data and should be offered as a contextual sidebar option |
Class: | DiscoverySortConfiguration |
Purpose: | Further specifies the sort options to which a DiscoveryConfiguration refers |
Default: | dc.title and dc.date.issued are defined as alternatives for sorting, other than Relevance (hard-coded) |
Class: | DiscoveryHitHighlightingConfiguration |
Purpose: | Defines which metadata fields can contain hit highlighting & search snippets |
Default: | dc.title, dc.contributor.author, dc.subject, dc.description.abstract & full text from text files. |
Default settings
Class: | TagCloudFacetConfiguration |
Purpose: | Defines the tag cloud appearance configuration bean and the search filter facets to appear in the tag cloud form. You can have different “TagCloudFacetConfiguration” per community or collection or the home page |
Default settings
In addition to the summarized descriptions of the default values, following details help you to better understand these defaults. If you haven't already done so, download the configuration file and review it together with the following parameters.
The file contains one default configuration that defines following sidebar facets, search filters, sort fields and recent submissions display:
...
- The list of applicable sidebarFacets
- The list of applicable searchFilters
- The list of applicable searchSortFields
- Any default filter queries (optional)
- The configuration for the Recent submissions display
- The configuration of the tag cloud facet
Configuring lists of sidebarFacets and searchFilters
...
https://cwiki.apache.org/confluence/display/solr/Spell+Checking
Customizing the “Tag Cloud” facet
This paragraph only applies to JSPUI
Code Block | ||
---|---|---|
| ||
<!-- Set TagCloud configuration per discovery configuration -->
<property name="tagCloudFacetConfiguration" ref="defaultTagCloudFacetConfiguration"/>
|
Declare the bean (of class: TagCloudFacetConfiguration) that holds the configuration for the tag cloud facet.
Code Block | ||
---|---|---|
| ||
<!--TagCloud configuration bean for homepage discovery configuration-->
<bean id="homepageTagCloudFacetConfiguration" class="org.dspace.discovery.configuration.TagCloudFacetConfiguration">
<!-- Actual configuration of the tagcloud (colors, sorting, etc.) -->
<property name="tagCloudConfiguration" ref="tagCloudConfiguration"/>
<!-- List of tagclouds to appear, ove for evry search filter, one after the other -->
<property name="tagCloudFacets">
<list>
<ref bean="searchFilterSubject" />
</list>
</property>
</bean>
|
This bean has two properties:
- tagCloudConfiguration: is the bean that described the actual appearance parameters
- tagCloudFacets: the search filter facets that will be used for the tag cloud. If you leave the list empty, no tag cloud will appear. If yu declare more than one, equal number of tag cloud will appear for each search filter the one after the other.
The appearance configuration can have the following properties, as shown in the following bean:
Code Block | ||
---|---|---|
| ||
<bean id="tagCloudConfiguration" class="org.dspace.discovery.configuration.TagCloudConfiguration">
<!-- Should display the score of each tag next to it? Default: false -->
<property name="displayScore" value="true"/>
<!-- Should display the tag as center aligned in the page or left aligned? Possible values: true | false. Default: true -->
<property name="shouldCenter" value="true"/>
<!-- How many tags will be shown. Value -1 means all of them. Default: -1 -->
<property name="totalTags" value="-1"/>
<!-- The letter case of the tags.
Possible values: Case.LOWER | Case.UPPER | Case.CAPITALIZATION | Case.PRESERVE_CASE | Case.CASE_SENSITIVE
Default: Case.PRESERVE_CASE -->
<property name="cloudCase" value="Case.PRESERVE_CASE"/>
<!-- If the 3 CSS classes of the tag cloud should be independent of score (random=yes) or based on the score. Possible values: true | false . Default: true-->
<property name="randomColors" value="true"/>
<!-- The font size (in em) for the tag with the lowest score. Possible values: any decimal. Default: 1.1 -->
<property name="fontFrom" value="1.1"/>
<!-- The font size (in em) for the tag with the lowest score. Possible values: any decimal. Default: 3.2 -->
<property name="fontTo" value="3.2"/>
<!-- The score that tags with lower than that will not appear in the rag cloud. Possible values: any integer from 1 to infinity. Default: 0 -->
<property name="cuttingLevel" value="0"/>
<!-- The distance (in px) between the tags. Default: 5 -->
<property name="marginRight" value="5"/>
<!-- The ordering of the tags (based either on the name or the score of the tag)
Possible values: Tag.NameComparatorAsc | Tag.NameComparatorDesc | Tag.ScoreComparatorAsc | Tag.ScoreComparatorDesc
Default: Tag.NameComparatorAsc -->
<property name="ordering" value="Tag.NameComparatorAsc"/>
</bean> |
When tagCloud is rendered there are some CSS classes that you can change in order to change the tagcloud appearance.
Class | Note |
---|---|
tagcloud | General class for the whole tagcloud |
tagcloud_1 | Specific tag class for tag of type 1 (baed on score) |
tagcloud_2 | Specific tag class for tag of type 2 (baed on score) |
tagcloud_3 | Specific tag class for tag of type 3 (baed on score) |
Discovery Solr Index Maintenance
...