arxiv.submission.domain.submission module¶
Data structures for submissions.
-
class
arxiv.submission.domain.submission.
Author
(order=0, forename=<factory>, surname=<factory>, initials=<factory>, affiliation=<factory>, email=<factory>, identifier=None, display=None)[source]¶ Bases:
object
Represents an author of a submission.
-
canonical
¶ Canonical representation of the author name.
-
display
= None¶ Submitter may include a preferred display name for each author.
If not provided, will be automatically generated from the other fields.
-
identifier
= None¶
-
order
= 0¶
-
-
class
arxiv.submission.domain.submission.
CrossListClassificationRequest
(request_id, creator, created=<factory>, updated=<factory>, status='pending', request_type=<factory>, classifications=<factory>)[source]¶ Bases:
arxiv.submission.domain.submission.UserRequest
Represents a request to add secondary classifications.
-
NAME
= 'Cross-list'¶
-
-
class
arxiv.submission.domain.submission.
Delegation
(delegate, creator, created=<factory>, delegation_id=<factory>)[source]¶ Bases:
object
Delegation of editing privileges to a non-owning
Agent
.
-
class
arxiv.submission.domain.submission.
Hold
(event_id, creator, created=<factory>, hold_type=<Type.PATCH: 'patch'>, hold_reason=<factory>)[source]¶ Bases:
object
Represents a block on announcement, usually for QA/QC purposes.
-
class
Type
[source]¶ Bases:
enum.Enum
Supported holds in the submission system.
-
PATCH
= 'patch'¶ A hold generated from the classic submission system.
-
PDF_OVERSIZE
= 'pdf_oversize'¶ The submission PDF is oversize.
-
SOURCE_OVERSIZE
= 'source_oversize'¶ The submission source is oversize.
-
-
event_id
= None¶ The event that created the hold.
-
hold_type
= 'patch'¶
-
class
-
class
arxiv.submission.domain.submission.
Submission
(creator, owner, proxy=None, client=None, created=None, updated=None, submitted=None, submission_id=None, source_content=None, metadata=<factory>, primary_classification=None, secondary_classification=<factory>, submitter_contact_verified=False, submitter_is_author=None, submitter_accepts_policy=None, submitter_compiled_preview=False, submitter_confirmed_preview=False, license=None, status='working', arxiv_id=None, version=1, reason_for_withdrawal=None, versions=<factory>, user_requests=<factory>, proposals=<factory>, processes=<factory>, annotations=<factory>, flags=<factory>, comments=<factory>, holds=<factory>, waivers=<factory>)[source]¶ Bases:
object
Represents an arXiv submission object.
Some notable differences between this view of submissions and the classic model:
There is no “hold” status. Status reflects where the submission is in the pipeline. Holds are annotations that can be applied to the submission, and may impact its ability to proceed (e.g. from submitted to scheduled). Submissions that are in working status can have holds on them!
We use arxiv_id instead of paper_id to refer to the canonical arXiv identifier for the e-print (once it is announced).
Instead of having a separate “submission” record for every change to an e-print (e.g. replacement, jref, etc), we represent the entire history as a single submission. Announced versions can be found in
versions
. Withdrawal and cross-list requests can be found inuser_requests
. JREFs are treated like they “just happen”, reflecting the forthcoming move away from storing journal ref information in the core metadata record.
-
ANNOUNCED
= 'announced'¶
-
DELETED
= 'deleted'¶
-
ERROR
= 'error'¶
-
SCHEDULED
= 'scheduled'¶
-
SUBMITTED
= 'submitted'¶
-
WITHDRAWN
= 'withdrawn'¶
-
WORKING
= 'working'¶
-
active_user_requests
¶ - Return type
-
annotations
= None¶ Quality control annotations.
-
applied_user_requests
¶ - Return type
-
approved_user_requests
¶ - Return type
-
arxiv_id
= None¶ The announced arXiv paper ID.
-
client
= None¶
-
comments
= None¶ Moderation/administrative comments.
-
created
= None¶
-
flags
= None¶ Quality control flags.
-
holds
= None¶ Quality control holds.
-
iter_requests
¶ - Return type
-
license
= None¶
-
pending_user_requests
¶ - Return type
-
primary_classification
= None¶
-
processes
= None¶ Information about automated processes.
-
proposals
= None¶ Proposed changes to the submission, e.g. reclassification.
-
proxy
= None¶
-
reason_for_withdrawal
= None¶ If an e-print is withdrawn, the submitter is asked to explain why.
-
rejected_user_requests
¶ - Return type
-
source_content
= None¶
-
status
= 'working'¶ Disposition within the submission pipeline.
-
submission_id
= None¶
-
submitted
= None¶
-
submitter_accepts_policy
= None¶
-
submitter_compiled_preview
= False¶
-
submitter_confirmed_preview
= False¶
-
submitter_contact_verified
= False¶
-
updated
= None¶
-
user_requests
= None¶ Requests from the owner for changes that require approval.
-
version
= 1¶
-
versions
= None¶ Announced versions of this
domain.submission.Submission
.
-
waivers
= None¶ Quality control waivers.
-
class
arxiv.submission.domain.submission.
SubmissionContent
(identifier, checksum, uncompressed_size, compressed_size, source_format=<Format.UNKNOWN: None>)[source]¶ Bases:
object
Metadata about the submission source package.
-
class
Format
[source]¶ Bases:
enum.Enum
Supported source formats.
-
HTML
= 'html'¶ An HTML source.
-
INVALID
= 'invalid'¶ We are able to infer the source format, and it is not supported.
-
PDF
= 'pdf'¶ A PDF-only source.
-
PDFTEX
= 'pdftex'¶ A PDF derived from TeX.
-
POSTSCRIPT
= 'ps'¶ A postscript source.
-
TEX
= 'tex'¶ A flavor of TeX.
-
UNKNOWN
= None¶ We could not determine the source format.
-
-
source_format
= None¶
-
class
-
class
arxiv.submission.domain.submission.
SubmissionMetadata
(title=None, abstract=None, authors=<factory>, authors_display=<factory>, doi=None, msc_class=None, acm_class=None, report_num=None, journal_ref=None, comments=<factory>)[source]¶ Bases:
object
Metadata about a
domain.submission.Submission
instance.-
abstract
= None¶
-
acm_class
= None¶
The canonical arXiv author string.
-
doi
= None¶
-
journal_ref
= None¶
-
msc_class
= None¶
-
report_num
= None¶
-
title
= None¶
-
-
class
arxiv.submission.domain.submission.
UserRequest
(request_id, creator, created=<factory>, updated=<factory>, status='pending', request_type=<factory>)[source]¶ Bases:
object
Represents a user request related to a submission.
-
APPLIED
= 'applied'¶ Submission has been updated on the basis of the approved request.
-
APPROVED
= 'approved'¶ Request has been approved.
-
CANCELLED
= 'cancelled'¶
-
PENDING
= 'pending'¶ Request is pending approval.
-
REJECTED
= 'rejected'¶ Request has been rejected.
-
WORKING
= 'working'¶ Request is not yet submitted.
-
classmethod
generate_request_id
(submission, N=-1)[source]¶ Generate a unique identifier for this request.
- Return type
-
status
= 'pending'¶
-
-
class
arxiv.submission.domain.submission.
Waiver
(event_id, waiver_type, waiver_reason, created, creator)[source]¶ Bases:
object
Represents an exception or override.
-
event_id
= None¶ The identifier of the event that produced this waiver.
-
-
class
arxiv.submission.domain.submission.
WithdrawalRequest
(request_id, creator, created=<factory>, updated=<factory>, status='pending', request_type=<factory>, reason_for_withdrawal=None)[source]¶ Bases:
arxiv.submission.domain.submission.UserRequest
Represents a request to withdraw a submission.
-
NAME
= 'Withdrawal'¶
-
reason_for_withdrawal
= None¶ If an e-print is withdrawn, the submitter is asked to explain why.
-
-
arxiv.submission.domain.submission.
request_factory
(**data)[source]¶ Generate a
UserRequest
from raw data.- Return type