W3C home > Mailing lists > Public > www-math@w3.org > October 2005

building accessible math websites -- need comments

From: Alexey Beshenov <beshenov@bk.ru>
Date: Thu, 6 Oct 2005 17:54:27 +0400
Message-ID: <1044243057.20051006175427@bk.ru>
To: www-math@w3.org, hwg-xml@hwg.org

Hello!

I  am  working  under  the  speech  for local technical university on
building accessible math websites. Paper is written in Russian, but I
can  sum  the  main  ideas  in English. Can anyone value the heads of
speech?..

The MathML side of work is explained below.

==========[citation]==========

MathML  is  the  XML-based  markup language, so, generally processing
MathML   connected   to  XML-parsing.  Internal  processing  requires
parsing,  using  plugins  not.  For gecko's we need to send documents
with  Content-type  "application/xml", "application/xhtml+xml" or the
same  (RFC2376  XML  Media  Types).  But  not every brouser have good
XML-parser.  After  the  some tests, we found that there are too many
bugs  in  MSIE  parser  to use it for rendering XML (it can't process
xhtml-math11-f.dtd,   for  example).  That's  why  we  need  to  send
"text/html".  In  this  case,  IE  plugin  is  only  Active-X object,
connected via "object" XHTML element.

The  main  IE  plugins  are  MathPlayer  and  techexplorer Hypermedia
Browser. And we need to use special optimisation for each program.

The  better  solution  is  storing  simple  MathML  on the server and
converting  it  to "MML for techexplorer" or "MML for MathPlayer" via
content managing system.

* Testing gecko's

After the testing geckos, we found some special items.

+   Gecko   requires  special  fonts.  We  compiled  special  package
containing  free  TrueType's  FreeSerif,  FreeSans,  CMEX10,  CMMI10,
CMR10,  CMSY10,  Math1,  Math2,  Math4,  Math5. It is all fonts users
need.

+  Gecko  can  wordwrap  math,  if math is inline. So, we can specify
"white-space:   nowrap"   in   the   style-sheet,  because  classical
math-notation  using  wordwrap on operators (after the "+", "-", "=",
for example). So, we don't need simple text wordwrap.

+  Netscape  7.0  can't  process  math  correctly,  if  we  are using
"content"  property  in  CSS. In this case, N7 returns marks "invalid
markup"  instead  of  valid  formulas.  If  it is possible, we should
remove all "content"'s from CSS, if "User-agent: Netscape 7.0".

+ The "text-indent" property for paragraph applies to mtd's in inline
math's. If we don't need it, we can use "math { text-indent: 0 }".

* Using MathPlayer and techexplorer

To optimize pages for MP, we should use code like this:

<?xml version="1.0" encoding="UTF-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:m="http://www.w3.org/1998/Math/MathML"
xmlns:pref="http://www.w3.org/2002/Math/preference" pref:renderer="mathplayer" xml:lang="ru">
<head>[...]</head>
<body>
<object id="MathPlayer" classid="clsid:32F66A20-7614-11D4-BD11-00104BD3F987" title="MathPlayer"></object>
<?import namespace="m" implementation="#MathPlayer"?>
<m:math xmlns="http://www.w3.org/1998/Math/MathML">
[...]
</m:math>
</body>
</html>

For   techexplorer   we  should  use  'pref:renderer="techexplorer"',
'<object                                              id="mmlFactory"
classid="clsid:0E76D59A-C088-11D4-9920-002035EFB1A4"
title="mmlFactory">'    and    'implementation="#mmlFactory"'.   Some
versions  of TE can result non-stable brouser working, if we use "m:"
namespace.  We  don't  know,  why  it  is so, but after some tests we
changed "m:" to "mml:" and everything is OK.

* Content managing system

CMS working on the server side and analyzing incoming HTTP User-agent
headers. We found that MSIE with MP have special mark 'mathplayer' in
the   User-agent  string.  And  TE  does  not  signalize  about  it's
installation  in  "User-agent". So, the solution is to optimize pages
for  MP  if  User-agent  contains 'mathplayer' and optimize for TE if
not.

For  MSIE we should send everything as "text/plain". For others -- as
"application/xml" (xhtml+xml).

* Options

CMS  contains  special  feautures  to set user preferences. Users can
change  the  default plugin optimization (1), content-type (2). Also,
we  found  that  many  UA's  (old  geckos, for example) can't process
invisible  symbols  like a &#x02061; or &#x02062;. So, options allows
users  to  switch off sending documents with invisible symbols. Then,
CMS  removing  symols  and  elements  containing  symbols  before the
sending  math article. Invisible symbols are necessary, but users who
reading  MathML  as text without aural-brousers can freely read texts
without invisible symbols.

All user-preferences are storing in cookies.

=========[/citation]==========

Contact me via e-mail beshenov@bk.ru.

With Best Regards,

Alexey.
Received on Wednesday, 12 October 2005 10:54:17 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Saturday, 20 February 2010 06:12:58 GMT