# manuscript_requirements.json reference `paperpush/manuscript_requirements.json` records what each venue's **author guidelines** require of the manuscript itself -- the companion to `venues.json`, which describes the submission form. `paperpush validate` measures the uploaded files against these rules and `paperpush requirements VENUE` prints them. The top-level object maps a venue slug to a venue entry; the special keys `$schema` and `$aliases` are metadata (see below). This page is generated from `paperpush/manuscript_requirements.schema.json`, which is itself generated from the dataclasses in `paperpush/requirements.py`. Every key is optional: an entry records only what the guidelines state, and rules with no structured key go in a section's `notes` list. Two mechanisms keep entries short: `inherits` starts from another venue's entry and overrides keys section by section (a key set to `null` drops the inherited value; `notes` accumulate), and `article_types` holds per-article-type overrides keyed by the exact option string of the field named in `article_type_field`. ## Venue entry The keys of one venue entry. Each section key holds the object described in its own table below. | Key | Type | Description | |---|---|---| | `source_urls` | list of string | Guideline pages the entry was taken from. | | `retrieved` | string | Date (YYYY-MM-DD) the guidelines were last read. | | `inherits` | string | Slug whose requirements this entry starts from. Empty for a standalone entry. | | `article_type_field` | string | Id of the .sub field whose value selects an `article_types` override. | | `article_types` | map of [rules](#rules) | Per-article-type overrides, keyed by the exact option string; each value carries the same section keys as the top level. | | `manuscript` | [manuscript](#manuscript) or null | Rules for the main manuscript file: format, size, length, and layout. | | `title_page` | [title_page](#title_page) or null | What the title page must carry. | | `abstract` | [abstract](#abstract) or null | Abstract length and structure. | | `keywords` | [keywords](#keywords) or null | How many keywords the manuscript must list. | | `sections` | [sections](#sections) or null | Section headings the manuscript body must (or may) carry. | | `statements` | [statements](#statements) or null | Declarations that must appear in the manuscript text. | | `figures` | [figures](#figures) or null | Figure file format, resolution, dimensions, and count. | | `tables` | [tables](#tables) or null | Table file format, editability, count, and placement. | | `supplementary` | [supplementary](#supplementary) or null | Supplementary-file format, size, count, and bundling. | | `references` | [references](#references) or null | Reference style and count. | | `cover_letter` | [cover_letter](#cover_letter) or null | Whether a cover letter is required and how it is supplied. | | `upload` | [upload](#upload) or null | Size caps on the submission's uploads as a whole. | | `notes` | list of string | Venue-wide rules that fit no section. | ## rules Per-article-type overrides: the same section keys as a venue entry. The same section keys as a venue entry (plus `notes`); used as the value of each `article_types` entry. ## manuscript | Key | Type | Description | |---|---|---| | `formats` | list of string or null | File extensions accepted for the main manuscript upload (lowercase, with dot). | | `max_file_size_mb` | number or null | Maximum size of the manuscript file in MB. | | `max_words` | integer or null | Maximum word count of the whole document, references included. | | `max_words_before_refs` | integer or null | Maximum word count of the main text (before the reference list). | | `max_pages` | integer or null | Maximum page count of the whole document. | | `max_pages_before_refs` | integer or null | Maximum page count of the main text (before the reference list). | | `main_text_end_headings` | list of string or null | Headings other than the reference list that end the main text for the before-refs limits (e.g. Appendix). | | `count_excludes` | list of string or null | Parts of the manuscript the venue leaves out of its word/page count (informational). | | `count_includes` | list of string or null | Parts the venue explicitly counts that authors might not expect (informational). | | `max_display_items` | integer or null | Maximum number of figures and tables combined. | | `line_numbers` | boolean or null | Continuous line numbers required. | | `double_spacing` | boolean or null | Double line spacing required. | | `page_numbers` | boolean or null | Page numbers required. | | `font` | string or null | Mandated body font, if any. | | `font_size_pt` | number or null | Mandated body font size in points, if any. | | `margins_mm` | number or null | Mandated page margins in mm, if any. | | `page_size` | string or null | Mandated page size (A4, US Letter), if any. | | `single_file` | boolean or null | Manuscript must be a single file holding text, figures, and tables. | | `figures_placement` | `end` \| `inline` \| `separate` \| `end_or_inline` or null | Where figures go relative to the main manuscript file. | | `tables_placement` | `end` \| `inline` \| `separate` \| `end_or_inline` or null | Where tables go relative to the main manuscript file. | | `anonymized` | boolean or null | Double-blind: no author names or affiliations in the manuscript. | | `template_required` | boolean or null | Must use the venue's style file or template. | | `template_url` | string or null | URL of the venue's template. | | `latex_class` | string or null | Required LaTeX document class or style file. | | `template_layout` | [TemplateLayout](#templatelayout) or null | Geometry of the compiled template, checked against the manuscript PDF to catch shrunken margins, font, or line spacing. | | `language` | string or null | Mandated language variant, if any. | | `notes` | list of string or null | Rules with no structured key, one per string. | ## title_page | Key | Type | Description | |---|---|---| | `required_items` | list of `title` \| `authors` \| `affiliations` \| `corresponding_author` \| `corresponding_email` \| `orcid` \| `keywords` \| `running_title` \| `word_count` \| `figure_count` \| `table_count` \| `author_contributions` \| `funding` \| `competing_interests` \| `abstract` \| `postal_address` \| `phone` \| `one_sentence_summary` \| `classification` \| `author_footnotes` or null | Canonical ids of the items the title page must carry. | | `separate_file` | boolean or null | Title page is uploaded as its own file (double-blind venues). | | `title_max_characters` | integer or null | Maximum title length in characters (spaces included). | | `title_max_words` | integer or null | Maximum title length in words. | | `running_title_max_characters` | integer or null | Maximum running/short title length in characters. | | `notes` | list of string or null | Rules with no structured key. | ## abstract | Key | Type | Description | |---|---|---| | `max_words` | integer or null | Maximum abstract length in words. | | `min_words` | integer or null | Minimum abstract length in words. | | `max_characters` | integer or null | Maximum abstract length in characters. | | `structured` | boolean or null | Abstract must be structured into labelled subsections. | | `structured_headings` | list of string or null | The subsection labels a structured abstract must carry. | | `no_references` | boolean or null | Abstract must not cite references. | | `no_abbreviations` | boolean or null | Undefined abbreviations are banned in the abstract. | | `notes` | list of string or null | Rules with no structured key. | ## keywords | Key | Type | Description | |---|---|---| | `min` | integer or null | Minimum number of keywords. | | `max` | integer or null | Maximum number of keywords. | | `notes` | list of string or null | Rules with no structured key. | ## sections | Key | Type | Description | |---|---|---| | `required` | list of string or null | Canonical section names the manuscript must contain (matched via $aliases). | | `optional` | list of string or null | Canonical section names the venue allows but does not require. | | `order` | list of string or null | Prescribed section order, if the venue states one. | | `combined_allowed` | list of string or null | Combined headings the venue accepts (e.g. Results and Discussion). | | `notes` | list of string or null | Rules with no structured key. | ## statements | Key | Type | Description | |---|---|---| | `required` | list of `data_availability` \| `code_availability` \| `competing_interests` \| `author_contributions` \| `funding` \| `acknowledgements` \| `ethics_approval` \| `consent_to_participate` \| `consent_to_publish` \| `materials_availability` \| `lead_contact` \| `inclusion_and_diversity` \| `ai_use` \| `reproducibility` \| `ethics_statement` \| `clinical_trial_registration` \| `reporting_guidelines` or null | Canonical ids of the declarations the manuscript must contain (matched via $aliases). | | `optional` | list of `data_availability` \| `code_availability` \| `competing_interests` \| `author_contributions` \| `funding` \| `acknowledgements` \| `ethics_approval` \| `consent_to_participate` \| `consent_to_publish` \| `materials_availability` \| `lead_contact` \| `inclusion_and_diversity` \| `ai_use` \| `reproducibility` \| `ethics_statement` \| `clinical_trial_registration` \| `reporting_guidelines` or null | Declarations the venue accepts but does not require. | | `notes` | list of string or null | Rules with no structured key. | ## figures | Key | Type | Description | |---|---|---| | `formats` | list of string or null | Accepted figure file extensions. | | `vector_formats` | list of string or null | Formats preferred for line art / vector figures. | | `min_dpi` | integer or null | Minimum resolution for halftone/photographic figures. | | `min_dpi_line_art` | integer or null | Minimum resolution for line art. | | `min_dpi_combination` | integer or null | Minimum resolution for combination (halftone + line) figures. | | `max_file_size_mb` | number or null | Maximum size of each figure file in MB. | | `max_count` | integer or null | Maximum number of main-text figures. | | `single_column_width_mm` | number or null | Single-column figure width in mm. | | `double_column_width_mm` | number or null | Double-column figure width in mm. | | `max_width_mm` | number or null | Maximum figure width in mm. | | `max_height_mm` | number or null | Maximum figure height in mm. | | `color_mode` | list of string or null | Accepted colour spaces (RGB, CMYK, grayscale). | | `min_font_size_pt` | number or null | Minimum font size for figure lettering, in points. | | `max_font_size_pt` | number or null | Maximum font size for figure lettering, in points. | | `font` | string or null | Mandated or recommended figure font. | | `legend_max_words` | integer or null | Maximum words per figure legend. | | `legends_location` | `end_of_manuscript` \| `with_figure` \| `after_references` or null | Where figure legends go. | | `multipanel_labels` | string or null | Required style of panel labels. | | `color_charge` | boolean or null | Colour figures carry a charge. | | `placement` | `separate_files` \| `end_of_manuscript` \| `inline` \| `end_or_inline` or null | Where figures go for the initial submission. | | `notes` | list of string or null | Rules with no structured key. | ## tables | Key | Type | Description | |---|---|---| | `formats` | list of string or null | Accepted table file extensions. | | `editable` | boolean or null | Tables must be editable text, not images. | | `max_count` | integer or null | Maximum number of main-text tables. | | `placement` | `separate_files` \| `end_of_manuscript` \| `inline` \| `end_or_inline` or null | Where tables go for the initial submission. | | `notes` | list of string or null | Rules with no structured key. | ## supplementary | Key | Type | Description | |---|---|---| | `formats` | list of string or null | Accepted supplementary file extensions. | | `max_file_size_mb` | number or null | Maximum size of each supplementary file in MB. | | `max_count` | integer or null | Maximum number of supplementary files. | | `combined_single_pdf` | boolean or null | Supplementary text, figures, and tables must be combined into one PDF. | | `notes` | list of string or null | Rules with no structured key. | ## references | Key | Type | Description | |---|---|---| | `style` | string or null | Reference style, in words. | | `numbered` | boolean or null | Numbered (true) vs author-year (false) citations. | | `max_count` | integer or null | Maximum number of references. | | `include_titles` | boolean or null | Article titles are required in reference entries. | | `doi_required` | boolean or null | DOIs are required in reference entries. | | `unpublished_allowed` | boolean or null | Unpublished work may be cited in the list. | | `preprints_allowed` | boolean or null | Preprints may be cited in the list. | | `notes` | list of string or null | Rules with no structured key. | ## cover_letter | Key | Type | Description | |---|---|---| | `required` | boolean or null | A cover letter is required. | | `formats` | list of string or null | Accepted cover letter file extensions. | | `max_words` | integer or null | Maximum cover letter length in words. | | `notes` | list of string or null | Rules with no structured key. | ## upload | Key | Type | Description | |---|---|---| | `max_total_mb` | number or null | Maximum combined size of one submission's uploads in MB. | | `max_file_mb` | number or null | Per-file size cap that applies to every upload, in MB. | | `notes` | list of string or null | Rules with no structured key. | ## TemplateLayout | Key | Type | Description | |---|---|---| | `page_width_pt` | number or null | Page width in points. | | `page_height_pt` | number or null | Page height in points. | | `text_left_pt` | number or null | x of the text block's left edge. | | `text_right_pt` | number or null | x of the text block's right edge (justified line ends). | | `text_top_pt` | number or null | y of the highest body-text line on a page. | | `text_bottom_pt` | number or null | y of the lowest body-text line on a full page. | | `body_font_pt` | number or null | Body font size in points. | | `baseline_skip_pt` | number or null | Distance between consecutive body-text baselines in points. | | `running_head` | string or null | Running head the submission version prints on page 1 (e.g. 'Under review as a conference paper at ICLR 2027'). | | `margin_line_numbers` | boolean or null | The submission version prints line numbers in the margin. | | `tolerance_pt` | number | How far, in points, a measured edge may sit from the template's before it is reported. | ## $aliases Heading wordings that count as each canonical section / statement name when the manuscript text is searched. Keys: sections, statements; each maps a canonical name to a list of alternative headings. | Key | Type | Description | |---|---|---| | `sections` | map of list of string | | | `statements` | map of list of string | |