org.apache.directory.shared.ldap.schema
Interface DITStructureRule

All Superinterfaces:
SchemaObject

public interface DITStructureRule
extends SchemaObject

A dITStructureRule definition. A dITStructureRules is a rule governing the structure of the DIT by specifying a permitted superior to subordinate entry relationship. A structure rule relates a nameForm, and therefore a STRUCTURAL objectClass, to superior dITStructureRules. This permits entries of the STRUCTURAL objectClass identified by the nameForm to exist in the DIT as subordinates to entries governed by the indicated superior dITStructureRules. Hence dITStructureRules only apply to structural object classes.

According to ldapbis [MODELS]:

  DIT structure rule descriptions are written according to the ABNF:
  
    DITStructureRuleDescription = LPAREN WSP
        ruleid                    ; rule identifier
        [ SP "NAME" SP qdescrs ]  ; short names (descriptors)
        [ SP "DESC" SP qdstring ] ; description
        [ SP "OBSOLETE" ]         ; not active
        SP "FORM" SP oid          ; NameForm
        [ SP "SUP" ruleids ]      ; superior rules
        extensions WSP RPAREN     ; extensions
 
    ruleids = ruleid / ( LPAREN WSP ruleidlist WSP RPAREN )
 
    ruleidlist = ruleid *( SP ruleid )
 
    ruleid = number
 
  where:
    [ruleid] is the rule identifier of this DIT structure rule;
    NAME [qdescrs] are short names (descriptors) identifying this DIT
        structure rule;
    DESC [qdstring] is a short descriptive string;
    OBSOLETE indicates this DIT structure rule use is not active;
    FORM is specifies the name form associated with this DIT structure
        rule;
    SUP identifies superior rules (by rule id); and
    [extensions] describe extensions.
  
  If no superior rules are identified, the DIT structure rule applies
  to an autonomous administrative point (e.g. the root vertex of the
  subtree controlled by the subschema) [X.501].
 

Version:
$Rev: 379008 $
Author:
Apache Directory Project
See Also:
RFC2252 Section 6.33, ldapbis [MODELS], DescriptionUtils.getDescription(DITStructureRule)

Method Summary
 NameForm getNameForm()
          The nameForm associating this ditStructureRule with a structural objectClass.
 DITStructureRule[] getSuperClasses()
          Gets a collection of all the superior StructureRules.
 
Methods inherited from interface org.apache.directory.shared.ldap.schema.SchemaObject
getDescription, getName, getNames, getOid, isObsolete
 

Method Detail

getNameForm

public NameForm getNameForm()
                     throws javax.naming.NamingException
The nameForm associating this ditStructureRule with a structural objectClass.

Returns:
the nameForm for the structural objectClass
Throws:
javax.naming.NamingException - if there is a failure resolving the object

getSuperClasses

public DITStructureRule[] getSuperClasses()
                                   throws javax.naming.NamingException
Gets a collection of all the superior StructureRules. The difference with getSuperClass is this method will resolve the entire superior class chain.

Returns:
the chain of StructureRules
Throws:
javax.naming.NamingException - if there is a failure resolving the object


Copyright © 2003-2006 . All Rights Reserved.