Chris Dukes wrote:
> I have to work with IBM Directory Server on a regular basis, and that
> includes some nasty schema analysis for moving some history local schema
> modifications to new versions of the product.
> I was able to use ldap.schema to simplify most of the nastiness.
> 
> However, IBM extends the schema with the additional attribute
> IBMAttributetypes, which describes chracteristics of how attributes will
> be stored in the backend.
> 
> IBM was polite enough to document the grammar for this new attribute and
> I'll be attempting to create an IBMAttributetype class to hold these.

I vaguely remember coming across these proprietary IBM schema attributes. I
wonder why they did not add their specific things to normal
AttributeTypeDescription like other directory vendors did. Oh, well...

Could you please refer to docs of the grammar?

> Now, should I just add the new class to ldap.schema.models and submit a
> patch once done?  Or should a long term approach of being able to
> indicate the addition of server specific extensions be contemplated?

I already thought about this when looking at vendor-specific extensions for
AttributeTypeDescription for Novell eDirectory and OpenLDAP.

Here are some remarks:

1. ldap.schema is somewhat experimental although quite robust in recent
deployments. The API is still undocumented mainly because I would be willing
to change it if someone comes up with good ideas how to improve it.

2. Lib/ldap/schema/models.py is very closely modeled after RFC 4512. If the
IBM grammar loosely follows what's in that RFC 4512 you have a good chance to
derive from these classes and extend them by setting class attribute
token_defaults according to what's needed.

3. There's ldap.schema.subentry.SCHEMA_CLASS_MAPPING which maps subschema
subentry attribute types to Python schema classes in ldap.schema.models. So
you have to somewhat register the IBM-specific attributes there.

Curious to hear about how to proceed with that.

Ciao, Michael.


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Python-LDAP-dev mailing list
Python-LDAP-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/python-ldap-dev

Reply via email to