OAI-PMH
CJNCP exposes machine-readable article metadata for libraries, repositories, and discovery services via the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH). This page explains how to harvest records, which formats we support, and how to configure incremental updates safely.
Overview
OAI-PMH is a lightweight HTTP/XML protocol used by repositories and libraries to exchange metadata. Most discovery services and institutional repositories can ingest CJNCP article records automatically through a small set of OAI verbs (e.g., Identify
, ListRecords
, GetRecord
). Our goal is to ensure that CJNCP’s open-access content is findable and preservable across a wide array of catalogues and search platforms.
The sections below provide everything harvesters need to connect, even if your system requires customized parameters or mapping. Where platform-specific variations exist, we note common patterns used by OJS/PKP and similar journal platforms.
Base endpoint
CJNCP’s platform exposes an OAI-PMH base URL (sometimes referred to as the “OAI endpoint”). In many OJS/PKP and journal platforms this takes one of the following forms:
https://www.nursingpracticejournal.com/oai
(common on hosted journal platforms)https://www.nursingpracticejournal.com/index.php/index/oai
(typical for OJS 3 installations)https://www.nursingpracticejournal.com/index.php/journalPath/oai
(multi-journal OJS setups)
If your library needs the exact endpoint for this instance, contact the editorial office; we will confirm the configured base URL and sets. The legacy site signals OAI compatibility but may not display the literal endpoint on every page.
Supported metadata formats
Harvesters can request records in widely used formats. The following are typically available on journal platforms and are supported for CJNCP harvesting:
- Dublin Core (
oai_dc
): baseline, broadly compatible across repositories and library systems. - Modified DC / DataCite (
oai_datacite
or platform-specific): includes richer fields for identifiers and contributors where supported. - PKP/OJS native schemas (when enabled): provide fine-grained article and issue metadata for downstream mapping.
Article pages and the journal site also embed human- and machine-readable licensing signals (e.g., CC licenses) to clarify reuse rights.
Example requests
Replace {BASE}
with the confirmed OAI endpoint for CJNCP. These requests are safe to run in a browser or via curl
for quick testing.
Repository discovery
Purpose | Query | Notes |
---|---|---|
Identify repository | {BASE}?verb=Identify |
Returns repository name, earliest datestamp, and granularity (often YYYY-MM-DD or YYYY-MM-DDThh:mm:ssZ ). |
List sets | {BASE}?verb=ListSets |
Shows setSpec values (e.g., journal/issue groupings) that can be used to scope harvesting. |
List all records (Dublin Core) | {BASE}?verb=ListRecords&metadataPrefix=oai_dc |
Use with from /until for incremental harvests; respect resumptionToken values. |
List identifiers (fast) | {BASE}?verb=ListIdentifiers&metadataPrefix=oai_dc |
Retrieves headers only; fetch individual records with GetRecord . |
Get one record | {BASE}?verb=GetRecord&metadataPrefix=oai_dc&identifier=oai:host:recordId |
Identifiers follow the repository’s Identify pattern. |
Typical ListRecords
response (truncated)
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/"> 2025-09-22T12:00:00Z {BASE}
A Case-Study of the Anatomy of a Miscommunication... Pritchard, C. Latham, J. 2018 https://www.nursingpracticejournal.com/articles/cjncp-aid1006.php</dc:identifier > doi:10.29328/journal.cjncp.1001006 Creative Commons license as stated on the article page xyz123...
Your repository may render the response differently; use UTF-8 and treat resumption tokens as opaque.
Sets and scoping
Harvesters can limit requests to specific sets when a repository exposes them (e.g., journal-wide sets, issue sets, article types). This reduces payloads and supports selective re-harvests. Use ListSets
to discover available setSpec
values, then pass &set=
in your ListRecords
/ListIdentifiers
calls.
For multi-journal platforms, sets often follow predictable patterns (for example, journal:cjncp
). Check your Identify
and ListSets
results to confirm exact naming.
Incremental harvesting
To keep local repositories current without re-downloading everything, run incremental harvests:
- Use
from
anduntil
parameters with the repository’s supported granularity (seeIdentify
). - Process and store
resumptionToken
responses for large result sets; resume until no token is returned. - Re-harvest recently updated windows (e.g., last 7–14 days) to catch metadata corrections and post-publication updates.
- Throttle requests reasonably (e.g., 1–2 per second) and back off on HTTP 429/503 responses.
Field mapping (practical guide)
Below are the most common CJNCP fields and how they map in oai_dc
. Local crosswalks may add richer mappings (e.g., to MARC, MODS, DataCite, or schema.org).
Journal/Article field | OAI DC element | Notes |
---|---|---|
Article title | dc:title |
Prefer full title; include subtitles. |
Authors (with initials) | dc:creator |
Order as published; repeat the element per author; include ORCID in dc:identifier when available. |
Affiliations | dc:contributor |
Some crosswalks place in dc:description or richer schemas. |
Abstract | dc:description |
Use plain text; some harvesters strip HTML. |
Keywords | dc:subject |
Prefer field-standard terms (e.g., MeSH) to improve precision. |
Publication date | dc:date |
Year or ISO date; issue-level precision as available. |
Identifiers (URL, DOI) | dc:identifier |
Include both the persistent URL and the DOI (if assigned). |
License | dc:rights |
Embed the CC statement or license URI to clarify reuse. |
Journal title (source) | dc:source |
“Clinical Journal of Nursing Care and Practice (CJNCP), e-ISSN 2639-9911.” |
Best practices for librarians and harvesters
- Normalize identifiers: Canonicalize DOIs (e.g.,
https://doi.org/
) and CJNCP article URLs; store both. - Respect license signals: Populate local rights fields from
dc:rights
and, where available, license URIs; CJNCP articles are published under Creative Commons terms. - Preserve versioning: If an article receives a correction or update, re-index the record; CJNCP maintains the scholarly record and publishes corrections transparently.
- Accessibility metadata: Where your system supports it, store captions/alt-text pointers for figures and indicate the availability of accessible HTML galleys.
- Stability checks: If your harvester runs nightly, include a small overlap window (e.g., re-harvest the prior 7 days) to capture late updates.
Troubleshooting and support
Common issues
- HTTP 503/429: You’re fetching too quickly. Reduce concurrency and add backoff.
- Empty results: Check your
metadataPrefix
,from/until
granularity, and date ranges. - Bad resumption token: Tokens are opaque and time-limited. Restart from the last successful page if expired.
- Encoding problems: Assume UTF-8; strip unexpected HTML in
dc:description
if your importer requires plain text. - Set not found: Verify
setSpec
viaListSets
before scoping.
Still stuck? Contact the editorial office (see journal website) with the failing query URL, timestamp, and the response snippet. We’ll help verify endpoint status and configuration.
Compliance, openness, and discoverability
CJNCP is an open-access journal with content intended for wide reuse. Licensing and repository policies on the site confirm Creative Commons reuse and support for archiving. Our OAI-PMH exposure complements article-level schema.org metadata and human-readable license notices. Together, these help services such as search engines, institutional discovery layers, and aggregator platforms discover CJNCP content.
Frequently asked questions
Do you expose full text via OAI-PMH?
OAI-PMH transports metadata. Full text remains on article pages (HTML/PDF) and in supplementary files. Use the persistent article URL (and DOI if assigned) in your repository record.
Which license should my repository display?
Display the license from dc:rights
or the article page (e.g., CC BY). Include the license URI where available for machine readability.
What is CJNCP’s ISSN?
The e-ISSN is 2639-9911; include it in your journal-level records and source fields.
Are corrections and withdrawals reflected in metadata?
When needed, we correct or withdraw content and preserve the scholarly record. Re-harvesting recent windows helps propagate status changes.
Is there a list of where CJNCP content is discoverable?
The site highlights multiple discovery services (e.g., search engines and open archives). OAI-PMH enables many of these to harvest reliably.
Quick setup checklist for harvesters
Step | Action | Status |
---|---|---|
Confirm base URL | Ping {BASE}?verb=Identify and record earliest datestamp & granularity. |
☐ |
Choose metadata format | Use oai_dc first; enable richer mappings if your stack supports them. |
☐ |
Scope sets | Call ListSets and select journal/issue sets as needed. |
☐ |
Initial harvest | Run ListIdentifiers to size payload; then ListRecords with tokens. |
☐ |
Incrementals | Schedule nightly/weekly from/until jobs with overlap. |
☐ |
Rights & links | Display license text/URI; include DOI and version-of-record URL. | ☐ |
Related CJNCP policies
Open Access Policy • Licensing Policy • Withdrawal Policy • Privacy Statement
Tags: OAI-PMH Metadata Dublin Core Open Access Repository