Re: Adding unicode mappings to any document (including MathML)

Note there is some font and font-encoding information in unicode.xml
which is used as the source for most of the character information
in MathML, you may be able to generate information from there.

      <xsl:variable name = "u" select = 
  "msxsl:node-set($unicode)[@value=$y]"/>

  At the moment it makes use of the microsoft msxsl:node-set(...) function. 
  This is another thing I am looking into generalizing (adding XSLT2.0 
  support?)

It looks to me as if the use-of node-set is in error (as well as making
it non portable) node-set is for converting result-tree-fragments to
node-sets but your unicode variable is defined by
  <xsl:variable name = "unicode" select = "...
so is already a node set. So you just want
 

      <xsl:variable name = "u" select = $unicode[@value=$y]"/>


It would be simpler to have just defined your table  to be an xml
file included with document() I think, rather than as a collection of
xsl files that contain no xsl instructions?


Also in general you can't use characters to denote font positions, as in

 <unicode:entry ver = "3.2" value = "&#9115;" font = 
"Symbol">æ</unicode:entry> <!-- left  paren upper hook -->

as many mathematical fonts have glyphs in character positions which are
not legal in XML (in the range 0-32 for example). So you need to record
the position in the font encoding as an integer rather than as a
character with that unicode number. While the pmathmlcss also plays
this game of accessing glyphs from the symbol font by abusing the
latin1 encoding, it only works if the encoding of the symbol font is
incorrectly registered to the operating system or if the browser
incorectly ignores the specified encoding.
<font face="symbol">æ</font>
may give a bracket part on some browsers, but others will, more
correctly, just give a missing glyph marker as the symbol font does not
have an ae ligature glyph.




David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star Internet. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

Received on Friday, 14 March 2003 08:56:39 UTC