NLA - Presentation services
Applications and services presenting text to the user must do this by means of presentation services rather than with arbitrary write-instructions. Presentation services will handle any operation related to code and language, but also related to presentation space (for example line length in window or on paper).
Output Fall Back Procedures
Presentation services must cope with the sometimes limited capabilities of the output devices. If certain graphics can not be represented on the output device, clear procedures must be defined.
Whether a defined fall back procedure should be taken or not must be a parameter of the presentation services.
An error graphic must be available for every output service. It must be independent of coding scheme or code page and culture. The chosen graphic representation must not be used in any character repertoire to avoid confusion with a special character. Hence this is an issue of international standardization.
If an output device cannot image a particular code point of a code page (as for example, if the output character set is limited to US-ASCII and an umlaut ä is to be printed) then either the fall back procedure needs to be established or an error graphic must be printed.
If a device is software-driven, another possibility might permit the preservation of information integrity, using a special protocol describing the inreproduceable characters with the smaller character set (for example representing «e acute» with «/e» «a circumflex» with «^a», «Greek lower-case µ» with «mu» and so on.
Graphic Repertoire of Fonts
It is very annoying for text processing tasks, if the national language characters are not available in every one of the fonts provided by a manufacturer. Inconsistencies in the character repertoire among devices must be eliminated.
Internal to the printer or terminal display, using ISO 6937 techniques may be viable for generating a large repertoire of characters. However this may not be feasable for high quality presentation like typeographical fonts.
When presenting text on devices with limited capabilities care must be taken that the restricted form used is not stored as the permanent form of the data. This presents special difficulties if the user wishes to make changes to the data. For example, if text is presented to the user without accents and this is confirmed to be correct, than these (incorrect) data must not be sent back (modifying the source).
As the major human interface for input, keyboards are a major NLA issue. Both in national and international environments more characters and symbols are needed for data entry of multiple languages. The traditional typewriter layout must be modified to support these requirements. However, a coordinated approach in this area is required. Currently keyboards on AS/400, PC's and Non Programmable Terminals give too diverse a support of character sets.
To support the new functions additional shift keys or other switching mechanisms will be needed. Hence it is time to think about related requirements for keyboards. They should be designed with the following goals in mind:
- Besides national layouts, an international layout is required to enter characters from various languages directly. It must be possible to create all codes of one codepage from one keyboard. This may be established with additional keystrokes (dead keys) or additional layers of function (super shifts) [ISO 8884].
- The keyboard must have a clear grouping of functions (which include local functions, functions in an emulation, typewriter, cursor)
- Local (workstation) functions must be separated from remote (host based, network based) functions. That is, the number of keys must be greater than currently available. This is clearly illustrated in [Gardner-1] and also below.
- Function keys should be available either in one row (easy labelling) or as grouped cluster (e.g. 3x4) which allows for easier pattern recognition. Additional functions should be supported by shift and supershift (ALT) of these keys.
- Dangerous functions which may destroy the current work (files) of the user (like setup, reset) should only be performed by striking at least 2 keys simultaneously.
- Function keys like ENTER, INSERT, DELETE must be labelled in a standardized way. As our world becomes more and more multilingual, this calls for ideogrammic labelling according to ISO 9995-6.
These demands are illustrated in Implementation Considerations. Keyboard drivers need access to every key and its state (shift, supershift, alternate etc.). When there is only access to the symbol or function specified for the particular key, terminal emulations and the like cannot make use of all keys. For example, it must be possible to map PFK's (of a 327x terminal emulation) to the numeric cluster or to map certain functions of the terminal emulation to the NUM-LOCK or SCROLL-LOCK keys, which may not be needed in this mode.
The user must be able to completely remap the relationship between character / function and key of a keyboard. The desired openness calls for a rich set of keys and clusters on a keyboard. Even the current «enhanced» keyboard is insufficient to fulfill the specifications stated here.
Limited desk space (which may have been an issue for the development of the PC keyboards) is a bad argument against the limited usability of these keyboards. Compare IBM keyboard functions to the rich set provided by the Macintosh Saratoga keyboard.