directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lecharny <>
Subject Re: [LDAP Studio] How to handle attributes with empty values?
Date Sat, 21 Apr 2007 11:38:36 GMT
Stefan Seelmann a écrit :

>ApacheDS and also other servers accept attributes with empty values.
>Here is an example entry:
>dn: cn=empty,dc=example,dc=com
>objectClass: person
>objectClass: top
>cn: empty
>sn: empty
>description: test
>seeAlso: dc=example,dc=com
>One scenario where an empty value makes sense is a reference to the
>RootDSE, like in the example above. Could you give me some more
>scenarios, where empty values are useful?
Any scenario where a user want to 'nullify' some value, but still get 
the attributeType in the list or returned value. For instance, if you 
have a weak program written on top of a ldap server, which is expecting 
an attributeType, whatever is the value, then you must be able to return 
this empty value.

This is a little bit tortuous, as there is nowhere in the spec where it 
is explicitely said that empty values should be accepted. However, it is 
said that values should respect the AttributeType syntaxes, so if these 
syntaxes does not accept empty values, we are good.

The perfect exemple is seeAlso : empty DN is valid. I personnaly think 
that this is a very special case (it represent the rootDSE) and should 
not be accepted, but this is the way ot goes. What should we do ? I had 
to modify the DN syntaxChecker to accept emptyDN, even if I don't think 
this is a good idea. Was I wrong ?

>LDAP Studio displays this values correctly. But it is not possible to
>add such an empty value. Moreover, an empty value is deleted when adding
>a second non-empty value or when editing the empty value in the search
>result editor. And the LDIF editor marks a line with an empty value as
>erroneous. These bugs must be fixed.
Do you mean those errors are ADS ones?

>Currently the empty string cancels editing. If you add a new value and
>let it empty it isn't transfered to the server. If you edit an existing
>value and make it empty the operation is canceled and the old value remains.
>So my question is how should LS assist the user when s/he wants to add
>an empty value?
>Some suggestions:
>- When adding a new empty value or editing an existing value we could
>prompt: "Do you really want to save the empty value?"
>- A special action: "Make this value empty"
I would suggest that the LdapBrowser include the schema syntaxCheckers, 
to guaranty that empty values are accepted only when allowed. It will 
limit the potential problems when injecting them into the server. wdyt ?

>P.S. I tested some other LDAP browsers but no one could handle empty values.
This is how LS is great ;)


View raw message