Dieter Kluenter writes:
Zhang Weiwu zhangweiwu@realss.com writes:
First Entry is: o: Company A
Second Entry is: o: Company B o;lang-de: Aaaa
Then the patch I need would allow me to do a search for o with "*A" that only return me the first entry but do not return the second entry.
This would violate rfc 3866
Not at all. As Zhang suggests, it's fine if the client asks for it via an extension. The various LDAP RFCs say a lot of things which extension RFCs override.
One way would be a a control which says that filters should only match the provided attribute options, or maybe more generally that they should not match subtypes. Though the latter could be frustrating if it meant (objectClass=person) would not match 'objectClass: inetOrgPerson' if the entry did not explicitly include the 'person' object class as well.
Or some matching rules: (o:noSubTypeSubstringMatch:=*A).
I suspect maybe the patch would accept a special search filter format: search for o=*A -> return both entry, this is like traditional search for o;lang-=*A -> return only first entry, this is using the "special search filter format"
The rfc 3866 states in section 2.3 that, 'if ..an attribute is requested without a language tag option,then all attribute values regardless of their language tag option are returned', see the 'description' example.
The second search is not "an attribute is requested without a language tag option". However the suggestion is wrong because it already means something: It matches all 'o' attributes which have a language tag.