Re: [jats-list] JATS v1.1 request: Support for MathML 3.x

Subject: Re: [jats-list] JATS v1.1 request: Support for MathML 3.x
From: Debbie Lapeyre <dalapeyre@xxxxxxxxxxxxxxxx>
Date: Wed, 19 Dec 2012 13:41:52 -0500
Implementing MathML 3

If you are adding MathML 3.0 to the XSD Schema version of JATS,
just replace the modules and all is golden.

If you are using a DTD version of JATS, things are SLIGHTLY
more complicated.

1) You replace all the MathML 2.0 modules with MathML 3.0
   modules

2) You replace all calls to MathML modules with the new names in
   the catalog and modules files.

3) However, there is then a glitch. The problem is the way DTDs
handle parameter entities; tThe first to be encountered is the
one to take effect. JATS customization relies on this
mechanism, but in this instance it bites us.

MathML 2 had no parameter entity NAMES in common with JATS.
MathML 3 has one, it uses %product.class; - and so does JATS,
as defined in JATS-default-classes.ent.

The eaisest way around this (and the one approved by two
members of the MathML Workign Group) is to hack the MathML
directly. After all, parameter entities have no real impact
on the tag set.

I changed the %product.class; name in the MathML 3.0 DTD to
%mml-product.class;.

There is a request in that JATS consider modifying its
PE names to remove this problem. It is a silent failure
problem with no parsing warning, since this is how
parameter entities are intended to function.

--Debbie


-- ====================================================================== Deborah Aleyne Lapeyre mailto:dalapeyre@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9633 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in XML, XSLT, & SGML ======================================================================

Current Thread