Contribute to the DSpace Development Fund

The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Files:

Instructions:

  1. Look for this line in dspace.cfg: ##### Fields to Index for Search #####
  2. Beneath it you will see several lines like this:
    search.index.1 = author:dc.contributor.*
    search.index.2 = author:dc.creator.*
    search.index.3 = title:dc.title.*
    search.index.4 = keyword:dc.subject.* 
    search.index.5 = abstract:dc.description.abstract 
  3. Add another search.index.# line to the bottom. If you just want to add a different Dublin Core (
    dc
    ) field to one of the existing "named indices", use the models above as a guide. If you wish to specify a different metadata schema, replace
    dc
    with the other metadata schema's name.
    • The "name" to the left of the colon (e.g. author, title, keyword, etc) is important. In the above example, a search on "author" is specified to search all Dublin Core (
      dc
      )
      contributor
      and
      creator
      fields. Whereas, a search on "abstract" only searches the
      dc.description.abstract
      field.
  4. If you want to add an entirely new search field, you will also have to modify Messages.properties (see Change+page+text) to add a user-friendly label for it, and the advanced-search JSP (advanced.jsp) to add an appropriate
    <option>
    element, as below:
    <option value="author" <%= field1.equals("author") ? "selected=\"selected\"" : "" %>><fmt:message key="jsp.search.advanced.type.author"/></option> 
    • The "value" attribute of your
      <option>
      element should correspond to the name of one of your search indices (e.g. author, title, keyword, etc.)
  5. Perform the steps in Re-index+DSpace.
  6. Perform the steps in Rebuild+DSpace.

Notes:

  • In DSpace, the most confusing concept regarding search fields is the keyword search.
  • In the basic search boxes (as seen below), any terms entered are searched for anywhere within any of the search indices (i.e. any of the
    search.index.#
    fields in dspace.cfg), or the full text of the document (if it is full-text indexable). These search boxes perform what most refer to as a keyword or keyterm search.
  • However, to make things a little confusing, you'll notice a keyword search index listed in dspace.cfg:
    search.index.4 = keyword:dc.subject.*
    This (rather inappropriately named) index is actually used during subject specific searches (hence the
    subject.*
    ). It does not have any control over a normal keyword search that is run from the basic search box in DSpace.
  • No labels