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