Introduction
This page is used to describe the MetaSchema using OpenLdap schema syntx, so that it can be loaded into the ou=schema special partition
The MetaSchema schema
This part expose the elements we have to declare to be able to store the schema using a standard schema
Meta top level elements
MetaTop OjectClass
This Meta object is used as the top-level class which will be the mother of all MetaObjects
ObjectClass ( 1.3.6.1.4.1.18060.1.1.0.0.1 NAME MetaTop DESC 'Top level ObjectClass of all Meta objects' SUP top ABSTRACT MUST ( oid $ desc ) )
MetaTop AttributeTypes
MetaTop ObjectClasses instances
MetaObjectClass
The following text is the description of the MetaObjectClass :
ObjectClass ( 1.3.6.1.4.1.18060.1.1.0.0.2 NAME MetaObjectClass DESC 'Meta definition of the ObjectClass object' SUP MetaTop STRUCTURAL MUST name MAY ( sup $ must $ may $ type $ obsolete $ extension ) )
MetaAttributeType
The following text is the description of the MetaAttributeType :
ObjectClass ( 1.3.6.1.4.1.18060.1.1.0.0.3 NAME MetaAttributeType DESC 'Meta definition of the AttributeType object' SUP MetaTop STRUCTURAL MUST ( name $ desc $ syntax ) MAY ( sup $ type $ obsolete $ equality $ ordering $ substr $ single-value $ collective $ no-user-modification $ usage $ extension ) )
MetaSyntax
The following text is the description of the MetaSyntax :
ObjectClass ( 1.3.6.1.4.1.18060.1.1.0.0.4 NAME MetaSyntax DESC 'Meta definition of the Syntax object' SUP MetaTop STRUCTURAL )
MetaMatchingRule
The following text is the description of the MatchingRule :
ObjectClass ( 1.3.6.1.4.1.18060.1.1.0.0.5 NAME MetaMatchingRule DESC 'Meta definition of the MatchingRule object' SUP MetaTop STRUCTURAL MUST syntax MAY ( obsolete $ extensions ) )
Application to Core Schema
We will express the Core schema using the previously defined Ldap objects :
Country
The country ObjectClass in OpenLdap format :
objectclass ( 2.5.6.2 NAME 'country' DESC 'RFC2256: a country' SUP top STRUCTURAL MUST c MAY ( searchGuide $ description ) )
The Country ObjectClass using the MetaObjectClass definition will be inserted as an entry into the ou=schema partition. As it is declared in core, we use a DN which describe this relationship with the original filer :
dn: name=country, dc=core, ou=schema objectclass: MetaObjectClass objectclass: MetaTop objectClass: top oid: 2.5.6.2 name: country desc: RFC2256: a country sup: top type: STRUCTURAL must: c may: searchGuide may: description