diff --git a/servers/slapd/schema/README b/servers/slapd/schema/README
index 7ea65880635d6f84454f6f10c153c259d290afee..91496af1c3eeb2bff3100170aa41f5b30e8876d8 100644
--- a/servers/slapd/schema/README
+++ b/servers/slapd/schema/README
@@ -9,7 +9,6 @@ inetorgperson.schema    InetOrgPerson schema (recommended)
 java.schema             Java Object (RFC 2713) schema
 krb5-kdc.schema         Kerberos V KDC schema
 misc.schema             misc. experimental schema
-nadf.schema             North America Directory Forum schema
 nis.schema              Network Information Service schema
 openldap.schema         OpenLDAP Project schema
 
diff --git a/servers/slapd/schema/core.schema b/servers/slapd/schema/core.schema
index 0ac410b4715acfe123950dc4b2ae009275a86344..d3f308994ddbab0e69ffc6cc8101da3fb580a3ee 100644
--- a/servers/slapd/schema/core.schema
+++ b/servers/slapd/schema/core.schema
@@ -452,13 +452,6 @@ objectclass ( 1.3.6.1.4.1.1466.101.120.111 NAME 'extensibleObject'
 	DESC 'RFC2252: extensible object'
 	SUP top AUXILIARY )
 
-objectclass ( 2.5.20.1 NAME 'subschema'
-	DESC 'RFC2252: controlling subschema (sub)entry'
-	AUXILIARY
-	MAY ( dITStructureRules $ nameForms $ ditContentRules $
-		objectClasses $ attributeTypes $ matchingRules $
-		matchingRuleUse ) )
-
 #
 # Standard Track URI label schema from RFC2079
 #
diff --git a/servers/slapd/schema/cosine.schema b/servers/slapd/schema/cosine.schema
index c6babcc2efdcf5e2169e39d3f9e99caacc6190a8..af34f6c7e1382d1684a5048feadb5ccc2f9e06c7 100644
--- a/servers/slapd/schema/cosine.schema
+++ b/servers/slapd/schema/cosine.schema
@@ -989,11 +989,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
 #
diff --git a/servers/slapd/schema/nadf.schema b/servers/slapd/schema/nadf.schema
deleted file mode 100644
index a93c29d5f25cdc0189559bc5a8fc70d165f4e4ca..0000000000000000000000000000000000000000
--- a/servers/slapd/schema/nadf.schema
+++ /dev/null
@@ -1,175 +0,0 @@
-# $OpenLDAP$
-
-# These are definitions from the North American Directory Forum
-# They were taken from ftp://ftp.gte.com/pub/nadf/nadf-docs/sd-04.ps
-# Our thanks to Harald T. Alvestrand that provided the pointer.
-
-# This is a preliminary version and is likely to be incorrect in
-# a number of areas
-
-# The root for OIDs is joint-iso-ccitt mhs-motis(6) group(6) grimstad(5)
-# nadf(2).  In othor words, barring any error, 2.6.6.5.2.  Then,
-# nadfOink ::= 2.6.6.5.2.0
-# nadfModule ::= 2.6.6.5.2.1
-# nadfAttributeType ::= 2.6.6.5.2.4
-# nadfObjectClass ::= 2.6.6.5.2.6
-
-# Attribute Type Definition
-
-# The spec says "leading zero is significant".  Is this really a
-# numeric string?
-
-attributetype ( 2.6.6.5.2.4.1 NAME 'fipsStateNumericCode'
-	EQUALITY numericStringMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{2} )
-
-# It is probably inconvenient to give this attribute that syntax
-# (Printable String) instead of Directory String.
-
-attributetype ( 2.6.6.5.2.4.2 NAME 'fipsStateAlphaCode'
-	EQUALITY caseIgnoreMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.44{2} )
-
-# The spec says "leading zeros are significant".  Is this really a
-# numeric string?
-
-attributetype ( 2.6.6.5.2.4.3 NAME 'fipsCountyNumericCode'
-	EQUALITY numericStringMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{5} )
-
-# It seems that fips55 is fipsPlaceNumericCode, is this so?
-
-# The spec says "leading zeros are significant".  Is this really a
-# numeric string?
-
-attributetype ( 2.6.6.5.2.4.4 NAME ( 'fipsPlaceNumericCode' 'fips55' )
-	EQUALITY numericStringMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.36{5} )
-
-attributetype ( 2.6.6.5.2.4.5 NAME 'ansiOrgNumericCode'
-	EQUALITY integerMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 )
-
-# Apparently, 'ad' is an alias for 'addmdName'
-
-attributetype ( 2.6.6.5.2.4.6 NAME ( 'addmdName' 'ad' )
-	EQUALITY caseIgnoreMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
-
-# I don't know what syntax to give this.  I will use binary for the
-# time being.
-
-attributetype ( 2.6.6.5.2.4.7 NAME 'nadfSearchGuide'
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
-
-attributetype ( 2.6.6.5.2.4.8 NAME 'supplementaryInformation'
-	EQUALITY caseIgnoreMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{76} )
-
-attributetype ( 2.6.6.5.2.4.9 NAME 'namingLink'
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.12 )
-
-attributetype ( 2.6.6.5.2.4.10 NAME 'reciprocalNamingLink'
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.12
-	SINGLE-VALUE )
-
-# Numbers 11 to 14 are obsolete
-
-# Next one is unused.  BTW, this attribute is supposed to be
-# case-exact match, but we cannot make that match unless we
-# define the string with IA5 syntax and we don't have a
-# clear base for this.
-
-attributetype ( 2.6.6.5.2.4.15 NAME 'logicalDSAReference'
-	EQUALITY caseIgnoreMatch
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
-
-attributetype ( 2.6.6.5.2.4.16 NAME 'multiMediaInformation'
-	SYNTAX 1.3.6.1.4.1.1466.115.121.1.5 )
-
-# Number 17, 18 and 19 are EDI-related attributes for the nadfEDIUser
-# class that we did not have and has been left out below.
-
-# Object classes
-
-# According to the intended use described in section 3.3.1 in the spec,
-# this can only be ABSTRACT.
-# We had lastModifiedTime as 'allows', but sd-04 has it as MUST.
-# We did not have multiMediaInformation neither on this class nor
-# on any of its derived classes.
-
-objectclass ( 2.6.6.5.2.6.7 NAME 'nadfObject' SUP top ABSTRACT
-	MUST lastModifiedTime
-	MAY ( multiMediaInformation $ nadfSearchGuide $
-	supplementaryInformation ) )
-
-# I think all classes derived from locality should be considered
-# STRUCTURAL, since locality is.
-
-objectclass ( 2.6.6.5.2.6.1 NAME 'usStateOrEquivalent'
-	SUP ( locality $ nadfObject ) STRUCTURAL
-	MUST ( l $ fipsStateNumericCode $ fipsStateAlphaCode $ st ) )
-
-objectclass ( 2.6.6.5.2.6.2 NAME 'usPlace'
-	SUP ( locality $ nadfObject ) STRUCTURAL
-	MUST ( l $ fipsPlaceNumericCode ) )
-
-objectclass ( 2.6.6.5.2.6.3 NAME 'usCountyOrEquivalent' SUP usPlace STRUCTURAL
-	MUST fipsCountyNumericCode )
-
-# applicationEntity is STRUCTURAL, so we will declare this one the same
-
-objectclass ( 2.6.6.5.2.6.5 NAME 'nadfApplicationEntity'
-	SUP applicationEntity STRUCTURAL
-	MUST supportedApplicationContext )
-
-# Following our heuristic, this one will be STRUCTURAL since organization
-# is too.  We did not have 'o' as 'requires', but if this is really a
-# subclass of organization, then 'o' becomes MUST by inheritance
-
-objectclass ( 2.6.6.5.2.6.6 NAME 'nadfADDMD'
-	SUP ( organization $ nadfObject ) STRUCTURAL
-	MUST addmdName )
-
-# Number 7 is nadfObject described above.
-
-# This one quacks like an AUXILIARY object class
-
-objectclass ( 2.6.6.5.2.6.8 NAME 'publicObject' SUP top AUXILIARY
-	MUST namingLink )
-
-# And so does this one
-
-objectclass ( 2.6.6.5.2.6.9 NAME 'providerObject' SUP top AUXILIARY
-	MUST reciprocalNamingLink )
-
-# The spec says number 10 is obsolete
-
-# This one also strongly smells like AUXILIARY
-
-objectclass ( 2.6.6.5.2.6.11 NAME 'fips55Object' SUP top AUXILIARY
-	MUST fipsPlaceNumericCode
-	MAY st )
-
-# The spec says numbers 12 to 18 are obsolete
-
-# Another obviously AUXILIARY class
-
-objectclass ( 2.6.6.5.2.6.19 NAME 'nationalObject' SUP top AUXILIARY
-	MUST c )
-
-# So is this one
-
-objectclass ( 2.6.6.5.2.6.20 NAME 'ansiOrgObject' SUP top AUXILIARY
-	MUST ansiOrgNumericCode )
-
-# We did not have the next one, but it is innocuous
-
-objectclass ( 2.6.6.5.2.6.21 NAME 'caProvinceOrTerritory'
-	SUP ( locality $ nadfObject ) STRUCTURAL
-	MUST st )
-
-# According to the spec, numbers 22, 23 and 24 are obsolete
-
-# Number 25 was nadfEDIuser as a subclass of edi-user.  Sorry we cannot
-# deal with this one and we did not have it anyway.