OAI-PMH Service

The PubMed Central OAI-PMH service (PMC-OAI) provides access to metadata of all items in the PubMed Central (PMC) archive, as well as to the full text of a subset of these items.

PMC-OAI is an implementation of the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH), a standard for retrieving metadata from digital document repositories. Visit the Open Archives Initiative site for more information about the protocol and other activities of the OAI group.

PMC-OAI supports OAI-PMH version 2.0. It does not support earlier versions of the protocol.

PMC also provides a simpler OA web service, which might be more appropriate for programmatic access, depending on your requirements.

If you have questions or comments about this, or any of the other services provided by PMC, please write to the PMC help desk. To stay informed about new or updated tools or services provided by PMC, subscribe to the PMC-Utils-Announce mailing list.

Most of the items in this archive are copyright protected, with copyright held by the author(s) or the depositing journal. In general, the OAI service can not be used to retrieve the full text of articles in PMC. The only exceptions to this policy are for articles that are in the public domain and those that are made available under an Open Access provision (as defined in the Open Access Subset). See the PMC Copyright Notice for more information.

Using the PMC-OAI Service

The base URL for the service is http://www.pubmedcentral.nih.gov/oai/oai.cgi.

See the examples, below, for details about how to use this service to retrieve PMC metadata.

High-Volume Retrievals

If you are using a script that makes more than 100 requests of any kind, please run it outside of the PMC system's peak hours. Also, please make sure that your system does not make concurrent requests, even at off-peak times. Peak hours are Monday to Friday, 5:00 AM to 9:00 PM, U.S. Eastern time.

The PMC-OAI Service supports HTTP compression, and the Accept-Encoding HTTP header must be set to 'gzip, deflate' for the most efficient data transfer. See also HTTP compression for further information about this capability.

Access to Full Text

Some PMC journals allow harvesting of the full text of all items, others allow it for only some items, and many do not allow it at all. See the PMC Open Access Subset for specifics.

In addition, the parameter set=pmc-open identifies the complete collection of items in PMC for which the full text may be harvested.

Supported Data Formats

Records may be retrieved from the PMC archive in one of the following formats:

Formats:
  1. The NLM Journal Archiving and Interchange XML format, for metadata or full-text article records. A DTD, W3C Schema, and complete documentation for this format are available from http://dtd.nlm.nih.gov.
    • Metadata: metadataPrefix=pmc_fm
    • Full Text: metadataPrefix=pmc
  2. The Dublin Core format, http://dublincore.org
    • Metadata: metadataPrefix=oai_dc

OAI PMC identifiers

The identifiers used by this system are of the form:

  oai:pubmedcentral.nih.gov:pmcid

where pmcid is the numerical portion of the article's PMCID. For example, the OAI identifier for the article PMC14748 is oai:pubmedcentral.nih.gov:14748.

Automatic Segmentation of Large Result Sets

If a ListIdentifiers request results in more than 500 hits, PMC-OAI will return the first 500 with a <resumptionToken> that can be used to get the remaining items.

If a ListRecords request results is more than 25 hits for PMC full text, 50 hits for PMC metadata, or 50 hits for Dublin Core format metadata, PMC-OAI will return the first 25, or 50 records, respectively, with a <resumptionToken>.

Examples

Identify

Identify the PMC-OAI interface.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=Identify

ListMetadataFormats

List metadata formats available in PMC.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListMetadataFormats
List metadata formats available for an article with the identifier oai:pubmedcentral.nih.gov:14748
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListMetadataFormats&identifier=oai:pubmedcentral.nih.gov:14748

ListIdentifiers – return a fixed number of identifiers per request.

Typically, the response to this request will contain 500 identifiers, and will include a resumption token at OAI-PMH/ListSets/resumptionToken.

List (the first set of) identifiers for all articles released in PMC after 1/1/2002 in PMC front matter format
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListIdentifiers&from=2002-01-01&metadataPrefix=pmc_fm
If the above request returned the resumption token "oai%3Apubmedcentral.nih.gov%3Adynmed!!!!", then the following request returns the next set of identifiers:
http://www.pubmedcentral.gov/oai/oai.cgi?verb=ListIdentifiers&resumptionToken=oai%3Apubmedcentral.nih.gov%3Adynmed!!!!
List identifier for articles in the setSpec “bmccb”, released between March to July 2003, available in full-text XML
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListIdentifiers&from=2002-03-01&until=2003-07-31&metadataPrefix=pmc&set=bmccb

ListRecords – return a fixed number of records per request.

Typically, the response will contain ten full-text XML records.

List (the first set of) full text XML for the setSpec “bmcbiol” released between 3/22/2001 to 6/12/2001
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListRecords&from=2001-03-22&until=2001-06-12&set=bmcbioc&metadataPrefix=pmc

ListSets – return a fixed number of sets per request

This response will typically contain the first 500 sets. Use the "resumption token" to get the next set.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=ListSets

GetRecord – retrieve a record by identifier.

Get record in Dublin Core format with an identifier.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=GetRecord&identifier=oai:pubmedcentral.nih.gov:152494&metadataPrefix=oai_dc
Get record in PMC front matter format with an identifier.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=GetRecord&identifier=oai:pubmedcentral.nih.gov:152494&metadataPrefix=pmc_fm
Get record in PMC full-text XML format with an identifier.
http://www.pubmedcentral.nih.gov/oai/oai.cgi?verb=GetRecord&identifier=oai:pubmedcentral.nih.gov:156895&metadataPrefix=pmc
Write to the Help Desk

Last updated: Tue, 24 Sep 2013