Primo — Guide for Suppliers
Copyright © 2026 STM Software Engineering Private Limited (STMSoft).
| 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:
- Article XML
- Strip-ins for equations with non-compliant MathML
- Dataset XML
- Assets (images & supplementary materials)
- Order XML
| 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.xmlMathml
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.
| Action | Coding |
|---|---|
| Insertion | <!--INS-->xxx<!--/INS-->
|
| Deletion | <!--DEL-->yyy<!--/DEL-->
|
| Replacement | <!--INS-->xxx<!--/INS--><!--DEL-->yyy<!--/DEL-->
|
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, andpdf-pages-webcan be removed from thedataset.xml. - No need to include the
<proof-uri>in thedataset.xml. Primo will generate the proof url automatically. - The
<version-number>should be<version-number>S100.1</version-number>and for resupply use<version-number>S100.2</version-number>.
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.gzDrop 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>