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: /data/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
| Field | Type | Basis | Source | Meaning |
|---|---|---|---|---|
| posi_id | string · POSI-J-###### | Identifier | posi-data registry/ | Permanent POSI identifier. Never reused, never reassigned. |
| journal_code | string | Curated | posi-data corpus/ | URL-safe key used in record paths (/journal/<code>/). |
| title | string | Registry | Crossref / OpenAlex | Journal title as registered. |
| issn_online | string · ####-#### | Identifier | ISSN Portal / Crossref | Electronic ISSN. Null when none is registered - never guessed. |
| issn_print | string · ####-#### | Identifier | ISSN Portal / Crossref | Print ISSN. Null when none is registered. |
| openalex_source_id | string · S######### | Identifier | OpenAlex | OpenAlex source record the ISSN resolves to. |
| publisher | string | Registry | Crossref / OpenAlex | Publisher name as registered. |
| registration_country | string | Registry | ISSN Portal | Country of ISSN registration - not necessarily where the journal operates. |
| country | string | Declared | Publisher | Country the publisher states it operates from. |
| language | string | Declared | Publisher / DOAJ | Primary publication language. |
| frequency | string | Declared | Publisher | Declared publication frequency. Observed cadence may differ. |
| open_access | boolean | Registry | DOAJ / OpenAlex | Whether the journal is recorded as fully open access. |
| license | string | Declared | Publisher / DOAJ | Default article license. |
| peer_review_type | string | Declared | Publisher | Declared peer-review model. POSI does not observe review directly. |
| doaj_status | enum | Registry | DOAJ | listed · application_submitted · not_listed · null (not checked). |
| website_url | url | Declared | Publisher | Journal home page. |
| article_count | integer | Registry | Crossref | DOIs registered under the journal ISSN at the data cutoff. |
| psc_category | string · P#.## | Computed | OpenAlex topics → PSC crosswalk | POSI Subject Classification category derived from the journal’s OpenAlex topic distribution. |
| psc_confidence | enum | Computed | posi-engine | high · low. Low means no single topic dominated - common for multidisciplinary journals. |
| pqf | object | Computed | posi-engine (PQF v1.0) | Editorial-selection evidence score, six sub-factors. Admission gate for the Core Collection only. |
| early_stage_rating | object | Computed | posi-engine (AJR-E / AJR-M) | Lifecycle stage and, where rateable, the automated journal rating. Null fields are never filled with estimates. |
| collection | enum | Curated | posi-data | core · candidate · benchmark · discovered. |
| verification | enum | Curated | Derived (see Provenance) | VERIFIED · PARTIALLY_VERIFIED · NEEDS_CHECK · REJECTED. |
| updated_at | datetime | Curated | posi-data | Last 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.
| Key | Field | Note |
|---|---|---|
| id | posi_id | |
| c | journal_code | |
| t | title | |
| i | issn_online, issn_print | array, online first, de-duplicated |
| p | publisher | |
| co | registration_country ?? country | normalised to an English display name |
| s | psc_category | |
| k | collection | |
| v | verification | |
| oa | open_access | |
| d | doaj_status | |
| n | article_count | |
| u | updated_at | date only |
See Provenance and verification for how k and v are assigned.