Skip to content
Panorama Open Scholarly Index

Record schema

The fields of a journal record, as published in /data/journal/{code}.json and the Discovered shards. Each field states its basis so declared claims are never mistaken for measurements. Machine-readable copy: https://data.posi.panorama-sg.com/site/v1/meta/schema.json.

Provenance basis

Identifier
A persistent identifier, checked against the issuing registry where possible.
Declared
Stated by the publisher about itself (website, author guidelines). Not independently measured.
Registry
Taken as-is from an open scholarly registry (Crossref, OpenAlex, DOAJ, ISSN Portal).
Computed
Calculated by posi-engine from registry data under a versioned, published specification.
Curated
Assigned by a POSI collection rule (e.g. admission gate, benchmark selection).

Fields

FieldTypeBasisSourceMeaning
posi_idstring · POSI-J-######Identifierposi-data registry/Permanent POSI identifier. Never reused, never reassigned.
journal_codestringCuratedposi-data corpus/URL-safe key used in record paths (/journal/<code>/).
titlestringRegistryISSN Portal / CrossrefJournal title as registered with the ISSN Portal.
alternate_titlesarray · string | { title, type, lang?, until? }Curatedposi-data corpus/Other titles the journal is known by: former titles, translations, abbreviations, and variants such as a Crossref/OpenAlex title that lags a rename. Searchable; never the display title.
issn_onlinestring · ####-####IdentifierISSN Portal / CrossrefElectronic ISSN. Null when none is registered - never guessed.
issn_printstring · ####-####IdentifierISSN Portal / CrossrefPrint ISSN. Null when none is registered.
openalex_source_idstring · S#########IdentifierOpenAlexOpenAlex source record the ISSN resolves to.
publisherstringRegistryCrossref / OpenAlexPublisher name as registered.
registration_countrystringRegistryISSN PortalCountry of ISSN registration - not necessarily where the journal operates.
countrystringDeclaredPublisherCountry the publisher states it operates from.
languagestringDeclaredPublisher / DOAJPrimary publication language.
frequencystringDeclaredPublisherDeclared publication frequency. Observed cadence may differ.
open_accessboolean | nullRegistryDOAJ / OpenAlexWhether the journal is recorded as fully open access. null when it is not known, for example a journal DOAJ does not list and no other source describes.
licensestringDeclaredPublisher / DOAJDefault article license.
peer_review_typestringDeclaredPublisherDeclared peer-review model. POSI does not observe review directly.
doaj_statusenumRegistryDOAJlisted · application_submitted · not_listed · null (not checked).
website_urlurlDeclaredPublisherJournal home page.
apcobject · { amount, currency, note, source_url, checked_at }DeclaredJournal websiteThe APC the journal states on its own website, with the page it is stated on and the date POSI checked it. An amount of 0 means the journal states it charges no APC. Absent when POSI could not find a stated APC.
article_countintegerRegistryOpenAlex / CrossrefWorks the journal has published: the OpenAlex works count, refreshed daily, or the DOIs registered under the journal ISSN in Crossref when OpenAlex does not list the journal. The journal directory and the journal page show the same figure.
psc_categorystring · P#.##ComputedOpenAlex topics → PSC crosswalkPOSI Subject Classification category derived from the journal’s OpenAlex topic distribution.
psc_confidenceenumComputedposi-enginehigh · low. Low means no single topic dominated - common for multidisciplinary journals.
pqfobjectComputedposi-engine (PQF v1.0)Editorial-selection evidence score, six sub-factors. Admission gate for the Core Collection only.
early_stage_ratingobjectComputedposi-engine (AJR-E)Lifecycle stage and, for a journal 12-59 months old where rateable, its AJR-E score and rating. Core Collection journals only. Null fields are never filled with estimates.
mature_ratingobjectComputedposi-engine (AJR-M, rate-mature.mjs)For a journal 60 months or more old: its AJR-M rating status, score and rating where rateable, model version and rating date. Core Collection journals only; published from AJR-M-1.2.
collectionenumCuratedposi-datacore · curated · benchmark · discovered. Only core is certified; curated is a POSI curated record outside the Core Collection.
verificationenumCuratedDerived (see Provenance)VERIFIED · PARTIALLY_VERIFIED · NEEDS_CHECK · REJECTED.
updated_atdatetimeCuratedposi-dataLast time any field of the record changed.

Index file keys

The files under /data/index/ use one-letter keys to stay small. The CSV versions use full column names.

KeyFieldNote
idposi_id
cjournal_code
ttitle
iissn_online, issn_printarray, online first, de-duplicated
ppublisher
coregistration_country ?? countrynormalised to an English display name
spsc_category
kcollection
vverification
oaopen_access
ddoaj_status
narticle_count
uupdated_atdate only

See Provenance and verification for how k and v are assigned.