Primo — Guide for Suppliers

From Primo Wiki
Revision as of 11:03, 22 May 2026 by Rishi (talk | contribs)

Copyright © 2026 STM Software Engineering Private Limited (STMSoft).

Document History
Sl. No. Version No. Draft Verified & Appoved Release Date Remarks
1 1.0 Manju V Rahul Krishnan S 06-04-2026 Initial version

Introduction

Welcome to PRIMO!

Primo is a web based proofing framework which renders the XML file sent by the supplier into the HTML version thus making it very easy for the authors to access it and edit. To those of us who are used to using word processors, this tool would be quite easy to use (except with a few additional quirks).

By providing extra features which would then help the author to get a glimpse of the final result of the processing, Primo ensures a smooth transition throughout the whole proof checking process.

Supported Browsers

To ensure the best experience, suppliers should use any of the following recommended browsers:

  • Firefox: 100.3+
  • Google Chrome: 108+
  • Safari: 15.6+
  • Microsoft Edge: 107+
  • Opera 87+

Primo Dataset

Primo dataset of a proof contains the following:

  1. Article XML
  2. Strip-ins for equations with non-compliant MathML
  3. Dataset XML
  4. Assets (images & supplementary materials)
  5. Order XML
Difference between normal and Primo datasets.
Item Normal dataset Primo dataset
Dataset XML dataset.xml dataset.xml
Article XML main.xml main.xml
Strip-ins main.stripin/si1.svg main.stripin/si1.svg
Assets (jpg) main.assets/gr1.jpg main.assets/gr1.jpg
Assets (web) web/gr1.pdf
Assets (print) print/gr1.pdf
Assets (source) eps/gr1.eps
Order XML order/_S999999992600000X-20260405_190603_S100.xml

Article XML

Suppliers are requested to use the full-text single XML and not to process datasets with multiple XMLs like abstract, add-ons, batch placeholders etc. via Primo. The file name should be main.xml.

Directory structure syntax
  <dataset_directory>/<pii_number>/main.xml
Directory structure example
  XXXXF9999999/S999999992600000X/main.xml

Mathml

Use MathML3 line break attributes to indicate equation breaking points. Indent target and indentalign="id" attributes are recommended to indicate horizontal alignment of lines in equations.

Track changes & queries

The proof in XML may contain language-edit track changes and queries to the authors in any one of the below formats.

Track Changes
Action Coding
Insertion <!--INS-->xxx<!--/INS-->
Deletion <!--DEL-->yyy<!--/DEL-->
Replacement <!--INS-->xxx<!--/INS--><!--DEL-->yyy<!--/DEL-->
Queries
Action Coding Example
Query <!--Q3: Example of normal text input query.-->
Check box Query <!--Q4 replies=“Checked”: Example of check box input query.-->
Boolean Query <!--Q5 replies=“Yes | No”: Example of boolean input query.-->
Multiple Choice Query <!--Q4 replies=“Option A | Option B | Option C | ...”: Example of multiple choice input query.-->

Query Identifier

The query identifiers have the form: 'Q' followed by the query number, e.g. Q1, Q3, Q5. While generating the query avoid:

  • Using the same query identifier for two different queries.
  • Calling the same query at two different places.

Strip-ins or alternate images for equations with non-compliant MathML

As Primo generates strip-ins by itself for rendering equations in Edit View and Proof View, it is no longer mandatory to provide strip-ins, but to avoid VTOOL errors, it should be included in the input dataset.

Dataset XML

  • The dataset XML should adhere to new-proof schema. According to the workflow, the supplier can omit both MAIN and EDITED-PROOF PDFs from the dataset. The tags such as web-pdf, page-fraction-body, page-fraction-trail, pdf-pages, and pdf-pages-web can be removed from the dataset.xml.
  • No need to include the proof-uri in the dataset.xml. Primo will generate the proof url automatically.

Assets

Inside main.assets directory, the XML version JPEG and MMC files should be added.

Directory structure syntax
  <dataset_directory>/<pii_number>/main.assets/ga1.jpg
  <dataset_directory>/<pii_number>/main.assets/sc1.jpg
  <dataset_directory>/<pii_number>/main.assets/gr1.jpg
  <dataset_directory>/<pii_number>/main.assets/mmc1.jpg
  ...
Directory structure example
  XXXXF9999999/S999999992600000X/main.assets/ga1.jpg
  XXXXF9999999/S999999992600000X/main.assets/sc1.jpg
  XXXXF9999999/S999999992600000X/main.assets/gr1.jpg
  XXXXF9999999/S999999992600000X/main.assets/mmc1.jpg
  ...

WEB and PRINT

Include the web version (Elsevier RGB spec PDF) images in the main.assets/web directory and print version (Elsevier CMYK spec PDF) images into the main.assets/print directory.

Directory structure syntax
  <dataset_directory>/<pii_number>/main.assets/web/ga1.pdf
  <dataset_directory>/<pii_number>/main.assets/web/sc1.pdf
  <dataset_directory>/<pii_number>/main.assets/web/gr1.pdf
  ...
  <dataset_directory>/<pii_number>/main.assets/print/gr1.pdf
  <dataset_directory>/<pii_number>/main.assets/print/sc1.pdf
  <dataset_directory>/<pii_number>/main.assets/print/gr1.pdf
  ...
Directory structure example
  XXXXF9999999/S999999992600000X/main.assets/web/ga1.pdf
  XXXXF9999999/S999999992600000X/main.assets/web/sc1.pdf
  XXXXF9999999/S999999992600000X/main.assets/web/gr1.pdf
  ...
  XXXXF9999999/S999999992600000X/main.assets/print/ga1.pdf
  XXXXF9999999/S999999992600000X/main.assets/print/sc1.pdf
  XXXXF9999999/S999999992600000X/main.assets/print/gr1.pdf
  ...

Source

To handle the artwork corrections in the subsequent stages, add the original high quality RGB and compressed EPS versions inside the main.assets/eps directory. See the directory structure below.

Directory structure syntax
  <dataset_directory>/<pii_number>/main.assets/eps/ga1.eps.gz
  <dataset_directory>/<pii_number>/main.assets/eps/sc1.eps.gz
  <dataset_directory>/<pii_number>/main.assets/eps/gr1.eps.gz
  ...
Directory structure example
  XXXXF9999999/S999999992600000X/main.assets/eps/ga1.eps.gz
  XXXXF9999999/S999999992600000X/main.assets/eps/sc1.eps.gz
  XXXXF9999999/S999999992600000X/main.assets/eps/gr1.eps.gz
  ...

Order XML

The S100 order XML that received at supplier end also need to be included inside the Primo dataset for corresponding e-mail address, remarks. It should be included as shown below.

Directory structure syntax
  <dataset_directory>/order/_<pii>-<date_stamp>_<STAGE>.xml
Directory structure example
  • S100: XXXXF9999999/order/_S999999992600000X-20260405_190603_S100.xml
  • S100RESUPPLY: XXXXF9999999/order/_S999999992600000X-20260405_190603_S100RESUPPLY.xml

Sample dataset file structure

XXXXF9999999/
XXXXF9999999/dataset.xml

XXXXF9999999/order/_S999999992600000X-20260405_190603_S100.xml

XXXXF9999999/S999999992600000X/
XXXXF9999999/S999999992600000X/main.xml

XXXXF9999999/S999999992600000X/main.stripin/
XXXXF9999999/S999999992600000X/main.stripin/si1.svg
XXXXF9999999/S999999992600000X/main.stripin/si2.svg

XXXXF9999999/S999999992600000X/main.assets/
XXXXF9999999/S999999992600000X/main.assets/ga1.jpg
XXXXF9999999/S999999992600000X/main.assets/sc1.jpg
XXXXF9999999/S999999992600000X/main.assets/gr1.jpg
XXXXF9999999/S999999992600000X/main.assets/mmc1.docx

XXXXF9999999/S999999992600000X/main.assets/web/
XXXXF9999999/S999999992600000X/main.assets/web/ga1.pdf
XXXXF9999999/S999999992600000X/main.assets/web/sc1.pdf
XXXXF9999999/S999999992600000X/main.assets/web/gr1.pdf

XXXXF9999999/S999999992600000X/main.assets/print/
XXXXF9999999/S999999992600000X/main.assets/print/ga1.pdf
XXXXF9999999/S999999992600000X/main.assets/print/sc1.pdf
XXXXF9999999/S999999992600000X/main.assets/print/gr1.pdf

XXXXF9999999/S999999992600000X/main.assets/eps/
XXXXF9999999/S999999992600000X/main.assets/eps/ga1.eps.gz
XXXXF9999999/S999999992600000X/main.assets/eps/sc1.eps.gz
XXXXF9999999/S999999992600000X/main.assets/eps/gr1.eps.gz

Drop Zone

Credentials and SFTP details will be provided via mail.

Workflow

Primo Validation

The input dataset file name should be unique. Once the dataset is uploaded to the sftp, a validation XML will be generated. Download it and check the status. If it is a failure one, correct the error and re-upload the dataset to Primo. The validation XML file name will be UJID-AID-Primo-validation-YYYY-mm-ddTHH-MM-SSZ.xml.

Example (status=success)
AML-100002-Primo-validation-2026-04-06T05-34-51Z.xml:

<?xml version="1.0"?>
<primo-import-information xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="XML-signal-validation.xsd">
  <timestamp>2026-04-06T04-19-32Z</timestamp>
  <supplier>
    <name>STMSE</name>
  </supplier>
  <article>
    <jid>AML</jid>
    <aid>100002</aid>
  </article>
  <status>success</status>
  <url>https://primo.stmsoft.in/dp/zpoiue4567sgwe</url>
</primo-import-information>