Hi,

As you may already know I've been trying to revamp the limited read-only schema subsystem we have to allow for dynamic updates. Here's some initial design documentation about this schema revamp:

http://cwiki.apache.org/DIRxSRVx11/schema-subsystem-redesign.html

Where are we?
=============

At this point I've added to trunks the fixed ou=schema namingContext partition which is preloaded with all known schema we have here at Directory. Not all schema are activated so they are not loaded into registries.

I have enabled code that updates registries when schema entities described by the meta schema are updated. Thanks to Emmanuel for formulating this meta schema; it's working out well for our needs with minor changes.

For now I have covered the basic schema types:

 o SyntaxDescriptions
 o MatchingRuleDescriptions
 o AttributeTypeDescriptions
 o ObjectClassDescriptions

Functionality for following schema entities have been stubbed out:

 o MatchingRuleUseDescriptions
 o DITContentRules
 o DITStructureRules
 o NameForms


What needs to be done?
======================

I still have to add code that will determine what to do when a schema is modified (name changed) etc. I also have to add the X-SCHEMA and X-IS-HUMAN-READABLE schema extensions.

Now my goal is to move the global subschemaSubentry from cn=schema,ou=system to cn=schema to reflect the contents of the ou=schema meta data in RFC based Syntaxes for the various schema elements: SyntaxDescriptions, MatchingRuleDescriptions, AttributeTypeDescriptions, ObjectClassDescriptions etc ...

Then I would like to make sure updates to the schemaSubentry work properly for the default (protocol accepted) manner in which schema is updated in LDAP servers. This is where Stefan Seelmann's parsers will come in handy.

Need functionality for following schema entities which can be added later:

 o MatchingRuleUseDescriptions
 o DITContentRules
 o DITStructureRules
 o NameForms

The wiki page on the design above covers having separate schema autonomous areas (SAA) where right now I did not have time to include this. It was more important to me to just get this thing done so schema can be dynamically updated. Ersin and I talked and he thinks later he can retrofit this feature. Ersin also expressed interested in add functionality for nameForms, dITStructureRules, dITContentRules and matchingRuleUses.

Summary
=======

It's looking good as is but I have had trouble working as much as I want to on this in the past couple weeks. I tried to distribute some time to triplesec and apacheds so we can bring djencks more up to speed. Since he looks ok for now I'm going to revert back a bit to working on this stuff. Hopefully it can be finished in another week or two.

Alex


begin:vcard
fn:Alex Karasulu
n:Karasulu;Alex
org:Apache Software Foundation;Apache Directory
adr:;;1005 N. Marsh Wind Way;Ponte Vedra ;FL;32082;USA
email;internet:[EMAIL PROTECTED]
title:Member, V.P.
tel;work:(904) 791-2766
tel;fax:(904) 808-4789
tel;home:(904) 808-4789
tel;cell:(904) 315-4901
note;quoted-printable:AIM: alexokarasulu=0D=0A=
	MSN: [EMAIL PROTECTED]
	Yahoo!: alexkarasulu=0D=0A=
	IRC: aok=0D=0A=
	PGP ID: 1024D/4E1370F8 BBCC E8D8 8756 2D51 C3D4 014A 3662 F96F 4E13 70F8=0D=0A=
	
x-mozilla-html:FALSE
url:http://people.apache.org/~akarasulu
version:2.1
end:vcard

Reply via email to