For your first problem, you might want to investigate your options with
RFC 2596, which is implemented in OpenLDAP. If your clients are smart
enough to localize output, then each company can store a name in every
language and users would only see what they can read.

For your second problem, ie. where a company changes name... since the
company name is in the DN of each company entry, that would mean
deleting and replacing the company entry as well as changing DN values
that point to it. Perhaps you need a company handle that doesn't change
(e.g. o=company1234), and put the name(s) in another attribute.

Just some quick thoughts.

Jon Roberts
www.mentata.com

Zhang Weiwu wrote:

I am setting up a business directory of contact persons and companies. I
have this structure in mind:

My problem: the system is multi-lingual, means each company can have
multiple company names, and most of them do, because we are in a
cross-culture location where each company must have two names. Thus
maintaining correspondence between person's "o" value is a lot of work.