Conclusion
Though different in appearance, bidirectional languages share the following characteristics:
- Text is written and read from right to left (except for numerals and Western text)
- The layout of rendered text differs from the layout of stored text.
- Bidirectional text can have different layouts. The term layout is used to denote both the directionality of the text or segments of the text and the shaping characteristics of it.
- Each layout has a set of associated bidi attributes that describe its characteristics.
- Application developers should understand that complex-text languages, and bidirectional languages in particular, require transformations between different text layouts.
- Standard layout transformation APIs perform transformations between the different layouts, using the information provided by the values of bidi attributes.
- Developers should also allow for user exits or system exits to facilitate invoking these transformations in situations where a transformation might be expected, such as where text is moved between different systems.
- Processing of bidirectional scripts is supported in all platforms to different but appreciable extents.
- Bidirectional data entry is supported in all environments. Whenever possible, application developers should design products to use the standard language control functions provided by the operating system.
- When transformed into a layout where text is in logical sequence and Arabic script is not stored shaped, bidirectional text can often be processed in the same manner as 'left-to-right' text.
- Many bidi-unaware applications that use standard operating system services might unknowingly gain bidirectional support that is built into the Arabic and Hebrew support of the platforms or the middleware.

