On Fri, May 25, 2007 at 06:55:16PM -0700, Howard Chu wrote:
I have been reading the docs, looking for a way to acheive referential integrity as it is done in RDBMS.
Write a new overlay to do what you want...
I modified slapo-constraint to get the feature I needed: it is now able to verify that an attribute value is bound to the existing values of another attribute.
Attached is a draft patch for review. It works, but there are a few things I have been doing without really knowing if it was correct or not, so it might be working by accident :-) Is there something wrong in this code?
Then there is the UI question. For now it's configured in slapd.conf like this: database bdb suffix "dc=example,dc=net" overlay constraint constraint_attribute title key netExampleTitle
Which means that add and modify on title will fail if the new value is not an existing netExampleTitle value. I used the keyword "key" with RDBMS referential integrity in mind, but I'm not sure it's that clear in this context. Suggestions are welcome.
The update to man page is missing yet. I know.
Also, I had trouble understanding the style used in these sources. Is there an official style guide for OpenLDAP?
If the approach is okay, I'll make an updated patch based on feedback to this one and file an ITS with it.