Back to index page

Installing Fedora Generic Search

In this document,
  1. The detailed installation instructions which I followed were written by the Muradora team.
  2. Once installed, the FedoraGSearch rest url will by default be at:
    http://localhost:8080/fedoragsearch/rest
  3. Next to the steps above, you will need to make some more changes in order to enable full-text indexing and searching of the Greenstone documents ingested into the Fedora repository.
    1. Open the file:
      $FEDORAHOME/tomcat/webapps/fedoragsearch/WEB-INF/classes/config/index/demoFoxmlToLucene.xslt
      At present, Muradora's file allows all digital objects in your Fedora repository to be indexed and searchable. If you're alright with indexing just the Greenstone documents stored in Fedora's repository, then we'll add the following to the above file:
      	<xsl:if test="starts-with($PID,'greenstone')">
      	...
      	</xsl:if>
      
      So that now the file contains:
      <xsl:if test="foxml:digitalObject/foxml:objectProperties/foxml:property[@NAME='http://www.w3.org/1999/02/22-rdf-syntax-ns#type' and @VALUE='FedoraObject']">
        <xsl:if test="starts-with($PID,'greenstone')"> // ADDED THIS
           <!--    filter out annotations: -->
           <!--
           	<xsl:choose>
             	<xsl:when test="foxml:digitalObject/foxml:datastream/foxml:datastreamVersion[last()]/foxml:xmlContent/rdf:RDF/rdf:Description/rel:isMemberOf[@rdf:resource='info:fedora/mura:annotations']">
              </xsl:when> // CORRECTED typo in this comment
              <xsl:otherwise>
           -->
          <xsl:apply-templates mode="activeDemoFedoraObject"/>
           <!--
              </xsl:otherwise>
              </xsl:choose>
           -->
        </xsl:if> // ADDED THIS
      </xsl:if>
      
    2. In the file
      $FEDORAHOME/tomcat/webapps/fedoragsearch/WEB-INF/classes/config/index/index.properties
      we're going to add fulltext (and label) to the list of fields that are indexed and are therefore searchable. We do this by appending
      ds.fulltext ds.label
      
      So that it now becomes:
      fgsindex.defaultQueryFields = dc.description dc.title dc.creator dc.identifier ds.fulltext ds.label
      The field ds.label and a document's full-text can now be searched and will appear in the search results. (Only a customisable snippet-size of a document's full-text will present in the results of a search.)
    3. Finally, an important note: Fedora Generic Search only supports indexing and searching Fedora Digital Objects (Fedora repository contents) whose MIME-type is one of
      • text/html
      • text/plain
      • application/pdf
      Text/xml is not accepted. (Therefore Greenstone documents exported to FedoraMETS and ingested into Fedora must be of one of the above MIME-types, else they will not be indexed by Fedora Generic Search.)