]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/core.schema
Updated for schemas.
[openldap] / servers / slapd / schema / core.schema
1 # $OpenLDAP$
2 #
3 # OpenLDAP Core schema
4 #
5 # Includes LDAPv3 schema items from:
6 #       RFC2251-RFC2256 (LDAPv3)
7 #
8 # select standard track schema items:
9 #       RFC2079 (URI)
10 #       RFC1274 (uid/dc)
11 #       RFC2247 (dc/dcObject)
12 #       RFC2289 (Dynamic Directory Services)
13 #
14 # select informational schema items:
15 #       RFC2377 (uidObject)
16 #
17 # select experimental IETF LDAPext items
18 #   ldapSubentry draft
19 #       ldapRootDSE
20 #       named referrals draft
21 #       alias draft
22
23
24 # Standard X.501(93) Operational Attribute Types from RFC2252
25
26 attributetype ( 2.5.18.1 NAME 'createTimestamp' EQUALITY generalizedTimeMatch
27       ORDERING generalizedTimeOrderingMatch
28       SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
29       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
30
31 attributetype ( 2.5.18.2 NAME 'modifyTimestamp' EQUALITY generalizedTimeMatch
32       ORDERING generalizedTimeOrderingMatch
33       SYNTAX 1.3.6.1.4.1.1466.115.121.1.24
34       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
35
36 attributetype ( 2.5.18.3 NAME 'creatorsName' EQUALITY distinguishedNameMatch
37       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
38       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
39
40 attributetype ( 2.5.18.4 NAME 'modifiersName' EQUALITY distinguishedNameMatch
41       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
42       SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
43
44 attributetype ( 2.5.18.10 NAME 'subschemaSubentry'
45       EQUALITY distinguishedNameMatch
46       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION
47       SINGLE-VALUE USAGE directoryOperation )
48
49 attributetype ( 2.5.21.5 NAME 'attributeTypes'
50       EQUALITY objectIdentifierFirstComponentMatch
51       SYNTAX 1.3.6.1.4.1.1466.115.121.1.3 USAGE directoryOperation )
52
53 attributetype ( 2.5.21.6 NAME 'objectClasses'
54       EQUALITY objectIdentifierFirstComponentMatch
55       SYNTAX 1.3.6.1.4.1.1466.115.121.1.37 USAGE directoryOperation )
56
57 attributetype ( 2.5.21.4 NAME 'matchingRules'
58       EQUALITY objectIdentifierFirstComponentMatch
59       SYNTAX 1.3.6.1.4.1.1466.115.121.1.30 USAGE directoryOperation )
60
61 attributetype ( 2.5.21.8 NAME 'matchingRuleUse'
62       EQUALITY objectIdentifierFirstComponentMatch
63       SYNTAX 1.3.6.1.4.1.1466.115.121.1.31 USAGE directoryOperation )
64
65 # LDAP Operational Attributes from RFC2252
66
67 attributetype ( 1.3.6.1.4.1.1466.101.120.5 NAME 'namingContexts'
68      SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 USAGE dSAOperation )
69
70 attributetype ( 1.3.6.1.4.1.1466.101.120.6 NAME 'altServer'
71      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 USAGE dSAOperation )
72
73 attributetype ( 1.3.6.1.4.1.1466.101.120.7 NAME 'supportedExtension'
74      SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
75
76 attributetype ( 1.3.6.1.4.1.1466.101.120.13 NAME 'supportedControl'
77      SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 USAGE dSAOperation )
78
79 attributetype ( 1.3.6.1.4.1.1466.101.120.14 NAME 'supportedSASLMechanisms'
80      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 USAGE dSAOperation )
81
82 attributetype ( 1.3.6.1.4.1.1466.101.120.15 NAME 'supportedLDAPVersion'
83      SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 USAGE dSAOperation )
84
85 # LDAP Subschema Atrribute from RFC2252
86
87 attributetype ( 1.3.6.1.4.1.1466.101.120.16 NAME 'ldapSyntaxes'
88       EQUALITY objectIdentifierFirstComponentMatch
89       SYNTAX 1.3.6.1.4.1.1466.115.121.1.54 USAGE directoryOperation )
90
91 # X.500 Subschema attributes from RFC2252
92
93 attributetype ( 2.5.21.1 NAME 'dITStructureRules' EQUALITY integerFirstComponentMatch
94    SYNTAX 1.3.6.1.4.1.1466.115.121.1.17 USAGE directoryOperation )
95
96 attributetype ( 2.5.21.7 NAME 'nameForms'
97       EQUALITY objectIdentifierFirstComponentMatch
98       SYNTAX 1.3.6.1.4.1.1466.115.121.1.35 USAGE directoryOperation )
99
100 attributetype ( 2.5.21.2 NAME 'dITContentRules'
101       EQUALITY objectIdentifierFirstComponentMatch
102       SYNTAX 1.3.6.1.4.1.1466.115.121.1.16 USAGE directoryOperation )
103
104 # Object Classes from RFC2252
105
106 # extensibleObject moved forward, since it depends on top
107 # ldapSyntaxes (operational) is admissible in next:
108
109 objectclass ( 2.5.20.1 NAME 'subschema' AUXILIARY
110       MAY ( dITStructureRules $ nameForms $ ditContentRules $
111       objectClasses $ attributeTypes $ matchingRules $
112       matchingRuleUse ) )
113
114 # Standard attribute types from RFC2256
115
116 attributetype ( 2.5.4.0 NAME 'objectClass'
117       EQUALITY objectIdentifierMatch
118       SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
119
120 attributetype ( 2.5.4.1 NAME 'aliasedObjectName'
121       EQUALITY distinguishedNameMatch
122       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE )
123
124 # Defined, but no longer used
125
126 attributetype ( 2.5.4.2 NAME 'knowledgeInformation'
127       EQUALITY caseIgnoreMatch
128       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
129
130 # Place here since other attribute types derive from it
131
132 attributetype ( 2.5.4.41 NAME 'name'
133       EQUALITY caseIgnoreMatch
134       SUBSTR caseIgnoreSubstringsMatch
135       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
136
137 attributetype ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )
138
139 attributetype ( 2.5.4.4 NAME ( 'sn' 'surname' ) SUP name )
140
141 attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
142       SUBSTR caseIgnoreSubstringsMatch
143       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{64} )
144
145 # (2-letter code from ISO 3166)
146
147 attributetype ( 2.5.4.6 NAME ( 'c' 'countryName' ) SUP name SINGLE-VALUE )
148
149 attributetype ( 2.5.4.7 NAME ( 'l' 'localityName' ) SUP name )
150
151 attributetype ( 2.5.4.8 NAME ( 'st' 'stateOrProvinceName' ) SUP name )
152
153 attributetype ( 2.5.4.9 NAME ( 'street' 'streetAddress' )
154       EQUALITY caseIgnoreMatch
155       SUBSTR caseIgnoreSubstringsMatch
156       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
157
158 attributetype ( 2.5.4.10 NAME ( 'o' 'organizationName' ) SUP name )
159
160 attributetype ( 2.5.4.11 NAME ( 'ou' 'organizationalUnitName' ) SUP name )
161
162 attributetype ( 2.5.4.12 NAME 'title' SUP name )
163
164 attributetype ( 2.5.4.13 NAME 'description'
165       EQUALITY caseIgnoreMatch
166       SUBSTR caseIgnoreSubstringsMatch
167       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1024} )
168
169 # Obsoleted by enhancedSearchGuide
170
171 attributetype ( 2.5.4.14 NAME 'searchGuide'
172       SYNTAX 1.3.6.1.4.1.1466.115.121.1.25 )
173
174 attributetype ( 2.5.4.15 NAME 'businessCategory'
175      EQUALITY caseIgnoreMatch
176      SUBSTR caseIgnoreSubstringsMatch
177      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
178
179 attribute ( 2.5.4.16 NAME 'postalAddress'
180      EQUALITY caseIgnoreListMatch
181      SUBSTR caseIgnoreListSubstringsMatch
182      SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
183
184 attributetype ( 2.5.4.17 NAME 'postalCode'
185      EQUALITY caseIgnoreMatch
186      SUBSTR caseIgnoreSubstringsMatch
187      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
188
189 attributetype ( 2.5.4.18 NAME 'postOfficeBox'
190      EQUALITY caseIgnoreMatch
191      SUBSTR caseIgnoreSubstringsMatch
192      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
193
194 attributetype ( 2.5.4.19 NAME 'physicalDeliveryOfficeName'
195      EQUALITY caseIgnoreMatch
196      SUBSTR caseIgnoreSubstringsMatch
197      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
198
199 attributetype ( 2.5.4.20 NAME 'telephoneNumber'
200      EQUALITY telephoneNumberMatch
201      SUBSTR telephoneNumberSubstringsMatch
202      SYNTAX 1.3.6.1.4.1.1466.115.121.1.50{32} )
203
204 attributetype ( 2.5.4.21 NAME 'telexNumber'
205      SYNTAX 1.3.6.1.4.1.1466.115.121.1.52 )
206
207 attributetype ( 2.5.4.22 NAME 'teletexTerminalIdentifier'
208      SYNTAX 1.3.6.1.4.1.1466.115.121.1.51 )
209
210 attributetype ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
211      SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )
212
213 attributetype ( 2.5.4.24 NAME 'x121Address'
214      EQUALITY numericStringMatch
215      SUBSTR numericStringSubstringsMatch
216      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{15} )
217
218 attributetype ( 2.5.4.25 NAME 'internationaliSDNNumber'
219      EQUALITY numericStringMatch
220      SUBSTR numericStringSubstringsMatch
221      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{16} )
222
223 attributetype ( 2.5.4.26 NAME 'registeredAddress' SUP postalAddress
224      SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
225
226 attributetype ( 2.5.4.27 NAME 'destinationIndicator'
227      EQUALITY caseIgnoreMatch
228      SUBSTR caseIgnoreSubstringsMatch
229      SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{128} )
230
231 attributetype ( 2.5.4.28 NAME 'preferredDeliveryMethod'
232      SYNTAX 1.3.6.1.4.1.1466.115.121.1.14
233      SINGLE-VALUE )
234
235 attributetype ( 2.5.4.29 NAME 'presentationAddress'
236      EQUALITY presentationAddressMatch
237      SYNTAX 1.3.6.1.4.1.1466.115.121.1.43
238      SINGLE-VALUE )
239
240 attributetype ( 2.5.4.30 NAME 'supportedApplicationContext'
241      EQUALITY objectIdentifierMatch
242      SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
243
244 # Placed here because others derive from it.
245
246 # We had a dn definition in slapd.at.conf and Netscape lists both
247 # names for that OID.  This is wrong, 'dn' is used internally in slapd
248 # as the name of a pseudo-attribute type that contains the
249 # distinguished name of an entry.  On the other hand, the attribute
250 # type distinguishedName is meant to be an "abstract" type and other
251 # dn-valued attribute types derive from it.  So at most, 'dn' would
252 # be a subtype of distinguishedName, something like:
253 #       attributetype ( dnOID NAME 'dn' SUP distinguishedName
254 #               SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
255
256 attributetype ( 2.5.4.49 NAME 'distinguishedName'
257       EQUALITY distinguishedNameMatch
258       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
259
260 attributetype ( 2.5.4.31 NAME 'member' SUP distinguishedName )
261
262 attributetype ( 2.5.4.32 NAME 'owner' SUP distinguishedName )
263
264 attributetype ( 2.5.4.33 NAME 'roleOccupant' SUP distinguishedName )
265
266 attributetype ( 2.5.4.34 NAME 'seeAlso' SUP distinguishedName )
267
268 attributetype ( 2.5.4.35 NAME 'userPassword'
269       EQUALITY octetStringMatch
270       SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{128} )
271
272 # Must be stored and requested in the binary form, as
273 # userCertificate;binary
274 attributetype ( 2.5.4.36 NAME 'userCertificate'
275       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
276
277 # As above
278 attributetype ( 2.5.4.37 NAME 'cACertificate'
279       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
280
281 # As above
282 attributetype ( 2.5.4.38 NAME 'authorityRevocationList'
283       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
284
285 # As above
286 attributetype ( 2.5.4.39 NAME 'certificateRevocationList'
287       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
288
289 # As above
290 attributetype ( 2.5.4.40 NAME 'crossCertificatePair'
291       SYNTAX 1.3.6.1.4.1.1466.115.121.1.10 )
292
293 # 2.5.4.41 is 'name', moved above since other attribute types derive from it
294
295 attributetype ( 2.5.4.42 NAME ( 'givenName' 'gn' ) SUP name )
296
297 attributetype ( 2.5.4.43 NAME 'initials' SUP name )
298
299 attributetype ( 2.5.4.45 NAME 'x500UniqueIdentifier'
300       EQUALITY bitStringMatch
301       SYNTAX 1.3.6.1.4.1.1466.115.121.1.6 )
302
303 attributetype ( 2.5.4.46 NAME 'dnQualifier'
304       EQUALITY caseIgnoreMatch
305       ORDERING caseIgnoreOrderingMatch
306       SUBSTR caseIgnoreSubstringsMatch
307       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44 )
308
309 attributetype ( 2.5.4.47 NAME 'enhancedSearchGuide'
310       SYNTAX 1.3.6.1.4.1.1466.115.121.1.21 )
311
312 attributetype ( 2.5.4.48 NAME 'protocolInformation'
313       EQUALITY protocolInformationMatch
314       SYNTAX 1.3.6.1.4.1.1466.115.121.1.42 )
315
316 # 2.5.4.49 is distinguishedName, moved up
317
318 attributetype ( 2.5.4.50 NAME 'uniqueMember'
319       EQUALITY uniqueMemberMatch
320       SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 )
321
322 attributetype ( 2.5.4.51 NAME 'houseIdentifier'
323       EQUALITY caseIgnoreMatch
324       SUBSTR caseIgnoreSubstringsMatch
325       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
326
327 # This attribute is to be stored and requested in the binary form, as
328 # 'supportedAlgorithms;binary'.
329
330 attributetype ( 2.5.4.52 NAME 'supportedAlgorithms'
331       SYNTAX 1.3.6.1.4.1.1466.115.121.1.49 )
332
333 # This attribute is to be stored and requested in the binary form, as
334 # 'deltaRevocationList;binary'.
335
336 attributetype ( 2.5.4.53 NAME 'deltaRevocationList'
337       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
338
339 attributetype ( 2.5.4.54 NAME 'dmdName' SUP name )
340
341 # Standard object classes from RFC2256
342
343 objectclass ( 2.5.6.0 NAME 'top' ABSTRACT
344      MUST objectClass )
345
346 objectclass ( 2.5.6.1 NAME 'alias' SUP top STRUCTURAL
347      MUST aliasedObjectName )
348
349 objectclass ( 2.5.6.2 NAME 'country' SUP top STRUCTURAL
350      MUST c
351      MAY ( searchGuide $ description ) )
352
353 objectclass ( 2.5.6.3 NAME 'locality' SUP top STRUCTURAL
354      MAY ( street $ seeAlso $ searchGuide $ st $ l $ description ) )
355
356 objectclass ( 2.5.6.4 NAME 'organization' SUP top STRUCTURAL
357      MUST o
358      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
359      x121Address $ registeredAddress $ destinationIndicator $
360      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
361      telephoneNumber $ internationaliSDNNumber $
362      facsimileTelephoneNumber $
363      street $ postOfficeBox $ postalCode $ postalAddress $
364      physicalDeliveryOfficeName $ st $ l $ description ) )
365
366 objectclass ( 2.5.6.5 NAME 'organizationalUnit' SUP top STRUCTURAL
367      MUST ou
368      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
369      x121Address $ registeredAddress $ destinationIndicator $
370      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
371      telephoneNumber $ internationaliSDNNumber $
372      facsimileTelephoneNumber $
373      street $ postOfficeBox $ postalCode $ postalAddress $
374      physicalDeliveryOfficeName $ st $ l $ description ) )
375
376 objectclass ( 2.5.6.6 NAME 'person' SUP top STRUCTURAL
377      MUST ( sn $ cn )
378      MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
379
380 objectclass ( 2.5.6.7 NAME 'organizationalPerson' SUP person STRUCTURAL
381      MAY ( title $ x121Address $ registeredAddress $
382      destinationIndicator $
383      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
384      telephoneNumber $ internationaliSDNNumber $
385      facsimileTelephoneNumber $
386      street $ postOfficeBox $ postalCode $ postalAddress $
387      physicalDeliveryOfficeName $ ou $ st $ l ) )
388
389 # Notice that preferredDeliveryMethod is duplicate
390
391 objectclass ( 2.5.6.8 NAME 'organizationalRole' SUP top STRUCTURAL
392      MUST cn
393      MAY ( x121Address $ registeredAddress $ destinationIndicator $
394      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
395      telephoneNumber $ internationaliSDNNumber $
396      facsimileTelephoneNumber $
397      seeAlso $ roleOccupant $ preferredDeliveryMethod $ street $
398      postOfficeBox $ postalCode $ postalAddress $
399      physicalDeliveryOfficeName $ ou $ st $ l $ description ) )
400
401 objectclass ( 2.5.6.9 NAME 'groupOfNames' SUP top STRUCTURAL
402      MUST ( member $ cn )
403      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
404
405 # Notice that preferredDeliveryMethod is duplicate
406 # It seems they could not agree on whether telephoneNumber is MAY
407 # in person.  Probably it wasn't originally at was added as an
408 # afterthought
409
410 objectclass ( 2.5.6.10 NAME 'residentialPerson' SUP person STRUCTURAL
411      MUST l
412      MAY ( businessCategory $ x121Address $ registeredAddress $
413      destinationIndicator $ preferredDeliveryMethod $ telexNumber $
414      teletexTerminalIdentifier $ telephoneNumber $
415      internationaliSDNNumber $
416      facsimileTelephoneNumber $ preferredDeliveryMethod $ street $
417      postOfficeBox $ postalCode $ postalAddress $
418      physicalDeliveryOfficeName $ st $ l ) )
419
420 objectclass ( 2.5.6.11 NAME 'applicationProcess' SUP top STRUCTURAL
421      MUST cn
422      MAY ( seeAlso $ ou $ l $ description ) )
423
424 objectclass ( 2.5.6.12 NAME 'applicationEntity' SUP top STRUCTURAL
425      MUST ( presentationAddress $ cn )
426      MAY ( supportedApplicationContext $ seeAlso $ ou $ o $ l $
427      description ) )
428
429 # This one was wrong in our schema, it only allowed the aditional
430 # knowledgeInformation attribute, while it is derived from
431 # applicationEntity and should allow all its attributes as well.
432
433 objectclass ( 2.5.6.13 NAME 'dSA' SUP applicationEntity STRUCTURAL
434      MAY knowledgeInformation )
435
436 objectclass ( 2.5.6.14 NAME 'device' SUP top STRUCTURAL
437      MUST cn
438      MAY ( serialNumber $ seeAlso $ owner $ ou $ o $ l $ description ) )
439
440 objectclass ( 2.5.6.15 NAME 'strongAuthenticationUser' SUP top AUXILIARY
441      MUST userCertificate )
442
443 objectclass ( 2.5.6.16 NAME 'certificationAuthority' SUP top AUXILIARY
444      MUST ( authorityRevocationList $ certificateRevocationList $
445      cACertificate ) MAY crossCertificatePair )
446
447 # New
448
449 objectclass ( 2.5.6.17 NAME 'groupOfUniqueNames' SUP top STRUCTURAL
450      MUST ( uniqueMember $ cn )
451      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
452
453 # New
454
455 objectclass ( 2.5.6.18 NAME 'userSecurityInformation' SUP top AUXILIARY
456      MAY ( supportedAlgorithms ) )
457
458 # New
459
460 objectclass ( 2.5.6.16.2 NAME 'certificationAuthority-V2' SUP
461      certificationAuthority
462      AUXILIARY MAY ( deltaRevocationList ) )
463
464 # New
465
466 objectclass ( 2.5.6.19 NAME 'cRLDistributionPoint' SUP top STRUCTURAL
467      MUST ( cn )
468      MAY ( certificateRevocationList $ authorityRevocationList $
469      deltaRevocationList ) )
470
471 # New
472
473 objectclass ( 2.5.6.20 NAME 'dmd' SUP top STRUCTURAL
474      MUST ( dmdName )
475      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
476      x121Address $ registeredAddress $ destinationIndicator $
477      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
478      telephoneNumber $ internationaliSDNNumber $
479      facsimileTelephoneNumber $
480      street $ postOfficeBox $ postalCode $ postalAddress $
481      physicalDeliveryOfficeName $ st $ l $ description ) )
482
483 # Next objectclass is defined in RFC2252, but has to be put after top
484
485 objectclass ( 1.3.6.1.4.1.1466.101.120.111 NAME 'extensibleObject'
486         DESC 'RFC2252 extensible object'
487         SUP top AUXILIARY )
488
489 #
490 # Standard Track URI label schema from RFC2079
491 #
492 attributetype ( 1.3.6.1.4.1.250.1.57 NAME 'labeledURI'
493         DESC 'Uniform Resource Identifier with optional label'
494         EQUALITY caseExactIA5Match
495         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
496
497 objectclass ( 1.3.6.1.4.1.250.3.15 NAME 'labeledURIObject'
498         DESC 'object that contains the URI attribute type'
499         MAY ( labeledURI )
500         SUP top AUXILIARY )
501
502 #
503 # Standard Track Dynamic Directory Services from RFC2589
504 #
505 objectclass ( 1.3.6.1.4.1.1466.101.119.2 NAME 'dynamicObject'
506         DESC 'RFC2589 Dynamic Object'
507         SUP top AUXILIARY )
508
509 attributetype ( 1.3.6.1.4.1.1466.101.119.3 NAME 'entryTtl'
510         DESC 'RFC2589 entry time-to-live'
511         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE
512         NO-USER-MODIFICATION USAGE dSAOperation )
513
514 attributetype ( 1.3.6.1.4.1.1466.101.119.4 NAME 'dynamicSubtrees'
515         DESC 'RFC2589 dynamic subtrees'
516         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION
517         USAGE dSAOperation )
518
519 # Derived from RFC1274, but with new "short names"
520 attributetype ( 0.9.2342.19200300.100.1.1
521         NAME ( 'uid' 'userid' )
522         DESC 'RFC1274 user identifier'
523         EQUALITY caseIgnoreMatch
524         SUBSTR caseIgnoreSubstringsMatch
525         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
526
527 attributetype ( 0.9.2342.19200300.100.1.3 NAME ( 'mail' 'rfc822Mailbox' )
528         DESC 'rfc822 mail box'
529     EQUALITY caseIgnoreIA5Match
530     SUBSTR caseIgnoreIA5SubstringsMatch
531     SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
532
533 objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
534         SUP top AUXILIARY
535         MUST userPassword )
536
537
538 # RFC1274 + RFC2247
539 attributetype ( 0.9.2342.19200300.100.1.25
540         NAME ( 'dc' 'domainComponent' )
541         DESC 'RFC1274/2247 domain component'
542         EQUALITY caseIgnoreIA5Match
543         SUBSTR caseIgnoreIA5SubstringsMatch
544         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
545
546 # RFC2247
547 objectclass ( 1.3.6.1.4.1.1466.344 NAME 'dcObject'
548         SUP top AUXILIARY MUST dc )
549
550
551 # From RFC2377
552 objectclass ( 1.3.6.1.1.3.1 NAME 'uidObject'
553         DESC 'RFC2377 uid object'
554         SUP top AUXILIARY MUST uid )
555
556 #
557 # From draft-ietf-ldapext-nameref-00.txt
558 #       used to represent referrals in the directory
559 #
560 attributetype ( 2.16.840.1.113730.3.1.34 NAME 'ref'
561         DESC 'Named referral'
562         EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
563         USAGE distributedOperation )
564
565 objectclass ( 2.16.840.1.113730.3.2.6 NAME 'referral'
566         DESC 'Named referral object'
567         SUP top STRUCTURAL MAY ref )
568
569 #
570 # LDAPsubEntry
571 #       likely to change!
572 objectclass ( 2.16.840.1.113719.2.142.6.1.1 NAME 'LDAPsubEntry'
573         DESC 'LDAP Subentry'
574         SUP top STRUCTURAL MAY cn )
575
576 #
577 # OpenLDAProotDSE
578 #       likely to change!
579 objectclass ( 1.3.6.1.4.1.4203.666.3.2
580         NAME ( 'OpenLDAProotDSE' 'LDAProotDSE' )
581         DESC 'OpenLDAP Root DSE object'
582         SUP top STRUCTURAL MAY cn )
583
584
585 #
586 # From Cosine Pilot
587 #
588 attributetype ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
589         EQUALITY caseIgnoreIA5Match
590         SUBSTR caseIgnoreIA5SubstringsMatch
591         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
592
593 #
594 # From U-Mich
595 #
596 attributetype ( 1.3.6.1.4.1.250.1.32
597         NAME ( 'krbName' 'kerberosName' )
598         DESC 'Kerberos Name'
599         EQUALITY caseIgnoreIA5Match
600         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
601         SINGLE-VALUE )
602
603
604 #
605 # OpenLDAP specific schema items
606 #
607 attributetype ( 1.3.6.1.4.1.4203.666.1.1
608         NAME 'authPassword'
609         DESC 'OpenLDAP authPassword attribute'
610         EQUALITY authPasswordMatch
611         SYNTAX 1.3.6.1.4.1.4203.666.2.2
612         USAGE dSAOperation )
613
614 attributetype ( 1.3.6.1.4.1.4203.666.1.2
615         NAME 'supportedAuthPasswordSchemes'
616         DESC 'OpenLDAP authPassword attribute'
617         EQUALITY caseIgnoreIA5Match
618         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{32}
619         NO-USER-MODIFICATION USAGE dSAOperation )
620
621 attributetype ( 1.3.6.1.4.1.4203.666.1.3
622         NAME 'entry'
623         DESC 'OpenLDAP ACL entry psuedo attribute'
624         SYNTAX 1.3.6.1.4.1.4203.666.2.3
625         SINGLE-VALUE NO-USER-MODIFICATION USAGE dSAOperation )
626
627 attributetype ( 1.3.6.1.4.1.4203.666.1.4
628         NAME 'children'
629         DESC 'OpenLDAP ACL children psuedo attribute'
630         SYNTAX 1.3.6.1.4.1.4203.666.2.3
631         SINGLE-VALUE NO-USER-MODIFICATION USAGE dSAOperation )
632
633 attributetype ( 1.3.6.1.4.1.4203.666.1.5
634         NAME 'OpenLDAPaci'
635         DESC 'OpenLDAP access control information'
636         EQUALITY OpenLDAPaciMatch
637         SYNTAX 1.3.6.1.4.1.4203.666.2.1
638         USAGE directoryOperation )
639
640 objectclass ( 1.3.6.1.4.1.4203.666.3.1 NAME 'authPasswordObject'
641         DESC 'authentication password mixin class'
642         MAY authPassword
643         AUXILIARY )