DSpace Discovery is an Maintained Addon for DSpace XMLUI that replaces the default Search and Browse behavior with Apache Solr.
Proposal For Inclusion into DSpace 1.7.0
Recent work on porting DSpace to an Asyncronous build process prooved too large a task to be completed in DSpace 1.7 with all the other significant changes, with this in mind. It is proposed that a version of Discovery be delivered within the DSpace 1.7.0 codebase and initially maintained there for the 1.7.x development path.
This proposal includes the following features:
- Discovery will be compiled/installed into DSpace 1.7.0 XMLUI but left disabled by default
- The Appropriate Solr Search Core will be available and prepared to be started
- All dependencies for turning on Discovery will be available without recompilation by doing the following steps:
- Solr will be upgraded to the latest 1.4.1 release
- Documentation will be included which outlines exactly how to turn on Discovery and run it
Design Premis for Discovery
The Design premis behind Discovery is to keep as much the implementation of Search and Browse independent of DSpace as possible. The basis for this is to twofold. (a) to reduce cost in maintaining any customized code and (b) to repurpose third party solutions wherever possible (a.k.a. standing on shoulder of giants). So, the basic tenants are:
- Keep as much of the customization and configuration in Solr as possible.
- Keep it as generic as possible.
- Keep it as simple as possible
- In cases where configuration is outside Solr, Provide pluggability to replace functionality easily at end user deployment.
- Align Search/Browse capabilities with Solr capabilities, not other way around. This means, possibly abandon certain strategies for navigating via Browse if it proves these do not fit well with solr.
Discovery is currently and addon for DSpace that still requires significant addition of configuration files to support. Planned releases will initially coincide with DSpace Scheduled Releases. Eventually, once completely stabilized. Discovery may be included into DSpace releases as a replacement for DSpace Search and Browse out of the box.
Examples in Production
- Dryad Data Repository: http://www.datadryad.org/search?query=&rpp=10&group_by=none&sort_by=score&order=DESC&submit=Go
- AJAX Integration: http://github.com/evolvingweb/ajax-solr http://solrjs.solrstuff.org/
- Integration With DSpace REST project for unified Search and Browse in the REST webapplication as well.
- Access Control Request Handler for Solr Access control for Solr Service, Documents and Fields.
- General specifications
- FieldType JAVADOC
- Predefined FieldTypes in SolR
- http://wiki.github.com/evolvingweb/ajax-solr/reuters-tutorial-step-9 Integrate AutoSuggest, Tag Clouds, Google Maps and dynamic Paging into DSpace Search Results.