Mudanças entre as edições de "Guia de Indexação SOLR"

De IBICT
Ir para: navegação, pesquisa
(Adicionar transformação de metadado)
(Adicionar transformação de metadado)
Linha 30: Linha 30:
  
 
<pre>
 
<pre>
  <xsl:if test="//dc:title/@lang" >
+
    <!-- TITLE_LANGUAGE -->
 +
                <xsl:if test="//dc:title/@xml:lang" >
 
                         <xsl:if test="string-length() > 0">
 
                         <xsl:if test="string-length() > 0">
 
                             <field name="title_language">
 
                             <field name="title_language">
                                 <xsl:value-of select="concat(//dc:title[0]/@lang, //dc:title[1]/@lang)" />
+
                                 <xsl:value-of select="concat(
 +
                                php:function('VuFind::mapString', normalize-space(string(//dc:title[1]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
 +
                                php:function('VuFind::mapString', normalize-space(string(//dc:title[2]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
 +
                                php:function('VuFind::mapString', normalize-space(string(//dc:title[3]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
 +
                                php:function('VuFind::mapString', normalize-space(string(//dc:title[4]/@xml:lang)), 'language_map_iso639-1.properties'))" />
 
                             </field>
 
                             </field>
 
                         </xsl:if>
 
                         </xsl:if>
 
                 </xsl:if>
 
                 </xsl:if>
 +
 +
 
</pre>
 
</pre>
  

Edição das 11h34min de 7 de maio de 2015


Índice

Apagar todo o índice

./vufind.sh stop
sudo rm -rf solr/biblio/index solr/biblio/spell*
./vufind.sh start

Indexar um novo conjunto de metadados

Criar um arquivo .properties

/usr/local/vufind2/import# cp ojs.properties revistarSEER.properties 

Definir a diretriz xslt no arquivo .properties indicando o arquivo que contém com as tranformações de metadados necessárias

 xslt = ojs.xsl 

Criar o arquivo .xsl

Adicionar transformação de metadado

/usr/local/vufind2/import/xsl$ pico revistasSEER.xsl

por exemplo, atribuir ao campo SOLR title_language o valor do campo dc:language

    <!-- TITLE_LANGUAGE -->
                <xsl:if test="//dc:title/@xml:lang" >
                        <xsl:if test="string-length() > 0">
                            <field name="title_language">
                                <xsl:value-of select="concat(
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[1]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[2]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[3]/@xml:lang)), 'language_map_iso639-1.properties'),'|',
                                 php:function('VuFind::mapString', normalize-space(string(//dc:title[4]/@xml:lang)), 'language_map_iso639-1.properties'))" />
                            </field>
                        </xsl:if>
                </xsl:if>


Adicionar um novo campo ao schema do SOLR

/usr/local/vufind2/solr/biblio/conf# vi schema.xml

e adicionar um novo registro

<field name="title_language" type="string" indexed="true" stored="true" multiValued="true"/>

Importar os registros individuais

php import-xsl.php ../local/harvest/12/1423749202_oai_ojs_www_abhr_org_br_article_582.xml revistarSEER.properties

Importar um diretorio inteiro

source /etc/profile 
/usr/local/vufind2/harvest# ./batch-import-xsl.sh ../local/harvest/REVISTAS ../import/revistarSEER.properties

Reiniciar o VUFind

Isso recarregar os novos metadados

./vufind.sh restart

http://labcoat.ibict.br:8080/solr/#/

Reiniciar a base do SOLR

 
/usr/local/vufind2/solr/biblio# rm -R index/