Portable Layout Services: Context-dependent and Directional Text
Portable Layout Services:
Context-dependent and Directional Text
Copyright © 1997 The Open Group


CAE Specification
Portable Layout Services: Context-dependent and Directional Text
X/Open Document Number: C616
ISBN: 1-85912-142-X

©February 1997, The Open Group All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without the prior permission of the copyright owners.

Any comments relating to the material contained in this document may be submitted to The Open Group at:

The Open Group
Apex Plaza
Forbury Road
Berkshire, RG1 1AX
United Kingdom
or by electronic mail to:


The Open Group

The Open Group is an international open systems organization that is leading the way in creating the infrastructure needed for the development of network-centric computing and the information superhighway. Formed in 1996 by the merger of the X/Open Company and the Open Software Foundation, The Open Group is supported by most of the world's largest user organizations, information systems vendors and software suppliers. By combining the strengths of open systems specifications and a proven branding scheme with collaborative technology development and advanced research, The Open Group is well positioned to assist user organizations, vendors and suppliers in the development and implementation of products supporting the adoption and proliferation of open systems.

With more than 300 member companies, The Open Group helps the IT industry to advance technologically while managing the change caused by innovation. It does this by:

The Open Group operates in all phases of the open systems technology lifecycle including innovation, market adoption, product development and proliferation. Presently, it focuses on seven strategic areas: open systems application platform development, architecture, distributed systems management, interoperability, distributed computing environment, security, and the information superhighway. The Open Group is also responsible for the management of the UNIX trade mark on behalf of the industry.

The X/Open Process

This description is used to cover the whole Process developed and evolved by X/Open. It includes the identification of requirements for open systems, development of CAE and Preliminary Specifications through an industry consensus review and adoption procedure (in parallel with formal standards work), and the development of tests and conformance criteria.

This leads to the preparation of a Product Standard which is the name used for the documentation that records the conformance requirements (and other information) to which a vendor may register a product. There are currently two forms of Product Standard, namely the Profile Definition and the Component Definition, although these will eventually be merged into one.

The X/Open brand logo is used by vendors to demonstrate that their products conform to the relevant Product Standard. By use of the X/Open brand they guarantee, through the X/Open Trade Mark Licence Agreement (TMLA), to maintain their products in conformance with the Product Standard so that the product works, will continue to work, and that any problems will be fixed by the vendor.

Open Group Publications

The Open Group publishes a wide range of technical literature, the main part of which is focused on specification development and product documentation, but which also includes Guides, Snapshots, Technical Studies, Branding and Testing documentation, industry surveys and business titles.

There are several types of specification:

In addition, The Open Group publishes:

Versions and Issues of Specifications

As with all live documents, CAE Specifications require revision to align with new developments and associated international standards. To distinguish between revised specifications which are fully backwards compatible and those which are not:


Readers should note that Corrigenda may apply to any publication. Corrigenda information is published on the World-Wide Web at http://www.opengroup.org/public/pubs.

Ordering Information

Full catalogue and ordering information on all Open Group publications is available on the World-Wide Web at http://www.opengroup.org/public/pubs.

This Document
This document is a CAE Specification (see above). It describes a set of portable functions for handling context-dependent and bidirectional text transformations as a logical extension to the existing POSIX locale model.
This document is structured as follows:
Intended Audience
This document is intended for system and application programmers who want to provide support for complex-text languages.
Typographical Conventions
The following typographical conventions are used throughout this document:

Trade Marks

Motif®, OSF/1®, and UNIX® are registered trademarks and the "X Device"TM; and The Open GroupTM; are trademarks of The Open Group.

Unicode is a trade mark of The Unicode Consortium, Inc.


The Open Group gratefully acknowledges the work of the authors of this document:
Israel Gidali (IBM Canada) John Gioia (IBM Canada) Frank Rojas (IBM Austin)

In addition many members of the Joint X/Open UniForum Internationalisation Group (XoJIG) have contributed by reviewing earlier drafts.

This document could not have been prepared without the considerable contribution of many. The functions defined for Complex-text Language Layout transformations can be seen as the product of the effort of the architects and developers of the traditional Bidirectional support and the emerging Unicode focus on directionality.

Special thanks go to Isai Scheinberg, Milos Lalovic and Mel Sher (IBM Canada), and to Mati Allouche (IBM Israel), for their contribution to the initial specifications of the "BIDI_HANDLE", the predecessor of LayoutObject. Their work laid the foundation for the Layout Values that are needed across all locales.

Khaled Sherif (IBM Egypt) and Ehud Nathan (IBM Israel) take most of the credit for the actual final specifications based on their BIDI support on AIX. Their insight and experience in development of BIDI software is the foundation for much of the specification. Much of the prototype and feasibility has been done by them and their respective teams in their countries.

The team led by Nelson Ng (SunSoft) and consisting of Ienup Sung (SunSoft), Shinobu Matsuzuka (SunSoft), Randy Hill (Sun) and Chookij Vanatham (CDG Systems Ltd.), is to be credited for the prototype work on the first Thai implementation of the Layout Services. The Thai prototype has provided valuable feedback regarding the implementation feasibility of the composite character support. Nelson Ng is to be credited also for the appendix describing the Dynamic Pluggable Interface of locale-specific Layout Services.

Frank Rojas is to be credited for his creative consolidation of previously divergent and fragmented ideas and for the foundation of the architectural concepts of Layout Object as published in a document called The LAYOUT Utility from which the suggested APIs and the LayoutObject originate.

In preparing the Layout Services sections, the complex-text languages overview and the LO_LTYPE, and in the editing of this proposal, Israel Gidali has relied upon information originating from a multitude of sources. Thanks go to:

Apisak Apiwathanokul, Ranat Thopunya and Jenwit Sriwiwattanangkoon (IBM Thailand) whose work was the main source used by the editor to compile the Thai Language section in the overview.

Seong Mook Kim (IBM Korea) for his enlightening information regarding the Korean writing system. Alexis Cheng (NLTC, IBM Canada) for his help with the syntax aspects of the modifiers.

Mike Feldman (Digital Equipment Corporation Israel), Nelson Ng (Sun), Ienup Sung (Sun), Ranya Abdel Rahman (IBM Egypt), Chun-Wan Lai (Digital Equipment Corporation Hong Kong), Chookij Vanatham (CDG Systems Limited), Eun Yoon Young (IBM Korea), Lisa Moore (IBM USA), Anuwat Phrukphicharn (HP Thailand) and Judy Chen (HP USA) for their very constructive suggestions.

John Gioia (IBM Canada) who has helped the editor through the esoteric alleys of UNIX and the C language and for his contributions to the clarification of the XPG implications and the preparation of the graphic images. Pini Schapira and Adiva Gera (IBM Israel) who started the initial effort to propose standard enhancements to accommodate the bidirectional transformations.

Zarko Cvijan, Dr. Hussein Kushki, Fred Bealle, Dr. Umamaheswaran V.S., Sheila Richardson, Anne Stilman, and Willy Rose from NLTC (IBM Canada), Taweesak Kositapan (IBM Thailand), Alaa Eddine M. Ghoneim, and Sherif El-Rafei (IBM Egypt), Mati Allouche and Ari Erev (IBM Israel) for their review and valuable comments on the drafts of the different components of the proposal.

And last, but not least, Carol Painting, former X/Open editor, who has done an excellent job in compiling, restructuring, editing, simplifying and moulding this document.

Referenced Documents

The following documents are referenced in this specification:

Distributed Internationalisation Services

Snapshot, December 1994, Distributed Internationalisation Services, Version 2 (ISBN: 1-85912-033-4, S308).


European Computer Manufacturers Association, Handling of Bidirectional Texts, 2nd Edition - June 1992.

ISO/IEC 6429

ISO/IEC 6429:1992, Information Technology - Control Functions for Coded Character Sets.

ISO/IEC 10646

ISO/IEC 10646-1:1993, Information Technology - Universal Multiple-Octet Coded Character Set (UCS) - Part 1: Architecture and Basic Multilingual Plane.


The Unicode Standard, Version 2.0, Addison-Wesley Publishing Company, Inc.1996.


National Electronics and Computer Technology Center (NECTEC), Computer with WTT Thai Language Draft Proposal (ISBN 974-7570-66-1).

X11R5 Xlib

CAE Specification, May 1995, Window Management (X11R5): X Lib - C Language Binding (ISBN: 1-85912-088-1, C508).

XSH, Issue 5

CAE Specification, January 1997, System Interfaces and Headers, Issue 5 (ISBN: 1-85912-181-0, C606).

Why not acquire a nicely bound hard copy?
Click here to return to the publication details or order a copy of this publication.

Contents Next section Index