Chapter 2. Database Design

The Open Journal Systems 2.x database design is flexible, comprehensive, and consistent; however, owing to the number of features and options the system offers, it is also fairly broad in its scope.

For further information, please see dbscripts/xml/ojs_schema.xml.

Table 2.1. OJS Database Schema

Table Name

Primary Key

Description

access_​keys

access_​key_​id

Stores keys for one-click reviewer access

article_​authors

author_​id

Stores article authors on a per-article basis

article_​comments

comment_​id

Stores comments between members of the article editing process; note that this is not used for reader comments

article_​email_​log

log_​id

Stores log entries describing emails that have been sent with regard to a specific article

article_​event_​log

log_​id

Stores log entries describing events that have taken place with regard to a specific article

article_​files

file_​id, revision

Stores information regarding the various files (e.g. images, galleys, supplementary files) associated with a particular article

article_​galleys

galley_​id

Stores information about a particular layout (or “galley") associated with a particular article

article_​html_​galley_​images

galley_​id, file_​id

Associates images with galleys stored in the article_​galleys table

article_​notes

note_​id

Stores notes made for tracking purposes about a particular article by the editor(s)

article_​search_​object_​keywords

object_​id, pos

Provides an index associating keywords, by position, with search objects they appear in

article_​search_​objects

object_​id

Lists search “objects", or entities that can be searched.

article_​search_​keyword_​list

keyword_​id

Stores all keywords appearing in items the system has indexed

article_​supplementary_​files

supp_​id

Stores information about supplementary files belonging to a particular article

articles

article_​id

Stores information on every submission in the system

comments

comment_​id

Stores reader comments about articles

copyed_​assignments

copyed_​id

Stores information about copy editor assignments

currencies

currency_​id

Stores information about currencies available to the subscription subsystem

custom_​section_​orders

issue_​id, section_​id

Stores information about issue-specific ordering of journal sections

edit_​assignments

edit_​id

Stores information on editing assignments

edit_​decisions

edit_​decision_​id

Stores editor decisions with regard to a particular article

email_​templates

email_​id

Stores a list of email templates that have been modified by the journal manager

email_​templates_​data

email_​id, locale, journal_​id

Stores locale-specific text for emails in email_​templates that have been modified by the journal manager

email_​templates_​default

email_​id

Stores a list of default email templates shipped with this version of OJS 2.x

email_​templates_​default_​data

email_​id, locale, journal_​id

Stores locale-specific text for emails in email_​templates_​default that shipped with this version of OJS 2.x

group_​memberships

user_​id, group_​id

Stores membership information for groups

groups

group_​id

Stores information about groups (a.k.a. custom masthead)

issues

issue_​id

Stores information about particular issues of hosted journals

journal_​settings

journal_​id, setting_​name

Provides a means of storing arbitrary-type settings for each journal

journals

journal_​id

Stores a list of hosted journals and a small amount of metadata. (Most metadata is stored in journal_​settings)

layouted_​assignments

layouted_​id

Stores information about layout editor assignments

notification_​status

journal_​id, user_​id

If a user wishes to be notified about a particular journal, they are associated with the journal ID in this table

oai_​resumption_​tokens

token

Contains resumption tokens for the OAI protocol interface

plugin_​settings

plugin_​name, journal_​id, setting_​name

Stores settings for individual plugins

proof_​assignments

proof_​id

Stores information about proofreading assignments

published_​articles

pub_​id

When an article is published, an entry in this table is created to augment information in the articles table

review_​assignments

review_​id

Stores information about reviewer assignments

review_​rounds

article_​id, round

Associates an article ID with a review file revision for each round of review

roles

journal_​id, role_​id, user_​id

Defines what roles (manager, editor, reviewer, ...) users have within particular journals

rt_​contexts

context_​id

Reading Tools contexts

rt_​searches

search_​id

Reading Tools searches

rt_​settings

journal_​id

Reading Tools settings for each journal

rt_​versions

version_​id

Reading Tool versions

scheduled_​tasks

class_​name

On systems supporting scheduled tasks, this table is used by the task execution script to store information about when tasks were last performed

section_​editors

journal_​id, section_​id, user_​id

Associates section editors with sections of journals that they edit

sections

section_​id

Defines sections within which journals can publish articles

sessions

session_​id

Stores session information for the users who are currently using the system

site

title

Stores site-wide configuration information

subscription_​types

type_​id

Defines types of subscriptions made available by the subscription subsystem

subscriptions

subscription_​id

Describes subscriptions “owned" by the system's users

temporary_​files

file_​id

Used for situations in which a file must be temporarily stored on the server between user requests

users

user_​id

Stores information about every user registered with the system

versions

major, minor, revision, build

Stores information about the current deployment of OJS 2.x