[liblouis-liblouisxml] Re: UEB unified english braille support;

  • From: "John J. Boyer" <john.boyer@xxxxxxxxxxxxxxxxx>
  • To: liblouis-liblouisxml@xxxxxxxxxxxxx
  • Date: Thu, 14 Apr 2016 10:51:01 -0500

Hi John,

I think that using the LEAN character set is a very good idea.

John

On Thu, Apr 14, 2016 at 03:31:03PM +0000, John Gardner wrote:

I do not believe that it is necessary or desirable to include all the MathML 
formatting attributes into this discussion. In LEAN Math I have included only 
attributes that are semantically important - things like color, typeface, and 
size of characters. It is really irrelevant in a one dimensional 
representation that table cells are aligned, that padding is included for 
visual effects, etc. A good application that displays the math equation 
should add those attributes. For example, MathType makes beautiful visual 
math from MathML that excludes all such formatting parameters. 

I suggest that this project adopt the LEAN characters I developed for LEAN 
Math. I am happy to share my tables and the TTF fonts that were developed for 
them. We spend much too much time re-inventing wheels, and there is no reason 
that occurs to me for us to reinvent this one. The LEAN set uses standard 
Unicode for symbols where possible so it needs only to define things like the 
three fraction indicators, etc. I did create a set of math (i.e. italic) 
characters because the italic characters of Unicode are on the second sheet 
and are currently not read correctly by any screen reader. The Unicode code 
space is not used by any math application as far as I know, so there should 
never be any contention on that score. I did not include special characters 
to support MathML mfenced, maction, mpadded, mphantom, menclose, merror, 
elements because those should either be ignored or translated using words or 
other elements. I also did not include the elements supporting long division 
and other 2D arithmetic structures. Otherwise I believe the LEAN set is 
sufficient to write any expression the presentation MathML can create.

John


-----Original Message-----
From: liblouis-liblouisxml-bounce@xxxxxxxxxxxxx 
[mailto:liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] On Behalf Of Michael ;
Whapples
Sent: Thursday, April 14, 2016 6:06 AM
To: liblouis-liblouisxml@xxxxxxxxxxxxx
Subject: [liblouis-liblouisxml] Re: UEB unified english braille support;

Also whilst doing that I will try and categorise it into common and 
advanced so if I need to I can assign the right things to the higher 
private use areas.

Michael Whapples

On 14/04/2016 13:55, Keith Creasy wrote:
Examples are good but we really should use the documentation on MathML 3 as 
a guide. We'll also probably need help from people who are expert at the 
various math codes. A first step might bee to review MathML 3 and identify 
which elements, attributes, and operators need to be addressed by LibLouis, 
the formatter, or perhaps neither.


Find the documentation at https://www.w3.org/Math/draft-spec/Overview.xml.

Keith


-----Original Message-----
From: liblouis-liblouisxml-bounce@xxxxxxxxxxxxx 
[mailto:liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] On Behalf Of Michael ;
Whapples
Sent: Thursday, April 14, 2016 8:43 AM
To: liblouis-liblouisxml@xxxxxxxxxxxxx
Subject: [liblouis-liblouisxml] Re: UEB unified english braille support;

That is a good point.

In a way it is difficult to deal with this without examples, but equally I 
would prefer not to just handle examples and then find we miss something.

For the examples you give. The different styles of fraction, not sure about 
UEB but in UK Braille I do not think there is any way to distinguish 
between those. Even if it were to be important, I guess it is just another 
character assignment, one for slash (/) which we could always just use the 
/ character, and one for horizontal line (vertically laid out fractions).

On the vertical alignment and spacing, I am not sure how this gets 
represented in Braille, but should it end up being vertical placement in 
Braille then we are going beyond what LibLouis does anyway and its really a 
job for our formatters.

The reason I feel this should work is that LibLouis can only take a string 
input along with a typeforms array, so unless we plan to modify LibLouis 
function calls it has to go in a string.

The only thing I also see as a possible issue based on what you said, if to 
support everything whether we run out of characters. In the
u+e000-u+f8ff range there are 6399, which on its own may be an issue.
However consider the other two private use areas and I think we have no 
issue (eg. from the u+f0000-u+ffffd area we get 65533 alone).

Considering the UCS2 restriction, I would therefore put the most common 
math in the u+e000-u+f8ff area with the advanced math characters in either 
of the other two.

The only other issue with number of characters is whether LibLouis needs 
other private use characters commonly available. If so it may be worth 
having some way to indicate start of a type (eg. math) so that these 
private use characters could be reused in different contexts. The other way 
to solve that one is to use typeforms to indicate the way these private use 
characters should be handled but I am not sure whether that is too good (I 
know we have kept running out of typeform bits).

Michael Whapples

On 14/04/2016 12:24, Keith Creasy wrote:
Keep in mind that we plan to do a lot of things that go above and beyond 
the current LibLouisUTDML support. MathML has such things as vertical 
alignment and spacing; and an attribute that indicate whether a fraction 
is expressed vertically (with a horizontal line to separate the numerator 
and denominator) or horizontal (using a slash. There may even be others 
that I'm not thinking of. We hope to be able to correctly translate and 
format even fairly complex MathML.


Keith


-----Original Message-----
From: liblouis-liblouisxml-bounce@xxxxxxxxxxxxx
[mailto:liblouis-liblouisxml-bounce@xxxxxxxxxxxxx] On Behalf Of
Michael Whapples
Sent: Thursday, April 14, 2016 7:08 AM
To: liblouis-liblouisxml@xxxxxxxxxxxxx
Subject: [liblouis-liblouisxml] Re: UEB unified english braille
support;

What I described whould not need to all happen at once. The common text 
format may initially only be used for UEB, but over time may be the other 
codes could be moved to it as well.

As an example take a fraction. In Nemeth.sem the third column is ^?,/^# 
and in ukmaths.sem the third column is \x0003,@456-34,\x0004.

My thought is that for the three parts of a fraction we may define the 
following private unicode characters:
* u+e002 Start fraction
* u+e003 over indicator.
* u+e004 end fraction

Then in the math.sem file the third column would be \xe002,\xe003,\xe004. 
The UEB tables from the start may be designed to work with these and then 
over time the nemeth table could be altered to stop looking for ^? and 
look for \xe002 instead. Likewise with the ukmaths.sem file.

Admittedly fractions may be a simple case and may be I will hit problems 
later on. I have not yet investigated UEB enough to be certain with UEB, 
but looking at the three maths codes' .sem files in LibLouisUTDML, this 
all looks very doable and not too complicated and I don't foresee issues 
with those.

My thought in doing this is that if there is a common text language for 
communicating maths to LibLouis then this could be used by any software 
wanting to do math translation, regardless of the source format. Under the 
current situation the software would need to do different stuff depending 
on the Braille code it wants out and seems like a lot of work.
As we are needing to do math translation without LibLouisUTDML already in 
APH, I feel the work in doing this common text format will be no more, 
possibly less, than doing the other options available.

Related to this, I am planning to use the private use area between
u+e000 and u+f8ff. My thought with this is that then it will be
available regardless of LibLouis being compiled with UCS2 or UCS4. Does 
anyone see an issue with this, might there be other private use standards 
we may want to use within this range?

Michael Whapples

On 14/04/2016 11:39, John J. Boyer wrote:
Hi Michael,

A common linear text for the different mathematical codes is
certainly possible. The Nemeth .sem file and liblouis tables were
developed first and were prodeucing very good results. I didn't want
to monkey with them. It was safer to take a fresh approach with
UKMaths. Keith says that UEB math can be handled by liblouis by adding it 
to the UEB tables.
Of course, the MathML has to be handled by something else.

I'm not sure that developing a single text string to replace the
existing .sem files is a good use of your time.

John

On Thu, Apr 14, 2016 at 10:34:08AM +0100, Michael Whapples wrote:
Thanks for that. It is always best to check if people previously hit
issues when trying to do something similar.

Having worked through the .sem files, I feel that at least for the
three already in LibLouis that a common text format could be created.
I am thinking of possibly using the private use unicode block.

Whilst it probably will be heavily influenced by the LibLouisUTDML
existing .sem files, the private use character assignments probably
will more relate to semantic meaning (eg. begin fraction, end
fraction, begin table cell,
etc) rather than just getting the correct Braille (I noticed a
number of things in the .sem files where the Braille was the same
but it meant something different). My thought being that the
LibLouis table can always translate the different characters into the 
same dot pattern.

My thought with this is that the processing of the MathML can be
done in one way regardless of the Braille code and the Braille code
is only determined by the LibLouis table used. In LibLouisUTDML
terms this would mean a single math.sem file and the liblouis tables
are what give you UEB, Nemeth, UK maths or Marburg.

The main risk I see is that in focusing on the four Braille codes I
mention above that if someone tries to add another math Braille code
then may be the text format will not quite be sufficient. Hopefully
in such a case it would be possible to add additional character
assignments to maintain the information needed and the four existing
codes can just ignore those additional characters. There is a risk
of a Braille code being laid out in a different way and so needing
different semantic action files. This I think is a risk I am
prepared to take, we could get stuck considering the problem too
much and not getting anything done and it might be questionable
whether for something differing so much whether a common text format 
could even be achieved.

Michael Whapples

On 14/04/2016 01:09, John J. Boyer wrote:
The reason the nemeth.sem and the ukmaths.sem files are so
diffieent is that i learned as i developed. By the time the UKMaths
was needed i had realized that it would be much better to use dot 
patterns.
There was never a question of a common linear text. UKMath required
a lot of additional code. It was much more difficult to handle than 
Nemeth.

John

On Wed, Apr 13, 2016 at 02:35:32PM +0100, Michael Whapples wrote:
As Keith mentioned APH are looking at UEB math in BrailleBlaster,
but this won't be through LibLouisUTDML.

Regarding LibLouisUTDML, I have some questions for John. I notice
that the Nemeth.sem file has some sort of escape sequences, based
on the Nemeth symbols. In contrast the UK Maths and Marburg files
seem to do a lot more by using the dot patterns. I know that the
Nemeth.sem file was developed first with the other two coming later 
and may be from other contributors.

However this raises the question why a common linear text format
was not used? Looking at the .sem files other than the third
columns these seems to basically be the same, which to me implies
what is passed to liblouis is structurally the same. What I am
trying to get at, was there a technical reason why a common linear
text format was not used for all three or is it more to do with
them being developed at different times and never quite getting to it.

Michael Whapples

On 13/04/2016 07:10, John J. Boyer wrote:
I don't know if anyone is working on UEB math. However, UKMaths
and Marburg maths are already supported. UEB maths should not be
a big problem.

John

On Wed, Apr 13, 2016 at 04:28:21AM +0100, tolga karatas wrote:
--
many thanks,

tolga
Dear Sir/madam;


I am a blind/visually impaired student studying a degree in
computing; I am using the focus 40 braille display;

I was wondering when UEB maths support is going to be available 
please?

Yours Faithfully;









Tolga Karatas
For a description of the software, to download it and links to
project pages go to http://liblouis.org
For a description of the software, to download it and links to
project pages go to http://liblouis.org
For a description of the software, to download it and links to
project pages go to http://liblouis.org
For a description of the software, to download it and links to project
pages go to http://liblouis.org For a description of the software, to
download it and links to project pages go to http://liblouis.org
For a description of the software, to download it and links to project 
pages go to http://liblouis.org
For a description of the software, to download it and links to
project pages go to http://liblouis.org

For a description of the software, to download it and links to
project pages go to http://liblouis.org
For a description of the software, to download it and links to
project pages go to http://liblouis.org

-- 
John J. Boyer; President,
AbilitiesSoft, Inc.
Email: john.boyer@xxxxxxxxxxxxxxxxx
Website: http://www.abilitiessoft.org
Status: 501(C)(3) Nonprofit
Location: Madison, Wisconsin USA
Mission: To develop software for people with disabilities which is 
         available at no cost.

For a description of the software, to download it and links to
project pages go to http://liblouis.org

Other related posts: