Appendix A. JATS Resources
The JATS has been made into a series of tag sets designed to describe a complete journal
article. BITS is built on a on JATS base (particularly low-level text-block structures
such as paragraphs, lists, figures, etc.) to model a book, monograph, pamphlet, or
similar more extended material. NISO STS is a tag set written to describe standards
documents for national, regional, international, and organization-developed standards.
JATS, BITS, and NISO STS vocabularies are supported by a wealth of documentation,
samples, tutorial material, tools, and more. This appendix, while not comprehensive,
describes some of the basic resources available to organizations considering or using
JATS, BITS, or NISO STS.
The elephant in the room, that the following pages do not include for fear of incompleteness
or bias, are the commercial products built specifically for or easily customizable
to handle JATS. There are commercial Word-to-JATS and PDF-to-JATS conversion tools,
JATS editors, bibliographic reference checkers, products to import JATS into desk-top
publishing platforms, and many many more.
A.1 Web Pages for JATS Tag Sets
The most important resources for learning, implementing, or customizing JATS or any
of the three JATS Tag Sets are:
-
JATS Tag Libraries Documentation
-
DTDs and schemas (DTD, XSD, RNG)
-
Sample JATS-tagged documents (non-normative)
These resources may be reached from the three JATS Tag Set pages.
Journal Archiving and Interchange Tag Set page
https://jats.nlm.nih.gov/archiving/
Contains links to the documentation and the schemas (DTD, XSD, RNG) for the Journal
Archiving and Interchange Tag Set, which is known as Archiving
or Green
(from the background color of the Tag Library documentation).
Archiving is the most permissive JATS sets, allowing the most structures to be captured
without change or rearrangement.
Journal Article Publishing Tag Set Page
https://jats.nlm.nih.gov/publishing/
Contains links to documentation and the schemas (DTD, XSD, RNG) for the Journal Publishing
Tag Set, which is known as Publishing
or Blue
(from the background color of the Tag Library documentation). Publishing is a somewhat
more prescriptive tag set than Archiving, intended to help publishers and archives
regularize their content and facilitating use and reuse of JATS-tagged articles.
Journal Article Authoring Tag Set Page
https://jats.nlm.nih.gov/articleauthoring/
Contains links to documentation and the schemas (DTD, XSD, RNG) for the Journal Article
Authoring Tag Set, which is known as Authoring
or Pumpkin
(from the background color of the Tag Library documentation). Authoring is intended
for author use rather than publisher or archive use. To make authoring easier, this
Tag Set provides only a single way to tag most structures.
A.2 JATS ANSI/NISO Standard
https://www.niso.org/standards-committees/jats
(links to JATS NISO Standard and NISO Comment Form)
The JATS Standard (ANSI/NISO Z39.96-2015 JATS: Journal Article Tag Suite (JATS V1.1))
describes all the elements and attributes that make up the Suite and the three base
JATS tag sets. The fact of the standard is critically important to JATS adoption and
use. However, the Standard is not a document to be read to learn how to use or customize
JATS. That information resides in the non-normative
Tag Library documentation and the DTDs and Schemas posted at NLM and on Github.
A.3 JATS Tag Libraries (non-normative)
The current Tag Library Documentation (in HTML and linked) for each of the three JATS
Tag Sets is available online for reading and reference:
Copies of version 1.1 (the current versions as of this writing) to download may be
found:
Each of the JATS Tag Sets is documented with a linked HTML Tag Library. Tag Library
Documentation contains element/attribute/parameter entity descriptions and models,
usage notes, tagged examples, essays on both common and recommended tagging practices,
a comprehensive index, a list of where each element can be used, and visual diagrams
showing element structures. The basic structure of a JATS Tag Library is:
-
Introduction describing navigation/linking
-
Element pages (one per element)
-
Attributes pages (one per attribute)
-
Context table (where each element can be used; single alphabetical index)
-
Hierarchy diagrams (tree-like visual representations of the content of many elements)
-
An essay about selecting the appropriate JATS Tag Set
-
Essays on common tagging practice (tips, hints, and examples)
-
Index (with synonyms and use-for terms)
-
Notes for implementors concerning changes, customizations. etc.
A.3.1 Each Element Page
Each element is described by a separate HTML page, where the heading for the page
displays the element’s tag name followed by its longer descriptive name. The rest
of the element description page discusses aspects of the element and its usage.
Table I
Description |
Defines the element and may provide information on its usage. |
Remarks |
Additional information about the element, explanations of similar or contrasting elements,
or instructions for element usage
|
Related Elements |
Information about elements associated with or easily confused with the current element |
Attributes |
An alphabetical list of attributes, for elements that may take attributes
|
Content Model |
The element’s declaration in XML syntax, i.e., the content of the element
|
Expanded Content Model |
The element’s declaration in XML syntax with all parameter entities expanded |
Content Description |
The content of the element, that is, what is allowed to be inside the element, described in natural
language
|
This element may be contained in: |
An alphabetical list of all elements which may contain the element under discussion
(where an element may be used)
|
Example |
One or more excerpts from tagged XML documents, showing use of the current element.
|
A.3.2 Each Attribute page
Each attribute is described by a separate HTML page, where the heading for the page
displays the attribute’s tag name followed by its longer descriptive name. The rest
of the attribute description page discusses aspects of the attribute, its usage, and
the elements to which it can be attached.
Table II
Description |
Defines the attribute and its purpose (intended use) |
Usage |
Expected uses for the attribute, such as when or why it might be used or how to determine
its value
|
Remarks |
Additional information about the attribute, such as similar
or contrasting attributes, processing information, or relevant material concerning
the base element
|
Used on Elements |
This section performs three functions: 1) naming the elements which can take the attribute,
2) describing the exact values and defaults for the attribute when used on specific
elements, and 3) providing a list of suggested values for those attributes whose value
is any character data (i.e., not a specific list of values).
|
Multiple Elements |
If the attribute can be used in more than one way, or with several slightly
different meanings, there will be more than one Used on Elements section.
|
Value and Meaning |
The possible
values of the attribute and description of those values.
|
Restriction |
Either with the word Restriction or the words Default value and the actual default value.
|
Suggested usage |
Suggested values for the attribute, for those attributes whose value is unconstrained
(defined as text: letters, numbers, or special characters)
|
Example |
One or more excerpts from a tagged XML documents, showing use of the current attribute |
A.4 DTDS and Schemas
FTP: ftp://ftp.ncbi.nih.gov/pub/jats/
The latest schema associated with each of the JATS Tag Sets, as well as previous schema
versions, are available by anonymous ftp from NLM. The FTP site has one folder for
each Tag Set (Journal Archiving and Interchange, Journal Publishing, and Article Authoring)
which contains subfolders corresponding to each Tag Set version release.
A.5 Sample JATS-tagged Documents
Many publishers, archives, and web hosting services provide JATS-tagged XML for their
articles. A few of these are listed below.
In the Tag Libraries — The first samples JATS-tagged XML most users see are the fragments of sample documents
embedded in the Tag Libraries for each Tag Set. Nearly all element pages contain one
or more tagged examples; selected attribute pages also contain sample fragments.
In addition, complete tagged samples are linked from JATS Publishing (Blue) Tag Libraries.
PubMedCentral Open Access (https://www.ncbi.nlm.nih.gov/pmc/tools/openftlist/) —
PubMed Central makes some of its article archive available in JATS XML.
The JATS4R Github pages (https://github.com/JATS4R/JATS4R-Participant-Hub/tree/master/examples) —
The JATS4R pages include samples of JATS tagging that the organization used in developing
their Best Practice recommendations.
PLOS (Public Library of Science) Articles (https://www.plos.org/) —
PLOS articles are available to download in JATS. On the PLOS site, first find the
article (search
, select
), then,
beside Download PDF
click the down arrow, select XML
.
Elementa Articles (https://www.elementascience.org/) —
The journal Elementa makes its articles available to download in JATS. On their site, first find the article
(search
, select
), then click the Download
in the horizontal bar and select XML
.
A.6 JATS Compatibility Meta-Model Description Draft 0.7
https://groups.niso.org/apps/group_public/download.php/16764/JATS-Compatibility-Model-v0-7.pdf
The JATS Compatibility Meta-Model Description is a thought-piece, written to help
developers of new JATS-related XML vocabularies create those vocabularies in ways
that usefully extend the reach of the JATS vocabularies without conflicting with current
JATS vocabularies. This NISO document provides draft guidelines to enable creators
and maintainers of JATS-based document models to know when the extensions they make
to JATS models are JATS-compatible and to suggest ways in which they can achieve their
modeling goals in a JATS-compatible way.
The JATS
Compatibility Meta-Model is intended to describe what it means for a tag set to be
JATS-compatible and provides guidance on how a tag set can be developed or modified
to be JATS-compatible. It provides both the principles on which JATS compatibility
can be decided and some specific criteria that must be met to ensure JATS compatibility.
Specifically, the meta-model documents those things that must not change about a model
for it to be consistent with the JATS models.
A.7 JATS Ecosystem
The ecosystem that surrounds and supports JATS is highly varied. JATS-Con, a conference
dedicated to JATS and its daughter vocabularies provides a location for face to face
networking, a concentrated source of JATS scholarship, and a permanent archive of
the papers and presentations at the conference. Papers about JATS/BITS/NISO STS make
appearances at other markup-related events. JATS has an helpful and beginner-friendly
discussion list. JATS has an active user organization (JATS4R) that develops Best
Practice recommendations. Many organizations (e.g, PubMed Central, JATS4R, and eLife)
have made their Schematron and other QA checking and rules available to the public.
There are tools and instructions for depositing JATS-tagged references and abstract
with CrossRef. Consultants write JATS supersets and subsets and teach courses on how
to customize JATS.
Many tools have been written to use JATS in the processing chain, both commercial
and open source or small provider tools. Many of these keep source code and documentation
on GitHub. There are tools to make PDF into JATS and JATS into PDF or HTML. There
are tools to convert MS Word to JATS. There is a JATS flavor of MarkDown.
While there is no single web location where links to all of these resources can be
found, some starting places are mentioned in this section.
A.7.1 JATS Guidelines and QA
A.7.1.1 PubMed Central Tagging Guidelines
https://www.ncbi.nlm.nih.gov/pmc/pmcdoc/tagging-guidelines/article/style.html
PubMed Central is a prominent consumer of JATS documents. Their detailed guidelines
are, in effect, a description of a JATS subset and use pattern. The PMC Guidelines
are published by PMC for their users but have been adopted, in while or in part, by
many other users. Guidelines describing PubMed Central's preferred XML tagging style for journal article submissions in the
NLM Journal Publishing DTD or the NISO JATS Journal Publishing DTD
. Guidelines now include style rules for data tagged in versions 1.1 and 1.0 of the
NISO JATS Journal Publishing DTD, as well as both versions 2.3 and 3.0 of the NLM
Journal Publishing DTD (JATS predecessor). Note that the style rules differ among
the various versions. This site includes links to
tools and resources (such as a style checker, fully-tagged samples, fully-tagged citations,
etc.) as well as an email distribution subscription list for updates.
A.7.1.2 JATS4R (JATS for Reuse) Best Practice Recommendations
JATS4R (https://jats4r.org/) is an inclusive group of publishers, vendors, and other interested organisations who
use the NISO Journal Article Tag Suite (JATS) XML standard.
. The organization is based on the principle that JATS is broad and inclusive, but
reuse and interchange would be facilitated if JATS users agreed on one (or a small
number) of best practices for tagging. Therefore, JATS4R is a working group (of many
active subgroups) devoted to optimizing the reusability of scholarly content by developing
best-practice recommendations for tagging content in JATS XML.
JATS4R offers Best Practice tagging recommendations for (at least) the following:
-
connecting authors and affiliations,
-
article publication dates versus historical lifecycle dates
-
citations and data citations
-
clinical trials
-
Conflict-of-Interest statements
-
Data Availability Statements
-
display objects
-
math
-
permissions
JATS4R is an active Google Group (https://groups.google.com/forum/#!forum/jats4r) and maintains JATS4R GitHub pages (https://github.com/JATS4R). The Github pages include both samples of JATS tagging (https://github.com/JATS4R/JATS4R-Participant-Hub/tree/master/examples)
and a client-side JATS4R validator using Saxon-CE, that JATS users can use to check
their compliance with JATS4R recommendations (https://github.com/JATS4R/validator).
JATS4R runs on volunteer labor, and the group welcomes participation by more JATS
users. Their aim is to make adoption of JATS4R tagging recommendations as easy and
cost-effective as possible for everyone. To do this, they hope to solicit input from
many people in scholarly publishing. That input can be in the form of contributing
samples, following and commenting on JATS4R recommendations, joining a subgroup to
develop recommendations in an area of interest to you, or simply following JATS4R
work and helping to spread the word as they develop new recommendations.
A.7.2 JATS-List Discussion List
http://www.mulberrytech.com/JATS/JATS-List/index.html
JATS-List is an open forum for discussion concerning:
-
the Journal Article Tag Suite itself;
-
JATS applications and tools;
-
JATS customizations; and
-
any and all JATS user questions.
JATS-List is open to everyone: users and developers, experts and novices alike. There
is no restriction to what may be posted on JATS-List provided it is directly related
to JATS. The topics discussed on JATS-List change as new ideas arise or existing problems
are dealt with, but the archive contains all of the ideas and solutions that have
been discussed on the list.
A.7.3 Conferences and Conference Proceedings
JATS-Con
Conference: https://jats.nlm.nih.gov/jats-con/
Proceedings: https://www.ncbi.nlm.nih.gov/books/NBK65129/
JATS-Con is the annual conference for all things JATS. Sponsored by NLM (US National
Library of Medicine) and typically held on their campus at the National Library of
Medicine, JATS-CON provides JATS users a forum to tell their success stories and ask
questions of the JATS Standing Committee. Topics have included tools and success stories
from JATS implementations, the internationalization of JATS, considerations in adopting
JATS, converting Math from Microsoft Word into JATS XML, introductions to BITS and
NISO STS, and much more. Papers from previous conferences are available in the JATS-Con
Proceedings (Journal Article Tag Suite Conference) 2010-2018.
Other Conferences
JATS has also been discussed at Balisage: The Markup Conference (proceedings for
2008-2018 can be found at https://www.balisage.net/Proceedings/index.html). There have also been papers on JATS at Markup UK (London 2018), XML London (2017
and previous years), and XML Prague
A.7.4 JATS Supporting Documentation Page
https://jats.nlm.nih.gov/
This page hold links to the home pages for each of the three JATS tag sets (Journal
Archiving, Journal Publishing, and Authoring). This page also links to the JATS ftp
site where DTD, RELAX NG schema, or W3C XML schema versions of the JATS Tag Sets are
available for download.
In addition, this page provides links to:
-
Home page for BITS,
-
Home page NISO STS,
-
the JATS Wiki,
-
the JATS-Con conference home page, as well as the
-
the JATS FAQ (actually a FAQ explaining the NLM DTD and JATS).
A.7.5 JATS Wikipedia page
https://en.wikipedia.org/wiki/Journal_Article_Tag_Suite
This current and frequently updated page starts with an historical background/timeline
for JATS and its NLM predecessor, information on JATS’ technical scope, and a tagged
example.
While not complete, this page contains useful information concerning JATS-related
tools for creating, editing, converting, and transforming JATS. The JATS tools range
from simple forms to complete conversion automation and from free open source tools
to commercial products. Tools lists offer such services as:
A.7.6 JATS on Github
While several Github areas might be viewed as a home
for JATS, in fact Github hosts numerous JATS initiatives. The list below is representative
rather than inclusive. No guarantee is made for how recent the initiatives or tools
are nor for their quality.
-
https://github.com/ncbi/niso-jats — The NCBI JATS pages, including
-
https://github.com/JATS4R — Landing page for JATS4R recommendations, samples files, validators and other tools.
-
https://github.com/PeerJ/jats-conversionJATS validation and https://github.com/PeerJ/jats-conversion/blob/master/src/data/xsl/jats-to-html.xsl — Tools to validate a JATS XML file using either the JATS Publishing DTD (Blue) or
the PMC Stylechecker. Also conversion and validation against: the CrossRef Deposit
Schema, the DataCite Deposit Schema, the DOAJ Deposit Schema.
-
https://github.com/wendellpiez/JATSKit — JATSKit is
an Oxygen XML Editing framework that supports: JATS with CSS stylesheets (for authoring),
Schematron validation and QuickFixes, and XSLT transformations (for conversions of
JATS and BITS data into HTML, EPUB, and PDF).
-
https://github.com/elifesciences — Landing page for eLife JATS material, including JATS-tagged articles, Schematron
validators, and
a stand-alone XML data scraper for extracting data from JATS XML files into a single
data structure which is serialized as JSON (https://github.com/elifesciences/jats-scraper).
-
https://bundle-archive.plex.tv/topics/jats — Links to a variety of JATS tools.
-
https://github.com/eirikhanssen/jats2epub — JATS to ePub conversion.
-
https://github.com/transpect/jats2html — XProc library and XSLT stylesheets to convert JATS to HTML.
-
http://swissbib.github.io/metadataNationalLicencesDocumentation/pages/input/021jats/ — Transformation NLM de Import Vufind and
Transformation de JATS vers Crossref XML.
-
https://github.com/mfenner/pandoc-jats — A Lua custom writer for Pandoc generation of JATS XML from markdown files.
-
https://github.com/MartinPaulEve/meTypeset — A tool to convert from Microsoft Word .docx format to NLM/JATS-XML for scholarly/scientific
article typesetting.
-
http://transpect.github.io/ and https://github.com/transpect/jats2html
— An XProc framework and XSLT stylesheets for error checking and conversion of JATS/BITS
to HTML.
-
https://github.com/Vitaliy-1/DOCX2JATS and
https://github.com/Vitaliy-1/JATSParser — Tools integrated with Open Journal Systems 3.0+ for transforming JATS XML to various
formats, .docx to JATS, and JATS to LaTeX).
-
https://github.com/substance/texture — A toolset for the production of scientific content. It uses the Dar Format, which
defines a stricter form of the JATS Archiving and Interchange Tag Set (Green)
-
https://github.com/konrad/JATS-to-Mediawiki — Transforms XML files written in the NLM/NISO Journal Archiving Tag Suite XML (Green)
into MediaWiki XML.
-
https://bundle-archive.plex.tv/topics/jats — Links to a variety of JATS tools.
-
https://github.com/pkp/oaiJats — A plugin that exposes JATS XML via the OAI-PMH interface. The plugin DOES NOT generate
JATS XML itself; use a tool like Open Typesetting Stack (https://pkp.sfu.ca/open-typesetting-stack/) to generate the JATS XML.
-
https://github.com/Klortho/jatsdoc — Jatsdoc
produces documentation for a JATS customization. Jatsdoc is integrated with NCBI’s
DtdAnalyzer, which compares JATS with other DTDs and creates an XML representation,
can generate XSLT and Schematron, and other tools.
Appendix B. BITS Resources (Book Interchange Tag Set: JATS Extension)
BITS is built on a on JATS base (particularly low-level text-block structures such
as paragraphs, lists, figures, etc.), but describes a model for a book, monograph,
pamphlet, or similar more extended material. The intent of the BITS is to provide
a common format in which publishers and archives can exchange book content. The JATS,
BITS, and NIS STS vocabularies are supported by a wealth of documentation, samples,
tutorial material, tools, and more. This appendix, while not complete, describes some
of the basic resources available to organizations considering or using BITS. Most
tools and processes that handle JATS can also handle BITS.
B.1 Web Page for BITS Tag Sets
https://jats.nlm.nih.gov/extensions/bits/
The most important resources for learning, implementing, or customizing the Book Interchange
Tag Suite (BITS 2.0) are:
-
BITS Tag Libraries Documentation
-
DTDs and schemas (DTD, XSD, RNG)
All versions of BITS are available from this National Library of Medicine site. This
page includes links to:
-
the BITS Tag Library Documentation (in HTML and linked),
-
the two BITS Tag Sets in DTD, XSD, RNG format, and
-
the JATS-List discussion list, which is where BITS request and comments are posted.
B.2 BITS Tag Library
https://jats.nlm.nih.gov/extensions/bits/tag-library/2.0/
The BITS Tag Library Documentation contains element/attribute/parameter entity descriptions
and models, usage notes, tagged examples, essays on both common and recommended tagging
practices, a comprehensive index, a list of where each element can be used, and visual
diagrams showing element structures. The basic structure of a JATS Tag Library is:
-
Introduction describing navigation/linking
-
Element pages (one per element)
-
Attributes pages (one per attribute)
-
Context table (where each element can be used; single alphabetical index)
-
Hierarchy diagrams (tree-like visual representations of the content of many elements)
-
An essay about selecting the appropriate JATS Tag Set
-
Essays on common tagging practice (tips, hints, and examples)
-
Index (with synonyms and use-for terms)
-
Implementors notes such as customization
B.3 DTDS and schemas
The BITS models and constraints in this Tag Set are encoded in several schema languages:
DTD, RELAX NG (RNG), and W3C XML Schema (XSD). All of the schema files for this Tag
Set are available by anonymous FTP:
ftp://ftp.ncbi.nih.gov/pub/jats/extensions/bits/2.0/
In addition, the schemas are available at the following URIs:
Appendix C. NISO STS Resources
NISO STS is a tag set written to describe standards documents for national, regional,
international, and organization-developed standards. The JATS, BITS, and NISO STS
vocabularies are supported by a wealth of documentation, samples, tutorial material,
tools, and more. This appendix, while not complete, describes some of the basic resources
available to organizations considering or using NISO STS for standards or migrating
from ISO STS to NISO STS.
C.1 ANSI/NISO STS Standard
https://www.niso.org/standards/z39.102-2017
The NISO STS Standard (ANSI/NISO Z39.102-2017 STS (Version 1.0))
describes all the elements and attributes that make up the Suite and the three base
JATS tag sets. The fact of the standard is critically important to NISO STS adoption
and use. However,
NISO STS is a complex application and will be challenging to implement without additional
documentation beyond what is in the standard
. The NISO STS Standard is not a document to be read to learn how to use or customize
NISO STS. That information resides in the non-normative supporting materials such
as the
Tag Library documentation and the DTDs and Schemas.
C.2 Web Page for NISO Standards Tag Suite Supporting Materials
http://www.niso-sts.org/
The most important resources for learning, implementing, or customizing NISO STS Interchange
or Extended Tag Sets are the non-normative documentation:
-
NISO STS Tag Library Documentation
-
DTDs and schemas (DTD, XSD, RNG)
-
Sample NISO-STS-tagged documents
C.3 NISO STS Tag Libraries
http://www.niso-sts.org/TagLibrary/niso-sts-TL-1-0-html/index.html
The Tag Library Documentation (in HTML and linked) for NISO STS is available online
for reading and reference. The Tag Library provides:
-
descriptions of each element and attribute (identical to those in the standard),
-
remarks on many of the elements and attributes (intended to help users distinguish
between similar structures and use the structures correctly),
-
examples showing most of the NISO STS structures tagged in context,
-
explanatory chapters (describing, for example, how to use the tag library, the top-level
document elements named in the standard, hot to select the appropriate NISO STS Tag
Set, and NISO STS common tagging practices such as options for encoding Terms and
Definitions sections),
-
an index, to help users navigate this complex material
-
visual hierarchy diagrams (which provide graphical illustrations of the structure
of the more complex elements in NISO STS),
-
a context table (showing where each element may be used), and
-
examples of a standards tagged using NISO STS
C.4 DTDS and schemas
http://www.niso-sts.org/DTDs-XSDs-RNGs.html
The schemas associated with each of the four NISO STS Tag Sets are available. For
user convenience, both of the NISO STS tag sets (Interchange and Extended) are provided
in DTD, XSD, and RNG formats. And, in all of these formats, each schema is provided
with MathML2 and MathML3 versions. The models represented by the DTD, XSD, and RNG
forms are logically identical, and interchange is unaffected by the form chosen. Users
are encouraged to use the form of constraint language that works best with their chosen
tools.
C.5 Sample NISO-STS-tagged Documents
http://niso-sts.org/Samples.html
NISO STS is an enabling tag suite, not an enforcing one. This means that while it
provides the means to tag a lot of detail in the narrative body, the references, and
the metadata about the standards embedded in the XML file, virtually none of this
tagging is required.
In addition, it is often the case that there may be more than one way to tag some
parts of standards documents. Selecting one over the other may be a matter of which
is most convenient in the creator's production environment or even which they are
in the habit of using.
Therefore the tagged samples provided show how one organization tagged one document. They are intended to be illustrative and helpful,
but are certainly not the only possible way to tag any of these documents in NISO
STS. Examples given include the following.
-
Example of Adoption —
Illustrating the adoption mechanism of NISO STS. The standard tagged was published
by ISO as ISO 13849-1, and then adopted by CEN as EN ISO 13849-1 (with the addition
of several annexes), and then the CEN adoption was adopted by DIN as DIN EN ISO 13849-1
(with the addition of another annex). This document was originally tagged to ISO STS
and that many of the new features provided in NISO STS (with the obvious exception
of the adoption tagging) have not been added. This illustrates that documents valid
to ISO STS are all also valid to NISO STS.
-
Example of a Minimally-tagged Standard —
An example of a minimally tagged NISO STS document. All of the content of RFC 8142
is present, and it has been tagged richly enough to support interchange and simple
formatting. This example shows that NISO STS also supports relatively light tagging.
C.6 niso-sts-list Discussion List
http://www.mulberrytech.com/STS/NISO-STS/index.html
An open forum for discussion concerning:
-
the NISO Standards Tag Suite itself;
-
NISO STS applications, implementations, and customizations; and
-
NISO STS user questions.
The niso-sts-list is open to everyone: users and developers, experts and novices alike.
There is no restriction to what may be posted on niso-sts-list provided it is directly
related to NISO STS.
C.7 STS4i (Standards Tag Suite XML for interoperability)
https://github.com/sts4i
A user and community-driven effort to provide tools to work with NISO STS and document
best practice recommendations for creating and processing STS XML documents. Although
fairly new, this site includes links to:
Appendix D. The JATS, BITS, and STS Begats
Once upon a time (1985-86) SGML was developed and a model for books and articles was
needed. Starting with the very first ever public DTD, many models were developed to
fill this void, and all had virtues and followers. The NLM DTD
was developed for PubMed Central and was widely adopted. In 2001, a study was funded
by Harvard/Mellon/Yale to select the best journal tag set, to see if there could
be one journal DTD to rule them all, but none was anointed. So NLM donated the NLM
DTD to be the basis of a new journal article tag set; NLM and The Mellon Foundation
funded the development of that tag set; NLM, Mulberry Technologies, and Inera did
the analysis; and Mulberry wrote the first JATS DTD.
-
The NLM DTD begat JATS
-
JATS begat BITS
-
JATS begat ISO STS
-
ISO STS begat NISO STS
The Origin Story for JATS
The first SGML tag set ever written (the Association of American Publishers DTD) was
for journal articles. Over time, the AAP journal article DTD morphed into ISO 12083.
Journal publishers were early adopter of SGML, then XML. Many used
AAP/ISO-12083, others hired consultants to write their DTDs or wrote their own.
The big players all wrote own tag set (as a DTD).
Aggregators, conversion shops, and technical services also wrote tag
sets. Libraries, archives, and small players wished for a standard tag set.
There were problems with this proliferation of journal article and journal metadata-only
tag sets.
-
The large number of tag sets necessitated numerous mine-to-yours conversions.
-
Hosters and aggregators pushed their own versions.
-
Many libraries panicked, how could they pick one?
And there was great frustration world-wide.
History of the NLM Tag Sets
Huge Collections of Journal Articles
NLM DTD Widely Adopted
-
Used to submit articles to PMC
-
Other archives and libraries adopted
-
Publisher services, conversion vendors, database spinners became familiar with NLM
DTD, then began to prefer, then require it
Birth of JATS
http://www.diglib.org/preserve/hadtdfs.pdf
In 2001, Harvard University Library, under a grant form the Mellon foundation, commissioned
the E-Journal Archive DTD Feasibility Study
to determine if it was feasible to write one domain-neutral tag set for all archived
journal article content. The report concluded it could be done, and set forth some
of the parameters for such as tag set.
Following that study, a meeting was held at NLM to determine whether a tag set should
be developed, as per the Harvard study. Starting from the NLM DTD, with funding by
NLM plus Harvard/Mellon, the charter was to:
-
Write a single tag set, with DTD grammar.
-
Preserve the intellectual content of XML/SGML journal articles
(but not the look and feel or brand of a journal).
-
Design the tag set to make it easy for publishers/archives to transform documents
from their proprietary XML or SGML to this standardized XML for interchange and archiving.
NLM DTD Became JATS
The new generic NLM-DTD was popular and widely used, but NLM owned the NLM DTD. Many
would-be users, particularly from non-US countries, needed/wanted an International
Standard.
The decision was made to run the standardization process under NISO, as JATS was under
NISO. NLM donated the NLM DTD 3.0 to NISO to become a Standard through the NISO committee
process and funded the JATS Secretariat. Over the course of the next few years, the
Tag Set was renamed to JATS, improved through extensive committee work, and became a NISO Standard (ANSI/NISO
Z39.96-2015 JATS: Journal Article Tag Suite) which has been:
-
very widely adopted for internal use by archives, publishers, libraries, and web-hosting
vendors, and
-
practically universally used for interchange of journal articles.
Origin Story for BITS
BITS grew from demand for JATS-compatible Book Model. JATS users, journal publishers,
also publish books. Archives and libraries also collect and process books. Since most
of these organizations were using JATS for their journal articles, they wanted to:
-
Use familiar (JATS) tools for their books,
-
Mix books and articles together in databases and presentation systems,
-
to use articles as book content (e.g., a chapter or a section within a chapter),
-
Manage large books in multiple files
-
Publish collections of books (e.g., series) and
-
Use the same vendors for their books and journals.
BITS was developed to meet that need. NLM sponsored an initial meeting at the NLM
Library with JATS publishers, archives, libraries, and vendors from all over the world.
At that meeting, NLM agreed to sponsor a committee-based process and the volunteer
committee was chosen. The Working Group started by developing requirements and scope.
The JATS Archiving (Green, the loosest model) was chosen as a starter set. The Working
Group built new book, book-part, and collection metadata models, using JATS as much
as possible and designing new metadata for books. Mulberry Technologies acted as the
XML hands of the group and built the first BITS DTD.
Origin Story for NISO STS
ISO STS
International Organization for Standardization (ISO) was in the process of improving
their internal standards production processes. They wanted to reduce the cost to produce
and publish standards, but they particularly wanted to decrease the time it took to
publish standards.
At that time, the ISO standards publishing process was:
-
Based on word-processor files (typically Microsoft Word)
-
Slow, and error filled
-
Publication took months/years after standard was completed
-
Electronic versions (other than PDF) were expensive and prone to errors.
ISO studied many XML-based options considered DocBook, TEI, DITA, and JATS. They performed
a TEI-based prototype. Following that prototype, and after more consideration, they
selected JATS as the base for their XML. They chose JATS Publishing (Blue) as their
base model, and built a superset by adding metadata and text structures specific to
national, regional, and international standards. By the end of 2011, ISO had revamped
its publishing systems and together with Mulberry Technologies, Inc., developed a
derivative of JATS to be used for internal ISO standards publishing: the ISO STS (ISO
Standard Tag Set).
In building a superset DTD from JATS, ISO:
-
Replaced journal metadata with standards-descriptions,
-
Added local/regional/national tracking,
-
Kept the JATS narrative body structure intact, with just a few additions,
-
Added standards-specific structures such as Notes, Examples, and the TBX term and
definition model, and
-
Did not remove anything from JATS. (No element, attribute, structures in the narrative body were removed.)
The original ISO STS DTD was considered to be an ISO-internal tool. It fully modeled
structure in use in ISO processing and did not take other types of standards into
consideration. There was no consensus-based process in building ISO STS, ISO with
Mulberry Technologies and ISO vendors developed what their internal processes needed.
The new ISO DTD provided basic metadata for other users (ISO partners):
ISO also developed web-based viewing and distribution and implemented business rules
using Schematron schemas. This DTD has been in full production since, with few changes.
The DTD and documentation were made openly available at http://www.iso.org/schema/isosts/ and their open use was encouraged. This DTD and much of the tool structure such as
the Schematron rules were made public, but not as a standard.
NISO STS
By 2015, several XML models were in use at different organizations to tag standards
and standards-type information, including multiple models based on JATS and a number
of other independently developed XML models. This proliferation of non-standardized
XML models for Standards made interoperability between organizations difficult, increased
development costs, and required custom tools.
It was agreed that it would be beneficial to all stakeholders to move ISO STS toward
standardization and create an official relationship with JATS. The two standards would
then remain coupled and an XML solution for standards could be more easily adopted.
It was considered that this initiative would result in greater interoperability and
create a foundation for standards utility development, which in turn would aid stakeholders
and end users and improve the overall future of standards publishing. So ISO agreed
to donate ISO STS and work with the NISO committees to build a new tag set for standards.
The NISO STS work item was approved by the NISO Content and Collections Management
Topic Committee on June 26, 2015 and by NISO Voting Members on July 31, 2015. Two
NISO committees, a steering committee and a technical committee, with representation
from many countries, a number of national and international standards bodies and SDOs
(Standards Development Organizations) worked to develop NISO STS, which became a NISO
standard in 2017.
NISO STS includes four implementations of the suite, called “Tag Set” ’ The Interchanged
Tag Sets (one Tag Set for MathML 2.0 and one for MathML 3.0) and the Extended Tag
Sets (one Tag Set for MathML 2.0 and one for MathML 3.0). These tag sets are built
from the elements and attributes defined in the Suite and are intended to provide
models for standards publishing and interoperability. The Extended Tag Sets differ
from the Interchange Tag Sets in allowing OASIS Exchange (CALS) tables in addition
to XHTML tables.
NISO STS is a fully backwards-compatible superset of ISO STS 1.1. That means that
any document that is valid to ISO STS 1.1 will be valid to NISO STS 1.0, by changing
only the document type declaration (or other schema identification mechanism) and
the @dtd-version
attribute on the top level element (<standard>
). (Note: This assumes the use of one of the DTDs, XSDs, or RNGs that use the 2.0
version of MathML, since MathML 2.0 and MathML 3.0 are not fully backward compatible.)
The JATS Family Timeline (as of July 2018)
Table III
2003 |
NLM DTD made public |
2008 |
Last NLM DTD 3.0 |
2012 |
JATS 1.0 released (backward compatible with NLM 3.0) |
2012 |
BITS released |
2012 |
ISO STS 1.0 (current is ISO STS 1.1) |
2015 |
JATS 1.1 (current is ISO STS 1.1) |
2016 |
BITS 2.0 (current) |
2017 |
JATS 1.2d1 (Committee Draft) |
2017 |
NISO STS 1.0 (current) |
2018 |
JATS 1.2d2 (current Committee Draft) |