]> git.sur5r.net Git - openldap/blob - servers/slapd/schema/cosine.schema
e23372d11538f497e29ba7e6f93ee6553c87ee7f
[openldap] / servers / slapd / schema / cosine.schema
1 # $OpenLDAP$
2 #
3 # RFC1274: Cosine and Internet X.500 schema
4 #
5 # This file contains LDAPv3 schema derived from X.500 COSINE "pilot"
6 # schema.  As this schema was defined for X.500(89), some
7 # oddities were introduced in the mapping to LDAPv3.  The
8 # mappings were based upon: draft-ietf-asid-ldapv3-attributes-03.txt
9 # (a work in progress)
10 #
11 # Note: It seems that the pilot schema evolved beyond what was
12 # described in RFC1274.  However, this document attempts to describes
13 # RFC1274 as published.
14 #
15 # Depends on core.schema
16
17
18 # Network Working Group                                          P. Barker
19 # Request for Comments: 1274                                      S. Kille
20 #                                              University College London
21 #                                                          November 1991
22 #
23 #                 The COSINE and Internet X.500 Schema
24 #
25 # [trimmed]
26 #
27 # Abstract
28 #
29 #  This document suggests an X.500 Directory Schema, or Naming
30 #  Architecture, for use in the COSINE and Internet X.500 pilots.  The
31 #  schema is independent of any specific implementation.  As well as
32 #  indicating support for the standard object classes and attributes, a
33 #  large number of generally useful object classes and attributes are
34 #  also defined.  An appendix to this document includes a machine
35 #  processable version of the schema.
36 #
37 # [trimmed]
38
39 # 7.  Object Identifiers
40 #
41 #  Some additional object identifiers are defined for this schema.
42 #  These are also reproduced in Appendix C.
43 #
44 #    data OBJECT IDENTIFIER ::= {ccitt 9}
45 #    pss OBJECT IDENTIFIER ::= {data 2342}
46 #    ucl OBJECT IDENTIFIER ::= {pss 19200300}
47 #    pilot OBJECT IDENTIFIER ::= {ucl 100}
48 #
49 #    pilotAttributeType OBJECT IDENTIFIER ::= {pilot 1}
50 #    pilotAttributeSyntax OBJECT IDENTIFIER ::= {pilot 3}
51 #    pilotObjectClass OBJECT IDENTIFIER ::= {pilot 4}
52 #    pilotGroups OBJECT IDENTIFIER ::= {pilot 10}
53 #
54 #    iA5StringSyntax OBJECT IDENTIFIER ::= {pilotAttributeSyntax 4}
55 #    caseIgnoreIA5StringSyntax OBJECT IDENTIFIER ::=
56 #                                          {pilotAttributeSyntax 5}
57 #
58 # 8.  Object Classes
59 # [relocated after 9]
60
61 #
62 # 9.  Attribute Types
63 #
64 # 9.1.  X.500 standard attribute types
65 #
66 #  A number of generally useful attribute types are defined in X.520,
67 #  and these are supported.  Refer to that document for descriptions of
68 #  the suggested usage of these attribute types.  The ASN.1 for these
69 #  attribute types is reproduced for completeness in Appendix C.
70 #
71 # 9.2.  X.400 standard attribute types
72 #
73 #  The standard X.400 attribute types are supported.  See X.402 for full
74 #  details.  The ASN.1 for these attribute types is reproduced in
75 #  Appendix C.
76 #
77 # 9.3.  COSINE/Internet attribute types
78 #
79 #  This section describes all the attribute types defined for use in the
80 #  COSINE and Internet pilots.  Descriptions are given as to the
81 #  suggested usage of these attribute types.  The ASN.1 for these
82 #  attribute types is reproduced in Appendix C.
83 #
84 # 9.3.1.  Userid
85 #
86 #  The Userid attribute type specifies a computer system login name.
87 #
88 #    userid ATTRIBUTE
89 #        WITH ATTRIBUTE-SYNTAX
90 #            caseIgnoreStringSyntax
91 #            (SIZE (1 .. ub-user-identifier))
92 #    ::= {pilotAttributeType 1}
93 #
94 #(in core.schema)
95 ##attributetype ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
96 ##      EQUALITY caseIgnoreMatch
97 ##      SUBSTR caseIgnoreSubstringsMatch
98 ##      SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
99
100 # 9.3.2.  Text Encoded O/R Address
101 #
102 #  The Text Encoded O/R Address attribute type specifies a text encoding
103 #  of an X.400 O/R address, as specified in RFC 987.  The use of this
104 #  attribute is deprecated as the attribute is intended for interim use
105 #  only.  This attribute will be the first candidate for the attribute
106 #  expiry mechanisms!
107 #
108 #    textEncodedORAddress ATTRIBUTE
109 #        WITH ATTRIBUTE-SYNTAX
110 #            caseIgnoreStringSyntax
111 #        (SIZE (1 .. ub-text-encoded-or-address))
112 #    ::= {pilotAttributeType 2}
113 #
114 attributetype ( 0.9.2342.19200300.100.1.2 NAME 'textEncodedORAddress'
115         EQUALITY caseIgnoreMatch
116         SUBSTR caseIgnoreSubstringsMatch
117         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
118
119 # 9.3.3.  RFC 822 Mailbox
120 #
121 #  The RFC822 Mailbox attribute type specifies an electronic mailbox
122 #  attribute following the syntax specified in RFC 822.  Note that this
123 #  attribute should not be used for greybook or other non-Internet order
124 #  mailboxes.
125 #
126 #    rfc822Mailbox ATTRIBUTE
127 #        WITH ATTRIBUTE-SYNTAX
128 #            caseIgnoreIA5StringSyntax
129 #            (SIZE (1 .. ub-rfc822-mailbox))
130 #    ::= {pilotAttributeType 3}
131 #
132 #(in core.schema)
133 ##attributetype ( 0.9.2342.19200300.100.1.3 NAME ( 'mail' 'rfc822Mailbox' )
134 ##      EQUALITY caseIgnoreIA5Match
135 ##      SUBSTR caseIgnoreIA5SubstringsMatch
136 ##      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
137
138 # 9.3.4.  Information
139 #
140 #  The Information attribute type specifies any general information
141 #  pertinent to an object.  It is recommended that specific usage of
142 #  this attribute type is avoided, and that specific requirements are
143 #  met by other (possibly additional) attribute types.
144 #
145 #    info ATTRIBUTE
146 #        WITH ATTRIBUTE-SYNTAX
147 #            caseIgnoreStringSyntax
148 #            (SIZE (1 .. ub-information))
149 #    ::= {pilotAttributeType 4}
150 #
151 attributetype ( 0.9.2342.19200300.100.1.4 NAME 'info'
152         DESC 'RFC1274: general information'
153         EQUALITY caseIgnoreMatch
154         SUBSTR caseIgnoreSubstringsMatch
155         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{2048} )
156
157
158 # 9.3.5.  Favourite Drink
159 #
160 #  The Favourite Drink attribute type specifies the favourite drink of
161 #  an object (or person).
162 #
163 #    favouriteDrink ATTRIBUTE
164 #        WITH ATTRIBUTE-SYNTAX
165 #            caseIgnoreStringSyntax
166 #            (SIZE (1 .. ub-favourite-drink))
167 #    ::= {pilotAttributeType 5}
168 #
169 attributetype ( 0.9.2342.19200300.100.1.5
170         NAME ( 'drink' 'favouriteDrink' )
171         DESC 'RFC1274: favorite drink'
172         EQUALITY caseIgnoreMatch
173         SUBSTR caseIgnoreSubstringsMatch
174         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
175
176 # 9.3.6.  Room Number
177 #
178 #  The Room Number attribute type specifies the room number of an
179 #  object.  Note that the commonName attribute should be used for naming
180 #  room objects.
181 #
182 #    roomNumber ATTRIBUTE
183 #        WITH ATTRIBUTE-SYNTAX
184 #            caseIgnoreStringSyntax
185 #            (SIZE (1 .. ub-room-number))
186 #    ::= {pilotAttributeType 6}
187 #
188 attributetype ( 0.9.2342.19200300.100.1.6 NAME 'roomNumber'
189         DESC 'RFC1274: room number'
190         EQUALITY caseIgnoreMatch
191         SUBSTR caseIgnoreSubstringsMatch
192         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
193
194 # 9.3.7.  Photo
195 #
196 #  The Photo attribute type specifies a "photograph" for an object.
197 #  This should be encoded in G3 fax as explained in recommendation T.4,
198 #  with an ASN.1 wrapper to make it compatible with an X.400 BodyPart as
199 #  defined in X.420.
200 #
201 #    IMPORT  G3FacsimileBodyPart  FROM  {   mhs-motis   ipms   modules
202 #    information-objects }
203 #
204 #    photo ATTRIBUTE
205 #        WITH ATTRIBUTE-SYNTAX
206 #            CHOICE {
207 #                g3-facsimile [3] G3FacsimileBodyPart
208 #                }
209 #        (SIZE (1 .. ub-photo))
210 #    ::= {pilotAttributeType 7}
211 #
212 attributetype ( 0.9.2342.19200300.100.1.7 NAME 'photo'
213         DESC 'RFC1274: photo (G3 fax)'
214         SYNTAX 1.3.6.1.4.1.1466.115.121.1.23{25000} )
215
216 # 9.3.8.  User Class
217 #
218 #  The User Class attribute type specifies a category of computer user.
219 #  The semantics placed on this attribute are for local interpretation.
220 #  Examples of current usage od this attribute in academia are
221 #  undergraduate student, researcher, lecturer, etc.  Note that the
222 #  organizationalStatus attribute may now often be preferred as it makes
223 #  no distinction between computer users and others.
224 #
225 #    userClass ATTRIBUTE
226 #        WITH ATTRIBUTE-SYNTAX
227 #            caseIgnoreStringSyntax
228 #            (SIZE (1 .. ub-user-class))
229 #    ::= {pilotAttributeType 8}
230 #
231 attributetype ( 0.9.2342.19200300.100.1.8 NAME 'userClass'
232         DESC 'RFC1274: categorory of user'
233         EQUALITY caseIgnoreMatch
234         SUBSTR caseIgnoreSubstringsMatch
235         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
236
237 # 9.3.9.  Host
238 #
239 #  The Host attribute type specifies a host computer.
240 #
241 #    host ATTRIBUTE
242 #        WITH ATTRIBUTE-SYNTAX
243 #            caseIgnoreStringSyntax
244 #            (SIZE (1 .. ub-host))
245 #    ::= {pilotAttributeType 9}
246 #
247 attributetype ( 0.9.2342.19200300.100.1.9 NAME 'host'
248         DESC 'RFC1274: host computer'
249         EQUALITY caseIgnoreMatch
250         SUBSTR caseIgnoreSubstringsMatch
251         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
252
253 # 9.3.10.  Manager
254 #
255 #  The Manager attribute type specifies the manager of an object
256 #  represented by an entry.
257 #
258 #    manager ATTRIBUTE
259 #        WITH ATTRIBUTE-SYNTAX
260 #            distinguishedNameSyntax
261 #    ::= {pilotAttributeType 10}
262 #
263 attributetype ( 0.9.2342.19200300.100.1.10 NAME 'manager'
264         DESC 'RFC1274: DN of manager'
265         EQUALITY distinguishedNameMatch
266         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
267
268 # 9.3.11.  Document Identifier
269 #
270 #  The Document Identifier attribute type specifies a unique identifier
271 #  for a document.
272 #
273 #    documentIdentifier ATTRIBUTE
274 #        WITH ATTRIBUTE-SYNTAX
275 #            caseIgnoreStringSyntax
276 #            (SIZE (1 .. ub-document-identifier))
277 #    ::= {pilotAttributeType 11}
278 #
279 attributetype ( 0.9.2342.19200300.100.1.11 NAME 'documentIdentifier'
280         DESC 'RFC1274: unique identifier of document'
281         EQUALITY caseIgnoreMatch
282         SUBSTR caseIgnoreSubstringsMatch
283         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
284
285 # 9.3.12.  Document Title
286 #
287 #  The Document Title attribute type specifies the title of a document.
288 #
289 #    documentTitle ATTRIBUTE
290 #        WITH ATTRIBUTE-SYNTAX
291 #            caseIgnoreStringSyntax
292 #        (SIZE (1 .. ub-document-title))
293 #    ::= {pilotAttributeType 12}
294 #
295 attributetype ( 0.9.2342.19200300.100.1.12 NAME 'documentTitle'
296         DESC 'RFC1274: title of document'
297         EQUALITY caseIgnoreMatch
298         SUBSTR caseIgnoreSubstringsMatch
299         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
300
301 # 9.3.13.  Document Version
302 #
303 #  The Document Version attribute type specifies the version number of a
304 #  document.
305 #
306 #    documentVersion ATTRIBUTE
307 #        WITH ATTRIBUTE-SYNTAX
308 #            caseIgnoreStringSyntax
309 #            (SIZE (1 .. ub-document-version))
310 #    ::= {pilotAttributeType 13}
311 #
312 attributetype ( 0.9.2342.19200300.100.1.13 NAME 'documentVersion'
313         DESC 'RFC1274: version of document'
314         EQUALITY caseIgnoreMatch
315         SUBSTR caseIgnoreSubstringsMatch
316         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
317
318 # 9.3.14.  Document Author
319 #
320 #  The Document Author attribute type specifies the distinguished name
321 #  of the author of a document.
322 #
323 #    documentAuthor ATTRIBUTE
324 #        WITH ATTRIBUTE-SYNTAX
325 #            distinguishedNameSyntax
326 #    ::= {pilotAttributeType 14}
327 #
328 attributetype ( 0.9.2342.19200300.100.1.14 NAME 'documentAuthor'
329         DESC 'RFC1274: DN of author of document'
330         EQUALITY distinguishedNameMatch
331         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
332
333 # 9.3.15.  Document Location
334 #
335 #  The Document Location attribute type specifies the location of the
336 #  document original.
337 #
338 #    documentLocation ATTRIBUTE
339 #        WITH ATTRIBUTE-SYNTAX
340 #            caseIgnoreStringSyntax
341 #            (SIZE (1 .. ub-document-location))
342 #    ::= {pilotAttributeType 15}
343 #
344 attributetype ( 0.9.2342.19200300.100.1.15 NAME 'documentLocation'
345         DESC 'RFC1274: location of document original'
346         EQUALITY caseIgnoreMatch
347         SUBSTR caseIgnoreSubstringsMatch
348         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
349
350 # 9.3.16.  Home Telephone Number
351 #
352 #  The Home Telephone Number attribute type specifies a home telephone
353 #  number associated with a person.  Attribute values should follow the
354 #  agreed format for international telephone numbers: i.e., "+44 71 123
355 #  4567".
356 #
357 #    homeTelephoneNumber ATTRIBUTE
358 #        WITH ATTRIBUTE-SYNTAX
359 #            telephoneNumberSyntax
360 #    ::= {pilotAttributeType 20}
361 #
362 attributetype ( 0.9.2342.19200300.100.1.20
363         DESC 'RFC1274: home telephone number'
364         NAME ( 'homePhone' 'homeTelephoneNumber' )
365         EQUALITY telephoneNumberMatch
366         SUBSTR telephoneNumberSubstringsMatch
367         SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
368
369 # 9.3.17.  Secretary
370 #
371 #  The Secretary attribute type specifies the secretary of a person.
372 #  The attribute value for Secretary is a distinguished name.
373 #
374 #    secretary ATTRIBUTE
375 #        WITH ATTRIBUTE-SYNTAX
376 #            distinguishedNameSyntax
377 #    ::= {pilotAttributeType 21}
378 #
379 attributetype ( 0.9.2342.19200300.100.1.21 NAME 'secretary'
380         DESC 'RFC1274: DN of secretary'
381         EQUALITY distinguishedNameMatch
382         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
383
384 # 9.3.18.  Other Mailbox
385 #
386 #  The Other Mailbox attribute type specifies values for electronic
387 #  mailbox types other than X.400 and rfc822.
388 #
389 #    otherMailbox ATTRIBUTE
390 #        WITH ATTRIBUTE-SYNTAX
391 #            SEQUENCE {
392 #                    mailboxType PrintableString, -- e.g. Telemail
393 #                    mailbox IA5String  -- e.g. X378:Joe
394 #            }
395 #    ::= {pilotAttributeType 22}
396 #
397 attributetype ( 0.9.2342.19200300.100.1.22 NAME 'otherMailbox'
398         SYNTAX 1.3.6.1.4.1.1466.115.121.1.39 )
399
400 # 9.3.19.  Last Modified Time
401 #
402 #  The Last Modified Time attribute type specifies the last time, in UTC
403 #  time, that an entry was modified.  Ideally, this attribute should be
404 #  maintained by the DSA.
405 #
406 #    lastModifiedTime ATTRIBUTE
407 #        WITH ATTRIBUTE-SYNTAX
408 #            uTCTimeSyntax
409 #    ::= {pilotAttributeType 23}
410 #
411 ## OBSOLETE
412 #attributetype ( 0.9.2342.19200300.100.1.23 NAME 'lastModifiedTime'
413 #       DESC 'RFC1274: time of last modify, replaced by modifyTimestamp'
414 #       OBSOLETE
415 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.53
416 #       USAGE directoryOperation )
417
418 # 9.3.20.  Last Modified By
419 #
420 #  The Last Modified By attribute specifies the distinguished name of
421 #  the last user to modify the associated entry.  Ideally, this
422 #  attribute should be maintained by the DSA.
423 #
424 #    lastModifiedBy ATTRIBUTE
425 #        WITH ATTRIBUTE-SYNTAX
426 #            distinguishedNameSyntax
427 #    ::= {pilotAttributeType 24}
428 #
429 ## OBSOLETE
430 #attributetype ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
431 #       DESC 'RFC1274: last modifier, replaced by modifiersName'
432 #       OBSOLETE
433 #       EQUALITY distinguishedNameMatch
434 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
435 #       USAGE directoryOperation )
436
437 # 9.3.21.  Domain Component
438 #
439 #  The Domain Component attribute type specifies a DNS/NRS domain.  For
440 #  example, "uk" or "ac".
441 #
442 #    domainComponent ATTRIBUTE
443 #        WITH ATTRIBUTE-SYNTAX
444 #            caseIgnoreIA5StringSyntax
445 #            SINGLE VALUE
446 #    ::= {pilotAttributeType 25}
447 #
448 ##(in core.schema)
449 ##attributetype ( 0.9.2342.19200300.100.1.25 NAME ( 'dc' 'domainComponent' )
450 ##      EQUALITY caseIgnoreIA5Match
451 ##      SUBSTR caseIgnoreIA5SubstringsMatch
452 ##      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
453
454 # 9.3.22.  DNS ARecord
455 #
456 #  The A Record attribute type specifies a type A (Address) DNS resource
457 #  record [6] [7].
458 #
459 #    aRecord ATTRIBUTE
460 #        WITH ATTRIBUTE-SYNTAX
461 #            DNSRecordSyntax
462 #    ::= {pilotAttributeType 26}
463 #
464 ## incorrect syntax?
465 attributetype ( 0.9.2342.19200300.100.1.26 NAME 'aRecord'
466         EQUALITY caseIgnoreIA5Match
467         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
468
469 ## missing from RFC1274
470 ## incorrect syntax?
471 attributetype ( 0.9.2342.19200300.100.1.27 NAME 'mDRecord'
472         EQUALITY caseIgnoreIA5Match
473         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
474
475 # 9.3.23.  MX Record
476 #
477 #  The MX Record attribute type specifies a type MX (Mail Exchange) DNS
478 #  resource record [6] [7].
479 #
480 #    mXRecord ATTRIBUTE
481 #        WITH ATTRIBUTE-SYNTAX
482 #            DNSRecordSyntax
483 #    ::= {pilotAttributeType 28}
484 #
485 ## incorrect syntax!!
486 attributetype ( 0.9.2342.19200300.100.1.28 NAME 'mXRecord'
487         EQUALITY caseIgnoreIA5Match
488         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
489
490 # 9.3.24.  NS Record
491 #
492 #  The NS Record attribute type specifies an NS (Name Server) DNS
493 #  resource record [6] [7].
494 #
495 #    nSRecord ATTRIBUTE
496 #        WITH ATTRIBUTE-SYNTAX
497 #            DNSRecordSyntax
498 #    ::= {pilotAttributeType 29}
499 #
500 ## incorrect syntax!!
501 attributetype ( 0.9.2342.19200300.100.1.29 NAME 'nSRecord'
502         EQUALITY caseIgnoreIA5Match
503         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
504
505 # 9.3.25.  SOA Record
506 #
507 #  The SOA Record attribute type specifies a type SOA (Start of
508 #  Authority) DNS resorce record [6] [7].
509 #
510 #    sOARecord ATTRIBUTE
511 #        WITH ATTRIBUTE-SYNTAX
512 #            DNSRecordSyntax
513 #    ::= {pilotAttributeType 30}
514 #
515 ## incorrect syntax!!
516 attributetype ( 0.9.2342.19200300.100.1.30 NAME 'sOARecord'
517         EQUALITY caseIgnoreIA5Match
518         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
519
520 # 9.3.26.  CNAME Record
521 #
522 #  The CNAME Record attribute type specifies a type CNAME (Canonical
523 #  Name) DNS resource record [6] [7].
524 #
525 #    cNAMERecord ATTRIBUTE
526 #        WITH ATTRIBUTE-SYNTAX
527 #            iA5StringSyntax
528 #    ::= {pilotAttributeType 31}
529 #
530 ## incorrect syntax!!
531 attributetype ( 0.9.2342.19200300.100.1.31 NAME 'cNAMERecord'
532         EQUALITY caseIgnoreIA5Match
533         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
534
535 # 9.3.27.  Associated Domain
536 #
537 #  The Associated Domain attribute type specifies a DNS or NRS domain
538 #  which is associated with an object in the DIT. For example, the entry
539 #  in the DIT with a distinguished name "C=GB, O=University College
540 #  London" would have an associated domain of "UCL.AC.UK.  Note that all
541 #  domains should be represented in rfc822 order.  See [3] for more
542 #  details of usage of this attribute.
543 #
544 #    associatedDomain ATTRIBUTE
545 #        WITH ATTRIBUTE-SYNTAX
546 #            caseIgnoreIA5StringSyntax
547 #    ::= {pilotAttributeType 37}
548 #
549 #attributetype ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
550 #       EQUALITY caseIgnoreIA5Match
551 #       SUBSTR caseIgnoreIA5SubstringsMatch
552 #       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
553
554 # 9.3.28.  Associated Name
555 #
556 #  The Associated Name attribute type specifies an entry in the
557 #  organisational DIT associated with a DNS/NRS domain.  See [3] for
558 #  more details of usage of this attribute.
559 #
560 #    associatedName ATTRIBUTE
561 #        WITH ATTRIBUTE-SYNTAX
562 #            distinguishedNameSyntax
563 #    ::= {pilotAttributeType 38}
564 #
565 attributetype ( 0.9.2342.19200300.100.1.38 NAME 'associatedName'
566         DESC 'RFC1274: DN of entry associated with domain'
567         EQUALITY distinguishedNameMatch
568         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
569
570 # 9.3.29.  Home postal address
571 #
572 #  The Home postal address attribute type specifies a home postal
573 #  address for an object.  This should be limited to up to 6 lines of 30
574 #  characters each.
575 #
576 #    homePostalAddress ATTRIBUTE
577 #        WITH ATTRIBUTE-SYNTAX
578 #            postalAddress
579 #            MATCHES FOR EQUALITY
580 #    ::= {pilotAttributeType 39}
581 #
582 attributetype ( 0.9.2342.19200300.100.1.39 NAME 'homePostalAddress'
583         DESC 'RFC1274: home postal address'
584         EQUALITY caseIgnoreListMatch
585         SUBSTR caseIgnoreListSubstringsMatch
586         SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
587
588 # 9.3.30.  Personal Title
589 #
590 #  The Personal Title attribute type specifies a personal title for a
591 #  person. Examples of personal titles are "Ms", "Dr", "Prof" and "Rev".
592 #
593 #    personalTitle ATTRIBUTE
594 #        WITH ATTRIBUTE-SYNTAX
595 #            caseIgnoreStringSyntax
596 #            (SIZE (1 .. ub-personal-title))
597 #    ::= {pilotAttributeType 40}
598 #
599 attributetype ( 0.9.2342.19200300.100.1.40 NAME 'personalTitle'
600         DESC 'RFC1274: personal title'
601         EQUALITY caseIgnoreMatch
602         SUBSTR caseIgnoreSubstringsMatch
603         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
604
605 # 9.3.31.  Mobile Telephone Number
606 #
607 #  The Mobile Telephone Number attribute type specifies a mobile
608 #  telephone number associated with a person.  Attribute values should
609 #  follow the agreed format for international telephone numbers: i.e.,
610 #  "+44 71 123 4567".
611 #
612 #    mobileTelephoneNumber ATTRIBUTE
613 #        WITH ATTRIBUTE-SYNTAX
614 #            telephoneNumberSyntax
615 #    ::= {pilotAttributeType 41}
616 #
617 attributetype ( 0.9.2342.19200300.100.1.41
618         NAME ( 'mobile' 'mobileTelephoneNumber' )
619         DESC 'RFC1274: mobile telephone number'
620         EQUALITY telephoneNumberMatch
621         SUBSTR telephoneNumberSubstringsMatch
622         SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
623
624 # 9.3.32.  Pager Telephone Number
625 #
626 #  The Pager Telephone Number attribute type specifies a pager telephone
627 #  number for an object. Attribute values should follow the agreed
628 #  format for international telephone numbers: i.e., "+44 71 123 4567".
629 #
630 #    pagerTelephoneNumber ATTRIBUTE
631 #        WITH ATTRIBUTE-SYNTAX
632 #            telephoneNumberSyntax
633 #    ::= {pilotAttributeType 42}
634 #
635 attributetype ( 0.9.2342.19200300.100.1.42
636         NAME ( 'pager' 'pagerTelephoneNumber' )
637         DESC 'RFC1274: pager telephone number'
638         EQUALITY telephoneNumberMatch
639         SUBSTR telephoneNumberSubstringsMatch
640         SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
641
642 # 9.3.33.  Friendly Country Name
643 #
644 #  The Friendly Country Name attribute type specifies names of countries
645 #  in human readable format.  The standard attribute country name must
646 #  be one of the two-letter codes defined in ISO 3166.
647 #
648 #    friendlyCountryName ATTRIBUTE
649 #        WITH ATTRIBUTE-SYNTAX
650 #            caseIgnoreStringSyntax
651 #    ::= {pilotAttributeType 43}
652 #
653 attributetype ( 0.9.2342.19200300.100.1.43
654         NAME ( 'co' 'friendlyCountryName' )
655         DESC 'RFC1274: friendly country name'
656         EQUALITY caseIgnoreMatch
657         SUBSTR caseIgnoreSubstringsMatch
658         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
659
660 # 9.3.34.  Unique Identifier
661 #
662 #  The Unique Identifier attribute type specifies a "unique identifier"
663 #  for an object represented in the Directory.  The domain within which
664 #  the identifier is unique, and the exact semantics of the identifier,
665 #  are for local definition.  For a person, this might be an
666 #  institution-wide payroll number.  For an organisational unit, it
667 #  might be a department code.
668 #
669 #    uniqueIdentifier ATTRIBUTE
670 #        WITH ATTRIBUTE-SYNTAX
671 #            caseIgnoreStringSyntax
672 #            (SIZE (1 .. ub-unique-identifier))
673 #    ::= {pilotAttributeType 44}
674 #
675 attributetype ( 0.9.2342.19200300.100.1.44 NAME 'uniqueIdentifier'
676         DESC 'RFC1274: unique identifer'
677         EQUALITY caseIgnoreMatch
678         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
679
680 # 9.3.35.  Organisational Status
681 #
682 #  The Organisational Status attribute type specifies a category by
683 #  which a person is often referred to in an organisation.  Examples of
684 #  usage in academia might include undergraduate student, researcher,
685 #  lecturer, etc.
686 #
687 #  A Directory administrator should probably consider carefully the
688 #  distinctions between this and the title and userClass attributes.
689 #
690 #    organizationalStatus ATTRIBUTE
691 #            WITH ATTRIBUTE-SYNTAX
692 #            caseIgnoreStringSyntax
693 #            (SIZE (1 .. ub-organizational-status))
694 #    ::= {pilotAttributeType 45}
695 #
696 attributetype ( 0.9.2342.19200300.100.1.45 NAME 'organizationalStatus'
697         DESC 'RFC1274: organizational status'
698         EQUALITY caseIgnoreMatch
699         SUBSTR caseIgnoreSubstringsMatch
700         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
701
702 # 9.3.36.  Janet Mailbox
703 #
704 #  The Janet Mailbox attribute type specifies an electronic mailbox
705 #  attribute following the syntax specified in the Grey Book of the
706 #  Coloured Book series.  This attribute is intended for the convenience
707 #  of U.K users unfamiliar with rfc822 and little-endian mail addresses.
708 #  Entries using this attribute MUST also include an rfc822Mailbox
709 #  attribute.
710 #
711 #    janetMailbox ATTRIBUTE
712 #        WITH ATTRIBUTE-SYNTAX
713 #            caseIgnoreIA5StringSyntax
714 #            (SIZE (1 .. ub-janet-mailbox))
715 #    ::= {pilotAttributeType 46}
716 #
717 attributetype ( 0.9.2342.19200300.100.1.46 NAME 'janetMailbox'
718         DESC 'RFC1274: Janet mailbox'
719         EQUALITY caseIgnoreIA5Match
720         SUBSTR caseIgnoreIA5SubstringsMatch
721         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
722
723 # 9.3.37.  Mail Preference Option
724 #
725 #  An attribute to allow users to indicate a preference for inclusion of
726 #  their names on mailing lists (electronic or physical).  The absence
727 #  of such an attribute should be interpreted as if the attribute was
728 #  present with value "no-list-inclusion".  This attribute should be
729 #  interpreted by anyone using the directory to derive mailing lists,
730 #  and its value respected.
731 #
732 #    mailPreferenceOption ATTRIBUTE
733 #        WITH ATTRIBUTE-SYNTAX ENUMERATED {
734 #                no-list-inclusion(0),
735 #                any-list-inclusion(1),  -- may be added to any lists
736 #                professional-list-inclusion(2)
737 #                                        -- may be added to lists
738 #                                        -- which the list provider
739 #                                        -- views as related to the
740 #                                        -- users professional inter-
741 #                                        -- ests, perhaps evaluated
742 #                                        -- from the business of the
743 #                                        -- organisation or keywords
744 #                                        -- in the entry.
745 #                }
746 #    ::= {pilotAttributeType 47}
747 #
748 attributetype ( 0.9.2342.19200300.100.1.47
749         NAME 'mailPreferenceOption'
750         DESC 'RFC1274: mail preference option'
751         SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
752
753 # 9.3.38.  Building Name
754 #
755 #  The Building Name attribute type specifies the name of the building
756 #  where an organisation or organisational unit is based.
757 #
758 #    buildingName ATTRIBUTE
759 #        WITH ATTRIBUTE-SYNTAX
760 #            caseIgnoreStringSyntax
761 #            (SIZE (1 .. ub-building-name))
762 #    ::= {pilotAttributeType 48}
763 #
764 attributetype ( 0.9.2342.19200300.100.1.48 NAME 'buildingName'
765         DESC 'RFC1274: name of building'
766         EQUALITY caseIgnoreMatch
767         SUBSTR caseIgnoreSubstringsMatch
768         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
769
770 # 9.3.39.  DSA Quality
771 #
772 #  The DSA Quality attribute type specifies the purported quality of a
773 #  DSA.  It allows a DSA manager to indicate the expected level of
774 #  availability of the DSA. See [8] for details of the syntax.
775 #
776 #    dSAQuality ATTRIBUTE
777 #            WITH ATTRIBUTE-SYNTAX DSAQualitySyntax
778 #            SINGLE VALUE
779 #    ::= {pilotAttributeType 49}
780 #
781 attributetype ( 0.9.2342.19200300.100.1.49 NAME 'dSAQuality'
782         DESC 'RFC1274: DSA Quality'
783         SYNTAX 1.3.6.1.4.1.1466.115.121.1.19 SINGLE-VALUE )
784
785 # 9.3.40.  Single Level Quality
786 #
787 #  The Single Level Quality attribute type specifies the purported data
788 #  quality at the level immediately below in the DIT.  See [8] for
789 #  details of the syntax.
790 #
791 #    singleLevelQuality ATTRIBUTE
792 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
793 #            SINGLE VALUE
794 #    ::= {pilotAttributeType 50}
795 #
796 attributetype ( 0.9.2342.19200300.100.1.50 NAME 'singleLevelQuality'
797         DESC 'RFC1274: Single Level Quality'
798         SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
799
800 # 9.3.41.  Subtree Minimum Quality
801 #
802 #  The Subtree Minimum Quality attribute type specifies the purported
803 #  minimum data quality for a DIT subtree.  See [8] for more discussion
804 #  and details of the syntax.
805 #
806 #    subtreeMinimumQuality ATTRIBUTE
807 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
808 #            SINGLE VALUE
809 #               -- Defaults to singleLevelQuality
810 #    ::= {pilotAttributeType 51}
811 #
812 attributetype ( 0.9.2342.19200300.100.1.51 NAME 'subtreeMinimumQuality'
813         DESC 'RFC1274: Subtree Mininum Quality'
814         SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
815
816 # 9.3.42.  Subtree Maximum Quality
817 #
818 #  The Subtree Maximum Quality attribute type specifies the purported
819 #  maximum data quality for a DIT subtree.  See [8] for more discussion
820 #  and details of the syntax.
821 #
822 #    subtreeMaximumQuality ATTRIBUTE
823 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
824 #            SINGLE VALUE
825 #               -- Defaults to singleLevelQuality
826 #    ::= {pilotAttributeType 52}
827 #
828 attributetype ( 0.9.2342.19200300.100.1.52 NAME 'subtreeMaximumQuality'
829         DESC 'RFC1274: Subtree Maximun Quality'
830         SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
831
832 # 9.3.43.  Personal Signature
833 #
834 #  The Personal Signature attribute type allows for a representation of
835 #  a person's signature.  This should be encoded in G3 fax as explained
836 #  in recommendation T.4, with an ASN.1 wrapper to make it compatible
837 #  with an X.400 BodyPart as defined in X.420.
838 #
839 #    IMPORT  G3FacsimileBodyPart  FROM  {   mhs-motis   ipms   modules
840 #    information-objects }
841 #
842 #    personalSignature ATTRIBUTE
843 #        WITH ATTRIBUTE-SYNTAX
844 #            CHOICE {
845 #                g3-facsimile [3] G3FacsimileBodyPart
846 #                }
847 #        (SIZE (1 .. ub-personal-signature))
848 #    ::= {pilotAttributeType 53}
849 #
850 attributetype ( 0.9.2342.19200300.100.1.53 NAME 'personalSignature'
851         DESC 'RFC1274: Personal Signature (G3 fax)'
852         SYNTAX 1.3.6.1.4.1.1466.115.121.1.23 )
853
854 # 9.3.44.  DIT Redirect
855 #
856 #  The DIT Redirect attribute type is used to indicate that the object
857 #  described by one entry now has a newer entry in the DIT.  The entry
858 #  containing the redirection attribute should be expired after a
859 #  suitable grace period.  This attribute may be used when an individual
860 #  changes his/her place of work, and thus acquires a new organisational
861 #  DN.
862 #
863 #    dITRedirect ATTRIBUTE
864 #        WITH ATTRIBUTE-SYNTAX
865 #            distinguishedNameSyntax
866 #    ::= {pilotAttributeType 54}
867 #
868 attributetype ( 0.9.2342.19200300.100.1.54 NAME 'dITRedirect'
869         DESC 'RFC1274: DIT Redirect'
870         EQUALITY distinguishedNameMatch
871         SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
872
873 # 9.3.45.  Audio
874 #
875 #  The Audio attribute type allows the storing of sounds in the
876 #  Directory.  The attribute uses a u-law encoded sound file as used by
877 #  the "play" utility on a Sun 4.  This is an interim format.
878 #
879 #    audio ATTRIBUTE
880 #        WITH ATTRIBUTE-SYNTAX
881 #            Audio
882 #        (SIZE (1 .. ub-audio))
883 #    ::= {pilotAttributeType 55}
884 #
885 attributetype ( 0.9.2342.19200300.100.1.55 NAME 'audio'
886         DESC 'RFC1274: audio (u-law)'
887         SYNTAX 1.3.6.1.4.1.1466.115.121.1.4{25000} )
888
889 # 9.3.46.  Publisher of Document
890 #
891 #
892 #  The Publisher of Document attribute is the person and/or organization
893 #  that published a document.
894 #
895 #    documentPublisher ATTRIBUTE
896 #            WITH ATTRIBUTE SYNTAX caseIgnoreStringSyntax
897 #    ::= {pilotAttributeType 56}
898 #
899 attributetype ( 0.9.2342.19200300.100.1.56 NAME 'documentPublisher'
900         DESC 'RFC1274: publisher of document'
901         EQUALITY caseIgnoreMatch
902         SUBSTR caseIgnoreSubstringsMatch
903         SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
904
905 # 9.4.  Generally useful syntaxes
906 #
907 #    caseIgnoreIA5StringSyntax ATTRIBUTE-SYNTAX
908 #            IA5String
909 #            MATCHES FOR EQUALITY SUBSTRINGS
910 #
911 #    iA5StringSyntax ATTRIBUTE-SYNTAX
912 #        IA5String
913 #        MATCHES FOR EQUALITY SUBSTRINGS
914 #
915 #
916 #    -- Syntaxes to support the DNS attributes
917 #
918 #    DNSRecordSyntax ATTRIBUTE-SYNTAX
919 #            IA5String
920 #            MATCHES FOR EQUALITY
921 #
922 #
923 #    NRSInformationSyntax ATTRIBUTE-SYNTAX
924 #            NRSInformation
925 #            MATCHES FOR EQUALITY
926 #
927 #
928 #    NRSInformation ::=  SET {
929 #                    [0] Context,
930 #                    [1] Address-space-id,
931 #                    routes [2] SEQUENCE OF SEQUENCE {
932 #                    Route-cost,
933 #                    Addressing-info }
934 #            }
935 #
936 #
937 # 9.5.  Upper bounds on length of attribute values
938 #
939 #
940 #    ub-document-identifier INTEGER ::= 256
941 #
942 #    ub-document-location INTEGER ::= 256
943 #
944 #    ub-document-title INTEGER ::= 256
945 #
946 #    ub-document-version INTEGER ::= 256
947 #
948 #    ub-favourite-drink INTEGER ::= 256
949 #
950 #    ub-host INTEGER ::= 256
951 #
952 #    ub-information INTEGER ::= 2048
953 #
954 #    ub-unique-identifier INTEGER ::= 256
955 #
956 #    ub-personal-title INTEGER ::= 256
957 #
958 #    ub-photo INTEGER ::= 250000
959 #
960 #    ub-rfc822-mailbox INTEGER ::= 256
961 #
962 #    ub-room-number INTEGER ::= 256
963 #
964 #    ub-text-or-address INTEGER ::= 256
965 #
966 #    ub-user-class INTEGER ::= 256
967 #
968 #    ub-user-identifier INTEGER ::= 256
969 #
970 #    ub-organizational-status INTEGER ::= 256
971 #
972 #    ub-janet-mailbox INTEGER ::= 256
973 #
974 #    ub-building-name INTEGER ::= 256
975 #
976 #    ub-personal-signature ::= 50000
977 #
978 #    ub-audio INTEGER ::= 250000
979 #
980
981 # [back to 8]
982 # 8.  Object Classes
983 #
984 # 8.1.  X.500 standard object classes
985 #
986 #  A number of generally useful object classes are defined in X.521, and
987 #  these are supported.  Refer to that document for descriptions of the
988 #  suggested usage of these object classes.  The ASN.1 for these object
989 #  classes is reproduced for completeness in Appendix C.
990 #
991 # 8.2.  X.400 standard object classes
992 #
993 #  A number of object classes defined in X.400 are supported.  Refer to
994 #  X.402 for descriptions of the usage of these object classes.  The
995 #  ASN.1 for these object classes is reproduced for completeness in
996 #  Appendix C.
997 #
998 # 8.3.  COSINE/Internet object classes
999 #
1000 #  This section attempts to fuse together the object classes designed
1001 #  for use in the COSINE and Internet pilot activities.  Descriptions
1002 #  are given of the suggested usage of these object classes.  The ASN.1
1003 #  for these object classes is also reproduced in Appendix C.
1004 #
1005 # 8.3.1.  Pilot Object
1006 #
1007 #  The PilotObject object class is used as a sub-class to allow some
1008 #  common, useful attributes to be assigned to entries of all other
1009 #  object classes.
1010 #
1011 #    pilotObject OBJECT-CLASS
1012 #        SUBCLASS OF top
1013 #        MAY CONTAIN {
1014 #            info,
1015 #            photo,
1016 #            manager,
1017 #            uniqueIdentifier,
1018 #            lastModifiedTime,
1019 #            lastModifiedBy,
1020 #            dITRedirect,
1021 #            audio}
1022 #    ::= {pilotObjectClass 3}
1023 #
1024 #objectclass ( 0.9.2342.19200300.100.4.3 NAME 'pilotObject'
1025 #       DESC 'RFC1274: pilot object'
1026 #       SUP top AUXILIARY
1027 #       MAY ( info $ photo $ manager $ uniqueIdentifier $
1028 #               lastModifiedTime $ lastModifiedBy $ dITRedirect $ audio )
1029 #       )
1030
1031 # 8.3.2.  Pilot Person
1032 #
1033 #  The PilotPerson object class is used as a sub-class of person, to
1034 #  allow the use of a number of additional attributes to be assigned to
1035 #  entries of object class person.
1036 #
1037 #    pilotPerson OBJECT-CLASS
1038 #        SUBCLASS OF person
1039 #        MAY CONTAIN {
1040 #                    userid,
1041 #                    textEncodedORAddress,
1042 #                    rfc822Mailbox,
1043 #                    favouriteDrink,
1044 #                    roomNumber,
1045 #                    userClass,
1046 #                    homeTelephoneNumber,
1047 #                    homePostalAddress,
1048 #                    secretary,
1049 #                    personalTitle,
1050 #                    preferredDeliveryMethod,
1051 #                    businessCategory,
1052 #                    janetMailbox,
1053 #                    otherMailbox,
1054 #                    mobileTelephoneNumber,
1055 #                    pagerTelephoneNumber,
1056 #                    organizationalStatus,
1057 #                    mailPreferenceOption,
1058 #                    personalSignature}
1059 #    ::= {pilotObjectClass 4}
1060 #
1061 objectclass ( 0.9.2342.19200300.100.4.4
1062         NAME ( 'pilotPerson' 'newPilotPerson' )
1063         SUP person STRUCTURAL
1064         MAY ( userid $ textEncodedORAddress $ rfc822Mailbox $
1065                 favouriteDrink $ roomNumber $ userClass $
1066                 homeTelephoneNumber $ homePostalAddress $ secretary $
1067                 personalTitle $ preferredDeliveryMethod $ businessCategory $
1068                 janetMailbox $ otherMailbox $ mobileTelephoneNumber $
1069                 pagerTelephoneNumber $ organizationalStatus $
1070                 mailPreferenceOption $ personalSignature )
1071         )
1072
1073 # 8.3.3.  Account
1074 #
1075 #  The Account object class is used to define entries representing
1076 #  computer accounts.  The userid attribute should be used for naming
1077 #  entries of this object class.
1078 #
1079 #    account OBJECT-CLASS
1080 #        SUBCLASS OF top
1081 #        MUST CONTAIN {
1082 #            userid}
1083 #        MAY CONTAIN {
1084 #            description,
1085 #            seeAlso,
1086 #            localityName,
1087 #            organizationName,
1088 #            organizationalUnitName,
1089 #            host}
1090 #    ::= {pilotObjectClass 5}
1091 #
1092 objectclass ( 0.9.2342.19200300.100.4.5 NAME 'account'
1093         SUP top STRUCTURAL
1094         MUST userid
1095         MAY ( description $ seeAlso $ localityName $
1096                 organizationName $ organizationalUnitName $ host )
1097         )
1098
1099 # 8.3.4.  Document
1100 #
1101 #  The Document object class is used to define entries which represent
1102 #  documents.
1103 #
1104 #    document OBJECT-CLASS
1105 #        SUBCLASS OF top
1106 #        MUST CONTAIN {
1107 #            documentIdentifier}
1108 #        MAY CONTAIN {
1109 #            commonName,
1110 #            description,
1111 #            seeAlso,
1112 #            localityName,
1113 #            organizationName,
1114 #            organizationalUnitName,
1115 #            documentTitle,
1116 #            documentVersion,
1117 #            documentAuthor,
1118 #            documentLocation,
1119 #            documentPublisher}
1120 #    ::= {pilotObjectClass 6}
1121 #
1122 objectclass ( 0.9.2342.19200300.100.4.6 NAME 'document'
1123         SUP top STRUCTURAL
1124         MUST documentIdentifier
1125         MAY ( commonName $ description $ seeAlso $ localityName $
1126                 organizationName $ organizationalUnitName $
1127                 documentTitle $ documentVersion $ documentAuthor $
1128                 documentLocation $ documentPublisher )
1129         )
1130
1131 # 8.3.5.  Room
1132 #
1133 #  The Room object class is used to define entries representing rooms.
1134 #  The commonName attribute should be used for naming pentries of this
1135 #  object class.
1136 #
1137 #    room OBJECT-CLASS
1138 #        SUBCLASS OF top
1139 #        MUST CONTAIN {
1140 #            commonName}
1141 #        MAY CONTAIN {
1142 #            roomNumber,
1143 #            description,
1144 #            seeAlso,
1145 #            telephoneNumber}
1146 #    ::= {pilotObjectClass 7}
1147 #
1148 objectclass ( 0.9.2342.19200300.100.4.7 NAME 'room'
1149         SUP top STRUCTURAL
1150         MUST commonName
1151         MAY ( roomNumber $ description $ seeAlso $ telephoneNumber )
1152         )
1153
1154 # 8.3.6.  Document Series
1155 #
1156 #  The Document Series object class is used to define an entry which
1157 #  represents a series of documents (e.g., The Request For Comments
1158 #  papers).
1159 #
1160 #    documentSeries OBJECT-CLASS
1161 #        SUBCLASS OF top
1162 #        MUST CONTAIN {
1163 #            commonName}
1164 #        MAY CONTAIN {
1165 #            description,
1166 #            seeAlso,
1167 #            telephoneNumber,
1168 #            localityName,
1169 #            organizationName,
1170 #            organizationalUnitName}
1171 #    ::= {pilotObjectClass 9}
1172 #
1173 objectclass ( 0.9.2342.19200300.100.4.9 NAME 'documentSeries'
1174         SUP top STRUCTURAL
1175         MUST commonName
1176         MAY ( description $ seeAlso $ telephonenumber $
1177                 localityName $ organizationName $ organizationalUnitName )
1178         )
1179
1180 # 8.3.7.  Domain
1181 #
1182 #  The Domain object class is used to define entries which represent DNS
1183 #  or NRS domains.  The domainComponent attribute should be used for
1184 #  naming entries of this object class.  The usage of this object class
1185 #  is described in more detail in [3].
1186 #
1187 #    domain OBJECT-CLASS
1188 #        SUBCLASS OF top
1189 #        MUST CONTAIN {
1190 #            domainComponent}
1191 #        MAY CONTAIN {
1192 #            associatedName,
1193 #            organizationName,
1194 #            organizationalAttributeSet}
1195 #    ::= {pilotObjectClass 13}
1196 #
1197 objectclass ( 0.9.2342.19200300.100.4.13 NAME 'domain'
1198         SUP top STRUCTURAL
1199         MUST domainComponent
1200         MAY ( associatedName $ organizationName $ description $
1201                 businessCategory $ seeAlso $ searchGuide $ userPassword $
1202                 localityName $ stateOrProvinceName $ streetAddress $
1203                 physicalDeliveryOfficeName $ postalAddress $ postalCode $
1204                 postOfficeBox $ streetAddress $
1205                 facsimileTelephoneNumber $ internationalISDNNumber $
1206                 telephoneNumber $ teletexTerminalIdentifier $ telexNumber $
1207                 preferredDeliveryMethod $ destinationIndicator $
1208                 registeredAddress $ x121Address )
1209         )
1210
1211 # 8.3.8.  RFC822 Local Part
1212 #
1213 #  The RFC822 Local Part object class is used to define entries which
1214 #  represent the local part of RFC822 mail addresses.  This treats this
1215 #  part of an RFC822 address as a domain.  The usage of this object
1216 #  class is described in more detail in [3].
1217 #
1218 #    rFC822localPart OBJECT-CLASS
1219 #        SUBCLASS OF domain
1220 #        MAY CONTAIN {
1221 #            commonName,
1222 #            surname,
1223 #            description,
1224 #            seeAlso,
1225 #            telephoneNumber,
1226 #            postalAttributeSet,
1227 #            telecommunicationAttributeSet}
1228 #    ::= {pilotObjectClass 14}
1229 #
1230 objectclass ( 0.9.2342.19200300.100.4.14 NAME 'RFC822localPart'
1231         SUP domain STRUCTURAL
1232         MAY ( commonName $ surname $ description $ seeAlso $ telephoneNumber $
1233                 physicalDeliveryOfficeName $ postalAddress $ postalCode $
1234                 postOfficeBox $ streetAddress $
1235                 facsimileTelephoneNumber $ internationalISDNNumber $
1236                 telephoneNumber $ teletexTerminalIdentifier $
1237                 telexNumber $ preferredDeliveryMethod $ destinationIndicator $
1238                 registeredAddress $ x121Address )
1239         )
1240
1241 # 8.3.9.  DNS Domain
1242 #
1243 #  The DNS Domain (Domain NameServer) object class is used to define
1244 #  entries for DNS domains.  The usage of this object class is described
1245 #  in more detail in [3].
1246 #
1247 #    dNSDomain OBJECT-CLASS
1248 #        SUBCLASS OF domain
1249 #        MAY CONTAIN {
1250 #            ARecord,
1251 #            MDRecord,
1252 #            MXRecord,
1253 #            NSRecord,
1254 #            SOARecord,
1255 #            CNAMERecord}
1256 #    ::= {pilotObjectClass 15}
1257 #
1258 objectclass ( 0.9.2342.19200300.100.4.15 NAME 'dNSDomain'
1259         SUP 'domain' STRUCTURAL
1260         MAY ( ARecord $ MDRecord $ MXRecord $ NSRecord $
1261                 SOARecord $ CNAMERecord )
1262         )
1263
1264 # 8.3.10.  Domain Related Object
1265 #
1266 #  The Domain Related Object object class is used to define entries
1267 #  which represent DNS/NRS domains which are "equivalent" to an X.500
1268 #  domain: e.g., an organisation or organisational unit.  The usage of
1269 #  this object class is described in more detail in [3].
1270 #
1271 #    domainRelatedObject OBJECT-CLASS
1272 #        SUBCLASS OF top
1273 #        MUST CONTAIN {
1274 #            associatedDomain}
1275 #    ::= {pilotObjectClass 17}
1276 #
1277 objectclass ( 0.9.2342.19200300.100.4.17 NAME 'domainRelatedObject'
1278         DESC 'RFC1274: an object related to an domain'
1279         SUP top AUXILIARY
1280         MUST associatedDomain )
1281
1282 # 8.3.11.  Friendly Country
1283 #
1284 #  The Friendly Country object class is used to define country entries
1285 #  in the DIT.  The object class is used to allow friendlier naming of
1286 #  countries than that allowed by the object class country.  The naming
1287 #  attribute of object class country, countryName, has to be a 2 letter
1288 #  string defined in ISO 3166.
1289 #
1290 #    friendlyCountry OBJECT-CLASS
1291 #        SUBCLASS OF country
1292 #        MUST CONTAIN {
1293 #            friendlyCountryName}
1294 #    ::= {pilotObjectClass 18}
1295 #
1296 objectclass ( 0.9.2342.19200300.100.4.18 NAME 'friendlyCountry'
1297         SUP country STRUCTURAL
1298         MUST friendlyCountryName )
1299
1300 # 8.3.12.  Simple Security Object
1301 #
1302 #  The Simple Security Object object class is used to allow an entry to
1303 #  have a userPassword attribute when an entry's principal object
1304 #  classes do not allow userPassword as an attribute type.
1305 #
1306 #    simpleSecurityObject OBJECT-CLASS
1307 #        SUBCLASS OF top
1308 #        MUST CONTAIN {
1309 #            userPassword }
1310 #    ::= {pilotObjectClass 19}
1311 #
1312 ## (in core.schema)
1313 ## objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
1314 ##      SUP top AUXILIARY
1315 ##      MUST userPassword )
1316
1317 # 8.3.13.  Pilot Organization
1318 #
1319 #  The PilotOrganization object class is used as a sub-class of
1320 #  organization and organizationalUnit to allow a number of additional
1321 #  attributes to be assigned to entries of object classes organization
1322 #  and organizationalUnit.
1323 #
1324 #    pilotOrganization OBJECT-CLASS
1325 #        SUBCLASS OF organization, organizationalUnit
1326 #        MAY CONTAIN {
1327 #                    buildingName}
1328 #    ::= {pilotObjectClass 20}
1329 #
1330 objectclass ( 0.9.2342.19200300.100.4.20 NAME 'pilotOrganization'
1331         SUP ( organization $ organizationalUnit ) STRUCTURAL
1332         MAY buildingName )
1333
1334 # 8.3.14.  Pilot DSA
1335 #
1336 #  The PilotDSA object class is used as a sub-class of the dsa object
1337 #  class to allow additional attributes to be assigned to entries for
1338 #  DSAs.
1339 #
1340 #    pilotDSA OBJECT-CLASS
1341 #        SUBCLASS OF dsa
1342 #        MUST CONTAIN {
1343 #            dSAQuality}
1344 #    ::= {pilotObjectClass 21}
1345 #
1346 objectclass ( 0.9.2342.19200300.100.4.21 NAME 'pilotDSA'
1347         SUP dsa STRUCTURAL
1348         MAY dSAQuality )
1349
1350 # 8.3.15.  Quality Labelled Data
1351 #
1352 #  The Quality Labelled Data object class is used to allow the
1353 #  assignment of the data quality attributes to subtrees in the DIT.
1354 #
1355 #  See [8] for more details.
1356 #
1357 #    qualityLabelledData OBJECT-CLASS
1358 #        SUBCLASS OF top
1359 #        MUST CONTAIN {
1360 #            dSAQuality}
1361 #        MAY CONTAIN {
1362 #            subtreeMinimumQuality,
1363 #            subtreeMaximumQuality}
1364 #    ::= {pilotObjectClass 22}
1365 objectclass ( 0.9.2342.19200300.100.4.22 NAME 'qualityLabelledData'
1366         SUP top AUXILIARY
1367         MUST dsaQuality
1368         MAY ( subtreeMinimumQuality $ subtreeMaximumQuality )
1369         )
1370
1371
1372 # References
1373 #
1374 #    [1]  CCITT/ISO, "X.500, The Directory - overview of concepts,
1375 #         models and services, CCITT /ISO IS 9594.
1376 #
1377 #    [2]  Kille, S., "The THORN and RARE X.500 Naming Architecture, in
1378 #         University College London, Department of Computer Science
1379 #         Research Note 89/48, May 1989.
1380 #
1381 #    [3]  Kille, S., "X.500 and Domains", RFC 1279, University College
1382 #         London, November 1991.
1383 #
1384 #    [4]  Rose, M., "PSI/NYSERNet White Pages Pilot Project: Status
1385 #         Report", Technical Report 90-09-10-1, published by NYSERNet
1386 #         Inc, 1990.
1387 #
1388 #    [5]  Craigie, J., "UK Academic Community Directory Service Pilot
1389 #         Project, pp. 305-310 in Computer Networks and ISDN Systems
1390 #         17 (1989), published by North Holland.
1391 #
1392 #    [6]  Mockapetris, P., "Domain Names - Concepts and Facilities",
1393 #         RFC 1034, USC/Information Sciences Institute, November 1987.
1394 #
1395 #    [7]  Mockapetris, P., "Domain Names - Implementation and
1396 #         Specification, RFC 1035, USC/Information Sciences Institute,
1397 #         November 1987.
1398 #
1399 #    [8]  Kille, S., "Handling QOS (Quality of service) in the
1400 #         Directory," publication in process, March 1991.
1401 #
1402 #
1403 # APPENDIX C - Summary of all Object Classes and Attribute Types
1404 #
1405 #    -- Some Important Object Identifiers
1406 #
1407 #    data OBJECT IDENTIFIER ::= {ccitt 9}
1408 #    pss OBJECT IDENTIFIER ::= {data 2342}
1409 #    ucl OBJECT IDENTIFIER ::= {pss 19200300}
1410 #    pilot OBJECT IDENTIFIER ::= {ucl 100}
1411 #
1412 #    pilotAttributeType OBJECT IDENTIFIER ::= {pilot 1}
1413 #    pilotAttributeSyntax OBJECT IDENTIFIER ::= {pilot 3}
1414 #    pilotObjectClass OBJECT IDENTIFIER ::= {pilot 4}
1415 #    pilotGroups OBJECT IDENTIFIER ::= {pilot 10}
1416 #
1417 #    iA5StringSyntax OBJECT IDENTIFIER ::= {pilotAttributeSyntax 4}
1418 #    caseIgnoreIA5StringSyntax OBJECT IDENTIFIER ::=
1419 #                                          {pilotAttributeSyntax 5}
1420 #
1421 #    -- Standard Object Classes
1422 #
1423 #    top OBJECT-CLASS
1424 #        MUST CONTAIN {
1425 #            objectClass}
1426 #    ::= {objectClass 0}
1427 #
1428 #
1429 #    alias OBJECT-CLASS
1430 #        SUBCLASS OF top
1431 #        MUST CONTAIN {
1432 #            aliasedObjectName}
1433 #    ::= {objectClass 1}
1434 #
1435 #
1436 #    country OBJECT-CLASS
1437 #        SUBCLASS OF top
1438 #        MUST CONTAIN {
1439 #            countryName}
1440 #        MAY CONTAIN {
1441 #            description,
1442 #            searchGuide}
1443 #    ::= {objectClass 2}
1444 #
1445 #
1446 #    locality OBJECT-CLASS
1447 #        SUBCLASS OF top
1448 #        MAY CONTAIN {
1449 #            description,
1450 #            localityName,
1451 #            stateOrProvinceName,
1452 #            searchGuide,
1453 #            seeAlso,
1454 #            streetAddress}
1455 #    ::= {objectClass 3}
1456 #
1457 #
1458 #    organization OBJECT-CLASS
1459 #        SUBCLASS OF top
1460 #        MUST CONTAIN {
1461 #            organizationName}
1462 #        MAY CONTAIN {
1463 #            organizationalAttributeSet}
1464 #    ::= {objectClass 4}
1465 #
1466 #
1467 #    organizationalUnit OBJECT-CLASS
1468 #        SUBCLASS OF top
1469 #        MUST CONTAIN {
1470 #            organizationalUnitName}
1471 #        MAY CONTAIN {
1472 #            organizationalAttributeSet}
1473 #    ::= {objectClass 5}
1474 #
1475 #
1476 #    person OBJECT-CLASS
1477 #        SUBCLASS OF top
1478 #        MUST CONTAIN {
1479 #            commonName,
1480 #            surname}
1481 #        MAY CONTAIN {
1482 #            description,
1483 #            seeAlso,
1484 #            telephoneNumber,
1485 #            userPassword}
1486 #    ::= {objectClass 6}
1487 #
1488 #
1489 #    organizationalPerson OBJECT-CLASS
1490 #        SUBCLASS OF person
1491 #        MAY CONTAIN {
1492 #            localeAttributeSet,
1493 #            organizationalUnitName,
1494 #            postalAttributeSet,
1495 #            telecommunicationAttributeSet,
1496 #            title}
1497 #    ::= {objectClass 7}
1498 #
1499 #
1500 #    organizationalRole OBJECT-CLASS
1501 #        SUBCLASS OF top
1502 #        MUST CONTAIN {
1503 #            commonName}
1504 #        MAY CONTAIN {
1505 #            description,
1506 #            localeAttributeSet,
1507 #            organizationalUnitName,
1508 #            postalAttributeSet,
1509 #            preferredDeliveryMethod,
1510 #            roleOccupant,
1511 #            seeAlso,
1512 #            telecommunicationAttributeSet}
1513 #    ::= {objectClass 8}
1514 #
1515 #
1516 #    groupOfNames OBJECT-CLASS
1517 #        SUBCLASS OF top
1518 #        MUST CONTAIN {
1519 #            commonName,
1520 #            member}
1521 #        MAY CONTAIN {
1522 #            description,
1523 #            organizationName,
1524 #            organizationalUnitName,
1525 #            owner,
1526 #            seeAlso,
1527 #            businessCategory}
1528 #    ::= {objectClass 9}
1529 #
1530 #
1531 #    residentialPerson OBJECT-CLASS
1532 #        SUBCLASS OF person
1533 #        MUST CONTAIN {
1534 #            localityName}
1535 #        MAY CONTAIN {
1536 #            localeAttributeSet,
1537 #            postalAttributeSet,
1538 #            preferredDeliveryMethod,
1539 #            telecommunicationAttributeSet,
1540 #            businessCategory}
1541 #    ::= {objectClass 10}
1542 #
1543 #
1544 #    applicationProcess OBJECT-CLASS
1545 #        SUBCLASS OF top
1546 #        MUST CONTAIN {
1547 #            commonName}
1548 #        MAY CONTAIN {
1549 #            description,
1550 #            localityName,
1551 #            organizationalUnitName,
1552 #            seeAlso}
1553 #    ::= {objectClass 11}
1554 #
1555 #
1556 #    applicationEntity OBJECT-CLASS
1557 #        SUBCLASS OF top
1558 #        MUST CONTAIN {
1559 #            commonName,
1560 #            presentationAddress}
1561 #        MAY CONTAIN {
1562 #            description,
1563 #            localityName,
1564 #            organizationName,
1565 #            organizationalUnitName,
1566 #            seeAlso,
1567 #            supportedApplicationContext}
1568 #    ::= {objectClass 12}
1569 #
1570 #
1571 #    dSA OBJECT-CLASS
1572 #        SUBCLASS OF applicationEntity
1573 #        MAY CONTAIN {
1574 #            knowledgeInformation}
1575 #    ::= {objectClass 13}
1576 #
1577 #
1578 #    device OBJECT-CLASS
1579 #        SUBCLASS OF top
1580 #        MUST CONTAIN {
1581 #            commonName}
1582 #        MAY CONTAIN {
1583 #            description,
1584 #            localityName,
1585 #            organizationName,
1586 #            organizationalUnitName,
1587 #            owner,
1588 #            seeAlso,
1589 #            serialNumber}
1590 #    ::= {objectClass 14}
1591 #
1592 #
1593 #    strongAuthenticationUser OBJECT-CLASS
1594 #        SUBCLASS OF top
1595 #        MUST CONTAIN {
1596 #            userCertificate}
1597 #    ::= {objectClass 15}
1598 #
1599 #
1600 #    certificationAuthority OBJECT-CLASS
1601 #        SUBCLASS OF top
1602 #        MUST CONTAIN {
1603 #            cACertificate,
1604 #            certificateRevocationList,
1605 #            authorityRevocationList}
1606 #        MAY CONTAIN {
1607 #            crossCertificatePair}
1608 #    ::= {objectClass 16}
1609 #
1610 #    -- Standard MHS Object Classes
1611 #
1612 #    mhsDistributionList OBJECT-CLASS
1613 #        SUBCLASS OF top
1614 #        MUST CONTAIN {
1615 #            commonName,
1616 #            mhsDLSubmitPermissions,
1617 #            mhsORAddresses}
1618 #        MAY CONTAIN {
1619 #            description,
1620 #            organizationName,
1621 #            organizationalUnitName,
1622 #            owner,
1623 #            seeAlso,
1624 #            mhsDeliverableContentTypes,
1625 #            mhsdeliverableEits,
1626 #            mhsDLMembers,
1627 #            mhsPreferredDeliveryMethods}
1628 #    ::= {mhsObjectClass 0}
1629 #
1630 #
1631 #    mhsMessageStore OBJECT-CLASS
1632 #        SUBCLASS OF applicationEntity
1633 #        MAY CONTAIN {
1634 #            description,
1635 #            owner,
1636 #            mhsSupportedOptionalAttributes,
1637 #            mhsSupportedAutomaticActions,
1638 #            mhsSupportedContentTypes}
1639 #    ::= {mhsObjectClass 1}
1640 #
1641 #
1642 #    mhsMessageTransferAgent OBJECT-CLASS
1643 #        SUBCLASS OF applicationEntity
1644 #        MAY CONTAIN {
1645 #            description,
1646 #            owner,
1647 #            mhsDeliverableContentLength}
1648 #    ::= {mhsObjectClass 2}
1649 #
1650 #
1651 #    mhsOrganizationalUser OBJECT-CLASS
1652 #        SUBCLASS OF organizationalPerson
1653 #        MUST CONTAIN {
1654 #            mhsORAddresses}
1655 #        MAY CONTAIN {
1656 #            mhsDeliverableContentLength,
1657 #            mhsDeliverableContentTypes,
1658 #            mhsDeliverableEits,
1659 #            mhsMessageStoreName,
1660 #            mhsPreferredDeliveryMethods }
1661 #    ::= {mhsObjectClass 3}
1662 #
1663 #
1664 #    mhsResidentialUser OBJECT-CLASS
1665 #        SUBCLASS OF residentialPerson
1666 #        MUST CONTAIN {
1667 #            mhsORAddresses}
1668 #        MAY CONTAIN {
1669 #            mhsDeliverableContentLength,
1670 #            mhsDeliverableContentTypes,
1671 #            mhsDeliverableEits,
1672 #            mhsMessageStoreName,
1673 #            mhsPreferredDeliveryMethods }
1674 #    ::= {mhsObjectClass 4}
1675 #
1676 #
1677 #    mhsUserAgent OBJECT-CLASS
1678 #        SUBCLASS OF applicationEntity
1679 #        MAY CONTAIN {
1680 #            mhsDeliverableContentLength,
1681 #            mhsDeliverableContentTypes,
1682 #            mhsDeliverableEits,
1683 #            mhsORAddresses,
1684 #            owner}
1685 #    ::= {mhsObjectClass 5}
1686 #
1687 #
1688 #
1689 #
1690 #    -- Pilot Object Classes
1691 #
1692 #    pilotObject OBJECT-CLASS
1693 #        SUBCLASS OF top
1694 #        MAY CONTAIN {
1695 #            info,
1696 #            photo,
1697 #            manager,
1698 #            uniqueIdentifier,
1699 #            lastModifiedTime,
1700 #            lastModifiedBy,
1701 #            dITRedirect,
1702 #            audio}
1703 #    ::= {pilotObjectClass 3}
1704 #    pilotPerson OBJECT-CLASS
1705 #        SUBCLASS OF person
1706 #        MAY CONTAIN {
1707 #                    userid,
1708 #                    textEncodedORAddress,
1709 #                    rfc822Mailbox,
1710 #                    favouriteDrink,
1711 #                    roomNumber,
1712 #                    userClass,
1713 #                    homeTelephoneNumber,
1714 #                    homePostalAddress,
1715 #                    secretary,
1716 #                    personalTitle,
1717 #                    preferredDeliveryMethod,
1718 #                    businessCategory,
1719 #                    janetMailbox,
1720 #                    otherMailbox,
1721 #                    mobileTelephoneNumber,
1722 #                    pagerTelephoneNumber,
1723 #                    organizationalStatus,
1724 #                    mailPreferenceOption,
1725 #                    personalSignature}
1726 #    ::= {pilotObjectClass 4}
1727 #
1728 #
1729 #    account OBJECT-CLASS
1730 #        SUBCLASS OF top
1731 #        MUST CONTAIN {
1732 #            userid}
1733 #        MAY CONTAIN {
1734 #            description,
1735 #            seeAlso,
1736 #            localityName,
1737 #            organizationName,
1738 #            organizationalUnitName,
1739 #            host}
1740 #    ::= {pilotObjectClass 5}
1741 #
1742 #
1743 #    document OBJECT-CLASS
1744 #        SUBCLASS OF top
1745 #        MUST CONTAIN {
1746 #            documentIdentifier}
1747 #        MAY CONTAIN {
1748 #            commonName,
1749 #            description,
1750 #            seeAlso,
1751 #            localityName,
1752 #            organizationName,
1753 #            organizationalUnitName,
1754 #            documentTitle,
1755 #            documentVersion,
1756 #            documentAuthor,
1757 #            documentLocation,
1758 #            documentPublisher}
1759 #    ::= {pilotObjectClass 6}
1760 #
1761 #
1762 #    room OBJECT-CLASS
1763 #        SUBCLASS OF top
1764 #        MUST CONTAIN {
1765 #            commonName}
1766 #        MAY CONTAIN {
1767 #            roomNumber,
1768 #            description,
1769 #            seeAlso,
1770 #            telephoneNumber}
1771 #    ::= {pilotObjectClass 7}
1772 #
1773 #
1774 #    documentSeries OBJECT-CLASS
1775 #        SUBCLASS OF top
1776 #        MUST CONTAIN {
1777 #            commonName}
1778 #        MAY CONTAIN {
1779 #            description,
1780 #            seeAlso,
1781 #            telephoneNumber,
1782 #            localityName,
1783 #            organizationName,
1784 #            organizationalUnitName}
1785 #    ::= {pilotObjectClass 9}
1786 #
1787 #
1788 #    domain OBJECT-CLASS
1789 #        SUBCLASS OF top
1790 #        MUST CONTAIN {
1791 #            domainComponent}
1792 #        MAY CONTAIN {
1793 #            associatedName,
1794 #            organizationName,
1795 #            organizationalAttributeSet}
1796 #    ::= {pilotObjectClass 13}
1797 #
1798 #
1799 #    rFC822localPart OBJECT-CLASS
1800 #        SUBCLASS OF domain
1801 #        MAY CONTAIN {
1802 #            commonName,
1803 #            surname,
1804 #            description,
1805 #            seeAlso,
1806 #            telephoneNumber,
1807 #            postalAttributeSet,
1808 #            telecommunicationAttributeSet}
1809 #    ::= {pilotObjectClass 14}
1810 #
1811 #
1812 #    dNSDomain OBJECT-CLASS
1813 #        SUBCLASS OF domain
1814 #        MAY CONTAIN {
1815 #            ARecord,
1816 #            MDRecord,
1817 #            MXRecord,
1818 #            NSRecord,
1819 #            SOARecord,
1820 #            CNAMERecord}
1821 #    ::= {pilotObjectClass 15}
1822 #
1823 #
1824 #    domainRelatedObject OBJECT-CLASS
1825 #        SUBCLASS OF top
1826 #        MUST CONTAIN {
1827 #            associatedDomain}
1828 #    ::= {pilotObjectClass 17}
1829 #
1830 #
1831 #    friendlyCountry OBJECT-CLASS
1832 #        SUBCLASS OF country
1833 #        MUST CONTAIN {
1834 #            friendlyCountryName}
1835 #    ::= {pilotObjectClass 18}
1836 #
1837 #
1838 #    simpleSecurityObject OBJECT-CLASS
1839 #        SUBCLASS OF top
1840 #        MUST CONTAIN {
1841 #            userPassword }
1842 #    ::= {pilotObjectClass 19}
1843 #
1844 #
1845 #    pilotOrganization OBJECT-CLASS
1846 #        SUBCLASS OF organization, organizationalUnit
1847 #        MAY CONTAIN {
1848 #                    buildingName}
1849 #    ::= {pilotObjectClass 20}
1850 #
1851 #
1852 #    pilotDSA OBJECT-CLASS
1853 #        SUBCLASS OF dsa
1854 #        MUST CONTAIN {
1855 #            dSAQuality}
1856 #    ::= {pilotObjectClass 21}
1857 #
1858 #
1859 #    qualityLabelledData OBJECT-CLASS
1860 #        SUBCLASS OF top
1861 #        MUST CONTAIN {
1862 #            dSAQuality}
1863 #        MAY CONTAIN {
1864 #            subtreeMinimumQuality,
1865 #            subtreeMaximumQuality}
1866 #    ::= {pilotObjectClass 22}
1867 #
1868 #
1869 #
1870 #
1871 #    -- Standard Attribute Types
1872 #
1873 #    objectClass ObjectClass
1874 #        ::= {attributeType 0}
1875 #
1876 #
1877 #    aliasedObjectName AliasedObjectName
1878 #        ::= {attributeType 1}
1879 #
1880 #
1881 #    knowledgeInformation ATTRIBUTE
1882 #        WITH ATTRIBUTE-SYNTAX caseIgnoreString
1883 #        ::= {attributeType 2}
1884 #
1885 #
1886 #    commonName ATTRIBUTE
1887 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1888 #        (SIZE (1..ub-common-name))
1889 #        ::= {attributeType 3}
1890 #
1891 #
1892 #    surname ATTRIBUTE
1893 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1894 #        (SIZE (1..ub-surname))
1895 #        ::= {attributeType 4}
1896 #
1897 #
1898 #    serialNumber ATTRIBUTE
1899 #        WITH ATTRIBUTE-SYNTAX printableStringSyntax
1900 #        (SIZE (1..ub-serial-number))
1901 #        ::= {attributeType 5}
1902 #
1903 #
1904 #    countryName ATTRIBUTE
1905 #        WITH ATTRIBUTE-SYNTAX PrintableString
1906 #        (SIZE (1..ub-country-code))
1907 #        SINGLE VALUE
1908 #        ::= {attributeType 6}
1909 #
1910 #
1911 #    localityName ATTRIBUTE
1912 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1913 #        (SIZE (1..ub-locality-name))
1914 #        ::= {attributeType 7}
1915 #
1916 #
1917 #    stateOrProvinceName ATTRIBUTE
1918 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1919 #        (SIZE (1..ub-state-name))
1920 #        ::= {attributeType 8}
1921 #
1922 #
1923 #    streetAddress ATTRIBUTE
1924 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1925 #        (SIZE (1..ub-street-address))
1926 #        ::= {attributeType 9}
1927 #
1928 #
1929 #    organizationName ATTRIBUTE
1930 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1931 #        (SIZE (1..ub-organization-name))
1932 #        ::= {attributeType 10}
1933 #
1934 #
1935 #    organizationalUnitName ATTRIBUTE
1936 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1937 #        (SIZE (1..ub-organizational-unit-name))
1938 #        ::= {attributeType 11}
1939 #
1940 #
1941 #    title ATTRIBUTE
1942 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1943 #        (SIZE (1..ub-title))
1944 #        ::= {attributeType 12}
1945 #
1946 #
1947 #    description ATTRIBUTE
1948 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1949 #        (SIZE (1..ub-description))
1950 #        ::= {attributeType 13}
1951 #
1952 #
1953 #    searchGuide ATTRIBUTE
1954 #        WITH ATTRIBUTE-SYNTAX Guide
1955 #        ::= {attributeType 14}
1956 #
1957 #
1958 #    businessCategory ATTRIBUTE
1959 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1960 #        (SIZE (1..ub-business-category))
1961 #        ::= {attributeType 15}
1962 #
1963 #
1964 #    postalAddress ATTRIBUTE
1965 #        WITH ATTRIBUTE-SYNTAX PostalAddress
1966 #        MATCHES FOR EQUALITY
1967 #        ::= {attributeType 16}
1968 #
1969 #
1970 #    postalCode ATTRIBUTE
1971 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1972 #        (SIZE (1..ub-postal-code))
1973 #        ::= {attributeType 17}
1974 #
1975 #
1976 #    postOfficeBox ATTRIBUTE
1977 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1978 #        (SIZE (1..ub-post-office-box))
1979 #        ::= {attributeType 18}
1980 #
1981 #
1982 #    physicalDeliveryOfficeName ATTRIBUTE
1983 #        WITH ATTRIBUTE-SYNTAX caseIgnoreStringSyntax
1984 #        (SIZE (1..ub-physical-office-name))
1985 #        ::= {attributeType 19}
1986 #
1987 #
1988 #    telephoneNumber ATTRIBUTE
1989 #        WITH ATTRIBUTE-SYNTAX telephoneNumberSyntax
1990 #        (SIZE (1..ub-telephone-number))
1991 #        ::= {attributeType 20}
1992 #
1993 #
1994 #    telexNumber ATTRIBUTE
1995 #        WITH ATTRIBUTE-SYNTAX TelexNumber
1996 #        (SIZE (1..ub-telex))
1997 #        ::= {attributeType 21}
1998 #
1999 #
2000 #    teletexTerminalIdentifier ATTRIBUTE
2001 #        WITH ATTRIBUTE-SYNTAX TeletexTerminalIdentifier
2002 #        (SIZE (1..ub-teletex-terminal-id))
2003 #        ::= {attributeType 22}
2004 #
2005 #
2006 #    facsimileTelephoneNumber ATTRIBUTE
2007 #        WITH ATTRIBUTE-SYNTAX FacsimileTelephoneNumber
2008 #        ::= {attributeType 23}
2009 #
2010 #
2011 #    x121Address ATTRIBUTE
2012 #        WITH ATTRIBUTE-SYNTAX NumericString
2013 #        (SIZE (1..ub-x121-address))
2014 #        ::= {attributeType 24}
2015 #
2016 #
2017 #    internationaliSDNNumber ATTRIBUTE
2018 #        WITH ATTRIBUTE-SYNTAX NumericString
2019 #        (SIZE (1..ub-isdn-address))
2020 #        ::= {attributeType 25}
2021 #
2022 #
2023 #    registeredAddress ATTRIBUTE
2024 #        WITH ATTRIBUTE-SYNTAX PostalAddress
2025 #        ::= {attributeType 26}
2026 #
2027 #
2028 #    destinationIndicator ATTRIBUTE
2029 #        WITH ATTRIBUTE-SYNTAX PrintableString
2030 #        (SIZE (1..ub-destination-indicator))
2031 #        MATCHES FOR EQUALITY SUBSTRINGS
2032 #        ::= {attributeType 27}
2033 #
2034 #
2035 #    preferredDeliveryMethod ATTRIBUTE
2036 #        WITH ATTRIBUTE-SYNTAX deliveryMethod
2037 #        ::= {attributeType 28}
2038 #
2039 #
2040 #    presentationAddress ATTRIBUTE
2041 #        WITH ATTRIBUTE-SYNTAX PresentationAddress
2042 #        MATCHES FOR EQUALITY
2043 #        ::= {attributeType 29}
2044 #
2045 #
2046 #    supportedApplicationContext ATTRIBUTE
2047 #        WITH ATTRIBUTE-SYNTAX objectIdentifierSyntax
2048 #        ::= {attributeType 30}
2049 #
2050 #
2051 #    member ATTRIBUTE
2052 #        WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax
2053 #        ::= {attributeType 31}
2054 #
2055 #
2056 #    owner ATTRIBUTE
2057 #        WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax
2058 #        ::= {attributeType 32}
2059 #
2060 #
2061 #    roleOccupant ATTRIBUTE
2062 #        WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax
2063 #        ::= {attributeType 33}
2064 #
2065 #
2066 #    seeAlso ATTRIBUTE
2067 #        WITH ATTRIBUTE-SYNTAX distinguishedNameSyntax
2068 #        ::= {attributeType 34}
2069 #
2070 #
2071 #    userPassword ATTRIBUTE
2072 #        WITH ATTRIBUTE-SYNTAX Userpassword
2073 #        ::= {attributeType 35}
2074 #
2075 #
2076 #    userCertificate ATTRIBUTE
2077 #        WITH ATTRIBUTE-SYNTAX UserCertificate
2078 #        ::= {attributeType 36}
2079 #
2080 #
2081 #    cACertificate ATTRIBUTE
2082 #        WITH ATTRIBUTE-SYNTAX cACertificate
2083 #        ::= {attributeType 37}
2084 #
2085 #
2086 #    authorityRevocationList ATTRIBUTE
2087 #        WITH ATTRIBUTE-SYNTAX AuthorityRevocationList
2088 #        ::= {attributeType 38}
2089 #
2090 #
2091 #    certificateRevocationList ATTRIBUTE
2092 #        WITH ATTRIBUTE-SYNTAX CertificateRevocationList
2093 #        ::= {attributeType 39}
2094 #
2095 #
2096 #    crossCertificatePair ATTRIBUTE
2097 #        WITH ATTRIBUTE-SYNTAX CrossCertificatePair
2098 #        ::= {attributeType 40}
2099 #
2100 #
2101 #
2102 #
2103 #    -- Standard MHS Attribute Types
2104 #
2105 #    mhsDeliverableContentLength ATTRIBUTE
2106 #        WITH ATTRIBUTE-SYNTAX integer
2107 #        ::= {mhsAttributeType 0}
2108 #
2109 #
2110 #    mhsDeliverableContentTypes ATTRIBUTE
2111 #        WITH ATTRIBUTE-SYNTAX oID
2112 #        ::= {mhsAttributeType 1}
2113 #
2114 #
2115 #    mhsDeliverableEits ATTRIBUTE
2116 #        WITH ATTRIBUTE-SYNTAX oID
2117 #        ::= {mhsAttributeType 2}
2118 #
2119 #
2120 #    mhsDLMembers ATTRIBUTE
2121 #        WITH ATTRIBUTE-SYNTAX oRName
2122 #        ::= {mhsAttributeType 3}
2123 #
2124 #
2125 #    mhsDLSubmitPermissions ATTRIBUTE
2126 #        WITH ATTRIBUTE-SYNTAX dLSubmitPermission
2127 #        ::= {mhsAttributeType 4}
2128 #
2129 #
2130 #    mhsMessageStoreName ATTRIBUTE
2131 #        WITH ATTRIBUTE-SYNTAX dN
2132 #        ::= {mhsAttributeType 5}
2133 #
2134 #
2135 #    mhsORAddresses ATTRIBUTE
2136 #        WITH ATTRIBUTE-SYNTAX oRAddress
2137 #        ::= {mhsAttributeType 6}
2138 #
2139 #
2140 #    mhsPreferredDeliveryMethods ATTRIBUTE
2141 #        WITH ATTRIBUTE-SYNTAX deliveryMethod
2142 #        ::= {mhsAttributeType 7}
2143 #
2144 #
2145 #    mhsSupportedAutomaticActions ATTRIBUTE
2146 #        WITH ATTRIBUTE-SYNTAX oID
2147 #        ::= {mhsAttributeType 8}
2148 #
2149 #
2150 #    mhsSupportedContentTypes ATTRIBUTE
2151 #
2152 #        WITH ATTRIBUTE-SYNTAX oID
2153 #        ::= {mhsAttributeType 9}
2154 #
2155 #
2156 #    mhsSupportedOptionalAttributes ATTRIBUTE
2157 #        WITH ATTRIBUTE-SYNTAX oID
2158 #        ::= {mhsAttributeType 10}
2159 #
2160 #
2161 #
2162 #
2163 #    -- Pilot Attribute Types
2164 #
2165 #    userid ATTRIBUTE
2166 #        WITH ATTRIBUTE-SYNTAX
2167 #            caseIgnoreStringSyntax
2168 #            (SIZE (1 .. ub-user-identifier))
2169 #    ::= {pilotAttributeType 1}
2170 #
2171 #
2172 #    textEncodedORAddress ATTRIBUTE
2173 #        WITH ATTRIBUTE-SYNTAX
2174 #            caseIgnoreStringSyntax
2175 #        (SIZE (1 .. ub-text-encoded-or-address))
2176 #    ::= {pilotAttributeType 2}
2177 #
2178 #
2179 #    rfc822Mailbox ATTRIBUTE
2180 #        WITH ATTRIBUTE-SYNTAX
2181 #            caseIgnoreIA5StringSyntax
2182 #            (SIZE (1 .. ub-rfc822-mailbox))
2183 #    ::= {pilotAttributeType 3}
2184 #
2185 #
2186 #    info ATTRIBUTE
2187 #        WITH ATTRIBUTE-SYNTAX
2188 #            caseIgnoreStringSyntax
2189 #            (SIZE (1 .. ub-information))
2190 #    ::= {pilotAttributeType 4}
2191 #
2192 #
2193 #    favouriteDrink ATTRIBUTE
2194 #        WITH ATTRIBUTE-SYNTAX
2195 #            caseIgnoreStringSyntax
2196 #            (SIZE (1 .. ub-favourite-drink))
2197 #    ::= {pilotAttributeType 5}
2198 #
2199 #
2200 #    roomNumber ATTRIBUTE
2201 #        WITH ATTRIBUTE-SYNTAX
2202 #            caseIgnoreStringSyntax
2203 #            (SIZE (1 .. ub-room-number))
2204 #    ::= {pilotAttributeType 6}
2205 #
2206 #
2207 #    photo ATTRIBUTE
2208 #        WITH ATTRIBUTE-SYNTAX
2209 #            CHOICE {
2210 #                g3-facsimile [3] G3FacsimileBodyPart
2211 #                }
2212 #        (SIZE (1 .. ub-photo))
2213 #    ::= {pilotAttributeType 7}
2214 #
2215 #
2216 #    userClass ATTRIBUTE
2217 #        WITH ATTRIBUTE-SYNTAX
2218 #            caseIgnoreStringSyntax
2219 #            (SIZE (1 .. ub-user-class))
2220 #    ::= {pilotAttributeType 8}
2221 #
2222 #
2223 #    host ATTRIBUTE
2224 #        WITH ATTRIBUTE-SYNTAX
2225 #            caseIgnoreStringSyntax
2226 #            (SIZE (1 .. ub-host))
2227 #    ::= {pilotAttributeType 9}
2228 #
2229 #
2230 #    manager ATTRIBUTE
2231 #        WITH ATTRIBUTE-SYNTAX
2232 #            distinguishedNameSyntax
2233 #    ::= {pilotAttributeType 10}
2234 #
2235 #
2236 #    documentIdentifier ATTRIBUTE
2237 #        WITH ATTRIBUTE-SYNTAX
2238 #            caseIgnoreStringSyntax
2239 #            (SIZE (1 .. ub-document-identifier))
2240 #    ::= {pilotAttributeType 11}
2241 #
2242 #
2243 #    documentTitle ATTRIBUTE
2244 #        WITH ATTRIBUTE-SYNTAX
2245 #            caseIgnoreStringSyntax
2246 #        (SIZE (1 .. ub-document-title))
2247 #    ::= {pilotAttributeType 12}
2248 #
2249 #
2250 #    documentVersion ATTRIBUTE
2251 #        WITH ATTRIBUTE-SYNTAX
2252 #            caseIgnoreStringSyntax
2253 #            (SIZE (1 .. ub-document-version))
2254 #    ::= {pilotAttributeType 13}
2255 #
2256 #
2257 #    documentAuthor ATTRIBUTE
2258 #        WITH ATTRIBUTE-SYNTAX
2259 #            distinguishedNameSyntax
2260 #    ::= {pilotAttributeType 14}
2261 #
2262 #
2263 #    documentLocation ATTRIBUTE
2264 #        WITH ATTRIBUTE-SYNTAX
2265 #            caseIgnoreStringSyntax
2266 #            (SIZE (1 .. ub-document-location))
2267 #    ::= {pilotAttributeType 15}
2268 #
2269 #
2270 #    homeTelephoneNumber ATTRIBUTE
2271 #        WITH ATTRIBUTE-SYNTAX
2272 #            telephoneNumberSyntax
2273 #    ::= {pilotAttributeType 20}
2274 #
2275 #
2276 #    secretary ATTRIBUTE
2277 #        WITH ATTRIBUTE-SYNTAX
2278 #            distinguishedNameSyntax
2279 #    ::= {pilotAttributeType 21}
2280 #
2281 #
2282 #    otherMailbox ATTRIBUTE
2283 #        WITH ATTRIBUTE-SYNTAX
2284 #            SEQUENCE {
2285 #                    mailboxType PrintableString, -- e.g. Telemail
2286 #                    mailbox IA5String  -- e.g. X378:Joe
2287 #            }
2288 #    ::= {pilotAttributeType 22}
2289 #
2290 #
2291 #    lastModifiedTime ATTRIBUTE
2292 #        WITH ATTRIBUTE-SYNTAX
2293 #            uTCTimeSyntax
2294 #    ::= {pilotAttributeType 23}
2295 #
2296 #
2297 #    lastModifiedBy ATTRIBUTE
2298 #        WITH ATTRIBUTE-SYNTAX
2299 #            distinguishedNameSyntax
2300 #    ::= {pilotAttributeType 24}
2301 #
2302 #
2303 #    domainComponent ATTRIBUTE
2304 #        WITH ATTRIBUTE-SYNTAX
2305 #            caseIgnoreIA5StringSyntax
2306 #            SINGLE VALUE
2307 #    ::= {pilotAttributeType 25}
2308 #
2309 #
2310 #    aRecord ATTRIBUTE
2311 #        WITH ATTRIBUTE-SYNTAX
2312 #            DNSRecordSyntax
2313 #    ::= {pilotAttributeType 26}
2314 #
2315 #
2316 #    mXRecord ATTRIBUTE
2317 #        WITH ATTRIBUTE-SYNTAX
2318 #            DNSRecordSyntax
2319 #    ::= {pilotAttributeType 28}
2320 #
2321 #
2322 #    nSRecord ATTRIBUTE
2323 #        WITH ATTRIBUTE-SYNTAX
2324 #            DNSRecordSyntax
2325 #    ::= {pilotAttributeType 29}
2326 #
2327 #    sOARecord ATTRIBUTE
2328 #        WITH ATTRIBUTE-SYNTAX
2329 #            DNSRecordSyntax
2330 #    ::= {pilotAttributeType 30}
2331 #
2332 #
2333 #    cNAMERecord ATTRIBUTE
2334 #        WITH ATTRIBUTE-SYNTAX
2335 #            iA5StringSyntax
2336 #    ::= {pilotAttributeType 31}
2337 #
2338 #
2339 #    associatedDomain ATTRIBUTE
2340 #        WITH ATTRIBUTE-SYNTAX
2341 #            caseIgnoreIA5StringSyntax
2342 #    ::= {pilotAttributeType 37}
2343 #
2344 #
2345 #    associatedName ATTRIBUTE
2346 #        WITH ATTRIBUTE-SYNTAX
2347 #            distinguishedNameSyntax
2348 #    ::= {pilotAttributeType 38}
2349 #
2350 #
2351 #    homePostalAddress ATTRIBUTE
2352 #        WITH ATTRIBUTE-SYNTAX
2353 #            postalAddress
2354 #            MATCHES FOR EQUALITY
2355 #    ::= {pilotAttributeType 39}
2356 #
2357 #
2358 #    personalTitle ATTRIBUTE
2359 #        WITH ATTRIBUTE-SYNTAX
2360 #            caseIgnoreStringSyntax
2361 #            (SIZE (1 .. ub-personal-title))
2362 #    ::= {pilotAttributeType 40}
2363 #
2364 #
2365 #    mobileTelephoneNumber ATTRIBUTE
2366 #        WITH ATTRIBUTE-SYNTAX
2367 #            telephoneNumberSyntax
2368 #    ::= {pilotAttributeType 41}
2369 #
2370 #
2371 #    pagerTelephoneNumber ATTRIBUTE
2372 #        WITH ATTRIBUTE-SYNTAX
2373 #            telephoneNumberSyntax
2374 #    ::= {pilotAttributeType 42}
2375 #
2376 #
2377 #    friendlyCountryName ATTRIBUTE
2378 #        WITH ATTRIBUTE-SYNTAX
2379 #            caseIgnoreStringSyntax
2380 #    ::= {pilotAttributeType 43}
2381 #
2382 #
2383 #    uniqueIdentifier ATTRIBUTE
2384 #        WITH ATTRIBUTE-SYNTAX
2385 #            caseIgnoreStringSyntax
2386 #            (SIZE (1 .. ub-unique-identifier))
2387 #    ::= {pilotAttributeType 44}
2388 #
2389 #
2390 #    organizationalStatus ATTRIBUTE
2391 #            WITH ATTRIBUTE-SYNTAX
2392 #            caseIgnoreStringSyntax
2393 #            (SIZE (1 .. ub-organizational-status))
2394 #    ::= {pilotAttributeType 45}
2395 #
2396 #
2397 #    janetMailbox ATTRIBUTE
2398 #        WITH ATTRIBUTE-SYNTAX
2399 #            caseIgnoreIA5StringSyntax
2400 #            (SIZE (1 .. ub-janet-mailbox))
2401 #    ::= {pilotAttributeType 46}
2402 #
2403 #
2404 #    mailPreferenceOption ATTRIBUTE
2405 #        WITH ATTRIBUTE-SYNTAX ENUMERATED {
2406 #                no-list-inclusion(0),
2407 #                any-list-inclusion(1),  -- may be added to any lists
2408 #                professional-list-inclusion(2)
2409 #                                        -- may be added to lists
2410 #                                        -- which the list provider
2411 #                                        -- views as related to the
2412 #                                        -- users professional inter-
2413 #                                        -- ests, perhaps evaluated
2414 #                                        -- from the business of the
2415 #                                        -- organisation or keywords
2416 #                                        -- in the entry.
2417 #                }
2418 #    ::= {pilotAttributeType 47}
2419 #
2420 #
2421 #    buildingName ATTRIBUTE
2422 #        WITH ATTRIBUTE-SYNTAX
2423 #            caseIgnoreStringSyntax
2424 #            (SIZE (1 .. ub-building-name))
2425 #    ::= {pilotAttributeType 48}
2426 #
2427 #
2428 #    dSAQuality ATTRIBUTE
2429 #            WITH ATTRIBUTE-SYNTAX DSAQualitySyntax
2430 #            SINGLE VALUE
2431 #    ::= {pilotAttributeType 49}
2432 #
2433 #
2434 #    singleLevelQuality ATTRIBUTE
2435 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
2436 #            SINGLE VALUE
2437 #
2438 #
2439 #    subtreeMinimumQuality ATTRIBUTE
2440 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
2441 #            SINGLE VALUE
2442 #               -- Defaults to singleLevelQuality
2443 #    ::= {pilotAttributeType 51}
2444 #
2445 #
2446 #    subtreeMaximumQuality ATTRIBUTE
2447 #            WITH ATTRIBUTE-SYNTAX DataQualitySyntax
2448 #            SINGLE VALUE
2449 #               -- Defaults to singleLevelQuality
2450 #    ::= {pilotAttributeType 52}
2451 #
2452 #
2453 #    personalSignature ATTRIBUTE
2454 #        WITH ATTRIBUTE-SYNTAX
2455 #            CHOICE {
2456 #                g3-facsimile [3] G3FacsimileBodyPart
2457 #                }
2458 #        (SIZE (1 .. ub-personal-signature))
2459 #    ::= {pilotAttributeType 53}
2460 #
2461 #
2462 #    dITRedirect ATTRIBUTE
2463 #        WITH ATTRIBUTE-SYNTAX
2464 #            distinguishedNameSyntax
2465 #    ::= {pilotAttributeType 54}
2466 #
2467 #
2468 #    audio ATTRIBUTE
2469 #        WITH ATTRIBUTE-SYNTAX
2470 #            Audio
2471 #        (SIZE (1 .. ub-audio))
2472 #    ::= {pilotAttributeType 55}
2473 #
2474 #    documentPublisher ATTRIBUTE
2475 #            WITH ATTRIBUTE SYNTAX caseIgnoreStringSyntax
2476 #    ::= {pilotAttributeType 56}
2477 #
2478 #
2479 #
2480 #    -- Generally useful syntaxes
2481 #
2482 #
2483 #    caseIgnoreIA5StringSyntax ATTRIBUTE-SYNTAX
2484 #            IA5String
2485 #            MATCHES FOR EQUALITY SUBSTRINGS
2486 #
2487 #
2488 #    iA5StringSyntax ATTRIBUTE-SYNTAX
2489 #        IA5String
2490 #        MATCHES FOR EQUALITY SUBSTRINGS
2491 #
2492 #
2493 #    -- Syntaxes to support the DNS attributes
2494 #
2495 #    DNSRecordSyntax ATTRIBUTE-SYNTAX
2496 #            IA5String
2497 #            MATCHES FOR EQUALITY
2498 #
2499 #
2500 #    NRSInformationSyntax ATTRIBUTE-SYNTAX
2501 #            NRSInformation
2502 #            MATCHES FOR EQUALITY
2503 #
2504 #
2505 #    NRSInformation ::=  SET {
2506 #                    [0] Context,
2507 #                    [1] Address-space-id,
2508 #                    routes [2] SEQUENCE OF SEQUENCE {
2509 #                    Route-cost,
2510 #                    Addressing-info }
2511 #            }
2512 #
2513 #
2514 #    -- Upper bounds on length of attribute values
2515 #
2516 #
2517 #    ub-document-identifier INTEGER ::= 256
2518 #
2519 #    ub-document-location INTEGER ::= 256
2520 #
2521 #    ub-document-title INTEGER ::= 256
2522 #
2523 #    ub-document-version INTEGER ::= 256
2524 #
2525 #    ub-favourite-drink INTEGER ::= 256
2526 #
2527 #    ub-host INTEGER ::= 256
2528 #
2529 #    ub-information INTEGER ::= 2048
2530 #
2531 #    ub-unique-identifier INTEGER ::= 256
2532 #
2533 #    ub-personal-title INTEGER ::= 256
2534 #
2535 #    ub-photo INTEGER ::= 250000
2536 #
2537 #    ub-rfc822-mailbox INTEGER ::= 256
2538 #
2539 #    ub-room-number INTEGER ::= 256
2540 #
2541 #    ub-text-or-address INTEGER ::= 256
2542 #
2543 #    ub-user-class INTEGER ::= 256
2544 #
2545 #    ub-user-identifier INTEGER ::= 256
2546 #
2547 #    ub-organizational-status INTEGER ::= 256
2548 #
2549 #    ub-janet-mailbox INTEGER ::= 256
2550 #
2551 #    ub-building-name INTEGER ::= 256
2552 #
2553 #    ub-personal-signature ::= 50000
2554 #
2555 #    ub-audio INTEGER ::= 250000
2556 #
2557 # [remainder of memo trimmed]
2558