arxiv.submission.services.classic.models module¶
SQLAlchemy ORM classes for the classic database.
-
class
arxiv.submission.services.classic.models.AdminLogEntry(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseField
Type
Null
Key
Default
id logtime created paper_id username host program command logtext document_id submission_id notify
int(11) varchar(24) timestamp varchar(20) varchar(20) varchar(64) varchar(20) varchar(20) text mediumint(8) unsigned int(11) tinyint(1)
NO YES NO YES YES YES YES YES YES YES YES YES
PRI
MUL
MUL
MUL
NULL NULL CURRENT_TIMESTAMP NULL NULL NULL NULL NULL NULL NULL NULL 0
-
command¶
-
created¶
-
document_id¶
-
host¶
-
id¶
-
logtext¶
-
logtime¶
-
notify¶
-
paper_id¶
-
program¶
-
submission_id¶
-
username¶
-
-
class
arxiv.submission.services.classic.models.Archive(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseSupplemental data about archives in the classification hierarchy.
-
arXiv_group¶
-
archive_id¶
-
archive_name¶
-
end_date¶
-
in_group¶
-
start_date¶
-
subdivided¶
-
-
class
arxiv.submission.services.classic.models.ArchiveCategory(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseMaps categories to the archives in which they reside.
-
archive_id¶
-
category_id¶
-
-
class
arxiv.submission.services.classic.models.ArchiveDef(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseDefines the archives in the arXiv classification taxonomy.
-
archive¶
-
name¶
-
-
class
arxiv.submission.services.classic.models.ArchiveGroup(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseMaps archives to the groups in which they reside.
-
archive_id¶
-
group_id¶
-
-
class
arxiv.submission.services.classic.models.Category(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseSupplemental data about arXiv categories, including endorsement.
-
active¶ Only use rows where active == 1.
-
arXiv_archive¶
-
arXiv_endorsement_domain¶
-
archive¶ E.g. cond-mat, astro-ph, cs.
-
category_name¶
-
definitive¶
-
endorse_all¶
-
endorse_email¶
-
endorsement_domain¶ E.g. astro-ph, acc-phys, chem-ph, cs.
-
papers_to_endorse¶
-
subject_class¶ E.g. AI, spr-con, str-el, CO, EP.
-
-
class
arxiv.submission.services.classic.models.CategoryDef(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseClassification categories available for submissions.
-
active¶
-
category¶
-
name¶
-
-
class
arxiv.submission.services.classic.models.CategoryProposal(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRepresents a proposal to change the classification of a submission.
Field
Type
Null
Key
Default
proposal_id submission_id category is_primary proposal_status user_id updated proposal_comment_id response_comment_id
int(11) int(11) varchar(32) tinyint(1) int(11) int(4) unsigned datetime int(11) int(11)
NO NO NO NO YES NO YES YES YES
PRI PRI PRI PRI
MUL
MUL MUL
NULL NULL NULL 0 0 NULL NULL NULL NULL
-
ACCEPTED_AS_PRIMARY= 1¶
-
ACCEPTED_AS_SECONDARY= 2¶
-
DOMAIN_STATUS= {0: <Status.PENDING: 'pending'>, 1: <Status.ACCEPTED: 'accepted'>, 2: <Status.ACCEPTED: 'accepted'>, 3: <Status.REJECTED: 'rejected'>}¶
-
REJECTED= 3¶
-
UNRESOLVED= 0¶
-
category¶
-
is_primary¶
-
proposal_comment¶
-
proposal_comment_id¶
-
proposal_id¶
-
proposal_status¶
-
response_comment¶
-
response_comment_id¶
-
submission¶
-
submission_id¶
-
updated¶
-
user¶
-
user_id¶
-
-
class
arxiv.submission.services.classic.models.Document(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRepresents an announced arXiv paper.
This is here so that we can look up the arXiv ID after a submission is announced.
Canonical author string.
-
created¶
-
dated¶
-
document_id¶
-
paper_id¶
-
primary_subject_class¶
-
submitter¶
-
submitter_email¶
-
submitter_id¶
-
title¶
-
class
arxiv.submission.services.classic.models.DocumentCategory(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRelation between announced arXiv papers and their classifications.
-
category¶ E.g. cs.CG, cond-mat.dis-nn, etc.
-
category_def¶
-
document¶
-
document_id¶
-
is_primary¶
-
-
class
arxiv.submission.services.classic.models.EndorsementDomain(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseEndorsement configurations.
-
endorse_all¶
-
endorse_email¶
-
endorsement_domain¶
-
mods_endorse_all¶
-
papers_to_endorse¶
-
-
class
arxiv.submission.services.classic.models.Group(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseSupplemental data about groups in the classification hierarchy.
-
group_id¶
-
group_name¶
-
start_year¶
-
-
class
arxiv.submission.services.classic.models.GroupDef(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseDefines the groups in the arXiv classification taxonomy.
-
archive_group¶
-
name¶
-
-
class
arxiv.submission.services.classic.models.License(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseLicenses available for submissions.
-
active¶ Only offer licenses with active=1.
-
label¶ Display label for the license.
-
name¶ This is the URI of the license.
-
note¶
-
sequence¶
-
-
class
arxiv.submission.services.classic.models.PolicyClass(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseDefines user roles in the system.
-
class_id¶
-
description¶
-
name¶
-
password_storage¶
-
permanent_login¶
-
recovery_policy¶
-
-
class
arxiv.submission.services.classic.models.Submission(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRepresents an arXiv submission.
-
ANNOUNCED= 7¶
-
CROSS_LIST= 'cross'¶
-
DELETED= (10, 22, 25, 29, 30, 20)¶
-
DELETED_ANNOUNCED= 27¶ Announced and files expired.
-
DELETED_EXPIRED= 20¶ Was working but expired.
-
DELETED_ON_HOLD= 22¶
-
DELETED_PROCESSING= 25¶
-
DELETED_REMOVED= 29¶
-
DELETED_USER_EXPIRED= 30¶ User deleted and files expired.
-
ERROR_STATE= 19¶ There was a problem validating the submission during publication.
-
FILES_ADDED= 2¶
-
JOURNAL_REFERENCE= 'jref'¶
-
METADATA_ADDED= 4¶
-
NEEDS_EMAIL= 6¶ Announced, not yet announced.
-
NEW= 0¶
-
NEW_SUBMISSION= 'new'¶
-
NEXT_PUBLISH_DAY= 4¶ Scheduled for the next publication cycle.
-
NOT_SUBMITTED= 0¶
-
ON_HOLD= 2¶
-
PROCESSED= 3¶
-
PROCESSING= 5¶ Scheduled for today.
-
PROCESSING_SUBMISSION= 8¶
-
REMOVED= 9¶
-
REPLACEMENT= 'rep'¶
-
STAGES= [0, 1, 2, 3, 4, 5]¶
-
STARTED= 1¶
-
SUBMITTED= 1¶
-
UNUSED= 3¶
-
USER_DELETED= 10¶
-
WDR_DELIMETER= '. Withdrawn: '¶
-
WITHDRAWAL= 'wdr'¶
-
WITHDRAWN_FORMAT= 'withdrawn'¶
-
abstract¶
-
acm_class¶
-
admin_ok¶ Used by administrators for reporting/bookkeeping.
-
agree_policy¶
-
allow_tex_produced¶ Whether to allow a TeX-produced PDF.
-
arXiv_license¶
-
auto_hold¶ Should be placed on hold when submission comes out of working status.
-
categories¶
-
comments¶
-
created¶
-
doc_paper_id¶
-
document¶
-
document_id¶
-
doi¶
-
has_pilot_data¶
-
is_ok¶
-
is_oversize¶
-
is_withdrawn¶
-
journal_ref¶
-
license¶
-
msc_class¶
-
must_process¶
-
package¶ Path (on disk) to the submission package (tarball, PDF).
-
primary_classification¶ Get the primary classification for this submission.
-
proxy¶
-
release_time¶
-
remote_addr¶
-
remote_host¶
-
report_num¶
-
rt_ticket_id¶
-
secondary_categories¶ Category names from this submission’s secondary classifications.
-
source_flags¶
-
source_format¶ Submission content type (e.g.
pdf,tex,pdftex).
-
source_size¶
-
stage¶
-
status¶
-
sticky_status¶ If the submission goes out of queue (e.g. submitter makes changes), this status should be applied when the submission is re-finalized (goes back into queue, comes out of working status).
-
submission_id¶
-
submit_time¶
-
submitter¶
-
submitter_email¶
-
submitter_id¶
-
submitter_name¶
-
sword¶
-
sword_id¶
-
title¶
-
type¶ Submission type (e.g.
new,jref,cross).
-
update_cross(submission, categories, paper_id, version, created)[source]¶ Update cross-list request information in the database.
- Return type
None
-
update_from_submission(submission)[source]¶ Update this database object from a
domain.submission.Submission.- Return type
None
-
update_withdrawal(submission, reason, paper_id, version, created)[source]¶ Update withdrawal request information in the database.
- Return type
None
-
updated¶
-
userinfo¶
-
version¶
-
viewed¶
-
-
class
arxiv.submission.services.classic.models.SubmissionCategory(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseClassification relation for submissions.
-
category¶
-
is_primary¶
-
is_published¶
-
submission¶
-
submission_id¶
-
-
class
arxiv.submission.services.classic.models.Tracking(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRecord of SWORD submissions.
-
paper_id¶
-
submission_errors¶
-
sword_id¶
-
timestamp¶
-
tracking_id¶
-
-
class
arxiv.submission.services.classic.models.User(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseRepresents an arXiv user.
-
email¶
-
email_bouncing¶
-
first_name¶
-
flag_allow_tex_produced¶
-
flag_approved¶
-
flag_banned¶
-
flag_deleted¶
-
flag_edit_system¶
-
flag_edit_users¶
-
flag_email_verified¶
-
flag_html_email¶
-
flag_internal¶
-
flag_wants_email¶
-
joined_date¶
-
joined_ip_num¶
-
joined_remote_host¶
-
last_name¶
-
policy_class¶ class_id
name
1 2 3
Administrator Public user Legacy user
-
suffix_name¶
-
tapir_policy_class¶
-
user_id¶
-
-
class
arxiv.submission.services.classic.models.Username(**kwargs)[source]¶ Bases:
sqlalchemy.ext.declarative.api.BaseUsers’ usernames (because why not have a separate table).
Field
Type
Null
Key
Default
Extra
nick_id nickname user_id user_seq flag_valid role policy flag_primary
int(10) unsigned varchar(20) int(4) unsigned int(1) unsigned int(1) unsigned int(10) unsigned int(10) unsigned int(1) unsigned
NO NO NO NO NO NO NO NO
PRI UNI MUL
MUL MUL MUL
NULL
0 0 0 0 0 0
autoincrement
-
flag_primary¶
-
flag_valid¶
-
nick_id¶
-
nickname¶
-
policy¶
-
role¶
-
user¶
-
user_id¶
-
user_seq¶
-