Page History
...
- Configuration moved from dspace.cfg into config/modules/discovery.cfg and config/spring/discovery/spring-dspace-addon-discovery-configuration-services.xml
- Individual communities and collections can have their own Discovery configuration.
- Tokenization for Auto-complete values (see SearchFilter)
- Alphanumeric sorting for Sidebarfacets
- Possibility to avoid indexation of specific metadata fields.
- Grouping of multiple metadata fields under the same SidebarFacet
Enabling Discovery
Wiki Markup |
---|
As with any upgrade procedure, it is highly recommend that you backup your existing data thoroughly. Although upgrades in versions of Solr/Lucene do tend to be forwards compatible for the data stored in the Lucene index, it is always a best practice to backup your \[dspace\]/solr/statistics cores to assure no data is lost. |
- Enable the Discovery Aspects in the XMLUI by changing the following settings in config/xmlui.xconf
- Comment out: SearchArtifacts
- Uncomment: Discovery
Code Block XML XML <xmlui> <aspects> <!-- @deprecated: the Artifact Browser has been devided into ViewArtifacts, BrowseArtifacts, SearchArtifacts <aspect name="Artifact Browser" path="resource://aspects/ArtifactBrowser/" /> --> <aspect name="Displaying Artifacts" path="resource://aspects/ViewArtifacts/" /> <aspect name="Browsing Artifacts" path="resource://aspects/BrowseArtifacts/" /> <!--<aspect name="Searching Artifacts" path="resource://aspects/SearchArtifacts/" />--> <aspect name="Administration" path="resource://aspects/Administrative/" /> <aspect name="E-Person" path="resource://aspects/EPerson/" /> <aspect name="Submission and Workflow" path="resource://aspects/Submission/" /> <aspect name="Statistics" path="resource://aspects/Statistics/" /> <!-- To enable Discovery, uncomment this Aspect that will enable it within your existing XMLUI Also make sure to comment the SearchArtifacts aspect as leaving it on together with discovery will cause UI overlap issues--> <aspect name="Discovery" path="resource://aspects/Discovery/" /> <!-- This aspect tests the various possible DRI features, it helps a theme developer create themes --> <!-- <aspect name="XML Tests" path="resource://aspects/XMLTest/"/> --> </aspects>
- Enable the Discovery Indexing Consumer that will update Discovery Indexes on changes to content in XMLUI, JSPUI, SWORD, and LNI in config/dspace.cfg
- Add discovery to the list of event.dispatcher.default.consumers
Code Block # default synchronous dispatcher (same behavior as traditional DSpace) event.dispatcher.default.class = org.dspace.event.BasicDispatcher #event.dispatcher.default.consumers = search, browse, eperson, harvester event.dispatcher.default.consumers = search, browse, discovery, eperson, harvester
- Change recent.submissions.count to zero
Code Block #Put the recent submissions count to 0 so that discovery can use it's recent submissions, # not doing this when discovery is enabled will cause UI overlap issues #How many recent submissions should be displayed at any one time #recent.submissions.count = 5 recent.submissions.count = 0
- Add discovery to the list of event.dispatcher.default.consumers
- Check that the port is correct for solr.search.server in config/modules/discovery.cfg
- If all of your traffic runs over port 80, then you need to remove the port from the URL
Code Block ##### Search Indexing ##### solr.search.server = http://localhost/solr/search
- If all of your traffic runs over port 80, then you need to remove the port from the URL
- From the command line, navigate to the dspace directory and run the command below to index the content of your DSpace instance into Discovery.
Code Block ./bin/dspace update-discovery-index
Panel NOTE: This step may take some time if you have a large number of items in your repository.
- Verify if you now see the Sidebar Facets on your DSpace homepage. Note that these are only visible when you have items in your repository.
...
The configuration for discovery is located in 2 separate files.
Wiki Markup General settings: The *discovery.cfg* file located in the \[dspace\]/config/modules directory.
Wiki Markup User Interface Configuration: The *spring-dspace-addon-discovery-configuration-services.xml* file is located in \[dspace\]/config/spring/discovery/ directory.
General Discovery settings (config/modules/discovery.cfg)
Wiki Markup |
---|
The discovery.cfg file is located in the \[dspace\]/config/modules directory and contains following properties: |
Property: | search.server |
Example Value: | search.server=http://localhost:8080/solr/search |
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: | index.ignore=dc.description.provenance,dc.language |
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. |
Modifying the Discovery User Interface (config/spring/spring-dspace-addon-discovery-configuration-services.xml)
Wiki Markup |
---|
The spring-dspace-addon-discovery-configuration-services.xml file is located in the \[dspace\]/config/spring directory. |
Structure Summary
Because 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 summaries of classes you will encounter throughout the file and what the corresponding properties in the bean are used for.
...
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="a6bc0d4e2b77ebcb-ab823988-4e8e41bb-9fcb87da-c66f5080dc7a11307c0e7f1e"><ac:plain-text-body><![CDATA[ | Command used: | | ]]></ac:plain-text-body></ac:structured-macro> |
Java class: | org.dspace.discovery.IndexClient | ||
Arguments (short and long forms): | Description | ||
| called without any options, will update/clean an existing index | ||
| (re)build index, wiping out current one if it exists | ||
| clean existing index removing any documents that no longer exist in the db | ||
| if updating existing index, force each handle to be reindexed even if uptodate | ||
| print this help message | ||
| optimize search core | ||
| remove an Item, Collection or Community from index based on its handle |
...