OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

docbook-apps message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]

Subject: Catalog setup issues in using MathML entity sets (was Re: Should xmllint successfully validate docbook 5 containing XIncludes?)

On 10/31/2013 09:36 AM, Bob Stayton wrote:
> Hi Jon,
> I think Carlos meant to use the official MathML namespace instead of a DTD reference:
>   xmlns:mathml="http://www.w3.org/1998/Math/MathML";
> It seems loading the MathML DTD confused Jing. The DocBook 5 RelaxNG
> schema permits elements in the MathML namespace, but it does not try to
> validate them. But it seems your problem is recognizing the named
> character entities in the MathML DTD. If Jing does not like loading the
> entire MathML DTD as you tried, it would probably accept loading just
> the entity declarations from the DTD. You could try copying the MathML
> dtd to another file and stripping out all *but* the entity declarations.
> Those are conveniently located at the end of the DTD file. Then
> reference that file in the parameter entity in the DOCTYPE to load those
> entities.
> Then Jing should validate against the DocBook 5 RNG schema. If you
> also want to validate the embedded MathML elements, you will need a
> validator compatible with NVDL such as oNVDL (
> http://www.oxygenxml.com/onvdl.html ).

    Thanks very much Bob, and Carlos. This is very helpful. If I load
just the four entity declarations I require, jing validates my DB5
source without hanging.

    However, I then ran into an issue with the catalog setup. My
system's XML catalog (which includes whatever the Debian docbook and
mathml packages I have installed put there) contains the identifiers for
mathml2.dtd. Loading that also pulls in the co-resident local copies of
the entity sets I need from


    But I'm no longer loading mathml2.dtd due to the aforementioned
problems with jing, and neither the public nor system identifiers
corresponding to the specific entity sets I require are in my XML
catalog. So when I try to include them individually in my documents,
with a doctype prolog such as

<!DOCTYPE refentry [
    <!ENTITY % isoamsc PUBLIC
      "-//W3C//ENTITIES Added Math Symbols: Delimiters//EN//XML"

they aren't found (unless I allow the processor to fetch them from the
net, which is of course very slow).

    Short of tweaking the system XML catalog setup, which is not
something I can expect all of the people who will be using my documents
to understand or want to do, distributing copies of the entity sets
bundled with my Docbook source seems like the simplest way forward.

    Would you agree, or am I missing some straightforward way (not
requiring root access, not OS-specific) to make XML lookups for these
specific entity sets check in the same place as mathml2.dtd, even
though their identifiers aren't in the system XML catalog?

    Jon Leech

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]