- From: Klaus Bosse <klaus.bosse@ngi.de>
- Date: Mon, 1 Apr 2002 14:48:10 +0200
- To: "W3C MathML" <www-math@w3.org>, "Michael Bowen" <fizzbowen@mindspring.com>
- Cc: "Waltraud Schweikhardt \(Uni\)" <schweikh@informatik.uni-stuttgart.de>
Michael Bowen wrote > The MathML 2.0 recommendation [http://www.w3.org/TR/MathML2/chapter7.html] > makes the following suggestion with regard to namespace prefixing. It would > be cool (for document validation purposes) if the XHTML 1.1 plus MathML 2.0 > DTD made allowance for this particular flavor of namespace prefixing (in > particular, the validator currently chokes when it encounters an xmlns:m > attribute inside the beginning of an <html> or <body> element). > > Is there any chance that the DTD could change (or at least spawn a mutated > "transitional" version, as was done for HTML 4.0 to allow temporary use of > deprecated elements) that would make validation possible for documents that > follow this particular recommendation? > > ===== <excerpt-from-recommendation> ===== > > During the transitional period, in which some software may not be fully > namespace-aware, a few conventional practices will ease compatibility > problems: > When using namespace prefixes with MathML markup, use m: as a conventional > prefix for the MathML namespace. Using an explicit prefix is probably safer > for compatibility in current user agents. > > <snip> > > Examples. > <body> > ... > <m:math xmlns:m="http://www.w3.org/1998/Math/MathML"> > <m:mrow>...<m:mrow> > </m:math> > ... > </body> > > ===== </excerpt-from-recommendation> ===== > > --MB > See MathML 2.0 recommendation Appendix A.3. You can change the DOCTYPE-declaration in the source file to a) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "./dtd/xhtml-math11-f.dtd"[ <!ENTITY % MATHML.prefixed "INCLUDE" > <!ENTITY % MATHML.prefix "Michael" > ]> and you can say <Michael:math xmlns:Michael="http://www.w3.org/1998/Math/MathML"> or b) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "./dtd/xhtml-math11-f.dtd"[ <!ENTITY % MATHML.prefixed "INCLUDE" > ]> and you can say <m:math xmlns:m="http://www.w3.org/1998/Math/MathML"> Example: <?xml version="1.0"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" "./dtd/xhtml-math11-f.dtd"[ <!ENTITY % MATHML.prefixed "INCLUDE" > <!ENTITY % MATHML.prefix "Michael" > ]> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> PrefixTest.xml </title> </head> <body> <p> <Michael:math> <Michael:mfrac> <Michael:mn> 1 </Michael:mn> <Michael:mn> 2 </Michael:mn> </Michael:mfrac> </Michael:math> </p> </body> </html> You even then don't have to write the namespace declaration explicit in the math- or html-element because this is done implicit by the DTD . Have a nice day KB
Received on Monday, 1 April 2002 07:48:55 UTC