
package org.apache.tuscany.das.ldap.schema.constants;

public interface SchemaAttributeTypeConstants
{
    String M_SUP_OBJECT_CLASS           = "m-supObjectClass";
    String M_BYTECODE                         = "m-bytecode";
    String M_FQCN                                 = "m-fqcn";
    String M_DEPENDENCIES                 = "m-dependencies";
    String M_DISABLED                          = "m-disabled";
    String M_DESCRIPTION                     = "m-description";
    String M_OBSOLETE                         = "m-obsolete";
    String M_NAME                                 = "m-name";
    String M_OID                                    = "m-oid";
    String M_OC                                     = "m-oc";
    String M_AUX                                   = "m-aux";
    String M_USAGE                               = "m-usage";
    String M_NO_USER_MODIFICATION = "m-noUserModification";
    String M_SINGLE_VALUE                  = "m-singleValue";
    String M_COLLECTIVE                      = "m-collective";
    String M_SUBSTR                             = "m-substr";
    String M_SUP                                   = "m-supAttributeType";
    String M_ORDERING                        = "m-ordering";
    String M_EQUALITY                          = "m-equality";
    String M_SYNTAX                             = "m-syntax";
    String M_MUST                                = "m-must";
    String M_MAY                                  = "m-may";
    String M_TYPE_OBJECT_CLASS        = "m-typeObjectClass";
    String X_HUMAN_READIBLE            = "x-humanReadible";//TODO Fix spelling once fixed in ADS
    
    String M_FQCN_DEFAULT_VALUE = 
    		"org.apache.directory.shared.ldap.schema.syntax.AcceptAllSyntaxChecker";
}
