1. An automated method comprising: assigning bidirectional attributes to a logical character stream; assigning initial level numbers while honoring any directional overrides by explicit processing; changing attribute types based upon surrounding attribute types through weak and neutral processing; associating final level numbers to the logical character stream through implicit processing; and reordering characters within the logical character stream into display order according to the final level numbers by separately handling facets of layout relating to character reordering and facets related to character stream rendering.