The Unicode Bidirectional Algorithm in Business Applications
Phillip Sievers - SAP AG

Intended Audience: Software Engineers, Testers

Session Level: Beginner, Intermediate

In software the support of right-to-left scripts such as Arabic or Hebrew requires an exact specification of the order the characters in a text should be drawn, a bidirectional layout algorithm. The lack of an universally valid specification of a bidirectional algorithm in the past lead to various existing implementations with subtle differences. Recently the Unicode bidirectional algorithm has been revised in order to consolidate the two most commonly used algorithms. SAP used a self-made algorithm in the past, which was well adapted to the needs of the SAP applications. The increasing interoperability and diversity of user interface environments in SAP software however demand the use of one single consistent algorithm as defined in the Unicode standard. SAP therefore replaced the self-made algorithm with the one defined in the Unicode standard. The impact of this replacement on SAP applications is presented. In addition we discuss problems of the current Unicode algorithm typically encountered in business applications and present how we solve them within SAP software.