In many countries, including the United States, printed material is transcribed to braille according to braille codes that use markup indicators, context, formatting, and careful selection of dot patterns to convey the range of printed information both effectively and efficiently.
However, it is sometimes necessary for the braille user to read or write the exact characters used in plain text in order to communicate with a computer. The solution to this problem is a computer braille table: a one-for-one representation of the 94 print characters on a standard keyboard by braille cells.
Computer braille only presents explicit information and cannot capture information that is implicit in the character and document formatting of print documents. In additon, computer braille, like six-dot braille, uses a limited character set. A third drawback to computer braille is that it occasionally produces combinations of braille cells that are difficult for the tactile reader.
Recently in Holland, students have stopped using transcribing codes and, instead, utilize Eurobraille computer braille for all material. This unfortunate situation has led to numerous difficulties, especially for those studying mathematics.
The purpose of this page is to provide background material for the people who are involved in trying to come up with a solution to this situation.
This page described the general differences between transcribing codes and computer braille. Then come short histories of Braille ASCII and of computer braille in order to put the current situation in context and to show the relationship between the Nemeth code and Eurobraille.
There is one piece of good news for the Dutch students. Many of the assignments in Euorobraille are based on the The Nemeth Braille Code for Mathematics and Science Notation and not on the more complicated British maths code which is based on upper numbers and uses two-cell symbols for common operations like plus and minus.
Braille transcribing codes, including The Nemeth Braille Code for Mathematics and Science Notation, use indicators, context, formats, and choice of particular types of dot patterns to convey printed information efficiently and effectively as braille dots. Many transcribing codes also have rules for contractions.
Braille indicators are similar to the tags used in print markup languages like HTML for text and LATeX for mathematics. Examples include the use of dot-6 to show a capital letter and the use of dots-46 to show an italicized or highlighted word.
Braille mathematics codes necessarily make more extensive use of markup than do codes designed for literary material. An example of a Nemeth markup indicator is the use of dots-46 before a single letter to indicate that it is Greek rather than Latin. A detailed description of the use of indicators in the Nemeth code is available on the linked page.
Transcribing codes use context as one way of compensating for the small number of braille cells. The literary braille use of the number sign to indicate when the letters a-j should be interpreted as digits rather than letters is an example. The re-use of dots-46 as a decimal point in this context is another.
The Nemeth code uses dots-3456 as the Numeric Indicator before a number but uses the same cell as the end-fraction indicator after a number or other expression in the denominator of a fraction.
The ability to use context as aid to decoding the meaning of a braille symbol is considered to be an essential skill for braille readers in the United States.
Braille formats, like print formats, are used to show document structure. Even on a Braille display, the indentation of paragraphs is helpful. Other examples include the centering and blank lines of headers, minor headers formatted differently from major headers, and the special format for tables of contents.
Formatting is especially important for planar items such as tables. The Nemeth code has detailed specifications for the formatting of planar mathematical structures including spatial computations, systems of equations and matrices.
Proper use of formats is often considered to be the most important function of a braille transcriber since the availability of consistent and correct formatting across documents is an important key to efficient use of braille. The Nemeth code includes formats for numbered examples, theorems, proofs and other items common to technical material.
The six-dot braille cells are classified according to their dot patterns as upper cells, lower cells, bottom-row cells, indicator cells, and full cells.
The ten upper cells are those with at least one dot in the upper row and one (not necessarily different dot) in the left-hand column of the cell. The ten lower cells have the same dot pattern as the upper cells but the pattern is dropped or shifted to the middle and lower rows; the lower cells thus have at least one dot in the middle row and in the left-hand column. The seven indicator cells are those with dots only in the right-hand column.
Transcribing codes are carefully designed to ensure the tactile readability of these different classes of cells. These codes also use the different classes of dot patterns as the basis for tactile mnemonics.
Punctuation marks use the lower cells plus the two bottom-row cells, dot-3 (apostrophe) and dots-36 (hyphen), since these cells are easy to identify in connection with the cells used for words. Prefix indicators use the indicator cells since these cells are easy to read before a word or symbol.
Digits typically use either the upper or lower cells since these cells are especially easy to discriminate. (French braille math uses a different system which adds dot-6 to the upper cells.) The Nemeth code uses the lower cells for numbers. Avoiding the overlap between the digits and the letters a-j simplifies expressions that contain both letters and numbers.
The Nemeth Code requires that the dots-3456 numeric indicator be used before numbers that would otherwise be preceded by a space. This is so the tactile reader can more quickly determine the alignment of the cell.
Transcribing codes often provide for contractions or shorthand to enhance readability. Contracted braille is sometimes called "Grade 2" braille.
Braille readers can usually read contracted braille faster than uncontracted braille. This is not just a matter of familiarity and practice. Contracted braille uses a smaller total number of cells but a greater number of different cells. It seems likely that it is the combination of fewer cells with more variation in dot patterns that makes for faster reading.
Braille contractions for English Braille were chosen on the basis of word frequency. For example, the word the, which uses one cell in contracted braille, accounts for 6% of all words in a representive selection of English text. Additional saving of space and reading time is made possible by the sequencing rule that six common words—a, and, for, of, the, with—are left unspaced from each other.
Braille transcribing codes make use of a number of special features designed to enhance information content for tactile readers. Markup, context, choice of dot pattern and formats all play significant roles. Contractions and sequencing are used to reduce the number of cells and to provide variety in dot patterns; however, contractions are not the key feature of braille transcribing codes.
Computer braille refers to the use of a table that associates print characters one-to-one with braille cells. The original purpose of computer braille was as a digital format for representing braille cells by using (the ASCII codes for) print characters. Computer braille later became a way of representing individual print characters by braille cells. Computer braille was not designed with tactile readers in mind and is not a transcribing code since it doesn't encompass rules for markup, context, and formatting.
Moreover, as this brief history shows, many assignments of the braille cells in the current eight-dot computer braille tables were made arbitrarily. These assignments are also at odds with the use of the corresponding cells in Nemeth Code and may create the misleading impression that the Nemeth code is complicated.
More than 30 years ago, when computers were first used to automate six-dot braille transcribing, it was, of course, necessary to develop a method for representing braille cells in digital form. Although several systems were tried, the one that turned out to be best was to use ASCII character codes 33-95 for the braille cells; these are the same character codes used for the characters on a standard keyboard. This ASCII Braille system is still widely used today and has been extended to eight-dot braille.
There were originally several different ASCII Braille systems. All of them assigned the braille letters to the same character codes that are used for the print capital letters. (This was before ASCII codes had been extended to include small letters.)
Different groups made different choices for the remaining assignments with attention given to the mnemonic value for sighted persons so they could check machine transcriptions as needed. De Nederlandsche Blindenbibliotheek (NBB) even had its own proposal.
Various conventions for the representation of EDP [electronic data processing (non-literal)] symbols are in use....
For our purpose, the MIT-convention ... has the disadvantage of using lowered figures; as this spoils the punctuation signs it is poorly suited for ASCII-representation of braille text...
Although not complete, the proposal from Dinius ... is ... better, but it also misses some opportunities, offered by the braille code for mathematics, for a mnemonically easy representation.
We, therefore, devised our own representation.... Automated Braille Production from Compositors Tapes, ~1975.
Of course, any one-for-one system of representing braille by print characters will encounter problems because the braille cells each have different uses in different contexts and different braille codes. [One way to solve this would be to use extended braille with a special-purpose font; however, no such systems are yet available.] For example, the NBB mentions that programmers would still have to memorize the characters for the parentheses, numbers, etc. and correctors would have to memorize French characters, special braille signs, etc.
The NBB had high hopes in 1976 that ASCII Braille might make the production of braille materials more efficient.
Once established, the system offers some outstanding possibilities:Ibid.
- A programmer, having access to a terminal equipped with e.g. a Braille emboss, can prepare any literary text (also in Grade II), correct it by means of an EDITOR program, and produce the number of copies required.
- An off-line standard teletypewriter can be used to produce justified braille papertapes; to be used on a braille printing equipment [ . W]ith MIT braille code [an octal code, not ASCII] only a straightforward code conversion is necessary.
- Output from the braille typesetting program could be given in ASCII instread of [octal] braille code, and stored preliminarily on some mass-storage device.
From there the text can be treated unto satisfaction by the textmanipulating system programs of the computer (EDITOR). These system programs are, by nature, far more powerful that our home-made utility and enable e.g. interchange of large portions of text, intra- and inter-buffer string search etc. Also, this correction procedure could far easier be implemented in a time-sharing environment. Only when all necessary corrections have been perfomed, the text could be punched into papertape in the required [octal] braille code [needed to drive the embosser].
Despite its early criticism by the NBB, the choice of an ASCII Braille convention made in the United States, which was based on the Nemeth mathematics code, has now become an international standard.
This US code, now known officially as North American ASCII Braille, is currently widely-used because the Duxbury Braille Translator and many other transcribing codes generate braille output in this format and also because it is the basis for eight-dot computer braille. You can read more about the history of ASCII Braille and of computer-based braille transcribing on the Duxbury Systems website.
A Table showing the North American ASCII Braille assignments is available at the link.
The assignments for the 26 English letters, the ten digits, the decimal point, the mathematical comma, and the symbols for plus, minus, times (dot), simple divide, prime, number sign, and left and right parentheses were based on the Nemeth code.
A Table showing the primary mathematical use of the individual braille cells in the Nemeth Code is available at the link. There is a detailed description of the use of indicators in the Nemeth Code just below the Table. (This Table is arranged according to the dot patterns of the cells for the convenience of persons unfamiliar with braille.)
Most of the remaining assignments were necessarily arbitrary with respect the use of the corresponding braille cells in the Nemeth Code.
Unfortunately for later users of Eurobraille who are unfamiliar with the Nemeth code, some character codes for print punctuation marks were assigned arbitrarily to braille cells with other meanings in Nemeth. This was necessary because the lower cells, which are used for punctuation marks in Nemeth as in literary braille, had already been assigned to the digits and there weren't enough standard print characters to avoid using these ASCII codes for the punctuation marks for other purposes.
In fact, most of these remaining ASCII Braille assignments were designed to exploit the advantage to sighted persons of the superficial similarity between the shapes of the printed character and the dot patterns of the associated braille cells and are thus unrelated to the meaning of the braille cells. An example is the assignment of dots-1456 to the same character code as the print question mark whereas dots-235 is normally used to transcribe the question mark.
The ASCII braille association of braille cells to print characters was never intended to supply meaning to the braille cells and are, in many cases, poor choices for that purpose.
Although ASCII Braille was originally developed as a way of representing braille cells by print characters and had been intended for use by computers and by sighted persons, it grew popular as a way for braille-reading computer programmers to represent print characters by braille cells. It was this new use in the reverse direction that led to the name computer braille.
As we shall see later, the development of computer braille had very different effects in the United States and in Holland.
ASCII Braille worked well as a computer braille table for early computer languages with limited character sets. Fortran IV, for example, only allows 11 special characters with only two, the print dollar sign and the print equals mark, not having consistent meanings as print characters and as Nemeth braille symbols.
When eight-dot braille displays became available, the ASCII braille tables were extended. In practice, eight-dot computer braille is both a modification and extension of the North American ASCII Braille table. It is somewhat ironic that European manufacturers of braille displays adopted the computer braille that had been based on the Nemeth code since the Nemeth code is not used in Europe and the various European braille mathematics codes are quite different from Nemth.
A Table showing the six-dot computer braille assignments is available at the link.
With respect to the 94 printing Basic Latin characters with ASCII codes from 33-126, the following assignments have become a de facto standard in the U. S. (Only the changes from six-dot ASCII Braille are listed here.)
The codes for the print small letters are used for the cells for the braille letters and the codes for the print capital letters are used for the corresponding cells with an added dot in position seven.
The codes for five print characters—the tilde, grave accent, vertical bar, left brace and right brace—replaced those for the caret, at sign, back slash, left bracket, and right bracket, respectively. The codes for the latter five characters are used for the corresponding cells with an added dot in position seven.
These slight modifications have two negative side effects:
The United States computer braille just described is quite similar to Eurobraille except that Eurobraille associates the underscore with dots-4567 and apparently doesn't use dots-456.
Of course, braille readers were glad to have braille displays that could be hooked to a computer and braille programmers, in particular, made use of the new computer braille tables that encompassed all 94 of the Basic Latin characters on a standard keyboard.
American and Canadian braille users easily switch between computer braille and literary braille or other braille transcribing codes including Nemeth. Computer braille is used for direct communication with computers and for programming. Braille users use either standard qwerty keyboards or braille keyboards for input of computer braille and a braille display for output.
Even those braille users who are equally comfortable with computer braille and with literary braille prefer the latter for reading text. Switching back and forth may seem confusing to a sighted person who pays attention to the characters printed on the keys of a standard keyboard but it is not in the least confusing for the braille reader who thinks in dots and uses context to help supply meaning.
Sadly, for braille-using students in Holland and some other European countries, the use of Eurobraille computer has not been simply an addition to the tools available to the braille user but has displaced the use of more information-rich transcribing codes for all sorts of material, not just plain text.
This unfortunate situation is made worse because the users of braille displays often make direct use of the particular computer braille tables installed by the manufacturers of their displays. The use of different tables has the result that users of different models of displays end up getting different dots for the very same print characters.
This latter problem is, of course, solvable by using a software interface. Windows users can use WindowEyes, which interfaces to more than 40 different braille displays. Linux users can use the free brltty virtual terminal, which also supports a number of different displays. Software interfaces produce the correct dot patterns by adjusting the representation of the braille according to the appropriate table.
Unfortunately, a software interface cannot address the more serious question of the lack of a transcribing code or set of rules for determining what those correct dot patterns should be!
As for mathematics, there is one positive aspect of this situation: Dutch students are already familiar with the lower numbers and operation signs used in the Nemeth code!