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
Code Block |
---|
Wiki Markup |
h1. 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 h1. The MetaSchema schema This part expose the elements we have to declare to be able to store the schema using a standard schema h2. Meta top level elements h3. MetaTop OjectClass This Meta object is used as the top-level class which will be the mother of all MetaObjects {code} 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 ( m-oid $ m-desc ) ) {code} h3. MetaTop AttributeTypes We also need to describe all the meta attributeTypes we will use : ||name||description||ldif form|| |m-collective|attributetype ( |
MetaTop AttributeTypes
We also need to describe all the meta attributeTypes we will use :
name | description | ldif form |
---|---|---|
m-collective | attributetype ( 1.3.6.1.4.1.18060.1.1.0.3.14 |
...
|
...
'm-collective' |
...
|
...
'The |
...
attribute |
...
is |
...
collective' |
...
|
...
booleanMatch |
...
|
...
1.3.6.1.4.1.1466.115.121.1.15 |
...
|
...
|
...
dSAOperation |
...
|
...
dn: |
...
name=m-collective,ou=meta,ou=schema |
...
|
...
meta-attributeType |
...
|
...
meta-top |
...
|
...
top |
...
|
...
m-collective |
...
|
...
The |
...
attribute |
...
is |
...
collective |
...
|
...
booleanmatch |
...
|
...
1.3.6.1.4.1.1466.115.121.1.15 |
...
|
...
true |
...
|
...
dSAOperation |
...
m-desc |
...
m-equality |
...
m-extension |
...
m-must |
...
m-name |
...
m-no-user-modificatio |
...
m-obsolete |
...
m-oid |
...
m-ordering |
...
m-single-value |
...
m-substr |
...
m-sup-attribute-type |
...
m-sup-objectclas |
...
m-type-attribute-type |
...
m-type-objectclass |
...
m-usage |
MetaTop ObjectClasses instances
MetaObjectClass
The following text is the description of the MetaObjectClass :
Code Block |
---|
|||
h2. MetaTop ObjectClasses instances
h3. MetaObjectClass
The following text is the description of the *MetaObjectClass* :
{code}
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 m-name
MAY ( m-sup-objectclass $ m-must $ m-may $ m-type-objectclass $ m-obsolete $ m-extension )
)
|
MetaAttributeType
The following text is the description of the MetaAttributeType :
Code Block |
---|
{code} h3. MetaAttributeType The following text is the description of the *MetaAttributeType* : {code} 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 ( m-name $ m-syntax ) MAY ( m-sup-attribute-type $ m-type-attribute-type $ m-obsolete $ m-equality $ m-ordering $ m-substr $ m-single-value $ m-collective $ m-no-user-modification $ m-usage $ m-extension ) ) {code} h3. MetaSyntax The following text is the description of the *MetaSyntax* : {code} |
MetaSyntax
The following text is the description of the MetaSyntax :
Code Block |
---|
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 :
Code Block |
---|
{code}
h3. MetaMatchingRule
The following text is the description of the *MatchingRule* :
{code}
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 m-syntax
MAY ( m-obsolete $ m-extensions )
)
|
Application to Core Schema
We will express the Core schema using the previously defined Ldap objects :
Country
The country ObjectClass in OpenLdap format :
Code Block |
---|
{code} h1. Application to Core Schema We will express the Core schema using the previously defined Ldap objects : h2. Country The country ObjectClass in OpenLdap format : {code} objectclass ( 2.5.6.2 NAME 'country' DESC 'RFC2256: a country' SUP top STRUCTURAL MUST c MAY ( searchGuide $ description ) ) {code} |
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
...
:
Code Block |
---|
} dn: name=country, dc=core, ou=schema objectclass: MetaObjectClass objectclass: MetaTop objectClass: top m-oid: 2.5.6.2 m-name: country m-desc: RFC2256: a country m-sup-objectClass: top m-type-objectClass: STRUCTURAL m-must: c m-may: searchGuide m-may: description {code} |