Skip to main content
ExLibris
  • Subscribe by RSS
  • Ex Libris Knowledge Center

    OAI-PMH ListRecords and Header Format

    This information is not applicable to Primo VE environments. For more details on Primo VE configuration, see Primo VE.
    Details about the OAI-PMH protocol can be found on the following Web site: http://www.openarchives.org/OAI/open...sprotocol.html">
    Place every source record in a separate XML file that includes a header based on the OAI-PMH protocol. The header should include the following elements:
    • a unique identifier
    • a status attribute if the record was deleted
    The OAI-PMH protocol also calls for a timestamp. This, however, is not required by Primo.
    It is possible to add the OAI header in Primo. Refer to Adding the OAI Header in Primo for more details.
    The following is an example of an OAI header for a new record:
    <header>
        <identifier>000000006<./identifier>
    </header>
    The following is an example of an OAI header for a deleted record:
    <header status="deleted">
        <identifier>000000006<./identifier>
    </header>
    All records should be packaged using the ListRecords format. For example:
    <?xml version="1.0" encoding="UTF-8"?>
    <OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
    <ListRecords>
    <record>
    <header>
        <identifier>aleph-publish:001075020</identifier>
    </header>
    <metadata>
    <record xmlns="http://www.loc.gov/MARC21/slim" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd">
    <leader>01165nam 22002897a 4500</leader>
    <controlfield tag="008">910913r19891989dcu     b    f000 0 eng d</controlfield>
    <datafield tag="035" ind1=" " ind2=" ">
        <subfield code="a">(OCoLC)ocm24368117</subfield>
    </datafield>
    <datafield tag="035" ind1=" " ind2=" ">
        <subfield code="a">(DGPO)91085603</subfield>
    </datafield>
    <datafield tag="037" ind1=" " ind2=" ">
        <subfield code="a">N 89-25275</subfield>
        <subfield code="b">NASA</subfield>
    </datafield>
    <datafield tag="040" ind1=" " ind2=" ">
        <subfield code="a">GPO</subfield>
        <subfield code="c">GPO</subfield>
        <subfield code="d">DLC</subfield>
    </datafield>
    <datafield tag="074" ind1=" " ind2=" ">
        <subfield code="a">830-D (MF)</subfield>
    </datafield>
    <datafield tag="086" ind1="0" ind2=" ">
        <subfield code="a">NAS 1.15:102072</subfield>
    </datafield>
    <datafield tag="099" ind1=" " ind2=" ">
        <subfield code="a">NAS 1.15:102072</subfield>
    </datafield>
    <datafield tag="100" ind1="1" ind2=" ">
        <subfield code="a">Hoberecht, Mark A.</subfield>
    </datafield>
    <datafield tag="245" ind1="1" ind2="0">
        <subfield code="a">Launch packaging options for the photovoltaic power module cargo element</subfield>
        <subfield code="h">microform /</subfield>
        <subfield code="c">Mark A. Hoberecht and Scott T. Vogt.</subfield>
    </datafield>
    <datafield tag="260" ind1=" " ind2=" ">
        <subfield code="a">[Washington, DC] :</subfield>
        <subfield code="b">National Aeronautics and Space Administration ;</subfield>
        <subfield code="a">[Springfield, Va. :</subfield>
        <subfield code="b">For sale by the National Technical Information Service,</subfield>
    <subfield code="c">1989]</subfield>
    </datafield>
    <datafield tag="300" ind1=" " ind2=" ">
        <subfield code="a">1 v.</subfield>
    </datafield>
    <datafield tag="440" ind1=" " ind2="0">
    <subfield code="a">NASA technical memorandum.</subfield>
    <subfield code="v">299</subfield>
    </datafield>
    <datafield tag="533" ind1=" " ind2=" ">
        <subfield code="a">Microfiche.</subfield>
        <subfield code="b">[Washington, D.C.? :</subfield>
        <subfield code="c">National Aeronautics and Space Administration],</subfield>
        <subfield code="d">1989.</subfield>
    <subfield code="e">1 microfiche.</subfield>
    </datafield>
    <datafield tag="500" ind1=" " ind2=" ">
    <subfield code="a">Distributed to depository libraries in microfiche.</subfield>
    </datafield>
    <datafield tag="650" ind1=" " ind2="0">
        <subfield code="a">Space vehicles</subfield>
        <subfield code="x">Auxiliary power supply.</subfield>
    </datafield>
    <datafield tag="700" ind1="1" ind2=" ">
        <subfield code="a">Vogt, Scott T.</subfield>
    </datafield>
    <datafield tag="710" ind1="1" ind2=" ">
        <subfield code="a">United States.</subfield>
        <subfield code="b">National Aeronautics and Space Administration</subfield>
    </datafield>
    <datafield tag="999" ind1="9" ind2="9">
        <subfield code="a">ALZ7572</subfield>
        <subfield code="b">UL</subfield>
    </datafield>
    <datafield tag="945" ind1=" " ind2=" ">
        <subfield code="a">CAT</subfield>
        <subfield code="b">1991-10-19</subfield>
    </datafield>
    <datafield tag="AVA" ind1=" " ind2=" ">
        <subfield code="a">PRM50</subfield>
        <subfield code="b">NFOR</subfield>
        <subfield code="c">General collection</subfield>
        <subfield code="d">Quarto TS1176.6.M4 I57x 1991</subfield>
        <subfield code="e">available</subfield>
        <subfield code="f">1</subfield>
        <subfield code="g">0</subfield>
        <subfield code="h">N</subfield>
        <subfield code="i">0</subfield>
    </datafield>
    <datafield tag="AVA" ind1=" " ind2=" ">
        <subfield code="a">PRM50</subfield>
        <subfield code="b">NSCI</subfield>
        <subfield code="c">REFZ</subfield>
        <subfield code="d">Mfiche NAS 1.15:102072</subfield>
        <subfield code="e">available</subfield>
        <subfield code="f">0</subfield>
        <subfield code="g">0</subfield>
        <subfield code="i">0</subfield>
    </datafield>
    <controlfield tag="004">ALZ7572</controlfield>
    <datafield tag="852" ind1=" " ind2=" ">
        <subfield code="a">EXLU</subfield>
        <subfield code="b">NSCI</subfield>
        <subfield code="c">REFZ</subfield>
        <subfield code="k">Mfiche</subfield>
        <subfield code="h">NAS 1.15:102072</subfield>
        <subfield code="x">anal</subfield>
        <subfield code="x">%dcreg%</subfield>
        <subfield code="9">1</subfield>
    </datafield>
    </record>
    </metadata>
    </record>
    </ListRecords>
    </OAI-PMH>

    Adding the OAI Header in Primo

    Primo’s Publishing Platform can add an OAI header to the record if it is not added by the data source. The Publishing Platform adds the header during the pipe run. In order to do this, you need to create an XSL transformer file for the data source. Set up the transformer file to add the OAI header with the unique and persistence record ID based on one of the record tags, and create the deleted flag if the record has been deleted.
    Store the XSL transformer file in the following directory: /exlibris/primo/p1_N/ng/primo/home/profile/publish/publish/production/conf/xsl.
    Once added to the directory, the program will show up automatically in the drop-down list in the data source.
    The Primo Publishing Platform includes the following XSL transformer files:
    • MetalibOAI.xsl – creates an OAI header for MetaLib KB records. The record ID is created from the 001 tag.
    • SFXOAI.xsl – creates an OAI header for SFX KB records. The record ID is created from the 090 tag.
    • UnicornOAI.xsl – creates an OAI header for Unicorn records. The record ID is created from the 002 tag.
    • Was this article helpful?