Home | Public Area

Comment #00261 - XML Catalog Files - z39.96-2012.pdf

Comment 261
Addressed (Unresolved)
ANSI/NISO Z39.96-2012, JATS: Journal Article Tag Suite (version 1.0) (Revision 0)
Comment Submitted by
Jeffrey Beck
2013-05-13 09:52:48
This comment is submitted by Jeff Beck based on a discussion on the JATS List between Alf Eaton <eaton.alf@gmail.com>, Wendell Piez <wapiez@wendellpiez.com>, and Christopher Maloney <maloneyc@ncbi.nlm.nih.gov>.

Before using the JATS DTD files from <ftp://ftp.ncbi.nlm.nih.gov/pub/jats/publishing/1.0/jats-publishing-dtd-1.0.zip>, I have to edit the catalog-jats-v1.xml file and empty all the xml:base attributes, which are originally set as either



Would it be possible to publish the DTDs with empty xml:base attributes?

[Chris Maloney]: I agree with Alf that the xml:base attributes in the catalog files are a problem. I think it would be better that they be removed, that the current "test" catalogs be distributed as the official ones. Without the xml:base attributes, if someone is working with one particular flavor of JATS, all that person has to do is point their tool to the catalog file, and everything works out-of-the-box, which is as it should be.

Unfortunately there is another problem with the catalog files, and that is that each one lists all of the resources in the entire JATS suite, rather than just those resources in the one flavor that that catalog file goes with. In other words, there is only one master catalog file, named catalog-jats-v1.xml, a copy of which is distributed with each JATS flavor. So, for example, the catalog file in the archiving distribution includes an entry for the publishing-flavor resource "JATS-journalpubcustom-mixes1.ent".

What this means is that if a person has two or more flavors of JATS on her system, in different directories, then these catalog files will not work without the xml:base attributes. But note, of course, that she would still need to go in and adjust the values of these attributes to match her particular system setup. So I don't think this is a good reason for keeping the xml:base attributes.

The reason for doing it this way, from what I can tell, is to support the use-case where someone unzips all of the DTDs into one directory. The filenames of all of the .dtd and .ent files are unique, but the catalog filenames are not, so if you unzip two or more DTDs into one directory, you end up with only one catalog file. Note that in this use case, it would also be better if the catalog files did not have xml:base attributes.

I've recommended before that the catalog files should be fixed by removing the xml:base attributes and removing any resources that don't correspond to that particular flavor of JATS. This would allow most people to use the catalog files out-of-the-box, and would support the use cases:

* downloading and using only one flavor of JATS
* downloading several flavors, each into their own directory.

If the use case "download several flavors all into one directory" is really important, I think there is a better way to support it, too: rename the flavor-specific catalog files to catalog-archiving.xml, catalog-publishing.xml, etc., and then create a catalog-master.xml (or just catalog.xml), that is the same in all of the directories, that looks like this:

<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog" prefer='public'>
<nextCatalog catalog="catalog-archiving.xml"/>
<nextCatalog catalog="catalog-publishing.xml"/>
<nextCatalog catalog="catalog-articleauthoring.xml"/>
Submitter Proposed Solution
Jeffrey Beck
2013-11-27 10:57:20

Thank you for your comment. The JATS Standing Committe has addressed your request. Non-normative supporting materials including schemas with these additions in place should be available soon.

The Standing Committee's recommendation is:

• Exactly two OASIS XML Catalog Specification-cased catalog files will continue to be made available with each
new JATS release. These files will be renamed to be (where “n” below represents the current version number):
     • catalog-jats-vn-with-base; and
     • catalog-jats-vn-no-base

• The @xml:base provided in the catalog that contains @xml:base will be made even more obviously a fake
exemplar than it is now, using something similar to “replace-with -a-real-base”.

• Comments within the catalog files will be expanded to make it obvious which files are used only by a single Tag
Set, such as Archiving, and which are used (or potentially used) in all the Tag Sets. Make it clear that if you are
using only one Tag Set, you may delete the files which are specific to the other Tag Sets. Remind users that
unused files in an XML catalog do not cause problems.