Uživatelské nástroje

Nástroje pro tento web


katalogizace:oai-pmh_-_sklizeni_do_souborneho_katalogu

Sklízení záznamů do souborného katalogu pomocí protokolu OAI-PMH.

Využití OAI-PMH pro sklízení záznamů v Souborném katalogu ČR

Informace o využití protokolu OAI-PMH pro sklízení na stránkách Souborného katalogu

OAI-PMH v Evergreenu

Nastavení OAI-PMH modulu pro sklízení záznamů z Evergreenu do souborného katalogu

Definice záznamů pro sklízení

Aktuálně v Evergreenu nejsou k dispozici sety. Pro vyloučení záznamů, které se nemají dostat do Souborného katalogu v rámci sklizně, je používáno interní pole MARC $995, které pomocí XSLT šablony potlačí metadata těch záznamů, které se sklízet nemají. Výsledný výstup tudíž obsahuje všechny identifikátory a časová razítka záznamů, které byly do katalogu Evergreenu přidány nebo byly aktualizovány v daném období, neobsahuje však žádná metadata těchto „nesklízených“ záznamů.

V praxi pak ve sklizeném souboru vypadá „nesklízený“ záznam např. takto:

<record>
    <header>
        <identifier>oai:knihovna.jabok.cz:30480</identifier>
        <datestamp>2018-10-04T14:46:04Z</datestamp>
    </header>
    <metadata/>
</record>

Šablona XSLT pro zpracování OAI-PMH výstupu pro sklizeň

oai_skc.xsl
<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:marc="http://www.loc.gov/MARC21/slim">
 
    <xsl:output omit-xml-declaration="yes"/>
 
    <xsl:template match="node()|@*">
        <xsl:copy>
            <xsl:apply-templates select="node()|@*"/>
        </xsl:copy>
    </xsl:template>
 
    <xsl:template match="*">
        <xsl:element name="marc:{name()}" namespace="http://www.loc.gov/MARC21/slim">
            <xsl:copy-of select="namespace::*"/>
            <xsl:apply-templates select="node()|@*"/>
        </xsl:element>
    </xsl:template>
 
    <xsl:template match="marc:datafield[@tag='901' or @tag='990']"/>
    <xsl:template match="marc:datafield[@tag='100' or @tag='110' or @tag='111' or @tag='700' or @tag='710' or @tag='711']/marc:subfield[@code='0']"/>
    <xsl:template match="marc:datafield[@tag='856']/marc:subfield[@code='9']"/>
    <xsl:template match="marc:datafield[@tag='910' and marc:subfield!='Sigla1' and marc:subfield!='Sigla2' and marc:subfield!='Sigla3' and marc:subfield!='Sigla4']"/>
    <xsl:template match="marc:record[count(marc:datafield[@tag='995'])=0]"/>
    <xsl:template match="marc:record[marc:datafield[@tag='995']/marc:subfield!='ska']"/>
    <xsl:template match="marc:datafield[@tag='995']"/>
</xsl:stylesheet>

Šablonu nahrajte do adresáře /openils/var/xsl. V šabloně je potřeba upravit siglu/sigly přispívajících knihoven na řádku 23.

Zpracování výstupu pro sklizeň pomocí šablony XSLT obsahuje mj.:

  1. smazání polí, která se nemají dostat do Souborného katalogu (viz řádek 20)
    • 901 a 990
  2. smazání podpolí, která se nemají dostat do Souborného katalogu
    • podpole $0 v polích 1XX a 7XX, které v Evergreenu propojuje bibliografický záznam s autoritním záznamem - viz řádek 21,
    • podpole $9 v poli 856, které Evergreen používá pro určení knihoven,v nichž se má v katalogu zobrazit elektronický zdroj bez připojených fyzických exemplářů - viz řádek 22),
  3. definici sigly/sigel knihoven, jejichž záznamy se mají z evergreenového katalogu sklidit do Souborného katalogu (viz řádek 23),
  4. definici pole a jeho obsahu, na základě které budou do sklizně zařazeny záznamy, které toto pole a zadanou hodnotu obsahují (v šabloně je takto použito pole 995 a hodnota „ska“ pro zařazení do sklizně1) - viz řádky 24 - 26).

Nastavení OAI-PMH v opensrf.xml

Parametry pro OAI-PMH je potřeba nastavit také v konfiguračním souboru /openils/conf/opensrf.xml

Pro sklízení záznamů do Souborného katalogu ČR je v sekci <open-ils.oai> nutné mj.:

  • nastavit metadatový prefix „marc21“;
  • definovat, zda se do sklizně má dostat také informace o smazaných záznamech (viz dále).

Příklad nastavení parametrů pro OAI-PMH ve Společném katalogu Evergreen (SPOK):

<open-ils.oai>
                <keepalive>5</keepalive>
                <stateless>1</stateless>
                <language>perl</language>
                <implementation>OpenILS::Application::OAI</implementation>
                <max_requests>199</max_requests>
                <unix_config>
                    <unix_sock>open-ils.oai_unix.sock</unix_sock>
                    <unix_pid>open-ils.oai_unix.pid</unix_pid>
                    <max_requests>1000</max_requests>
                    <unix_log>open-ils.oai_unix.log</unix_log>
                    <min_children>1</min_children>
                    <max_children>5</max_children>
                    <min_spare_children>1</min_spare_children>
                    <max_spare_children>2</max_spare_children>
                </unix_config>
                <app_settings>
                    <repository_name>Jabok</repository_name>
                    <repository_identifier>knihovna.jabok.cz</repository_identifier>
                    <base_url>https://mojzis.jabok.cuni.cz/opac/extras/oai</base_url>
                    <copies>
                        <a>owning_lib</a>
                        <c>location</c>
                        <b>circlib</b>
                         <j>callnumber</j>
                         <n>status</n>
                         <p>barcode</p>
                      </copies>
                    <deleted_record>yes</deleted_record>
                    <!-- <status_filter>^Available$</status_filter> -->
                    <admin_email>cernin@jabok.cz</admin_email>
                    <barcode_filter>^[A-Za-z0-9]+</barcode_filter>
                        <metadataformat>
                                <oai_dc>
                                        <namespace_uri>http://www.openarchives.org/OAI/2.0/oai_dc/</namespace_uri>
                                        <schema_location>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</schema_location>
                                        <xslt>OAI2_OAIDC.xsl</xslt>
                                </oai_dc>
                                <marcxml>
                                        <namespace_uri>http://www.loc.gov/MARC21/slim</namespace_uri>
                                        <schema_location>http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd</schema_location>
                                        <xslt>OAI2_MARC21slim.xsl</xslt>
                                </marcxml>
                                <marc21>
                                        <namespace_uri>http://www.loc.gov/MARC21/slim</namespace_uri>
                                        <schema_location>http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd</schema_location>
                                        <xslt>OAI2_sk_test.xsl</xslt>
                                </marc21>
                        </metadataformat>       
                </app_settings>
            </open-ils.oai>

Nastavení triggerů pro zaznamenání změn exemplářů

Při sklízení záznamů do Souborného katalogu je využíváno časové razítko vytvoření/editace záznamu, tj. trigery pro reflektování změn týkajících se půjčování a vracení exemlářů jsou vypnuté (viz kapitola 2.3.2 Optional, setting the datestamp v anglické dokumentaci k OAI-PMH).

Odstranění záznamů smazaných v Evergreenu ze Souborného katalogu ČR

K odstranění smazaných záznamů ze SK lze využít status „deleted“ v souboru pro sklizeň.

Zahrnutí záznamů se statusem „deteled“ do sklizně je nutné nastavit v souboru /openils/conf/opensrf.xml v sekci „<open-ils.oai>“:

<deleted_record>yes</deleted_record>

Pro zahrnutí smazaných záznamů použijte hodnotu „yes“, pokud chcete, aby se smazané záznamy do sklizně nezahrnovaly, použijte hodnotu „no“.

Využití OAI-PMH pro odstranění smazaných záznamů knihovny ze souborného katalogu je nutné dohodnout a otestovat při vstupním testování OAI-PMH v Souborném katalogu.

OAI-PMH ve společných evergreenových katalozích

Společné sklízení katalogu

Společné zasílání za celý katalog je nutné předem dohodnout s oddělením Souborných katalogů v NK. Zároveň je nutné nahlásit sigly všech přispívajících knihoven. V případě, že jednotlivé knihovny používají vlastní adresu rozhraní OPACu Evergrenu, je nutné k jednotlivým siglám připojit také URL pro link záznamu v SK do lokální báze jednotlivých knihoven.

Definování knihoven, jejichž záznamy se mají sklízet do Souborného katalogu

Sigly všech knihoven, které se mají sklízet, musí být uvedeny v XSLT šabloně (v řádku 22). Pokud sigla knihovny v XSLT šabloně uvedena není, tato knihovna se ve sklizni neobjeví.

Smazané záznamy ve společných katalozích

V případě, že jsou do Souborného katalogu najednou sklízeny záznamy více knihoven, nelze zajistit, že bude sigla odstraněna v případě, že bude záznam smazán pouze v jedné knihovně 2). Záznam je proto ze souborného katalogu odstraněn pouze v případě, že k němu již neexistují exempláře v žádné evergreenové knihovně a záznamy byl z Evergreenu zcela smazán 3)

V případě, že chcete ve společném katalogu využívat odstranění smazaných záznamů ze Souborného katalogu pomocí OAI-PMH, je nutné nahlásit oddělení Souborných katalogů všechny sigly, které se mají smazat ze SK v případě, že má záznam při sklizni status „deleted“.

Doporučené postupy pro katalogizátory

Možnost dávkového přispívání do Souborného katalogu ČR

Dávkové přispívání do souborného katalogu se v současné době v žádné evergreenové knihovně nepoužívá. V případě zájmu je k dispozici starší dokumentace k dávkovému přispívání do Souborného katalogu ČR

Projekt VISK 3

Technické řešení a metodická doporučení byla vytvořena a rámci projektu Podpora sklízení záznamů prostřednictvím protokolu OAI-PMH z otevřeného knihovního softwaru Evergreen a zvýšení mobility služeb v Knihovně Jabok podpořeného z dotaceVISK3 2018
1)
použité pole i hodnotu lze v šabloně definovat i jinak
2)
u záznamů se statusem „deleted“ nejsou uváděna žádná metadata, tudíž nemůže být uvedena ani sigla knihovny
3)
Automatické smazání záznamu při smazání poslední jednotky lze nastavit v menu Administrace > Lokální administrace > Nastavení knihovny. Lze zde také nastavit smazání záznamu v případě, že je v akvizici smazána poslední požadovaná jednotka v objednávce nebo akvizičním seznamu.
/var/www/eg-wiki.osvobozena-knihovna.cz/data/pages/katalogizace/oai-pmh_-_sklizeni_do_souborneho_katalogu.txt · Poslední úprava: 2019/02/05 14:11 autor: ece