Skip to content

DTD Versions

Wendell Piez edited this page Mar 2, 2016 · 8 revisions

Supported DTD versions have the following FPIs:

  • -//NLM//DTD JATS (Z39.96) Journal Publishing DTD with MathML3 v1.1 20151215//EN (1.1 Blue)
  • -//NLM//DTD JATS (Z39.96) Journal Publishing DTD with OASIS Tables with MathML3 v1.1 20151215//EN (1.1 Blue with both table types)
  • -//NLM//DTD JATS (Z39.96) Article Authoring DTD with MathML3 v1.1 20151215//EN ('1.1 Orange' or 'Authoring')
  • -//NLM//DTD BITS Book Interchange DTD v2.0 20151225//EN ('2.0 Book')
  • -//NLM//DTD BITS Book Interchange DTD with OASIS and XHTML Tables v2.0 20151225//EN ('2.0 Book' with both table types)

XML documents with DOCTYPE declarations that include these Formal Public Identifiers will work "seamlessly" in JATSKit. (This does not mean that all tagging for anything will be supported, only that things should "just work" without further configuration.)

Additionally, there are templates to create three of these, the versions with OASIS tables (which are supported in the JATSKit stylesheets).

This list of supported document types excludes many common varieties of JATS and NLM, which nonetheless may work well with JATSKit. Notably, the MathML2 variants of the DTDs, as well as the "Green" DTDs, fall into this category, as does any older variant and many or most adaptatations of earlier NLM models. Fortunately the JATSKit is easy to extend to accommodate these, as long as you have copies of the DTD files along with a working catalog file that can resolve references to them.

Extending the JATSKit for other DTDs

To support "NLM Green" (the 'Archiving DTD'), other JATS 1.1, JATS 1.0, or older NLM variants including local variants ...

oXygen will associate the JATSKit framework with any document whose FPI matches one of several patterns given in the framework. If your documents do not conform to one of the known types, you have a choice:

  • Upgrade your document to a known type. (This is often a good idea but is not always possible or practical if there are other dependencies.)
  • Retrofit JATSKit to support your DTD. (See oXygen documentation.) In particular, the framework Extend option is appealing since it can simply acquire logic and components from the base framework without forking it; however making and modifying a local copy also works. In either an extension or a copy, you can then amend and supplement the framework's CSS and XSLT, to support local requirements whatever they happen to be.

Before binding it into the framework, test your catalog file externally (for example, by trying it in an oXygen project) to ensure that it works outside the framework.

Note that when you do this, you should also consider extending CSS and/or XSLT to handle elements and usages in your data that are not (and cannot be) provided in the general-use "80%" of functionalities provided by the framework. Most likely, any local project will need eventually to do this anyway, but if you are extending to cover new (and old) DTDs you almost certainly fall into this category.

Clone this wiki locally