[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#7044) objectIdentifier not usable for reference in objectClass' MUST or MAY clause

carsten.klein@axn-software.de wrote:
> Full_Name: Carsten Klein
> Version: 2.4.23
> OS: Kubuntu 11.01
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (
> I tried to get rid of the global namespace restrictions regarding attributeType
> names by declaring objectIdentifierS for each of the attributeTypeS forefront
> and then use these both for declaring the attributeTypeS and also using them for
> reference in a MAY or MUST clause in the declared objectClassES
> While the attributeType declaration works just fine, the objectClassES will not
> be parsed, resulting in an error stating that the OID cannot be resolved.
> How to reproduce:
> objectIdentifier  fooOID
> objectIdentifier  fooAttrOID  fooOID:1
> objectIdentifier  fooClassOID fooOID:2
> attributeType ( fooAttrOID NAME 'fooAttr'
>       SYNTAX )
> objectClass ( fooClassOID NAME 'fooClass' SUP top STRUCTURAL
>       MAY ( fooAttrOID ) )
> will not work as expected.
> However, replacing fooAttrOID in the above objectClass declaration by either
> fooAttr or will produce a valid ldif when run through
> slaptest.
> I believe that the expected behaviour should be that the declared
> objectIdentifier fooAttrOID should also be recognized when parsing the MAY or
> MUST clause of the objectClass declaration.
> Or is there a way to force slaptest to recognize it?

This is not supported. It is normal practice to use the canonical names of 
attributes in objectclass definitions, for readability.

   -- Howard Chu
   CTO, Symas Corp.           http://www.symas.com
   Director, Highland Sun     http://highlandsun.com/hyc/
   Chief Architect, OpenLDAP  http://www.openldap.org/project/