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 http://www.w3.org/TR/xml-entity-names/#sets 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" "http://www.w3.org/2003/entities/2007/isoamsc.ent" > ]> 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 --------------------------------------------------------------------- To unsubscribe, e-mail: docbook-apps-unsubscr...@lists.oasis-open.org For additional commands, e-mail: docbook-apps-h...@lists.oasis-open.org