]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/schema/cosine.schema
Fix typo
[openldap] / servers / slapd / schema / cosine.schema
index 552a673f80add1e83c804f0147eda845efca5081..4ef23418d514d3118788cb48c51b3805da2310f8 100644 (file)
@@ -1,20 +1,31 @@
+# RFC1274: Cosine and Internet X.500 schema
 # $OpenLDAP$
+## This work is part of OpenLDAP Software <http://www.openldap.org/>.
+##
+## Copyright 1998-2004 The OpenLDAP Foundation.
+## All rights reserved.
+##
+## Redistribution and use in source and binary forms, with or without
+## modification, are permitted only as authorized by the OpenLDAP
+## Public License.
+##
+## A copy of this license is available in the file LICENSE in the
+## top-level directory of the distribution or, alternatively, at
+## <http://www.OpenLDAP.org/license.html>.
 #
 # RFC1274: Cosine and Internet X.500 schema
 #
-# This file contains LDAPv3 schema derived from X.500 "pilot"
+# This file contains LDAPv3 schema derived from X.500 COSINE "pilot"
 # schema.  As this schema was defined for X.500(89), some
-# oddities were introduced in the mapping to LDAPv3.
-#
-# The syntax and matching rules of attribute types listed may be
-# incomplete or otherwise incorrect.
-#
-# It may be best to avoid use this schema.
+# oddities were introduced in the mapping to LDAPv3.  The
+# mappings were based upon: draft-ietf-asid-ldapv3-attributes-03.txt
+# (a work in progress)
 #
 # Note: It seems that the pilot schema evolved beyond what was
-# described in RFC1274.  However, this document describes RFC1274
-# as published.  So called "newPilot" objects, such as found on
-# U-Mich/OpenLDAP 1.x servers is available in newpilot.schema.
+# described in RFC1274.  However, this document attempts to describes
+# RFC1274 as published.
+#
+# Depends on core.schema
 
 
 # Network Working Group                                          P. Barker
 #    ::= {pilotAttributeType 1}
 #
 #(in core.schema)
-##attributetype ( 0.9.2342.19200300.100.1.1 NAME ( 'userid' $ 'uid' )
-##     SUP 'name' )
+##attributetype ( 0.9.2342.19200300.100.1.1 NAME ( 'uid' 'userid' )
+##     EQUALITY caseIgnoreMatch
+##     SUBSTR caseIgnoreSubstringsMatch
+##     SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.2.  Text Encoded O/R Address
 #
 attributetype ( 0.9.2342.19200300.100.1.2 NAME 'textEncodedORAddress'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.3.  RFC 822 Mailbox
 #
@@ -129,11 +142,11 @@ attributetype ( 0.9.2342.19200300.100.1.2 NAME 'textEncodedORAddress'
 #            (SIZE (1 .. ub-rfc822-mailbox))
 #    ::= {pilotAttributeType 3}
 #
-#(in inetorgperson.schema)
-attributetype ( 0.9.2342.19200300.100.1.3 NAME ( 'rfc822Mailbox' 'mail' )
-       EQUALITY caseIgnoreIA5Match
-       SUBSTR caseIgnoreIA5SubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
+#(in core.schema)
+##attributetype ( 0.9.2342.19200300.100.1.3 NAME ( 'mail' 'rfc822Mailbox' )
+##     EQUALITY caseIgnoreIA5Match
+##     SUBSTR caseIgnoreIA5SubstringsMatch
+##     SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
 
 # 9.3.4.  Information
 #
@@ -149,9 +162,10 @@ attributetype ( 0.9.2342.19200300.100.1.3 NAME ( 'rfc822Mailbox' 'mail' )
 #    ::= {pilotAttributeType 4}
 #
 attributetype ( 0.9.2342.19200300.100.1.4 NAME 'info'
+       DESC 'RFC1274: general information'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{2048} )
 
 
 # 9.3.5.  Favourite Drink
@@ -165,10 +179,12 @@ attributetype ( 0.9.2342.19200300.100.1.4 NAME 'info'
 #            (SIZE (1 .. ub-favourite-drink))
 #    ::= {pilotAttributeType 5}
 #
-attributetype ( 0.9.2342.19200300.100.1.5 NAME ( 'favouriteDrink' )
+attributetype ( 0.9.2342.19200300.100.1.5
+       NAME ( 'drink' 'favouriteDrink' )
+       DESC 'RFC1274: favorite drink'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.6.  Room Number
 #
@@ -183,9 +199,10 @@ attributetype ( 0.9.2342.19200300.100.1.5 NAME ( 'favouriteDrink' )
 #    ::= {pilotAttributeType 6}
 #
 attributetype ( 0.9.2342.19200300.100.1.6 NAME 'roomNumber'
+       DESC 'RFC1274: room number'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.7.  Photo
 #
@@ -206,7 +223,8 @@ attributetype ( 0.9.2342.19200300.100.1.6 NAME 'roomNumber'
 #    ::= {pilotAttributeType 7}
 #
 attributetype ( 0.9.2342.19200300.100.1.7 NAME 'photo'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
+       DESC 'RFC1274: photo (G3 fax)'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.23{25000} )
 
 # 9.3.8.  User Class
 #
@@ -224,9 +242,10 @@ attributetype ( 0.9.2342.19200300.100.1.7 NAME 'photo'
 #    ::= {pilotAttributeType 8}
 #
 attributetype ( 0.9.2342.19200300.100.1.8 NAME 'userClass'
+       DESC 'RFC1274: category of user'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.9.  Host
 #
@@ -239,9 +258,10 @@ attributetype ( 0.9.2342.19200300.100.1.8 NAME 'userClass'
 #    ::= {pilotAttributeType 9}
 #
 attributetype ( 0.9.2342.19200300.100.1.9 NAME 'host'
+       DESC 'RFC1274: host computer'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.10.  Manager
 #
@@ -254,6 +274,7 @@ attributetype ( 0.9.2342.19200300.100.1.9 NAME 'host'
 #    ::= {pilotAttributeType 10}
 #
 attributetype ( 0.9.2342.19200300.100.1.10 NAME 'manager'
+       DESC 'RFC1274: DN of manager'
        EQUALITY distinguishedNameMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
 
@@ -269,9 +290,10 @@ attributetype ( 0.9.2342.19200300.100.1.10 NAME 'manager'
 #    ::= {pilotAttributeType 11}
 #
 attributetype ( 0.9.2342.19200300.100.1.11 NAME 'documentIdentifier'
+       DESC 'RFC1274: unique identifier of document'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.12.  Document Title
 #
@@ -284,9 +306,10 @@ attributetype ( 0.9.2342.19200300.100.1.11 NAME 'documentIdentifier'
 #    ::= {pilotAttributeType 12}
 #
 attributetype ( 0.9.2342.19200300.100.1.12 NAME 'documentTitle'
+       DESC 'RFC1274: title of document'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.13.  Document Version
 #
@@ -300,9 +323,10 @@ attributetype ( 0.9.2342.19200300.100.1.12 NAME 'documentTitle'
 #    ::= {pilotAttributeType 13}
 #
 attributetype ( 0.9.2342.19200300.100.1.13 NAME 'documentVersion'
+       DESC 'RFC1274: version of document'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.14.  Document Author
 #
@@ -315,6 +339,7 @@ attributetype ( 0.9.2342.19200300.100.1.13 NAME 'documentVersion'
 #    ::= {pilotAttributeType 14}
 #
 attributetype ( 0.9.2342.19200300.100.1.14 NAME 'documentAuthor'
+       DESC 'RFC1274: DN of author of document'
        EQUALITY distinguishedNameMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
 
@@ -330,9 +355,10 @@ attributetype ( 0.9.2342.19200300.100.1.14 NAME 'documentAuthor'
 #    ::= {pilotAttributeType 15}
 #
 attributetype ( 0.9.2342.19200300.100.1.15 NAME 'documentLocation'
+       DESC 'RFC1274: location of document original'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.16.  Home Telephone Number
 #
@@ -346,7 +372,9 @@ attributetype ( 0.9.2342.19200300.100.1.15 NAME 'documentLocation'
 #            telephoneNumberSyntax
 #    ::= {pilotAttributeType 20}
 #
-attributetype ( 0.9.2342.19200300.100.1.20 NAME ( 'homeTelephoneNumber' 'homePhone' )
+attributetype ( 0.9.2342.19200300.100.1.20
+       DESC 'RFC1274: home telephone number'
+       NAME ( 'homePhone' 'homeTelephoneNumber' )
        EQUALITY telephoneNumberMatch
        SUBSTR telephoneNumberSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
@@ -362,6 +390,7 @@ attributetype ( 0.9.2342.19200300.100.1.20 NAME ( 'homeTelephoneNumber' 'homePho
 #    ::= {pilotAttributeType 21}
 #
 attributetype ( 0.9.2342.19200300.100.1.21 NAME 'secretary'
+       DESC 'RFC1274: DN of secretary'
        EQUALITY distinguishedNameMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
 
@@ -392,8 +421,12 @@ attributetype ( 0.9.2342.19200300.100.1.22 NAME 'otherMailbox'
 #            uTCTimeSyntax
 #    ::= {pilotAttributeType 23}
 #
-attributetype ( 0.9.2342.19200300.100.1.23 NAME 'lastModifiedTime'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.53 )
+## OBSOLETE
+#attributetype ( 0.9.2342.19200300.100.1.23 NAME 'lastModifiedTime'
+#      DESC 'RFC1274: time of last modify, replaced by modifyTimestamp'
+#      OBSOLETE
+#      SYNTAX 1.3.6.1.4.1.1466.115.121.1.53
+#      USAGE directoryOperation )
 
 # 9.3.20.  Last Modified By
 #
@@ -406,10 +439,13 @@ attributetype ( 0.9.2342.19200300.100.1.23 NAME 'lastModifiedTime'
 #            distinguishedNameSyntax
 #    ::= {pilotAttributeType 24}
 #
-
-attributetype ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
-       EQUALITY distinguishedNameMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
+## OBSOLETE
+#attributetype ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
+#      DESC 'RFC1274: last modifier, replaced by modifiersName'
+#      OBSOLETE
+#      EQUALITY distinguishedNameMatch
+#      SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
+#      USAGE directoryOperation )
 
 # 9.3.21.  Domain Component
 #
@@ -423,7 +459,7 @@ attributetype ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
 #    ::= {pilotAttributeType 25}
 #
 ##(in core.schema)
-##attributetype ( 0.9.2342.19200300.100.1.25 NAME 'dc'
+##attributetype ( 0.9.2342.19200300.100.1.25 NAME ( 'dc' 'domainComponent' )
 ##     EQUALITY caseIgnoreIA5Match
 ##     SUBSTR caseIgnoreIA5SubstringsMatch
 ##     SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
@@ -438,13 +474,16 @@ attributetype ( 0.9.2342.19200300.100.1.24 NAME 'lastModifiedBy'
 #            DNSRecordSyntax
 #    ::= {pilotAttributeType 26}
 #
-## incorrect syntax!!
+## incorrect syntax?
 attributetype ( 0.9.2342.19200300.100.1.26 NAME 'aRecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 ## missing from RFC1274
+## incorrect syntax?
 attributetype ( 0.9.2342.19200300.100.1.27 NAME 'mDRecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.23.  MX Record
 #
@@ -458,7 +497,8 @@ attributetype ( 0.9.2342.19200300.100.1.27 NAME 'mDRecord'
 #
 ## incorrect syntax!!
 attributetype ( 0.9.2342.19200300.100.1.28 NAME 'mXRecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.24.  NS Record
 #
@@ -472,7 +512,8 @@ attributetype ( 0.9.2342.19200300.100.1.28 NAME 'mXRecord'
 #
 ## incorrect syntax!!
 attributetype ( 0.9.2342.19200300.100.1.29 NAME 'nSRecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.25.  SOA Record
 #
@@ -486,7 +527,8 @@ attributetype ( 0.9.2342.19200300.100.1.29 NAME 'nSRecord'
 #
 ## incorrect syntax!!
 attributetype ( 0.9.2342.19200300.100.1.30 NAME 'sOARecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.26.  CNAME Record
 #
@@ -500,7 +542,8 @@ attributetype ( 0.9.2342.19200300.100.1.30 NAME 'sOARecord'
 #
 ## incorrect syntax!!
 attributetype ( 0.9.2342.19200300.100.1.31 NAME 'cNAMERecord'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       EQUALITY caseIgnoreIA5Match
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.27.  Associated Domain
 #
@@ -516,10 +559,10 @@ attributetype ( 0.9.2342.19200300.100.1.31 NAME 'cNAMERecord'
 #            caseIgnoreIA5StringSyntax
 #    ::= {pilotAttributeType 37}
 #
-attributetype ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
-       EQUALITY caseIgnoreIA5Match
-       SUBSTR caseIgnoreIA5SubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+#attributetype ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
+#      EQUALITY caseIgnoreIA5Match
+#      SUBSTR caseIgnoreIA5SubstringsMatch
+#      SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
 
 # 9.3.28.  Associated Name
 #
@@ -533,6 +576,7 @@ attributetype ( 0.9.2342.19200300.100.1.37 NAME 'associatedDomain'
 #    ::= {pilotAttributeType 38}
 #
 attributetype ( 0.9.2342.19200300.100.1.38 NAME 'associatedName'
+       DESC 'RFC1274: DN of entry associated with domain'
        EQUALITY distinguishedNameMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
 
@@ -549,6 +593,7 @@ attributetype ( 0.9.2342.19200300.100.1.38 NAME 'associatedName'
 #    ::= {pilotAttributeType 39}
 #
 attributetype ( 0.9.2342.19200300.100.1.39 NAME 'homePostalAddress'
+       DESC 'RFC1274: home postal address'
        EQUALITY caseIgnoreListMatch
        SUBSTR caseIgnoreListSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 )
@@ -565,9 +610,10 @@ attributetype ( 0.9.2342.19200300.100.1.39 NAME 'homePostalAddress'
 #    ::= {pilotAttributeType 40}
 #
 attributetype ( 0.9.2342.19200300.100.1.40 NAME 'personalTitle'
+       DESC 'RFC1274: personal title'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.31.  Mobile Telephone Number
 #
@@ -582,7 +628,8 @@ attributetype ( 0.9.2342.19200300.100.1.40 NAME 'personalTitle'
 #    ::= {pilotAttributeType 41}
 #
 attributetype ( 0.9.2342.19200300.100.1.41
-       NAME ( 'mobileTelephoneNumber' 'mobile' )
+       NAME ( 'mobile' 'mobileTelephoneNumber' )
+       DESC 'RFC1274: mobile telephone number'
        EQUALITY telephoneNumberMatch
        SUBSTR telephoneNumberSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
@@ -599,7 +646,8 @@ attributetype ( 0.9.2342.19200300.100.1.41
 #    ::= {pilotAttributeType 42}
 #
 attributetype ( 0.9.2342.19200300.100.1.42
-       NAME ( 'pagerTelephoneNumber' 'pager' )
+       NAME ( 'pager' 'pagerTelephoneNumber' )
+       DESC 'RFC1274: pager telephone number'
        EQUALITY telephoneNumberMatch
        SUBSTR telephoneNumberSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 )
@@ -615,7 +663,9 @@ attributetype ( 0.9.2342.19200300.100.1.42
 #            caseIgnoreStringSyntax
 #    ::= {pilotAttributeType 43}
 #
-attributetype ( 0.9.2342.19200300.100.1.43 NAME 'friendlyCountryName'
+attributetype ( 0.9.2342.19200300.100.1.43
+       NAME ( 'co' 'friendlyCountryName' )
+       DESC 'RFC1274: friendly country name'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
@@ -636,8 +686,9 @@ attributetype ( 0.9.2342.19200300.100.1.43 NAME 'friendlyCountryName'
 #    ::= {pilotAttributeType 44}
 #
 attributetype ( 0.9.2342.19200300.100.1.44 NAME 'uniqueIdentifier'
+       DESC 'RFC1274: unique identifer'
        EQUALITY caseIgnoreMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.35.  Organisational Status
 #
@@ -656,9 +707,10 @@ attributetype ( 0.9.2342.19200300.100.1.44 NAME 'uniqueIdentifier'
 #    ::= {pilotAttributeType 45}
 #
 attributetype ( 0.9.2342.19200300.100.1.45 NAME 'organizationalStatus'
+       DESC 'RFC1274: organizational status'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.36.  Janet Mailbox
 #
@@ -676,9 +728,10 @@ attributetype ( 0.9.2342.19200300.100.1.45 NAME 'organizationalStatus'
 #    ::= {pilotAttributeType 46}
 #
 attributetype ( 0.9.2342.19200300.100.1.46 NAME 'janetMailbox'
+       DESC 'RFC1274: Janet mailbox'
        EQUALITY caseIgnoreIA5Match
-       SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SUBSTR caseIgnoreIA5SubstringsMatch
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{256} )
 
 # 9.3.37.  Mail Preference Option
 #
@@ -705,8 +758,10 @@ attributetype ( 0.9.2342.19200300.100.1.46 NAME 'janetMailbox'
 #                }
 #    ::= {pilotAttributeType 47}
 #
-attributetype ( 0.9.2342.19200300.100.1.47 NAME 'mailPreferenceOption'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.32 )
+attributetype ( 0.9.2342.19200300.100.1.47
+       NAME 'mailPreferenceOption'
+       DESC 'RFC1274: mail preference option'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
 
 # 9.3.38.  Building Name
 #
@@ -720,9 +775,10 @@ attributetype ( 0.9.2342.19200300.100.1.47 NAME 'mailPreferenceOption'
 #    ::= {pilotAttributeType 48}
 #
 attributetype ( 0.9.2342.19200300.100.1.48 NAME 'buildingName'
+       DESC 'RFC1274: name of building'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{256} )
 
 # 9.3.39.  DSA Quality
 #
@@ -736,9 +792,8 @@ attributetype ( 0.9.2342.19200300.100.1.48 NAME 'buildingName'
 #    ::= {pilotAttributeType 49}
 #
 attributetype ( 0.9.2342.19200300.100.1.49 NAME 'dSAQuality'
-       EQUALITY caseIgnoreMatch
-       SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+       DESC 'RFC1274: DSA Quality'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.19 SINGLE-VALUE )
 
 # 9.3.40.  Single Level Quality
 #
@@ -752,9 +807,8 @@ attributetype ( 0.9.2342.19200300.100.1.49 NAME 'dSAQuality'
 #    ::= {pilotAttributeType 50}
 #
 attributetype ( 0.9.2342.19200300.100.1.50 NAME 'singleLevelQuality'
-       EQUALITY caseIgnoreMatch
-       SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+       DESC 'RFC1274: Single Level Quality'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
 
 # 9.3.41.  Subtree Minimum Quality
 #
@@ -769,9 +823,8 @@ attributetype ( 0.9.2342.19200300.100.1.50 NAME 'singleLevelQuality'
 #    ::= {pilotAttributeType 51}
 #
 attributetype ( 0.9.2342.19200300.100.1.51 NAME 'subtreeMinimumQuality'
-       EQUALITY caseIgnoreMatch
-       SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+       DESC 'RFC1274: Subtree Mininum Quality'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
 
 # 9.3.42.  Subtree Maximum Quality
 #
@@ -786,9 +839,8 @@ attributetype ( 0.9.2342.19200300.100.1.51 NAME 'subtreeMinimumQuality'
 #    ::= {pilotAttributeType 52}
 #
 attributetype ( 0.9.2342.19200300.100.1.52 NAME 'subtreeMaximumQuality'
-       EQUALITY caseIgnoreMatch
-       SUBSTR caseIgnoreSubstringsMatch
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE )
+       DESC 'RFC1274: Subtree Maximun Quality'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.13 SINGLE-VALUE )
 
 # 9.3.43.  Personal Signature
 #
@@ -809,7 +861,8 @@ attributetype ( 0.9.2342.19200300.100.1.52 NAME 'subtreeMaximumQuality'
 #    ::= {pilotAttributeType 53}
 #
 attributetype ( 0.9.2342.19200300.100.1.53 NAME 'personalSignature'
-       SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
+       DESC 'RFC1274: Personal Signature (G3 fax)'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.23 )
 
 # 9.3.44.  DIT Redirect
 #
@@ -826,8 +879,9 @@ attributetype ( 0.9.2342.19200300.100.1.53 NAME 'personalSignature'
 #    ::= {pilotAttributeType 54}
 #
 attributetype ( 0.9.2342.19200300.100.1.54 NAME 'dITRedirect'
-        EQUALITY distinguishedNameMatch
-        SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
+       DESC 'RFC1274: DIT Redirect'
+       EQUALITY distinguishedNameMatch
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
 
 # 9.3.45.  Audio
 #
@@ -842,7 +896,8 @@ attributetype ( 0.9.2342.19200300.100.1.54 NAME 'dITRedirect'
 #    ::= {pilotAttributeType 55}
 #
 attributetype ( 0.9.2342.19200300.100.1.55 NAME 'audio'
-        SYNTAX 1.3.6.1.4.1.1466.115.121.1.4 )
+       DESC 'RFC1274: audio (u-law)'
+       SYNTAX 1.3.6.1.4.1.1466.115.121.1.4{25000} )
 
 # 9.3.46.  Publisher of Document
 #
@@ -855,6 +910,7 @@ attributetype ( 0.9.2342.19200300.100.1.55 NAME 'audio'
 #    ::= {pilotAttributeType 56}
 #
 attributetype ( 0.9.2342.19200300.100.1.56 NAME 'documentPublisher'
+       DESC 'RFC1274: publisher of document'
        EQUALITY caseIgnoreMatch
        SUBSTR caseIgnoreSubstringsMatch
        SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
@@ -978,11 +1034,12 @@ attributetype ( 0.9.2342.19200300.100.1.56 NAME 'documentPublisher'
 #            audio}
 #    ::= {pilotObjectClass 3}
 #
-objectclass ( 0.9.2342.19200300.100.4.3 NAME 'pilotObject'
-       SUP top AUXILIARY
-       MAY ( info $ photo $ manager $ uniqueIdentifier $
-               lastModifiedTime $ lastModifiedBy $ dITRedirect $ audio )
-       )
+#objectclass ( 0.9.2342.19200300.100.4.3 NAME 'pilotObject'
+#      DESC 'RFC1274: pilot object'
+#      SUP top AUXILIARY
+#      MAY ( info $ photo $ manager $ uniqueIdentifier $
+#              lastModifiedTime $ lastModifiedBy $ dITRedirect $ audio )
+#      )
 
 # 8.3.2.  Pilot Person
 #
@@ -1014,7 +1071,8 @@ objectclass ( 0.9.2342.19200300.100.4.3 NAME 'pilotObject'
 #                    personalSignature}
 #    ::= {pilotObjectClass 4}
 #
-objectclass ( 0.9.2342.19200300.100.4.4 NAME 'pilotPerson'
+objectclass ( 0.9.2342.19200300.100.4.4
+       NAME ( 'pilotPerson' 'newPilotPerson' )
        SUP person STRUCTURAL
        MAY ( userid $ textEncodedORAddress $ rfc822Mailbox $
                favouriteDrink $ roomNumber $ userClass $
@@ -1149,20 +1207,18 @@ objectclass ( 0.9.2342.19200300.100.4.9 NAME 'documentSeries'
 #            organizationalAttributeSet}
 #    ::= {pilotObjectClass 13}
 #
-## from RFC 2247, we presume that organizationalAttributeSet
-## should be expanded as below.
 objectclass ( 0.9.2342.19200300.100.4.13 NAME 'domain'
        SUP top STRUCTURAL
        MUST domainComponent
-       MAY ( userPassword $ searchGuide $ seeAlso $
-               businessCategory $ x121Address $ registeredAddress $
-               destinationIndicator $ preferredDeliveryMethod $
-               telexNumber $ teletexTerminalIdentifier $  
-               telephoneNumber $ internationaliSDNNumber $
-               facsimileTelephoneNumber $ street $ postOfficeBox $
-               postalCode $ postalAddress $
-               physicalDeliveryOfficeName $
-               stateOrProvinceName $ localityName $ description )
+       MAY ( associatedName $ organizationName $ description $
+               businessCategory $ seeAlso $ searchGuide $ userPassword $
+               localityName $ stateOrProvinceName $ streetAddress $
+               physicalDeliveryOfficeName $ postalAddress $ postalCode $
+               postOfficeBox $ streetAddress $
+               facsimileTelephoneNumber $ internationalISDNNumber $
+               telephoneNumber $ teletexTerminalIdentifier $ telexNumber $
+               preferredDeliveryMethod $ destinationIndicator $
+               registeredAddress $ x121Address )
        )
 
 # 8.3.8.  RFC822 Local Part
@@ -1184,11 +1240,15 @@ objectclass ( 0.9.2342.19200300.100.4.13 NAME 'domain'
 #            telecommunicationAttributeSet}
 #    ::= {pilotObjectClass 14}
 #
-## not sure what to expand postalAttributeSet and
-## telecommunitionAttributeSet to, so they are trimmed
 objectclass ( 0.9.2342.19200300.100.4.14 NAME 'RFC822localPart'
        SUP domain STRUCTURAL
-       MAY ( commonName $ surname $ description $ seeAlso $ telephonenumber )
+       MAY ( commonName $ surname $ description $ seeAlso $ telephoneNumber $
+               physicalDeliveryOfficeName $ postalAddress $ postalCode $
+               postOfficeBox $ streetAddress $
+               facsimileTelephoneNumber $ internationalISDNNumber $
+               telephoneNumber $ teletexTerminalIdentifier $
+               telexNumber $ preferredDeliveryMethod $ destinationIndicator $
+               registeredAddress $ x121Address )
        )
 
 # 8.3.9.  DNS Domain
@@ -1209,8 +1269,8 @@ objectclass ( 0.9.2342.19200300.100.4.14 NAME 'RFC822localPart'
 #    ::= {pilotObjectClass 15}
 #
 objectclass ( 0.9.2342.19200300.100.4.15 NAME 'dNSDomain'
-       SUP 'domain' STRUCTURAL
-       MAY ( ARecord $ MDRecord $ MXRecord $ NSRecord $ 
+       SUP domain STRUCTURAL
+       MAY ( ARecord $ MDRecord $ MXRecord $ NSRecord $
                SOARecord $ CNAMERecord )
        )
 
@@ -1228,6 +1288,7 @@ objectclass ( 0.9.2342.19200300.100.4.15 NAME 'dNSDomain'
 #    ::= {pilotObjectClass 17}
 #
 objectclass ( 0.9.2342.19200300.100.4.17 NAME 'domainRelatedObject'
+       DESC 'RFC1274: an object related to an domain'
        SUP top AUXILIARY
        MUST associatedDomain )
 
@@ -1246,7 +1307,7 @@ objectclass ( 0.9.2342.19200300.100.4.17 NAME 'domainRelatedObject'
 #    ::= {pilotObjectClass 18}
 #
 objectclass ( 0.9.2342.19200300.100.4.18 NAME 'friendlyCountry'
-       SUP country AUXILIARY
+       SUP country STRUCTURAL
        MUST friendlyCountryName )
 
 # 8.3.12.  Simple Security Object
@@ -1261,9 +1322,10 @@ objectclass ( 0.9.2342.19200300.100.4.18 NAME 'friendlyCountry'
 #            userPassword }
 #    ::= {pilotObjectClass 19}
 #
-objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
-       SUP top AUXILIARY
-       MUST userPassword )
+## (in core.schema)
+## objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
+##     SUP top AUXILIARY
+##     MUST userPassword )
 
 # 8.3.13.  Pilot Organization
 #
@@ -1279,7 +1341,7 @@ objectclass ( 0.9.2342.19200300.100.4.19 NAME 'simpleSecurityObject'
 #    ::= {pilotObjectClass 20}
 #
 objectclass ( 0.9.2342.19200300.100.4.20 NAME 'pilotOrganization'
-       SUP ( organization $ organizationalUnit ) AUXILIARY
+       SUP ( organization $ organizationalUnit ) STRUCTURAL
        MAY buildingName )
 
 # 8.3.14.  Pilot DSA
@@ -1295,7 +1357,7 @@ objectclass ( 0.9.2342.19200300.100.4.20 NAME 'pilotOrganization'
 #    ::= {pilotObjectClass 21}
 #
 objectclass ( 0.9.2342.19200300.100.4.21 NAME 'pilotDSA'
-       SUP dsa AUXILIARY
+       SUP dsa STRUCTURAL
        MAY dSAQuality )
 
 # 8.3.15.  Quality Labelled Data
@@ -1314,7 +1376,7 @@ objectclass ( 0.9.2342.19200300.100.4.21 NAME 'pilotDSA'
 #            subtreeMaximumQuality}
 #    ::= {pilotObjectClass 22}
 objectclass ( 0.9.2342.19200300.100.4.22 NAME 'qualityLabelledData'
-       SUP top
+       SUP top AUXILIARY
        MUST dsaQuality
        MAY ( subtreeMinimumQuality $ subtreeMaximumQuality )
        )