001    /*
002     *  Licensed to the Apache Software Foundation (ASF) under one
003     *  or more contributor license agreements.  See the NOTICE file
004     *  distributed with this work for additional information
005     *  regarding copyright ownership.  The ASF licenses this file
006     *  to you under the Apache License, Version 2.0 (the
007     *  "License"); you may not use this file except in compliance
008     *  with the License.  You may obtain a copy of the License at
009     *  
010     *    http://www.apache.org/licenses/LICENSE-2.0
011     *  
012     *  Unless required by applicable law or agreed to in writing,
013     *  software distributed under the License is distributed on an
014     *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015     *  KIND, either express or implied.  See the License for the
016     *  specific language governing permissions and limitations
017     *  under the License. 
018     *  
019     */
020    package org.apache.directory.shared.ldap.constants;
021    
022    
023    
024    /**
025     * A utility class where we declare all the schema objects being used by any
026     * ldap server.
027     *
028     * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
029     * @version $Rev:$
030     */
031    public interface SchemaConstants
032    {
033        // SchemaEntity names
034        String ATTRIBUTE_TYPE                       = "AttributeType";
035        String COMPARATOR                           = "Comparator";
036        String DIT_CONTENT_RULE                     = "DitContentRule";
037        String DIT_STRUCTURE_RULE                   = "DitStructureRule";
038        String MATCHING_RULE                        = "MatchingRule";
039        String MATCHING_RULE_USE                    = "MatchingRuleUse";
040        String NAME_FORM                            = "NameForm";
041        String NORMALIZER                           = "Normalizer";
042        String OBJECT_CLASS                         = "ObjectCLass";
043        String SYNTAX                               = "Syntax";
044        String SYNTAX_CHECKER                       = "SyntaxChecker";
045        
046        // SchemaEntity paths
047        String ATTRIBUTES_TYPE_PATH                 = "ou=attributetypes";
048        String COMPARATORS_PATH                     = "ou=comparators";
049        String DIT_CONTENT_RULES_PATH               = "ou=ditcontentrules";
050        String DIT_STRUCTURE_RULES_PATH             = "ou=ditstructurerules";
051        String MATCHING_RULES_PATH                  = "ou=matchingrules";
052        String MATCHING_RULE_USE_PATH               = "ou=matchingruleuse";
053        String NAME_FORMS_PATH                      = "ou=nameforms";
054        String NORMALIZERS_PATH                     = "ou=normalizers";
055        String OBJECT_CLASSES_PATH                  = "ou=objectclasses";
056        String SYNTAXES_PATH                        = "ou=syntaxes";
057        String SYNTAX_CHECKERS_PATH                 = "ou=syntaxcheckers";
058        
059        // Schema root
060        String OU_SCHEMA                            = "ou=schema";
061        
062        // The DN for the schema modifications
063        String SCHEMA_MODIFICATIONS_DN              = "cn=schemaModifications,ou=schema";
064        
065        
066        // Special attributes 1.1 , * and + for search operations
067        String NO_ATTRIBUTE                         = "1.1";
068        String[] NO_ATTRIBUTE_ARRAY                 = new String[]{ NO_ATTRIBUTE };
069        
070        String ALL_USER_ATTRIBUTES                  = "*";
071        String[] ALL_USER_ATTRIBUTES_ARRAY          = new String[]{ ALL_USER_ATTRIBUTES };
072        
073        String ALL_OPERATIONAL_ATTRIBUTES           = "+";
074        String[] ALL_OPERATIONAL_ATTRIBUTES_ARRAY   = new String[]{ ALL_OPERATIONAL_ATTRIBUTES };
075        
076        // ---- ObjectClasses -----------------------------------------------------
077        // Krb5Principal
078        String KRB5_PRINCIPAL_OC                    = "krb5Principal";
079        String KRB5_PRINCIPAL_OC_OID                = "1.3.6.1.4.1.5322.10.2.1";
080        
081        // Top
082        String TOP_OC                               = "top";
083        String TOP_OC_OID                           = "2.5.6.0";
084        
085        // Alias
086        String ALIAS_OC                             = "alias";
087        String ALIAS_OC_OID                         = "2.5.6.1";
088    
089        // Country
090        String COUNTRY_OC                           = "country";
091        String COUNTRY_OC_OID                       = "2.5.6.2";
092    
093        // Domain
094        String DOMAIN_OC                            = "domain";
095        String DOMAIN_OC_OID                        = "0.9.2342.19200300.100.4.13";
096    
097        // DcObject
098        String DC_OBJECT_OC                         = "dcObject";
099        String DC_OBJECT_OC_OID                     = "1.3.6.1.4.1.1466.344";
100    
101        // Locality
102        String LOCALITY_OC                          = "locality";
103        String LOCALITY_OC_OID                      = "2.5.6.3";
104    
105        // Organization
106        String ORGANIZATION_OC                      = "organization";
107        String ORGANIZATION_OC_OID                  = "2.5.6.4";
108    
109        // OrganizationalUnit
110        String ORGANIZATIONAL_UNIT_OC               = "organizationalUnit";
111        String ORGANIZATIONAL_UNIT_OC_OID           = "2.5.6.5";
112    
113        // Person
114        String PERSON_OC                            = "person";
115        String PERSON_OC_OID                        = "2.5.6.6";
116    
117        // PosixAccount
118        String POSIX_ACCOUNT_OC                     = "posicAccount";
119        String POSIX_ACCOUNT_OC_OID                 = "1.3.6.1.1.1.2.0";
120    
121        // PosixGroup
122        String POSIX_GROUP_OC                       = "posixGroup";
123        String POSIX_GROUP_OC_OID                   = "1.3.6.1.1.1.2.2";
124        
125        // OrganizationalPerson
126        String ORGANIZATIONAL_PERSON_OC             = "organizationalPerson";
127        String ORGANIZATIONAL_PERSON_OC_OID         = "2.5.6.7";
128    
129        // OrganizationalRole
130        String ORGANIZATIONAL_ROLE_OC               = "organizationalRole";
131        String ORGANIZATIONAL_ROLE_OC_OID           = "2.5.6.8";
132    
133        // GroupOfNames
134        String GROUP_OF_NAMES_OC                    = "groupOfNames";
135        String GROUP_OF_NAMES_OC_OID                = "2.5.6.9";
136        
137        // ResidentialPerson
138        String RESIDENTIAL_PERSON_OC                = "residentialPerson";
139        String RESIDENTIAL_PERSON_OC_OID            = "2.5.6.10";
140        
141        // GroupOfUniqueNames
142        String GROUP_OF_UNIQUE_NAMES_OC             = "groupOfUniqueNames";
143        String GROUP_OF_UNIQUE_NAMES_OC_OID         = "2.5.6.17";
144        
145        // Subentry
146        String SUBENTRY_OC                          = "subentry";
147        String SUBENTRY_OC_OID                      = "2.5.17.0";
148        
149        // AccessControlSubentry
150        String ACCESS_CONTROL_SUBENTRY_OC           = "accessControlSubentry";
151        String ACCESS_CONTROL_SUBENTRY_OC_OID       = "2.5.17.1";
152        
153        // CollectiveAttributeSubentry
154        String COLLECTIVE_ATTRIBUTE_SUBENTRY_OC     = "collectiveAttributeSubentry";
155        String COLLECTIVE_ATTRIBUTE_SUBENTRY_OC_OID = "2.5.17.2";
156    
157        // Subschema
158        String SUBSCHEMA_OC                         = "subschema";
159        String SUBSCHEMA_OC_OID                     = "2.5.20.1";
160        
161        // InetOrgPerson
162        String INET_ORG_PERSON_OC                   = "inetOrgPerson";
163        String INET_ORG_PERSON_OC_OID               = "2.16.840.1.113730.3.2.2";
164        
165        // Referral
166        String REFERRAL_OC                          = "referral";
167        String REFERRAL_OC_OID                      = "2.16.840.1.113730.3.2.6";
168    
169        // ExtensibleObject
170        String EXTENSIBLE_OBJECT_OC                 = "extensibleObject";
171        String EXTENSIBLE_OBJECT_OC_OID             = "1.3.6.1.4.1.1466.101.120.111";
172    
173        // Apache Meta Schema
174        String META_TOP_OC                          = "metaTop";
175        String META_TOP_OC_OID                      = "1.3.6.1.4.1.18060.0.4.0.3.1";
176        String META_OBJECT_CLASS_OC                 = "metaObjectClass";
177        String META_OBJECT_CLASS_OC_OID             = "1.3.6.1.4.1.18060.0.4.0.3.2";
178        String META_ATTRIBUTE_TYPE_OC               = "metaAttributeType";
179        String META_ATTRIBUTE_TYPE_OC_OID           = "1.3.6.1.4.1.18060.0.4.0.3.3";
180        String META_SYNTAX_OC                       = "metaSyntax";
181        String META_SYNTAX_OC_OID                   = "1.3.6.1.4.1.18060.0.4.0.3.4";
182        String META_MATCHING_RULE_OC                = "metaMatchingRule";
183        String META_MATCHING_RULE_OC_OID            = "1.3.6.1.4.1.18060.0.4.0.3.5";
184        String META_DIT_STRUCTURE_RULE_OC           = "metaDITStructureRule";
185        String META_DIT_STRUCTURE_RULE_OC_OID       = "1.3.6.1.4.1.18060.0.4.0.3.6";
186        String META_NAME_FORM_OC                    = "metaNameForm";
187        String META_NAME_FORM_OC_OID                = "1.3.6.1.4.1.18060.0.4.0.3.7";
188        String META_MATCHING_RULE_USE_OC            = "metaMatchingRuleUse";
189        String META_MATCHING_RULE_USE_OC_OID        = "1.3.6.1.4.1.18060.0.4.0.3.8";
190        String META_DIT_CONTENT_RULE_OC             = "metaDITContentRule";
191        String META_DIT_CONTENT_RULE_OC_OID         = "1.3.6.1.4.1.18060.0.4.0.3.9";
192        String META_SYNTAX_CHECKER_OC               = "metaSyntaxChecker";
193        String META_SYNTAX_CHECKER_OC_OID           = "1.3.6.1.4.1.18060.0.4.0.3.10";
194        String META_SCHEMA_OC                       = "metaSchema";
195        String META_SCHEMA_OC_OID                   = "1.3.6.1.4.1.18060.0.4.0.3.11";
196        String META_NORMALIZER_OC                   = "metaNormalizer";
197        String META_NORMALIZER_OC_OID               = "1.3.6.1.4.1.18060.0.4.0.3.12";
198        String META_COMPARATOR_OC                   = "metaComparator";
199        String META_COMPARATOR_OC_OID               = "1.3.6.1.4.1.18060.0.4.0.3.13";
200        
201        
202        // ---- AttributeTypes ----------------------------------------------------
203        // ObjectClass
204        String OBJECT_CLASS_AT                          = "objectClass";
205        String OBJECT_CLASS_AT_OID                      = "2.5.4.0";
206        
207        // AliasedObjectName
208        String ALIASED_OBJECT_NAME_AT                   = "aliasedObjectName";
209        String ALIASED_OBJECT_NAME_AT_OID               = "2.5.4.1";
210    
211        // Name
212        String NAME_AT                                  = "name";
213        String NAME_AT_OID                              = "2.5.4.41";
214    
215        // Cn
216        String CN_AT                                    = "cn";
217        String COMMON_NAME_AT                           = "commonName";
218        String CN_AT_OID                                = "2.5.4.3";
219        
220        // Sn
221        String SN_AT                                    = "sn";
222        String SURNAME_AT                               = "surname";
223        String SN_AT_OID                                = "2.5.4.4";
224    
225        // St
226        String ST_AT = "st";
227        String STATEORPROVINCE_NAME_AT                  = "stateOrProvinceName";
228        String ST_AT_OID                                = "2.5.4.8";
229    
230        // Street
231        String STREET_AT                                = "street";
232        String STREET_ADDRESS_AT                        = "streetAddress";
233        String STREET_AT_OID                            = "2.5.4.9";
234    
235        // PostalCode
236        String POSTALCODE_AT                            = "postalCode";
237        String POSTALCODE_AT_OID                        = "2.5.4.17";
238    
239        // PostalCode
240        String C_POSTALCODE_AT                          = "c-postalCode";
241        String C_POSTALCODE_AT_OID                      = "2.5.4.17.1";
242    
243        // PostOfficeBox
244        String POSTOFFICEBOX_AT                         = "postOfficeBox";
245        String POSTOFFICEBOX_AT_OID                     = "2.5.4.18";
246    
247        // SearchGuide
248        String SEARCHGUIDE_AT                           = "searchguide";
249        String SEARCHGUIDE_AT_OID                       = "2.5.4.14";
250    
251        // O
252        String O_AT                                     = "o";
253        String ORGANIZATION_NAME_AT                     = "organizationName";
254        String O_AT_OID                                 = "2.5.4.10";
255    
256        // Ou
257        String OU_AT = "ou";
258        String ORGANIZATIONAL_UNIT_NAME_AT              = "organizationalUnitName";
259        String OU_AT_OID                                = "2.5.4.11";
260    
261        // Member
262        String MEMBER_AT                                = "member";
263        String MEMBER_AT_OID                            = "2.5.4.31";
264    
265        // UserPassword
266        String USER_PASSWORD_AT                         = "userPassword";
267        String USER_PASSWORD_AT_OID                     = "2.5.4.35";
268    
269        // UniqueMember
270        String UNIQUE_MEMBER_AT                         = "uniqueMember";
271        String UNIQUE_MEMBER_AT_OID                     = "2.5.4.50";
272    
273        // ExcludeAllColectiveAttributes
274        String EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_AT     = "excludeAllCollectiveAttributes";
275        String EXCLUDE_ALL_COLLECTIVE_ATTRIBUTES_AT_OID = "2.5.18.0";
276        
277            // CreateTimestamp
278        String CREATE_TIMESTAMP_AT                      = "createTimestamp";
279        String CREATE_TIMESTAMP_AT_OID                  = "2.5.18.1";
280        
281        // ModifyTimestamp
282        String MODIFY_TIMESTAMP_AT                      = "modifyTimestamp";
283        String MODIFY_TIMESTAMP_AT_OID                  = "2.5.18.2";
284        
285        // CreatorsName
286        String CREATORS_NAME_AT                         = "creatorsName";
287        String CREATORS_NAME_AT_OID                     = "2.5.18.3";
288        
289        // ModifiersName
290        String MODIFIERS_NAME_AT                        = "modifiersName";
291        String MODIFIERS_NAME_AT_OID                    = "2.5.18.4";
292        
293        // SubtreeSpecification
294        String SUBTREE_SPECIFICATION_AT                 = "subtreeSpecification";
295        String SUBTREE_SPECIFICATION_AT_OID             = "2.5.18.6";
296    
297        // CollectiveExclusions
298        String COLLECTIVE_EXCLUSIONS_AT                 = "collectiveExclusions";
299        String COLLECTIVE_EXCLUSIONS_AT_OID             = "2.5.18.7";
300    
301        // SubschemaSubentry
302        String SUBSCHEMA_SUBENTRY_AT                    = "subschemaSubentry";
303        String SUBSCHEMA_SUBENTRY_AT_OID                = "2.5.18.10";
304    
305        // CollectiveAttributeSubentries
306        String COLLECTIVE_ATTRIBUTE_SUBENTRIES_AT       = "collectiveAttributeSubentries";
307        String COLLECTIVE_ATTRIBUTE_SUBENTRIES_AT_OID   = "2.5.18.12";
308    
309        // DitStructureRules
310        String DIT_STRUCTURE_RULES_AT                   = "ditStructureRules";
311        String DIT_STRUCTURE_RULES_AT_OID               = "2.5.21.1";
312        
313        // DitContentRules
314        String DIT_CONTENT_RULES_AT                     = "ditContentRules";
315        String DIT_CONTENT_RULES_AT_OID                 = "2.5.21.2";
316        
317        // MatchingRules
318        String MATCHING_RULES_AT                        = "matchingRules";
319        String MATCHING_RULES_AT_OID                    = "2.5.21.4";
320        
321        // AttributeTypes
322        String ATTRIBUTE_TYPES_AT                       = "attributeTypes";
323        String ATTRIBUTE_TYPES_AT_OID                   = "2.5.21.5";
324        
325        // ObjectClasses
326        String OBJECT_CLASSES_AT                        = "objectClasses";
327        String OBJECT_CLASSES_AT_OID                    = "2.5.21.6";
328    
329        // NameForms
330        String NAME_FORMS_AT                            = "nameForms";
331        String NAME_FORMS_AT_OID                        = "2.5.21.7";
332    
333        // MatchingRuleUse
334        String MATCHING_RULE_USE_AT                     = "matchingRuleUse";
335        String MATCHING_RULE_USE_AT_OID                 = "2.5.21.8";
336        
337        // StructuralObjectClass
338        String STRUCTURAL_OBJECT_CLASS_AT               = "structuralObjectClass";
339        String STRUCTURAL_OBJECT_CLASS_AT_OID           = "2.5.21.9";
340        
341        // AccessControlScheme
342        String ACCESS_CONTROL_SCHEME_AT                 = "accessControlScheme";
343        String ACCESS_CONTROL_SCHEME_OID                = "2.5.24.1";
344        
345        // PrescriptiveACI
346        String PRESCRIPTIVE_ACI_AT                      = "prescriptiveACI";
347        String PRESCRIPTIVE_ACI_AT_OID                  = "2.5.24.4";
348        
349        // EntryACI
350        String ENTRY_ACI_AT                             = "entryACI";
351        String ENTRY_ACI_AT_OID                         = "2.5.24.5";
352        
353        // SubentryACI
354        String SUBENTRY_ACI_AT                          = "subentryACI";
355        String SUBENTRY_ACI_AT_OID                      = "2.5.24.6";
356        
357        // Uid
358        String UID_AT                                   = "uid";
359        String USER_ID_AT                               = "userid";
360        String UID_AT_OID                               = "0.9.2342.19200300.100.1.1";
361    
362        // UidObject
363        String UID_OBJECT_AT                            = "uidObject";
364        String UID_OBJECT_AT_OID                        = "1.3.6.1.1.3.1";
365        
366        // VendorName
367        String VENDOR_NAME_AT                           = "vendorName";
368        String VENDOR_NAME_AT_OID                       = "1.3.6.1.1.4";
369        
370        // VendorVersion
371        String VENDOR_VERSION_AT                        = "vendorVersion";
372        String VENDOR_VERSION_AT_OID                    = "1.3.6.1.1.5";
373        
374        // NamingContexts
375        String NAMING_CONTEXTS_AT                       = "namingContexts";
376        String NAMING_CONTEXTS_AT_OID                   = "1.3.6.1.4.1.1466.101.120.5";
377        
378        // ChangeLogContext
379        String CHANGELOG_CONTEXT_AT                     = "changeLogContext";
380        String CHANGELOG_CONTEXT_AT_OID                 = "1.3.6.1.4.1.18060.0.4.1.2.49";
381        
382        // SupportedExtension
383        String SUPPORTED_EXTENSION_AT                   = "supportedExtension";
384        String SUPPORTED_EXTENSION_AT_OID               = "1.3.6.1.4.1.1466.101.120.7";
385    
386        // supportedSASLMechanisms
387        String SUPPORTED_SASL_MECHANISMS_AT             = "supportedSASLMechanisms";
388        String SUPPORTED_SASL_MECHANISMS_AT_OID         = "1.3.6.1.4.1.1466.101.120.14";
389        
390        // supportedControl
391        String SUPPORTED_CONTROL_AT                     = "supportedControl";
392        String SUPPORTED_CONTROL_AT_OID                 = "1.3.6.1.4.1.1466.101.120.13";
393        
394        // SupportedLdapVersion
395        String SUPPORTED_LDAP_VERSION_AT                = "supportedLDAPVersion";
396        String SUPPORTED_LDAP_VERSION_AT_OID            = "1.3.6.1.4.1.1466.101.120.15";
397    
398        // LdapSyntaxes
399        String LDAP_SYNTAXES_AT                         = "ldapSyntaxes";
400        String LDAP_SYNTAXES_AT_OID                     = "1.3.6.1.4.1.1466.101.120.16";
401        
402        // SupportedFeatures
403        String SUPPORTED_FEATURES_AT                    = "supportedFeatures";
404        String SUPPORTED_FEATURES_AT_OID                = "1.3.6.1.4.1.4203.1.3.5";
405        
406        // AccessControlSubentries
407        String ACCESS_CONTROL_SUBENTRIES_AT             = "accessControlSubentries";
408        String ACCESS_CONTROL_SUBENTRIES_AT_OID         = "1.3.6.1.4.1.18060.0.4.1.2.11";
409    
410        // TriggerExecutionSubentries
411        String TRIGGER_EXECUTION_SUBENTRIES_AT          = "triggerExecutionSubentries";
412        String TRIGGER_EXECUTION_SUBENTRIES_AT_OID      = "1.3.6.1.4.1.18060.0.4.1.2.27";
413    
414        // Comparators
415        String COMPARATORS_AT                           = "comparators";
416        String COMPARATORS_AT_OID                       = "1.3.6.1.4.1.18060.0.4.1.2.32";
417        
418        // Normalizers
419        String NORMALIZERS_AT                           = "normalizers";
420        String NORMALIZERS_AT_OID                       = "1.3.6.1.4.1.18060.0.4.1.2.33";
421    
422        // SyntaxCheckers
423        String SYNTAX_CHECKERS_AT                       = "syntaxCheckers";
424        String SYNTAX_CHECKERS_AT_OID                   = "1.3.6.1.4.1.18060.0.4.1.2.34";
425    
426        // Ref
427        String REF_AT                                   = "ref";
428        String REF_AT_OID                               = "2.16.840.1.113730.3.1.34";
429    
430        // DisplayName
431        String DISPLAY_NAME_AT                          = "displayName";
432        String DISPLAY_NAME_AT_OID                      = "2.16.840.1.113730.3.1.241";
433    
434        // governingStructureRule
435        String GOVERNING_STRUCTURE_RULE_AT              = "governingStructureRule";
436        String GOVERNING_STRUCTURE_RULE_AT_OID          = "2.5.21.10";
437        
438        // entryUUID
439        String ENTRY_UUID_AT                            = "entryUUID";
440        String ENTRY_UUID_AT_OID                        = "1.3.6.1.1.16.4";
441        
442        // entryCSN
443        String ENTRY_CSN_AT                             = "entryCSN";
444        String ENTRY_CSN_AT_OID                         = "1.3.6.1.4.1.4203.666.1.7";
445        
446        // contextCSN
447        String CONTEXT_CSN_AT                           = "contextCSN";
448        String CONTEXT_CSN_AT_OID                       = "1.3.6.1.4.1.4203.666.1.25";
449        
450        // entryDN
451        String ENTRY_DN_AT                              = "entryDN";
452        String ENTRY_DN_AT_OID                          = "1.3.6.1.1.20";
453    
454        // hasSubordinates
455        String HAS_SUBORDINATES_AT                      = "hasSubordinates";
456        String HAS_SUBORDINATES_AT_OID                  = "2.5.18.9";
457    
458        // numSubordinates, by Sun
459        String NUM_SUBORDINATES_AT                      = "numSubordinates";
460        // no official OID in RFCs
461    
462        // subordinateCount, by Novell
463        String SUBORDINATE_COUNT_AT                     = "subordinateCount";
464        // no official OID in RFCs
465        
466        // DomainComponent
467        String DC_AT = "dc";
468        String DOMAIN_COMPONENT_AT                      = "domainComponent";
469        String DOMAIN_COMPONENT_AT_OID                  = "0.9.2342.19200300.100.1.25";
470        
471        //-------------------------------------------------------------------------
472        // ---- Syntaxes ----------------------------------------------------------
473        //-------------------------------------------------------------------------
474        String NAME_OR_NUMERIC_ID_SYNTAX                      = "1.3.6.1.4.1.18060.0.4.0.0.0";
475        
476        String OBJECT_CLASS_TYPE_SYNTAX                       = "1.3.6.1.4.1.18060.0.4.0.0.1";
477        
478        String NUMERIC_OID_SYNTAX                             = "1.3.6.1.4.1.18060.0.4.0.0.2";
479        
480        String ATTRIBUTE_TYPE_USAGE_SYNTAX                    = "1.3.6.1.4.1.18060.0.4.0.0.3";
481            
482        // RFC 4517, par. 3.3.23
483        String NUMBER_SYNTAX                                  = "1.3.6.1.4.1.18060.0.4.0.0.4";
484        
485        String OID_LEN_SYNTAX                                 = "1.3.6.1.4.1.18060.0.4.0.0.5";
486        
487        String OBJECT_NAME_SYNTAX                             = "1.3.6.1.4.1.18060.0.4.0.0.6";
488    
489        // RFC 2252, removed in RFC 4517
490        String ACI_ITEM_SYNTAX                                = "1.3.6.1.4.1.1466.115.121.1.1";
491    
492        // RFC 2252, removed in RFC 4517
493        String ACCESS_POINT_SYNTAX                            = "1.3.6.1.4.1.1466.115.121.1.2";
494        
495        // RFC 4517, chap 3.3.1
496        String ATTRIBUTE_TYPE_DESCRIPTION_SYNTAX              = "1.3.6.1.4.1.1466.115.121.1.3";
497    
498        // RFC 2252, removed in RFC 4517
499        String AUDIO_SYNTAX                                   = "1.3.6.1.4.1.1466.115.121.1.4";
500    
501        // RFC 2252, removed in RFC 4517
502        String BINARY_SYNTAX                                  = "1.3.6.1.4.1.1466.115.121.1.5";
503        
504        // RFC 4517, chap 3.3.2
505        String BIT_STRING_SYNTAX                              = "1.3.6.1.4.1.1466.115.121.1.6";
506        
507        // RFC 4517, chap 3.3.3
508        String BOOLEAN_SYNTAX                                 = "1.3.6.1.4.1.1466.115.121.1.7";
509        
510        // RFC 2252, removed in RFC 4517, reintroduced in RFC 4523, chap. 2.1 
511        String CERTIFICATE_SYNTAX                             = "1.3.6.1.4.1.1466.115.121.1.8";
512        
513        // RFC 2252, removed in RFC 4517, reintroduced in RFC 4523, chap. 2.2 
514        String CERTIFICATE_LIST_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.9";
515    
516        // RFC 2252, removed in RFC 4517, reintroduced in RFC 4523, chap. 2.3 
517        String CERTIFICATE_PAIR_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.10";
518        
519        // RFC 4517, chap 3.3.4
520        String COUNTRY_STRING_SYNTAX                          = "1.3.6.1.4.1.1466.115.121.1.11";
521        
522        // RFC 4517, chap 3.3.9
523        String DN_SYNTAX                                      = "1.3.6.1.4.1.1466.115.121.1.12";
524    
525        // RFC 2252, removed in RFC 4517
526        String DATA_QUALITY_SYNTAX                            = "1.3.6.1.4.1.1466.115.121.1.13";
527        
528        // RFC 4517, chap 3.3.5
529        String DELIVERY_METHOD_SYNTAX                         = "1.3.6.1.4.1.1466.115.121.1.14";
530        
531        // RFC 4517, chap 3.3.6
532        String DIRECTORY_STRING_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.15";
533        
534        // RFC 4517, chap 3.3.7
535        String DIT_CONTENT_RULE_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.16";
536        
537        // RFC 4517, chap 3.3.8
538        String DIT_STRUCTURE_RULE_SYNTAX                      = "1.3.6.1.4.1.1466.115.121.1.17";
539        
540        // RFC 2252, removed in RFC 4517
541        String DL_SUBMIT_PERMISSION_SYNTAX                    = "1.3.6.1.4.1.1466.115.121.1.18";
542    
543        // RFC 2252, removed in RFC 4517
544        String DSA_QUALITY_SYNTAX                             = "1.3.6.1.4.1.1466.115.121.1.19";
545    
546        // RFC 2252, removed in RFC 4517
547        String DSE_TYPE_SYNTAX                                = "1.3.6.1.4.1.1466.115.121.1.20";
548        
549        // RFC 4517, chap 3.3.10
550        String ENHANCED_GUIDE_SYNTAX                          = "1.3.6.1.4.1.1466.115.121.1.21";
551        
552        // RFC 4517, chap 3.3.11
553        String FACSIMILE_TELEPHONE_NUMBER_SYNTAX              = "1.3.6.1.4.1.1466.115.121.1.22";
554        
555        // RFC 4517, chap 3.3.12
556        String FAX_SYNTAX                                     = "1.3.6.1.4.1.1466.115.121.1.23";
557        
558        // RFC 4517, chap 3.3.13
559        String GENERALIZED_TIME_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.24";
560        
561        // RFC 4517, chap 3.3.14
562        String GUIDE_SYNTAX                                   = "1.3.6.1.4.1.1466.115.121.1.25";
563        
564        // RFC 4517, chap 3.3.15
565        String IA5_STRING_SYNTAX                              = "1.3.6.1.4.1.1466.115.121.1.26";
566        
567        // RFC 4517, chap 3.3.16
568        String INTEGER_SYNTAX                                 = "1.3.6.1.4.1.1466.115.121.1.27";
569        
570        // RFC 4517, chap 3.3.17
571        String JPEG_SYNTAX                                    = "1.3.6.1.4.1.1466.115.121.1.28";
572        
573        // RFC 2252, removed in RFC 4517
574        String MASTER_AND_SHADOW_ACCESS_POINTS_SYNTAX         = "1.3.6.1.4.1.1466.115.121.1.29";
575        
576        // RFC 4517, chap 3.3.19
577        String MATCHING_RULE_DESCRIPTION_SYNTAX               = "1.3.6.1.4.1.1466.115.121.1.30";
578        
579        // RFC 4517, chap 3.3.20
580        String MATCHING_RULE_USE_DESCRIPTION_SYNTAX           = "1.3.6.1.4.1.1466.115.121.1.31";
581        
582        // RFC 2252, removed in RFC 4517
583        String MAIL_PREFERENCE_SYNTAX                         = "1.3.6.1.4.1.1466.115.121.1.32";
584        
585        // RFC 2252, removed in RFC 4517
586        String MHS_OR_ADDRESS_SYNTAX                          = "1.3.6.1.4.1.1466.115.121.1.33"; 
587        
588        // RFC 4517, chap 3.3.21
589        String NAME_AND_OPTIONAL_UID_SYNTAX                   = "1.3.6.1.4.1.1466.115.121.1.34";
590        
591        // RFC 4517, chap 3.3.22
592        String NAME_FORM_DESCRIPTION_SYNTAX                   = "1.3.6.1.4.1.1466.115.121.1.35";
593        
594        // RFC 4517, chap 3.3.23
595        String NUMERIC_STRING_SYNTAX                          = "1.3.6.1.4.1.1466.115.121.1.36";
596        
597        // RFC 4517, chap 3.3.24
598        String OBJECT_CLASS_DESCRIPTION_SYNTAX                = "1.3.6.1.4.1.1466.115.121.1.37";
599        
600        // RFC 4517, chap 3.3.26
601        String OID_SYNTAX                                     = "1.3.6.1.4.1.1466.115.121.1.38";
602        
603        // RFC 4517, chap 3.3.27
604        String OTHER_MAILBOX_SYNTAX                           = "1.3.6.1.4.1.1466.115.121.1.39";
605        
606        // RFC 4517, chap 3.3.25
607        String OCTET_STRING_SYNTAX                            = "1.3.6.1.4.1.1466.115.121.1.40";
608        
609        // RFC 4517, chap 3.3.28
610        String POSTAL_ADDRESS_SYNTAX                          = "1.3.6.1.4.1.1466.115.121.1.41";
611        
612        // RFC 2252, removed in RFC 4517
613        String PROTOCOL_INFORMATION_SYNTAX                    = "1.3.6.1.4.1.1466.115.121.1.42";
614        
615        // RFC 2252, removed in RFC 4517
616        String PRESENTATION_ADDRESS_SYNTAX                    = "1.3.6.1.4.1.1466.115.121.1.43";
617        
618        // RFC 4517, chap 3.3.29
619        String PRINTABLE_STRING_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.44";
620        
621        // RFC 2252, removed in RFC 4517
622        String SUBTREE_SPECIFICATION_SYNTAX                   = "1.3.6.1.4.1.1466.115.121.1.45";
623        
624        // RFC 2252, removed in RFC 4517
625        String SUPPLIER_INFORMATION_SYNTAX                    = "1.3.6.1.4.1.1466.115.121.1.46";
626        
627        // RFC 2252, removed in RFC 4517
628        String SUPPLIER_OR_CONSUMER_SYNTAX                    = "1.3.6.1.4.1.1466.115.121.1.47";
629        
630        // RFC 2252, removed in RFC 4517
631        String SUPPLIER_AND_CONSUMER_SYNTAX                   = "1.3.6.1.4.1.1466.115.121.1.48";
632    
633        // RFC 2252, removed in RFC 4517, reintroduced in RFC 4523, chap. 2.4
634        String SUPPORTED_ALGORITHM_SYNTAX                     = "1.3.6.1.4.1.1466.115.121.1.49";
635        
636        // RFC 4517, chap 3.3.31
637        String TELEPHONE_NUMBER_SYNTAX                        = "1.3.6.1.4.1.1466.115.121.1.50";
638    
639        // RFC 4517, chap 3.3.32
640        String TELETEX_TERMINAL_IDENTIFIER_SYNTAX             = "1.3.6.1.4.1.1466.115.121.1.51";
641        
642        // RFC 4517, chap 3.3.33
643        String TELEX_NUMBER_SYNTAX                            = "1.3.6.1.4.1.1466.115.121.1.52"; 
644        
645        // RFC 4517, chap 3.3.34
646        String UTC_TIME_SYNTAX                                = "1.3.6.1.4.1.1466.115.121.1.53";
647        
648        // RFC 4517, chap 3.3.18
649        String LDAP_SYNTAX_DESCRIPTION_SYNTAX                 = "1.3.6.1.4.1.1466.115.121.1.54";
650        
651        // RFC 2252, removed in RFC 4517
652        String MODIFY_RIGHTS_SYNTAX                           = "1.3.6.1.4.1.1466.115.121.1.55";
653        
654        // RFC 2252, removed in RFC 4517
655        String LDAP_SCHEMA_DEFINITION_SYNTAX                  = "1.3.6.1.4.1.1466.115.121.1.56";
656        
657        // RFC 2252, removed in RFC 4517
658        String LDAP_SCHEMA_DESCRIPTION_SYNTAX                 = "1.3.6.1.4.1.1466.115.121.1.57";
659        
660        // RFC 4517, chap 3.3.30
661        String SUBSTRING_ASSERTION_SYNTAX                     = "1.3.6.1.4.1.1466.115.121.1.58";
662    
663        // From draft-ietf-pkix-ldap-v3-01.txt. Obsolete.
664        String ATTRIBUTE_CERTIFICATE_ASSERTION_SYNTAX         = "1.3.6.1.4.1.1466.115.121.1.59";
665    
666        //From RFC 4530, chap. 2.1
667        String UUID_SYNTAX                                    = "1.3.6.1.1.16.1";
668        
669        // From http://www.openldap.org/faq/data/cache/1145.html
670        String CSN_SYNTAX                                     = "1.3.6.1.4.1.4203.666.11.2.1"; 
671        
672        // From http://www.openldap.org/faq/data/cache/1145.html
673        String CSN_SID_SYNTAX                                 = "1.3.6.1.4.1.4203.666.11.2.4";
674    
675        // Apache DS
676        String JAVA_BYTE_SYNTAX                               = "1.3.6.1.4.1.18060.0.4.1.0.0";
677        String JAVA_CHAR_SYNTAX                               = "1.3.6.1.4.1.18060.0.4.1.0.1";
678        String JAVA_SHORT_SYNTAX                              = "1.3.6.1.4.1.18060.0.4.1.0.2";
679        String JAVA_LONG_SYNTAX                               = "1.3.6.1.4.1.18060.0.4.1.0.3";
680        String JAVA_INT_SYNTAX                                = "1.3.6.1.4.1.18060.0.4.1.0.4";
681    
682        // Comparator syntax
683        String COMPARATOR_SYNTAX                              = "1.3.6.1.4.1.18060.0.4.1.0.5";
684        
685        // Normalizer Syntax
686        String NORMALIZER_SYNTAX                              = "1.3.6.1.4.1.18060.0.4.1.0.6";
687        
688        // SyntaxChecker Syntax
689        String SYNTAX_CHECKER_SYNTAX                          = "1.3.6.1.4.1.18060.0.4.1.0.7";
690        
691        //-------------------------------------------------------------------------
692        // ---- MatchingRules -----------------------------------------------------
693        //-------------------------------------------------------------------------
694        // caseExactIA5Match (RFC 4517, chap. 4.2.3)
695        String CASE_EXACT_IA5_MATCH_MR                        = "caseExactIA5Match";
696        String CASE_EXACT_IA5_MATCH_MR_OID                    = "1.3.6.1.4.1.1466.109.114.1";
697        
698        // caseIgnoreIA5Match (RFC 4517, chap. 4.2.7)
699        String CASE_IGNORE_IA5_MATCH_MR                       = "caseIgnoreIA5Match";
700        String CASE_IGNORE_IA5_MATCH_MR_OID                   = "1.3.6.1.4.1.1466.109.114.2";
701        
702        // caseIgnoreIA5SubstringsMatch (RFC 4517, chap. 4.2.8)
703        String CASE_IGNORE_IA5_SUBSTRINGS_MATCH_MR            = "caseIgnoreIA5SubstringsMatch";
704        String CASE_IGNORE_IA5_SUBSTRINGS_MATCH_MR_OID        = "1.3.6.1.4.1.1466.109.114.3";
705        
706        // objectIdentifierMatch (RFC 4517, chap. 4.2.26)
707        String OBJECT_IDENTIFIER_MATCH_MR                     = "objectIdentifierMatch";
708        String OBJECT_IDENTIFIER_MATCH_MR_OID                 = "2.5.13.0";
709        
710        // distinguishedNameMatch (RFC 4517, chap. 4.2.15)
711        String DISTINGUISHED_NAME_MATCH_MR                    = "distinguishedNameMatch";
712        String DISTINGUISHED_NAME_MATCH_MR_OID                = "2.5.13.1";
713        
714        // caseIgnoreMatch (RFC 4517, chap. 3.3.19)
715        String CASE_IGNORE_MATCH_MR                           = "caseIgnoreMatch";
716        String CASE_IGNORE_MATCH_MR_OID                       = "2.5.13.2";
717        
718        // caseIgnoreOrderingMatch (RFC 4517, chap. 4.2.12)
719        String CASE_IGNORE_ORDERING_MATCH_MR                  = "caseIgnoreOrderingMatch";
720        String CASE_IGNORE_ORDERING_MATCH_MR_OID              = "2.5.13.3";
721        
722        // caseIgnoreSubstringsMatch (RFC 4517, chap. 4.2.13)
723        String CASE_IGNORE_SUBSTRING_MATCH_MR                 = "caseIgnoreSubstringsMatch";
724        String CASE_IGNORE_SUBSTRING_MATCH_MR_OID             = "2.5.13.4";
725        
726        // caseExactMatch (RFC 4517, chap. 4.2.4)
727        String CASE_EXACT_MATCH_MR                            = "caseExactMatch";
728        String CASE_EXACT_MATCH_MR_OID                        = "2.5.13.5";
729        
730        // caseExactOrderingMatch (RFC 4517, chap. 4.2.5)
731        String CASE_EXACT_ORDERING_MATCH_MR                   = "caseExactOrderingMatch";
732        String CASE_EXACT_ORDERING_MATCH_MR_OID               = "2.5.13.6";
733        
734        // caseExactSubstringsMatch (RFC 4517, chap. 4.2.6)
735        String CASE_EXACT_SUBSTRING_MATCH_MR                  = "caseExactSubstringsMatch";
736        String CASE_EXACT_SUBSTRING_MATCH_MR_OID              = "2.5.13.7";
737        
738        // numericStringMatch (RFC 4517, chap. 4.2.22)
739        String NUMERIC_STRING_MATCH_MR                        = "numericStringMatch";
740        String NUMERIC_STRING_MATCH_MR_OID                    = "2.5.13.8";
741        
742        // numericStringOrderingMatch (RFC 4517, chap. 4.2.23)
743        String NUMERIC_STRING_ORDERING_MATCH_MR               = "numericStringOrderingMatch";
744        String NUMERIC_STRING_ORDERING_MATCH_MR_OID           = "2.5.13.9";
745        
746        // numericStringSubstringsMatch (RFC 4517, chap. 4.2.24)
747        String NUMERIC_STRING_SUBSTRINGS_MATCH_MR             = "numericStringSubstringsMatch";
748        String NUMERIC_STRING_SUBSTRINGS_MATCH_MR_OID         = "2.5.13.10";
749        
750        // caseIgnoreListMatch (RFC 4517, chap. 4.2.9)
751        String CASE_IGNORE_LIST_MATCH_MR                      = "caseIgnoreListMatch";
752        String CASE_IGNORE_LIST_MATCH_MR_OID                  = "2.5.13.11";
753        
754        // caseIgnoreListSubstringsMatch (RFC 4517, chap. 4.2.10)
755        String CASE_IGNORE_LIST_SUBSTRINGS_MATCH_MR           = "caseIgnoreListSubstringsMatch";
756        String CASE_IGNORE_LIST_SUBSTRINGS_MATCH_MR_OID       = "2.5.13.12";
757        
758        // booleanMatch (RFC 4517, chap. 4.2.2)
759        String BOOLEAN_MATCH_MR                               = "booleanMatch";
760        String BOOLEAN_MATCH_MR_OID                           = "2.5.13.13";
761        
762        // integerMatch (RFC 4517, chap. 4.2.19)
763        String INTEGER_MATCH_MR                               = "integerMatch";
764        String INTEGER_MATCH_MR_OID                           = "2.5.13.14";
765        
766        // integerOrderingMatch (RFC 4517, chap. 4.2.20)
767        String INTEGER_ORDERING_MATCH_MR                      = "integerOrderingMatch";
768        String INTEGER_ORDERING_MATCH_MR_OID                  = "2.5.13.15";
769    
770        // bitStringMatch (RFC 4517, chap. 4.2.1)
771        String BIT_STRING_MATCH_MR                            = "bitStringMatch";
772        String BIT_STRING_MATCH_MR_OID                        = "2.5.13.16";
773        
774        // octetStringMatch (RFC 4517, chap. 4.2.27)
775        String OCTET_STRING_MATCH_MR                          = "octetStringMatch";
776        String OCTET_STRING_MATCH_MR_OID                      = "2.5.13.17";
777        
778        // octetStringMatch (RFC 4517, chap. 4.2.28)
779        String OCTET_STRING_ORDERING_MATCH_MR                 = "octetStringOrderingMatch";
780        String OCTET_STRING_ORDERING_MATCH_MR_OID             = "2.5.13.18";
781        
782        // octetStringSubstringsMatch
783        String OCTET_STRING_SUBSTRINGS_MATCH_MR               = "octetStringSubstringsMatch";
784        String OCTET_STRING_SUBSTRINGS_MATCH_MR_OID           = "2.5.13.19";
785        
786        // telephoneNumberMatch (RFC 4517, chap. 4.2.29)
787        String TELEPHONE_NUMBER_MATCH_MR                      = "telephoneNumberMatch";
788        String TELEPHONE_NUMBER_MATCH_MR_OID                  = "2.5.13.20";
789        
790        // telephoneNumberMatch (RFC 4517, chap. 4.2.30)
791        String TELEPHONE_NUMBER_SUBSTRINGS_MATCH_MR           = "telephoneNumberSubstringsMatch";
792        String TELEPHONE_NUMBER_SUBSTRINGS_MATCH_MR_OID       = "2.5.13.21";
793        
794        // presentationAddressMatch Removed in RFC 4517
795        String PRESENTATION_ADDRESS_MATCH_MATCH_MR            = "presentationAddressMatch";
796        String PRESENTATION_ADDRESS_MATCH_MATCH_MR_OID        = "2.5.13.22";
797        
798        // uniqueMemberMatch (RFC 4517, chap. 4.2.31)
799        String UNIQUE_MEMBER_MATCH_MR                         = "uniqueMemberMatch";
800        String UNIQUE_MEMBER_MATCH_MR_OID                     = "2.5.13.23";
801        
802        // protocolInformationMatch Removed in RFC 4517
803        String PROTOCOL_INFORMATION_MATCH_MR                  = "protocolInformationMatch";
804        String PROTOCOL_INFORMATION_MATCH_MR_OID              = "2.5.13.24";
805        
806        // "2.5.13.25" is not used ...
807        // "2.5.13.26" is not used ...
808        
809        // generalizedTimeMatch (RFC 4517, chap. 4.2.16)
810        String GENERALIZED_TIME_MATCH_MR                      = "generalizedTimeMatch";
811        String GENERALIZED_TIME_MATCH_MR_OID                  = "2.5.13.27";
812        
813        // generalizedTimeOrderingMatch (RFC 4517, chap. 4.2.17)
814        String GENERALIZED_TIME_ORDERING_MATCH_MR             = "generalizedTimeOrderingMatch";
815        String GENERALIZED_TIME_ORDERING_MATCH_MR_OID         = "2.5.13.28";
816    
817        // integerFirstComponentMatch (RFC 4517, chap. 4.2.18)
818        String INTEGER_FIRST_COMPONENT_MATCH_MR               = "integerFirstComponentMatch";
819        String INTEGER_FIRST_COMPONENT_MATCH_MR_OID           = "2.5.13.29";
820        
821        // objectIdentifierFirstComponentMatch (RFC 4517, chap. 4.2.25)
822        String OBJECT_IDENTIFIER_FIRST_COMPONENT_MATCH_MR     = "objectIdentifierFirstComponentMatch";
823        String OBJECT_IDENTIFIER_FIRST_COMPONENT_MATCH_MR_OID = "2.5.13.30";
824    
825        // directoryStringFirstComponentMatch (RFC 4517, chap. 4.2.14)
826        String DIRECTORY_STRING_FIRST_COMPONENT_MATCH_MR      = "directoryStringFirstComponentMatch";
827        String DIRECTORY_STRING_FIRST_COMPONENT_MATCH_MR_OID  = "2.5.13.31";
828    
829        // wordMatch (RFC 4517, chap. 4.2.32)
830        String WORD_MATCH_MR                                  = "wordMatch";
831        String WORD_MATCH_MR_OID                              = "2.5.13.32";
832    
833        // keywordMatch (RFC 4517, chap. 4.2.21)
834        String KEYWORD_MATCH_MR                               = "keywordMatch";
835        String KEYWORD_MATCH_MR_OID                           = "2.5.13.33";
836    
837        // uuidMatch
838        String UUID_MATCH_MR                                  = "uuidMatch";
839        String UUID_MATCH_MR_OID                              = "1.3.6.1.1.16.2";
840        
841        // uuidOrderingMatch
842        String UUID_ORDERING_MATCH_MR                         = "uuidOrderingMatch";
843        String UUID_ORDERING_MATCH_MR_OID                     = "1.3.6.1.1.16.3";
844        
845        // csnMatch 
846        String CSN_MATCH_MR                                   = "csnMatch"; 
847        String CSN_MATCH_MR_OID                               = "1.3.6.1.4.1.4203.666.11.2.2"; 
848        
849        // csnOrderingMatch
850        String CSN_ORDERING_MATCH_MR                          = "csnOrderingMatch"; 
851        String CSN_ORDERING_MATCH_MR_OID                      = "1.3.6.1.4.1.4203.666.11.2.3"; 
852        
853        // csnSidMatch
854        String CSN_SID_MATCH_MR                               = "csnSidMatch"; 
855        String CSN_SID_MATCH_MR_OID                           = "1.3.6.1.4.1.4203.666.11.2.5"; 
856        
857        // nameOrNumericIdMatch 
858        String NAME_OR_NUMERIC_ID_MATCH                       = "nameOrNumericIdMatch";
859        String NAME_OR_NUMERIC_ID_MATCH_OID                   = "1.3.6.1.4.1.18060.0.4.0.1.0";
860        
861        // objectClassTypeMatch 
862        String OBJECT_CLASS_TYPE_MATCH                        = "objectClassTypeMatch";
863        String OBJECT_CLASS_TYPE_MATCH_OID                    = "1.3.6.1.4.1.18060.0.4.0.1.1";
864        
865        // numericOidMatch 
866        String NUMERIC_OID_MATCH                              = "numericOidMatch";
867        String NUMERIC_OID_MATCH_OID                          = "1.3.6.1.4.1.18060.0.4.0.1.2";
868        
869        // supDITStructureRuleMatch 
870        String SUP_DIT_STRUCTURE_RULE_MATCH                   = "supDITStructureRuleMatch";
871        String SUP_DIT_STRUCTURE_RULE_MATCH_OID               = "1.3.6.1.4.1.18060.0.4.0.1.3";
872        
873        // ruleIDMatch 
874        String RULE_ID_MATCH                                  = "ruleIDMatch";
875        String RULE_ID_MATCH_OID                              = "1.3.6.1.4.1.18060.0.4.0.1.4";
876        
877        // ExactDnAsStringMatch
878        String EXACT_DN_AS_STRING_MATCH_MR                    = "exactDnAsStringMatch"; 
879        String EXACT_DN_AS_STRING_MATCH_MR_OID                = "1.3.6.1.4.1.18060.0.4.1.1.1"; 
880        
881        // BigIntegerMatch
882        String BIG_INTEGER_MATCH_MR                           = "bigIntegerMatch"; 
883        String BIG_INTEGER_MATCH_MR_OID                       = "1.3.6.1.4.1.18060.0.4.1.1.2"; 
884        
885        // JdbmStringMatch
886        String JDBM_STRING_MATCH_MR                           = "jdbmStringMatch"; 
887        String JDBM_STRING_MATCH_MR_OID                       = "1.3.6.1.4.1.18060.0.4.1.1.3"; 
888        
889        // ComparatorMatch
890        String COMPARATOR_MATCH_MR                            = "comparatorMatch"; 
891        String COMPARATOR_MATCH_MR_OID                        = "1.3.6.1.4.1.18060.0.4.1.1.5";
892        
893        // NormalizerMatch
894        String NORMALIZER_MATCH_MR                            = "normalizerMatch"; 
895        String NORMALIZER_MATCH_MR_OID                        = "1.3.6.1.4.1.18060.0.4.1.1.6"; 
896        
897        // SyntaxCheckerMatch
898        String SYNTAX_CHECKER_MATCH_MR                        = "syntaxCheckerMatch"; 
899        String SYNTAX_CHECKER_MATCH_MR_OID                    = "1.3.6.1.4.1.18060.0.4.1.1.7"; 
900        
901        // ---- Features ----------------------------------------------------------
902        String FEATURE_ALL_OPERATIONAL_ATTRIBUTES             = "1.3.6.1.4.1.4203.1.5.1";
903    }