]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/core.schema
12f7d0a44e74371de3977e79d23e198803d4832b
[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)
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' EQUALITY objectIdentifierMatch
117       SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
118
119 attributetype ( 2.5.4.1 NAME 'aliasedObjectName' EQUALITY distinguishedNameMatch
120       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 SINGLE-VALUE )
121
122 # Defined, but no longer used
123
124 attributetype ( 2.5.4.2 NAME 'knowledgeInformation' EQUALITY caseIgnoreMatch
125       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
126
127 # Place here since other attribute types derive from it
128
129 attributetype ( 2.5.4.41 NAME 'name' EQUALITY caseIgnoreMatch
130       SUBSTR caseIgnoreSubstringsMatch
131       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
132
133 attributetype ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )
134
135 attributetype ( 2.5.4.4 NAME ( 'sn' 'surname' ) SUP name )
136
137 attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
138       SUBSTR caseIgnoreSubstringsMatch
139       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{64} )
140
141 # (2-letter code from ISO 3166)
142
143 attributetype ( 2.5.4.6 NAME ( 'c' 'countryName' ) SUP name SINGLE-VALUE )
144
145 attributetype ( 2.5.4.7 NAME ( 'l' 'localityName' ) SUP name )
146
147 attributetype ( 2.5.4.8 NAME ( 'st' 'stateOrProvinceName' ) SUP name )
148
149 attributetype ( 2.5.4.9 NAME ( 'street' 'streetAddress' ) EQUALITY caseIgnoreMatch
150       SUBSTR caseIgnoreSubstringsMatch
151       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
152
153 attributetype ( 2.5.4.10 NAME ( 'o' 'organizationName' ) SUP name )
154
155 attributetype ( 2.5.4.11 NAME ( 'ou' 'organizationalUnitName' ) SUP name )
156
157 attributetype ( 2.5.4.12 NAME 'title' SUP name )
158
159 attributetype ( 2.5.4.13 NAME 'description' EQUALITY caseIgnoreMatch
160       SUBSTR caseIgnoreSubstringsMatch
161       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{1024} )
162
163 # Obsoleted by enhancedSearchGuide
164
165 attributetype ( 2.5.4.14 NAME 'searchGuide'
166       SYNTAX 1.3.6.1.4.1.1466.115.121.1.25 )
167
168 attributetype ( 2.5.4.15 NAME 'businessCategory' EQUALITY caseIgnoreMatch
169      SUBSTR caseIgnoreSubstringsMatch
170      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
171
172 # Show stopper: we don't have the definition of caseIgnoreListSubstringsMatch
173 #attribute ( 2.5.4.16 NAME 'postalAddress' EQUALITY caseIgnoreListMatch
174 #     SUBSTR caseIgnoreListSubstringsMatch
175 #     SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
176 attributetype ( 2.5.4.16 NAME 'postalAddress' EQUALITY caseIgnoreListMatch
177      SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
178
179 attributetype ( 2.5.4.17 NAME 'postalCode' EQUALITY caseIgnoreMatch
180      SUBSTR caseIgnoreSubstringsMatch
181      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
182
183 attributetype ( 2.5.4.18 NAME 'postOfficeBox' EQUALITY caseIgnoreMatch
184      SUBSTR caseIgnoreSubstringsMatch
185      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{40} )
186
187 attributetype ( 2.5.4.19 NAME 'physicalDeliveryOfficeName' EQUALITY caseIgnoreMatch
188      SUBSTR caseIgnoreSubstringsMatch
189      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{128} )
190
191 attributetype ( 2.5.4.20 NAME 'telephoneNumber' EQUALITY telephoneNumberMatch
192      SUBSTR telephoneNumberSubstringsMatch
193      SYNTAX 1.3.6.1.4.1.1466.115.121.1.50{32} )
194
195 attributetype ( 2.5.4.21 NAME 'telexNumber'
196      SYNTAX 1.3.6.1.4.1.1466.115.121.1.52 )
197
198 attributetype ( 2.5.4.22 NAME 'teletexTerminalIdentifier'
199      SYNTAX 1.3.6.1.4.1.1466.115.121.1.51 )
200
201 attributetype ( 2.5.4.23 NAME ( 'facsimileTelephoneNumber' 'fax' )
202      SYNTAX 1.3.6.1.4.1.1466.115.121.1.22 )
203
204 attributetype ( 2.5.4.24 NAME 'x121Address' EQUALITY numericStringMatch
205      SUBSTR numericStringSubstringsMatch
206      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{15} )
207
208 attributetype ( 2.5.4.25 NAME 'internationaliSDNNumber' EQUALITY numericStringMatch
209      SUBSTR numericStringSubstringsMatch
210      SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{16} )
211
212 attributetype ( 2.5.4.26 NAME 'registeredAddress' SUP postalAddress
213       SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
214
215 attributetype ( 2.5.4.27 NAME 'destinationIndicator' EQUALITY caseIgnoreMatch
216       SUBSTR caseIgnoreSubstringsMatch
217       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{128} )
218
219 attributetype ( 2.5.4.28 NAME 'preferredDeliveryMethod'
220       SYNTAX 1.3.6.1.4.1.1466.115.121.1.14
221       SINGLE-VALUE )
222
223 attributetype ( 2.5.4.29 NAME 'presentationAddress'
224       EQUALITY presentationAddressMatch
225       SYNTAX 1.3.6.1.4.1.1466.115.121.1.43
226       SINGLE-VALUE )
227
228 attributetype ( 2.5.4.30 NAME 'supportedApplicationContext'
229       EQUALITY objectIdentifierMatch
230       SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
231
232 # Placed here because others derive from it.
233
234 # We had a dn definition in slapd.at.conf and Netscape lists both
235 # names for that OID.  This is wrong, 'dn' is used internally in slapd
236 # as the name of a pseudo-attribute type that contains the
237 # distinguished name of an entry.  On the other hand, the attribute
238 # type distinguishedName is meant to be an "abstract" type and other
239 # dn-valued attribute types derive from it.  So at most, 'dn' would
240 # be a subtype of distinguishedName, something like:
241 #       attributetype ( dnOID NAME 'dn' SUP distinguishedName
242 #               SINGLE-VALUE NO-USER-MODIFICATION USAGE directoryOperation )
243
244 attributetype ( 2.5.4.49 NAME 'distinguishedName'
245       EQUALITY distinguishedNameMatch
246       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
247
248 attributetype ( 2.5.4.31 NAME 'member' SUP distinguishedName )
249
250 attributetype ( 2.5.4.32 NAME 'owner' SUP distinguishedName )
251
252 attributetype ( 2.5.4.33 NAME 'roleOccupant' SUP distinguishedName )
253
254 attributetype ( 2.5.4.34 NAME 'seeAlso' SUP distinguishedName )
255
256 attributetype ( 2.5.4.35 NAME 'userPassword' EQUALITY octetStringMatch
257       SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{128} )
258
259 # Must be stored and requested in the binary form, as
260 # userCertificate;binary
261
262 attributetype ( 2.5.4.36 NAME 'userCertificate'
263       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
264
265 # As above
266
267 attributetype ( 2.5.4.37 NAME 'cACertificate'
268       SYNTAX 1.3.6.1.4.1.1466.115.121.1.8 )
269
270 # As above
271
272 attributetype ( 2.5.4.38 NAME 'authorityRevocationList'
273       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
274
275 # As above
276
277 attributetype ( 2.5.4.39 NAME 'certificateRevocationList'
278       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
279
280 # As above
281
282 attributetype ( 2.5.4.40 NAME 'crossCertificatePair'
283       SYNTAX 1.3.6.1.4.1.1466.115.121.1.10 )
284
285 # 2.5.4.41 is 'name', moved above since other attribute types derive from it
286
287 attributetype ( 2.5.4.42 NAME 'givenName' SUP name )
288
289 attributetype ( 2.5.4.43 NAME 'initials' SUP name )
290
291 attributetype ( 2.5.4.45 NAME 'x500UniqueIdentifier' EQUALITY bitStringMatch
292       SYNTAX 1.3.6.1.4.1.1466.115.121.1.6 )
293
294 attributetype ( 2.5.4.46 NAME 'dnQualifier' EQUALITY caseIgnoreMatch
295       ORDERING caseIgnoreOrderingMatch SUBSTR caseIgnoreSubstringsMatch
296       SYNTAX 1.3.6.1.4.1.1466.115.121.1.44 )
297
298 attributetype ( 2.5.4.47 NAME 'enhancedSearchGuide'
299       SYNTAX 1.3.6.1.4.1.1466.115.121.1.21 )
300
301 attributetype ( 2.5.4.48 NAME 'protocolInformation'
302       EQUALITY protocolInformationMatch
303       SYNTAX 1.3.6.1.4.1.1466.115.121.1.42 )
304
305 # 2.5.4.49 is distinguishedName, moved up
306
307 attributetype ( 2.5.4.50 NAME 'uniqueMember' EQUALITY uniqueMemberMatch
308       SYNTAX 1.3.6.1.4.1.1466.115.121.1.34 )
309
310 attributetype ( 2.5.4.51 NAME 'houseIdentifier' EQUALITY caseIgnoreMatch
311       SUBSTR caseIgnoreSubstringsMatch
312       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32768} )
313
314 # This attribute is to be stored and requested in the binary form, as
315 # 'supportedAlgorithms;binary'.
316
317 attributetype ( 2.5.4.52 NAME 'supportedAlgorithms'
318       SYNTAX 1.3.6.1.4.1.1466.115.121.1.49 )
319
320 # This attribute is to be stored and requested in the binary form, as
321 # 'deltaRevocationList;binary'.
322
323 attributetype ( 2.5.4.53 NAME 'deltaRevocationList'
324       SYNTAX 1.3.6.1.4.1.1466.115.121.1.9 )
325
326 attributetype ( 2.5.4.54 NAME 'dmdName' SUP name )
327
328 # Standard object classes from RFC2256
329
330 objectclass ( 2.5.6.0 NAME 'top' ABSTRACT MUST objectClass )
331
332 objectclass ( 2.5.6.1 NAME 'alias' SUP top STRUCTURAL MUST aliasedObjectName )
333
334 objectclass ( 2.5.6.2 NAME 'country' SUP top STRUCTURAL MUST c
335      MAY ( searchGuide $ description ) )
336
337 objectclass ( 2.5.6.3 NAME 'locality' SUP top STRUCTURAL
338      MAY ( street $ seeAlso $ searchGuide $ st $ l $ description ) )
339
340 objectclass ( 2.5.6.4 NAME 'organization' SUP top STRUCTURAL MUST o
341      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
342      x121Address $ registeredAddress $ destinationIndicator $
343      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
344      telephoneNumber $ internationaliSDNNumber $
345      facsimileTelephoneNumber $
346      street $ postOfficeBox $ postalCode $ postalAddress $
347      physicalDeliveryOfficeName $ st $ l $ description ) )
348
349 objectclass ( 2.5.6.5 NAME 'organizationalUnit' SUP top STRUCTURAL MUST ou
350      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
351      x121Address $ registeredAddress $ destinationIndicator $
352      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
353      telephoneNumber $ internationaliSDNNumber $
354      facsimileTelephoneNumber $
355      street $ postOfficeBox $ postalCode $ postalAddress $
356      physicalDeliveryOfficeName $ st $ l $ description ) )
357
358 objectclass ( 2.5.6.6 NAME 'person' SUP top STRUCTURAL MUST ( sn $ cn )
359      MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
360
361 objectclass ( 2.5.6.7 NAME 'organizationalPerson' SUP person STRUCTURAL
362      MAY ( title $ x121Address $ registeredAddress $
363      destinationIndicator $
364      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
365      telephoneNumber $ internationaliSDNNumber $
366      facsimileTelephoneNumber $
367      street $ postOfficeBox $ postalCode $ postalAddress $
368      physicalDeliveryOfficeName $ ou $ st $ l ) )
369
370 # Notice that preferredDeliveryMethod is duplicate
371
372 objectclass ( 2.5.6.8 NAME 'organizationalRole' SUP top STRUCTURAL MUST cn
373      MAY ( x121Address $ registeredAddress $ destinationIndicator $
374      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
375      telephoneNumber $ internationaliSDNNumber $
376      facsimileTelephoneNumber $
377      seeAlso $ roleOccupant $ preferredDeliveryMethod $ street $
378      postOfficeBox $ postalCode $ postalAddress $
379      physicalDeliveryOfficeName $ ou $ st $ l $ description ) )
380
381 objectclass ( 2.5.6.9 NAME 'groupOfNames' SUP top STRUCTURAL MUST ( member $ cn )
382      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
383
384 # Notice that preferredDeliveryMethod is duplicate
385 # It seems they could not agree on whether telephoneNumber is MAY
386 # in person.  Probably it wasn't originally at was added as an
387 # afterthought
388
389 objectclass ( 2.5.6.10 NAME 'residentialPerson' SUP person STRUCTURAL MUST l
390      MAY ( businessCategory $ x121Address $ registeredAddress $
391      destinationIndicator $ preferredDeliveryMethod $ telexNumber $
392      teletexTerminalIdentifier $ telephoneNumber $
393      internationaliSDNNumber $
394      facsimileTelephoneNumber $ preferredDeliveryMethod $ street $
395      postOfficeBox $ postalCode $ postalAddress $
396      physicalDeliveryOfficeName $ st $ l ) )
397
398 objectclass ( 2.5.6.11 NAME 'applicationProcess' SUP top STRUCTURAL MUST cn
399      MAY ( seeAlso $ ou $ l $ description ) )
400
401 objectclass ( 2.5.6.12 NAME 'applicationEntity' SUP top STRUCTURAL
402      MUST ( presentationAddress $ cn )
403      MAY ( supportedApplicationContext $ seeAlso $ ou $ o $ l $
404      description ) )
405
406 # This one was wrong in our schema, it only allowed the aditional
407 # knowledgeInformation attribute, while it is derived from
408 # applicationEntity and should allow all its attributes as well.
409
410 objectclass ( 2.5.6.13 NAME 'dSA' SUP applicationEntity STRUCTURAL
411      MAY knowledgeInformation )
412
413 objectclass ( 2.5.6.14 NAME 'device' SUP top STRUCTURAL MUST cn
414      MAY ( serialNumber $ seeAlso $ owner $ ou $ o $ l $ description ) )
415
416 objectclass ( 2.5.6.15 NAME 'strongAuthenticationUser' SUP top AUXILIARY
417      MUST userCertificate )
418
419 objectclass ( 2.5.6.16 NAME 'certificationAuthority' SUP top AUXILIARY
420      MUST ( authorityRevocationList $ certificateRevocationList $
421      cACertificate ) MAY crossCertificatePair )
422
423 # New
424
425 objectclass ( 2.5.6.17 NAME 'groupOfUniqueNames' SUP top STRUCTURAL
426      MUST ( uniqueMember $ cn )
427      MAY ( businessCategory $ seeAlso $ owner $ ou $ o $ description ) )
428
429 # New
430
431 objectclass ( 2.5.6.18 NAME 'userSecurityInformation' SUP top AUXILIARY
432      MAY ( supportedAlgorithms ) )
433
434 # New
435
436 objectclass ( 2.5.6.16.2 NAME 'certificationAuthority-V2' SUP
437      certificationAuthority
438      AUXILIARY MAY ( deltaRevocationList ) )
439
440 # New
441
442 objectclass ( 2.5.6.19 NAME 'cRLDistributionPoint' SUP top STRUCTURAL
443      MUST ( cn ) MAY ( certificateRevocationList $
444      authorityRevocationList $
445      deltaRevocationList ) )
446
447 # New
448
449 objectclass ( 2.5.6.20 NAME 'dmd' SUP top STRUCTURAL MUST ( dmdName )
450      MAY ( userPassword $ searchGuide $ seeAlso $ businessCategory $
451      x121Address $ registeredAddress $ destinationIndicator $
452      preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $
453      telephoneNumber $ internationaliSDNNumber $
454      facsimileTelephoneNumber $
455      street $ postOfficeBox $ postalCode $ postalAddress $
456      physicalDeliveryOfficeName $ st $ l $ description ) )
457
458 # Next objectclass is defined in RFC2252, but has to be put after top
459
460 objectclass ( 1.3.6.1.4.1.1466.101.120.111 NAME 'extensibleObject'
461         DESC 'RFC2252 extensible object'
462         SUP top AUXILIARY )
463
464 #
465 # Standard Track URI label schema from RFC2079
466 #
467 attributetype ( 1.3.6.1.4.1.250.1.57 NAME 'labeledURI'
468         DESC 'Uniform Resource Identifier with optional label'
469         EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
470
471 objectclass ( 1.3.6.1.4.1.250.3.15 NAME 'labeledURIObject'
472         DESC 'object that contains the URI attribute type'
473         MAY ( labeledURI ) SUP top AUXILIARY )
474
475 #
476 # Standard Track Dynamic Directory Services from RFC2589
477 #
478 objectclass ( 1.3.6.1.4.1.1466.101.119.2 NAME 'dynamicObject'
479         DESC 'RFC2589 Dynamic Object'
480         SUP top AUXILIARY )
481
482 attributetype ( 1.3.6.1.4.1.1466.101.119.3 NAME 'entryTtl'
483         DESC 'RFC2589 entry time-to-live'
484         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE
485         NO-USER-MODIFICATION USAGE dSAOperation )
486
487 attributetype ( 1.3.6.1.4.1.1466.101.119.4 NAME 'dynamicSubtrees'
488         DESC 'RFC2589 dynamic subtrees'
489         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 NO-USER-MODIFICATION
490         USAGE dSAOperation )
491
492 #
493 # RFC2247
494 attributetype ( 0.9.2342.19200300.100.1.25 NAME 'dc'
495         DESC 'RFC2247 domain component'
496         EQUALITY caseIgnoreIA5Match
497         SUBSTR caseIgnoreIA5SubstringsMatch
498         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
499
500 objectclass ( 1.3.6.1.4.1.1466.344 NAME 'dcObject'
501         SUP top AUXILIARY MUST dc )
502
503 # RFC1274
504 attributetype ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
505         DESC 'RFC1274 user identifier'
506         EQUALITY caseIgnoreMatch
507         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
508
509 # RFC2377
510 objectclass ( 1.3.6.1.1.3.1 NAME 'uidObject'
511         DESC 'RFC2377 uid object'
512         SUP top AUXILIARY MUST uid )
513
514 #
515 # From draft-ietf-ldapext-nameref-00.txt
516 #       used to represent referrals in the directory
517 #
518 attributetype ( 2.16.840.1.113730.3.1.34 NAME 'ref'
519         DESC 'nameref URL Reference'
520         EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
521         USAGE distributedOperation )
522
523 objectclass ( 2.16.840.1.113730.3.2.6 NAME 'referral'
524         DESC 'nameref referral object'
525         SUP top STRUCTURAL MAY ( ref ) )
526
527 #
528 # LDAPsubEntry
529 #       likely to change!
530 objectclass ( 2.16.840.1.113719.2.142.6.1.1 NAME 'LDAPsubEntry'
531         DESC 'Limited X.501 Subentry class, named by cn'
532         SUP top STRUCTURAL MUST ( cn ) )
533
534 #
535 # LDAProotDSE
536 #       no oid assigned
537 objectclass ( LDAProotDSEOID NAME 'LDAProotDSE'
538         DESC 'Root DSE object class'
539         SUP top STRUCTURAL )