Schema considerations
You can take care of the provided schema considerations.
- Syntax and matching rules:
Verify Directory supports more syntaxes and matching rules than z/OS® IBM® Verify Directory.
Additional syntaxes and matching rules must be removed from the Verify Directory schema before it can be used in z/OS IBM Verify Directory. Attributes using these syntaxes or matching rules must either be removed from the schema or changed to use syntaxes and matching rules supported by z/OS IBM Verify Directory.If the attributes are in use in an entry, either remove the attribute values from the entry if the attribute is being removed from the schema or ensure that the attribute values conform to the changed attribute definition in the schema.
- Schema LDIF format:
The format of the schema LDIF obtained from Verify Directory or z/OS IBM Verify Directory by publishing the schema (using ldapsearch –L) might not be acceptable input for a schema modification.
- When modifying the Verify Directory schema, break up the attributetypes and objectclasses in the schema file into separate schema modifications, each including a single attributetypes value or objectclasses value.Also, include an ibmattributetypes value (if any) in the modification for its associated attributetypes value. If the attribute or object class already exists in the schema, make the modification a modify-replace; otherwise, make the modification a modify-add.
When modifying the z/OS IBM Verify Directory schema, the entire LDIF can be processed in a single modify-replace operation, whether or not the attributes or object classes already exist in the schema.
For example, assume that attribute attr1 and object class objclass1 already exist in the schema.For z/OS IBM Verify Directory, the following schema modification replaces those schema elements and adds new attribute attr2 and object class objclass2:dn: cn=schema changetype: modify replace: attributetypes attributetypes: ( 1.3.18.0.2.4.11111 NAME 'attr1' DESC 'Description for attribute attr1' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE userApplications ) IBMAttributetypes: ( 1.3.18.0.2.4.11111 ACCESS-CLASS normal ) attributetypes: ( 1.3.18.0.2.4.22222 NAME 'attr2' DESC 'Description for attribute attr2' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE userApplications ) IBMAttributetypes: ( 1.3.18.0.2.4.22222 ACCESS-CLASS normal ) - replace: objectclasses objectclasses: ( 1.3.18.0.2.6.33333 NAME 'objclass1' DESC 'Description for object class objclass1' SUP top STRUCTURAL MUST ( cn ) MAY ( attr1 ) ) objectclasses: ( 1.3.18.0.2.6.44444 NAME 'objclass2' DESC 'Description for object class objclass2' SUP top STRUCTURAL MUST ( cn ) MAY ( attr1 $ attr2 ) )For Verify Directory, this schema modification has to be reformatted into separate schema modifications and modify-add used instead of modify-replace for the new schema elements, as follows:dn: cn=schema changetype: modify replace: attributetypes attributetypes: ( 1.3.18.0.2.4.11111 NAME 'attr1' DESC 'Description for attribute attr1' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE userApplications ) IBMAttributetypes: ( 1.3.18.0.2.4.11111 ACCESS-CLASS normal ) dn: cn=schema changetype: modify add: attributetypes attributetypes: ( 1.3.18.0.2.4.22222 NAME 'attr2' DESC 'Description for attribute attr2' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE userApplications ) IBMAttributetypes: ( 1.3.18.0.2.4.22222 ACCESS-CLASS normal ) dn: cn=schema changetype: modify replace: objectclasses objectclasses: ( 1.3.18.0.2.6.33333 NAME 'objclass1' DESC 'Description for object class objclass1' SUP top STRUCTURAL MUST ( cn ) MAY ( attr1 ) ) dn: cn=schema changetype: modify add: objectclasses objectclasses: ( 1.3.18.0.2.6.44444 NAME 'objclass2' DESC 'Description for object class objclass2' SUP top STRUCTURAL MUST ( cn ) MAY ( attr1 $ attr2 ) ) - Ensure that the object classes do not precede the attributes that they reference.
- When modifying the Verify Directory schema, break up the attributetypes and objectclasses in the schema file into separate schema modifications, each including a single attributetypes value or objectclasses value.Also, include an ibmattributetypes value (if any) in the modification for its associated attributetypes value. If the attribute or object class already exists in the schema, make the modification a modify-replace; otherwise, make the modification a modify-add.