Bidirectional text can be stored on the client or server
system in different text layouts (different bidirectional formats).
A Bidirectional layout specifies how bidirectional text is being stored
on a system. It can be defined by five basic bidirectional attributes
for Arabic language, and by three attributes for Hebrew.
- Global or text orientation
- Global
orientation designates the direction in which the text is stored.
It can be right to left (RTL) or left to right (LTR). Contextual text
orientation is not supported in Rational® Developer
for System z®.
- Ordering scheme (or text type)
- The
ordering scheme defines the relationship between the order of text
as stored in memory or on external media and its order for proper
display. Rational Developer
for System z recognizes
three ordering schemes:
- In the visual
ordering scheme, text is stored in exactly the same order as
it is displayed.
- In the logical
ordering scheme, text is stored in the order it is intended
to be read. It has to be reordered for display, using an algorithm
that assumes that the letters of the Latin alphabet have a strong
inherent left-to-right directionality and those of the Arabic or Hebrew
alphabet have a strong right-to-left inherent directionality. This
implicit (or logical) algorithm recognizes segments based on their
inherent directional characteristics and performs segment inversion
automatically.
- In the smart
logical ordering scheme, the text is processed with a special
algorithm introduced in Rational Developer
for System z to improve
the data exchange between zSeries® systems
and Rational Developer
for System z. This algorithm
in more details in Smart logical ordering scheme.
- Text shaping
- Text shaping is applicable
to the Arabic script in which characters assume different shapes according
to their position in a word how they connect to surrounding characters.
- Symmetric swapping
- Symmetric swapping designates
when specific characters such as ( > [ { need to be interchanged with
) < ] } to preserve the logical meaning of the presented text.
- Numeric shaping
- Numeric shaping designates
whether numbers have to be presented using the European digit shapes
or the Arabic-Indic digit shapes.
No single combination of possible values of bidirectional layout
attributes is predominant. Existing applications process data with
different possible combinations of these values. Therefore, when a
bidirectional data stream is passed to an application, it is important
that the application recognize the associated text attributes.