- From: Greg Martel <gregm@wolfram.com>
- Date: Fri, 2 Aug 2002 14:12:12 -0500
- To: Robert Miner <RobertM@dessci.com>
- Cc: www-math@w3.org

IS there any way to serve an xml document with embedded MathMl in a format other than xhtml, especially if the xml document contains a link to an xsl stylesheet which a) causes the browser to reformat its content as xhtml b) includes mathml.xsl via an xsl:include or xsl:import instruction and get the MathMl to display properly? If there is a way, I have not had success in finding it. >Hi. > >> > > 3. The document must not have a "<!DOCTYPE" declaration. >> > >> > It can reference a DOCTYPE but mozilla won't read it. >> >> I thought I saw IE get upset when DOCTYPE was present. Was that >> an anomaly? > >IE chokes on the *real* DTD which declares the plane 1 entities from >Unicode 3.2, as MathML 2 is supposed to. However David C. prepared a >modified version of the *combined* XTHML+MathML dtd in which these >entities are declared to be in the private usea area of the BMP. That >let's IE read the DTD. > >The point is this: if you want a single file that works in both >NS7/IE6+MathPlayer, say, then you need the following: > >0) a proper XHTML + MathML document with a >1) DOCTYPE (to the modified DTD IE6 can read), >2) MathML namespace indicated via a prefix, >3) MathPlayer object tag, >4) Processing instruction binding MathPlayer to the MathML namespace > prefix > >The killer is that this single file has to be served as XML to NS7 and >HTML to IE6, which requires server-side trickery or something. > >So, the better alternative is to use David's stylesheet which does the >MIME type switching for you client-side. And, since it can write out >the other declarations as well, you don't have to put in the awkward bits >that have to be ignored by one browser or the other when preparing a >single, common file. So, going this route, you need > >0) a proper XHTML + MathML document with >1) no DOCTYPE (which means you can't use entity names) >2) MathML namespace indicated whatever way you find most convenient >3) the stylesheet processing instruction (and stylesheet, of course) > >Anyway, that's my summary of the situation. And, just to finish it >off, I include minimal sample docs below, showing each method: > > >---------------------------------------------------------------------- >Document which works in both IE6 and NS7 if served with the >appropriate MIME type for each >---------------------------------------------------------------------- > ><?xml version="1.0"?> ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN" > "http://www.w3.org/Math/DTD/xhtml-math11-f.dtd"> > ><html xmlns="http://www.w3.org/1999/xhtml" >xmlns:m="http://www.w3.org/1998/Math/MathML"> > <head> > <title>An xhtml+dtd example</title> > <OBJECT ID="MathPlayer" >CLASSID="clsid:32F66A20-7614-11D4-BD11-00104BD3F987"></OBJECT> > <?IMPORT NAMESPACE="m" IMPLEMENTATION="#MathPlayer"?> > </head> > <body> > <h2>An xhtml+dtd example</h2> > <m:math> > ><m:mi>y</m:mi><m:mo>≈</m:mo><m:mfrac><m:mi>x</m:mi><m:mn>3</m:mn></m:mfrac> > </m:math> > </body> ></html> > > >---------------------------------------------------------------------- >Simpler Document which works in both IE6 and NS7 when used with >David Carlisle's stylesheet >---------------------------------------------------------------------- > > ><?xml version="1.0"?> ><?xml-stylesheet type="text/xsl" href="pmathml.xsl"?> ><html xmlns="http://www.w3.org/1999/xhtml"> > <head> > <title>Universal Math Style Sheet example (no DTD)</title> > </head> > <body> > <h2>Universal Math Style Sheet example (no DTD)</h2> > <math xmlns="http://www.w3.org/1998/Math/MathML"> > <mi>y</mi><mo>≈</mo><mfrac><mi>x</mi><mn>3</mn></mfrac> > </math> > </body> ></html> > > >--Robert > >------------------------------------------------------------------ >Robert Miner RobertM@dessci.com >MathML 2.0 Specification Co-editor 651-223-2883 >Design Science, Inc. "How Science Communicates" www.dessci.com >------------------------------------------------------------------ -- Thanks, gregm

Received on Friday, 2 August 2002 15:14:19 UTC