Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.novell.service.nds
Interface SchemaClass

public interface SchemaClass

Defines the object components for a single NDS Class.

Object components for a class define the types of objects that can exist in the Directory tree. An object class is defined by its features, which consist of the following kinds of information:

- Super Classes
- Class Attributes
- Class Flags
- Structure Rules
- ACL Templates

The Class Flags may have one or more of the following flags set:

- DS_CONTAINER_CLASS
- DS_EFFECTIVE_CLASS
- DS_NONREMOVABLE_CLASS
- DS_AMBIGUOUS_NAMING
- DS_AMBIGUOUS_CONTAINMENT

Field Summary
`static java.lang.String` | `ATTR_ASN1NAME` Represents the ASN1Name Attribute ID.
`static java.lang.String` | `ATTR_FLAGS` Represents the flags attribute ID for class definitions.
`static java.lang.String` | `ATTR_OBJECT_CONTAINMENT_CLASSES` Represents the Object Containment Classes Attribute ID.
`static java.lang.String` | `ATTR_OBJECT_MANDATORY_ATTRIBUTES` Represents the Object Mandatory Attributes Attribute ID.
`static java.lang.String` | `ATTR_OBJECT_NAMING_ATTRIBUTES` Represents the Object Naming Attributes Attribute ID.
`static java.lang.String` | `ATTR_OBJECT_OPTIONAL_ATTRIBUTES` Represents the Object Optional Attributes Attribute ID.
`static java.lang.String` | `ATTR_OBJECT_SUPER_CLASSES` Represents the Object Super Classes Attribute ID.
`static int` | `DS_AMBIGUOUS_CONTAINMENT` Indicates whether the object class has clearly defined containment classes.
`static int` | `DS_AMBIGUOUS_NAMING` Indicates whether the object class has clearly defined naming attributes.
`static int` | `DS_AUXILIARY_CLASS` (DS_AUXILIARY_CLASS = NetJNI.DS_AUXILIARY_CLASS)
`static int` | `DS_CONTAINER_CLASS` Indicates whether the object can contain other objects.
`static int` | `DS_EFFECTIVE_CLASS` Indicates whether an object class is effective or noneffective.
`static int` | `DS_NONREMOVABLE_CLASS` Indicates whether the object class can be removed from the schema.
`static int` | `DS_OPERATIONAL_CLASS` (DS_OPERATIONAL_CLASS = NetJNI.DS_OPERATIONAL_CLASS)

Field Detail

### ATTR_OBJECT_SUPER_CLASSES

    public static final java.lang.String ATTR_OBJECT_SUPER_CLASSES

  Represents the Object Super Classes Attribute ID.

  Super Classes designate the structure of the schema itself, defining the association of class definitions in the class hierarchy.

  (ATTR_OBJECT_SUPER_CLASSES = "Object Super Classes")

### ATTR_OBJECT_CONTAINMENT_CLASSES

    public static final java.lang.String ATTR_OBJECT_CONTAINMENT_CLASSES

  Represents the Object Containment Classes Attribute ID.

  The containment classes structure rule determines where in the NDS tree hierarchy the objects can be placed. Objects that can contain other objects are container objects or parent objects. Objects that cannot contain other objects are noncontainer or leaf objects.

  (ATTR_OBJECT_CONTAINMENT_CLASSES = "Object Containment Classes")

### ATTR_OBJECT_NAMING_ATTRIBUTES

    public static final java.lang.String ATTR_OBJECT_NAMING_ATTRIBUTES

  Represents the Object Naming Attributes Attribute ID.

  The object naming attribute structure rule determines how objects of the class are named. Objects are identified by their own name and the name of their parent objects. The characteristics of naming attributes include: Naming attribute rules, multi-valued naming attributes, shareable naming attributes, and inheritance of naming attributes.

  (ATTR_OBJECT_NAMING_ATTRIBUTES = "Object Naming Attributes")

### ATTR_OBJECT_MANDATORY_ATTRIBUTES

    public static final java.lang.String ATTR_OBJECT_MANDATORY_ATTRIBUTES

  Represents the Object Mandatory Attributes Attribute ID.

  If an attribute is mandatory, a value must be assigned to the attribute before an instance of the object can be created. Mandatory attributes are always inherited from Super classes, and mandatory definitions take precedence over optional attribute designations.

  (ATTR_OBJECT_MANDATORY_ATTRIBUTES = "Object Mandatory Attributes")

### ATTR_OBJECT_OPTIONAL_ATTRIBUTES

    public static final java.lang.String ATTR_OBJECT_OPTIONAL_ATTRIBUTES

  Represents the Object Optional Attributes Attribute ID.

  If an attribute is optional, a value does not need to be assigned to create an instance of the object. The only exception is an optional naming attribute, but if the optional naming attribute is the only attribute used for naming the object, the optional attribute becomes a mandatory attribute. Optional attributes are always inherited from super classes.

  (ATTR_OBJECT__OPTIONAL_ATTRIBUTES = "Object Optional Attributes")

### ATTR_ASN1NAME

    public static final java.lang.String ATTR_ASN1NAME

  Represents the ASN1Name Attribute ID.

  The ASN1Name is the unique identifier for the class definition based on the international standard for representing data types and structures. It provides a machine-independent syntax for specifying application layer protocols and information on open systems.

  ATTR_ASN1NAME = "ASN1Name")

### ATTR_FLAGS

    public static final java.lang.String ATTR_FLAGS

  Represents the flags attribute ID for class definitions.

  The Flags Attribute constant contains a value that is a combination of the following flags that restrict the attribute value:

  - SchemaClassDirContext.DS_CONTAINER_CLASS
  - SchemaClassDirContext.DS_EFFECTIVE_CLASS
  - SchemaClassDirContext.DS_NONREMOVABLE_CLASS
  - SchemaClassDirContext.DS_AMBIGUOUS_NAMING
  - SchemaClassDirContext.DS_AMBIGUOUS_CONTAINMENT

  ATTR_FLAGS = "Flags")

### DS_CONTAINER_CLASS

    public static final int DS_CONTAINER_CLASS

  Indicates whether the object can contain other objects.

  This flag is set to ON for those object classes that are designated as container classes. The flag is set to OFF for all leaf object classes.

  (DS_CONTAINER_CLASS = NetJNI.DS_CONTAINER_CLASS)

### DS_EFFECTIVE_CLASS

    public static final int DS_EFFECTIVE_CLASS

  Indicates whether an object class is effective or noneffective.

  The Effective flag is set to ON for those base schema object classes that can be used to provide definition and to create objects. The flag is set to OFF for those classes that provide definition but cannot be used to create objects.

  (DS_EFFECTIVE_CLASS = NetJNI.DS_EFFECTIVE_CLASS)

### DS_NONREMOVABLE_CLASS

    public static final int DS_NONREMOVABLE_CLASS

  Indicates whether the object class can be removed from the schema.

  This flag is set to ON for those objects that cannot be removed. The flag is set to OFF for object classes that can be removed. All base schema object classes are flagged nonremovable.

  (DS_NONREMOVABLE_CLASS = NetJNI.DS_NONREMOVABLE_CLASS)

### DS_AMBIGUOUS_NAMING

    public static final int DS_AMBIGUOUS_NAMING

  Indicates whether the object class has clearly defined naming attributes.

  As a general rule, noneffective classes can be created with ambiguous naming, but effective classes must have nonambiguous naming attributes. For most object classes in the base schema, the Ambiguous Naming flag is set to OFF. The only object classes where this flag is turned On are Top, Alias, Person and Partition.

  (DS_AMBIGUOUS_NAMING = NetJNI.DS_AMBIGUOUS_NAMING)

### DS_AMBIGUOUS_CONTAINMENT

    public static final int DS_AMBIGUOUS_CONTAINMENT

  Indicates whether the object class has clearly defined containment classes.

  As a general rule, noneffective classes can be created with ambiguous containment, but effective classes must have nonambiguous containment. For most object classes in the base schema, the Ambiguous Containment flag is set to OFF. The only object classes where this flag is turned On are Top, Alias, Person and Partition.

  (DS_AMBIGUOUS_CONTAINMENT = NetJNI.DS_AMBIGUOUS_CONTAINMENT)

### DS_AUXILIARY_CLASS

    public static final int DS_AUXILIARY_CLASS

  (DS_AUXILIARY_CLASS = NetJNI.DS_AUXILIARY_CLASS)

### DS_OPERATIONAL_CLASS

    public static final int DS_OPERATIONAL_CLASS

  (DS_OPERATIONAL_CLASS = NetJNI.DS_OPERATIONAL_CLASS)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD