mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Matthew Swift
17.55.2011 d8475ffa48cc7a7ecdca78295bf2ce42c6042e48
Initial work for OPENDJ-155: Add support for OpenDJ extended matching rules and syntaxes

Improve error messages when parsing schema entries.

TODO: clean up l10n files.
22 files modified
835 ■■■■ changed files
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/AVA.java 8 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/AttributeType.java 14 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/AttributeTypeSyntaxImpl.java 21 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITContentRule.java 35 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITContentRuleSyntaxImpl.java 17 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITStructureRule.java 4 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITStructureRuleSyntaxImpl.java 18 ●●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/EnhancedGuideSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/GuideSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/LDAPSyntaxDescriptionSyntaxImpl.java 13 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRule.java 11 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleSyntaxImpl.java 12 ●●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleUse.java 11 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleUseSyntaxImpl.java 13 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/NameForm.java 18 ●●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/NameFormSyntaxImpl.java 15 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/ObjectClass.java 28 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/ObjectClassSyntaxImpl.java 15 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java 143 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/SchemaUtils.java 77 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java 4 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/resources/org/forgerock/opendj/ldap/core.properties 352 ●●●● patch | view | raw | blame | history
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/AVA.java
@@ -434,8 +434,8 @@
        {
          if (lastWasPeriod)
          {
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS
                .get(reader.getString(), reader.pos() - 1);
            final LocalizableMessage message = ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR
                .get(reader.getString(), c, reader.pos() - 1);
            throw new LocalizedIllegalArgumentException(message);
          }
          else
@@ -446,8 +446,8 @@
        else if (!isDigit(c))
        {
          // This must have been an illegal character.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER
              .get(reader.getString(), reader.pos() - 1);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR
              .get(reader.getString(), c, reader.pos() - 1);
          throw new LocalizedIllegalArgumentException(message);
        }
        else
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/AttributeType.java
@@ -713,7 +713,7 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE1
            .get(getNameOrOID(), superiorTypeOID);
        throw new SchemaException(message);
      }
@@ -749,8 +749,8 @@
        // never fail since the core schema is non-strict and will
        // substitute the syntax if required.
        syntax = Schema.getCoreSchema().getSyntax(syntaxOID);
        final LocalizableMessage message = WARN_ATTR_TYPE_NOT_DEFINED.get(
            getNameOrOID(), syntaxOID, syntax.toString());
        final LocalizableMessage message = WARN_ATTR_TYPE_NOT_DEFINED1.get(
            getNameOrOID(), syntaxOID, syntax.getOID());
        warnings.add(message);
      }
      else
@@ -773,7 +773,7 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR1
            .get(getNameOrOID(), equalityMatchingRuleOID);
        throw new SchemaException(message);
      }
@@ -800,7 +800,7 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR1
            .get(getNameOrOID(), orderingMatchingRuleOID);
        throw new SchemaException(message);
      }
@@ -828,7 +828,7 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR1
            .get(getNameOrOID(), substringMatchingRuleOID);
        throw new SchemaException(message);
      }
@@ -856,7 +856,7 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR
        final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR1
            .get(getNameOrOID(), approximateMatchingRuleOID);
        throw new SchemaException(message);
      }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/AttributeTypeSyntaxImpl.java
@@ -76,9 +76,9 @@
  public boolean valueIsAcceptable(final Schema schema,
      final ByteSequence value, final LocalizableMessageBuilder invalidReason)
  {
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -89,8 +89,8 @@
      {
        // This means that the definition was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("AttributeTypeSyntax",
            "valueIsAcceptable", e);
@@ -115,8 +115,7 @@
      reader.skipWhitespaces();
      // The next set of characters must be the OID.
      final String oid = SchemaUtils.readOID(reader,
          schema.allowMalformedNamesAndOptions());
      SchemaUtils.readOID(reader, schema.allowMalformedNamesAndOptions());
      // At this point, we should have a pretty specific syntax that
      // describes what may come next, but some of the components are
@@ -242,8 +241,9 @@
              && !usageStr.equalsIgnoreCase("distributedoperation")
              && !usageStr.equalsIgnoreCase("dsaoperation"))
          {
            final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE
                .get(String.valueOf(oid), usageStr);
            final LocalizableMessage message =
              WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE1
                .get(definition, usageStr);
            final DecodeException e = DecodeException.error(message);
            StaticUtils.DEBUG_LOG.throwing("AttributeTypeSyntax",
                "valueIsAcceptable", e);
@@ -261,8 +261,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("AttributeTypeSyntax",
              "valueIsAcceptable", e);
@@ -273,7 +273,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_ATTRTYPE_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITContentRule.java
@@ -471,16 +471,15 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS
            .get(definition, structuralClassOID);
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS1
            .get(getNameOrOID(), structuralClassOID);
        throw new SchemaException(message, e);
      }
      if (structuralClass.getObjectClassType() != ObjectClassType.STRUCTURAL)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL
            .get(definition, structuralClass.getOID(), structuralClass
                .getNameOrOID(), structuralClass.getObjectClassType()
                .toString());
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL1
            .get(getNameOrOID(), structuralClass.getNameOrOID(),
                structuralClass.getObjectClassType().toString());
        warnings.add(message);
      }
    }
@@ -498,15 +497,15 @@
        catch (final UnknownSchemaElementException e)
        {
          // This isn't good because it is an unknown auxiliary class.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS
              .get(definition, oid);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS1
              .get(getNameOrOID(), oid);
          throw new SchemaException(message, e);
        }
        if (objectClass.getObjectClassType() != ObjectClassType.AUXILIARY)
        {
          // This isn't good because it isn't an auxiliary class.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY
              .get(definition, structuralClass.getOID(), structuralClass
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY1
              .get(getNameOrOID(), structuralClass.getOID(), structuralClass
                  .getObjectClassType().toString());
          throw new SchemaException(message);
        }
@@ -530,8 +529,8 @@
          // This isn't good because it means that the DIT content rule
          // requires an attribute type that we don't know anything
          // about.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR
              .get(definition, oid);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR1
              .get(getNameOrOID(), oid);
          throw new SchemaException(message, e);
        }
        requiredAttributes.add(attributeType);
@@ -554,8 +553,8 @@
          // This isn't good because it means that the DIT content rule
          // requires an attribute type that we don't know anything
          // about.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR
              .get(definition, oid);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR1
              .get(getNameOrOID(), oid);
          throw new SchemaException(message, e);
        }
        optionalAttributes.add(attributeType);
@@ -578,8 +577,8 @@
          // This isn't good because it means that the DIT content rule
          // requires an attribute type that we don't know anything
          // about.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR
              .get(definition, oid);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR1
              .get(getNameOrOID(), oid);
          throw new SchemaException(message, e);
        }
        prohibitedAttributes.add(attributeType);
@@ -593,7 +592,7 @@
      if (structuralClass.isRequired(t))
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL
            .get(definition, t.getNameOrOID(), structuralClass.getNameOrOID());
            .get(getNameOrOID(), t.getNameOrOID(), structuralClass.getNameOrOID());
        throw new SchemaException(message);
      }
@@ -602,7 +601,7 @@
        if (oc.isRequired(t))
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY
              .get(definition, t.getNameOrOID(), oc.getNameOrOID());
              .get(getNameOrOID(), t.getNameOrOID(), oc.getNameOrOID());
          throw new SchemaException(message);
        }
      }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITContentRuleSyntaxImpl.java
@@ -30,9 +30,7 @@
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.forgerock.opendj.ldap.CoreMessages.*;
import static org.forgerock.opendj.ldap.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.forgerock.opendj.ldap.schema.SchemaConstants.SYNTAX_DIT_CONTENT_RULE_NAME;
@@ -84,9 +82,9 @@
  {
    // We'll use the decodeDITContentRule method to determine if the
    // value is acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -97,8 +95,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("DITConentRuleSyntax",
            "valueIsAcceptable", e);
@@ -192,8 +190,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("DITContentRuleSyntax",
              "valueIsAcceptable", e);
@@ -204,7 +202,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_DCR_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITStructureRule.java
@@ -316,7 +316,7 @@
    catch (final UnknownSchemaElementException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM
          .get(definition, nameFormOID);
          .get(getNameOrRuleID(), nameFormOID);
      throw new SchemaException(message, e);
    }
@@ -333,7 +333,7 @@
        catch (final UnknownSchemaElementException e)
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID
              .get(definition, id);
              .get(getNameOrRuleID(), id);
          throw new SchemaException(message, e);
        }
        superiorRules.add(rule);
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/DITStructureRuleSyntaxImpl.java
@@ -30,10 +30,7 @@
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.forgerock.opendj.ldap.CoreMessages.*;
import static org.forgerock.opendj.ldap.schema.SchemaConstants.EMR_INTEGER_FIRST_COMPONENT_OID;
import static org.forgerock.opendj.ldap.schema.SchemaConstants.SYNTAX_DIT_STRUCTURE_RULE_NAME;
@@ -82,9 +79,9 @@
  {
    // We'll use the decodeDITStructureRule method to determine if the
    // value is acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -95,8 +92,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("DITStructureRuleSyntax",
            "valueIsAcceptable", e);
@@ -180,8 +177,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("DITStructureRuleSyntax",
              "valueIsAcceptable", e);
@@ -202,7 +199,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_DSR_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/EnhancedGuideSyntaxImpl.java
@@ -108,7 +108,7 @@
    {
      invalidReason
          .append(ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP.get(valueStr));
          .append(ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP1.get(valueStr));
      return false;
    }
@@ -118,7 +118,7 @@
    if (ocLength == 0)
    {
      invalidReason.append(ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC.get(valueStr));
      invalidReason.append(ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC1.get(valueStr));
      return false;
    }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/GuideSyntaxImpl.java
@@ -413,7 +413,7 @@
    if (ocLength == 0)
    {
      invalidReason.append(ERR_ATTR_SYNTAX_GUIDE_NO_OC.get(valueStr));
      invalidReason.append(ERR_ATTR_SYNTAX_GUIDE_NO_OC1.get(valueStr));
      return false;
    }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/LDAPSyntaxDescriptionSyntaxImpl.java
@@ -82,9 +82,9 @@
  {
    // We'll use the decodeNameForm method to determine if the value is
    // acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -95,8 +95,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("LDAPSyntaxDescriptionSyntax",
            "valueIsAcceptable", e);
@@ -163,8 +163,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("LDAPSyntaxDescriptionSyntax",
              "valueIsAcceptable", e);
@@ -223,7 +223,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRule.java
@@ -29,8 +29,7 @@
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX;
import static org.forgerock.opendj.ldap.CoreMessages.WARN_MATCHING_RULE_NOT_IMPLEMENTED;
import static org.forgerock.opendj.ldap.CoreMessages.*;
import java.util.Comparator;
import java.util.Iterator;
@@ -457,19 +456,19 @@
    if (impl == null)
    {
      impl = Schema.getDefaultMatchingRule().impl;
      final LocalizableMessage message = WARN_MATCHING_RULE_NOT_IMPLEMENTED
          .get(oid, Schema.getDefaultMatchingRule().getOID());
      final LocalizableMessage message = WARN_MATCHING_RULE_NOT_IMPLEMENTED1
          .get(getNameOrOID(), Schema.getDefaultMatchingRule().getOID());
      warnings.add(message);
    }
    try
    {
      // Make sure the specifiec syntax is defined in this schema.
      // Make sure the specific syntax is defined in this schema.
      syntax = schema.getSyntax(syntaxOID);
    }
    catch (final UnknownSchemaElementException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX.get(
      final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX1.get(
          getNameOrOID(), syntaxOID);
      throw new SchemaException(message, e);
    }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleSyntaxImpl.java
@@ -92,9 +92,9 @@
  {
    // We'll use the decodeMatchingRule method to determine if the value
    // is acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -105,7 +105,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_EMPTY_VALUE.get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("MatchingRuleSyntax",
            "valueIsAcceptable", e);
@@ -185,8 +186,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("MatchingRuleSyntax",
              "valueIsAcceptable", e);
@@ -208,7 +209,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_MR_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleUse.java
@@ -29,8 +29,7 @@
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR;
import static org.forgerock.opendj.ldap.CoreMessages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE;
import static org.forgerock.opendj.ldap.CoreMessages.*;
import java.util.*;
@@ -346,8 +345,8 @@
    {
      // This is bad because the matching rule use is associated with a
      // matching rule that we don't know anything about.
      final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE
          .get(definition, oid);
      final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE1
          .get(getNameOrOID(), oid);
      throw new SchemaException(message, e);
    }
@@ -361,8 +360,8 @@
      }
      catch (final UnknownSchemaElementException e)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR
            .get(oid, attribute);
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR1
            .get(getNameOrOID(), attribute);
        throw new SchemaException(message, e);
      }
      attributes.add(attributeType);
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/MatchingRuleUseSyntaxImpl.java
@@ -94,9 +94,9 @@
  {
    // We'll use the decodeAttributeType method to determine if the
    // value is acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -107,8 +107,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("MatchingRuleUseSyntax",
            "valueIsAcceptable", e);
@@ -188,8 +188,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("MatchingRuleUseSyntax",
              "valueIsAcceptable", e);
@@ -211,7 +211,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_MRUSE_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/NameForm.java
@@ -382,16 +382,18 @@
    }
    catch (final UnknownSchemaElementException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS
          .get(oid, structuralClassOID);
      final LocalizableMessage message =
        ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS1
          .get(getNameOrOID(), structuralClassOID);
      throw new SchemaException(message, e);
    }
    if (structuralClass.getObjectClassType() != ObjectClassType.STRUCTURAL)
    {
      // This is bad because the associated structural class type is not
      // structural.
      final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL
          .get(oid, structuralClass.getOID(), structuralClass.getNameOrOID(),
      final LocalizableMessage message =
        ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL1
          .get(getNameOrOID(), structuralClass.getNameOrOID(),
              String.valueOf(structuralClass.getObjectClassType()));
      throw new SchemaException(message);
    }
@@ -409,8 +411,8 @@
      {
        // This isn't good because it means that the name form requires
        // an attribute type that we don't know anything about.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR
            .get(this.oid, oid);
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR1
            .get(getNameOrOID(), oid);
        throw new SchemaException(message, e);
      }
      requiredAttributes.add(attributeType);
@@ -431,8 +433,8 @@
          // This isn't good because it means that the name form
          // requires an attribute type that we don't know anything
          // about.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR
              .get(this.oid, oid);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR1
              .get(getNameOrOID(), oid);
          throw new SchemaException(message, e);
        }
        optionalAttributes.add(attributeType);
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/NameFormSyntaxImpl.java
@@ -81,9 +81,9 @@
  {
    // We'll use the decodeNameForm method to determine if the value is
    // acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -94,8 +94,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG
            .throwing("NameFormSyntax", "valueIsAcceptable", e);
@@ -187,8 +187,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("NameFormSyntax", "valueIsAcceptable",
              e);
@@ -200,7 +200,7 @@
      // it cannot be valid.
      if (structuralClass == null)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG
@@ -221,7 +221,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_NAME_FORM_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/ObjectClass.java
@@ -606,8 +606,8 @@
        }
        catch (final UnknownSchemaElementException e)
        {
          final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS
              .get(oid, superClassOid);
          final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS1
              .get(getNameOrOID(), superClassOid);
          throw new SchemaException(message, e);
        }
@@ -620,8 +620,8 @@
          // classes.
          if (superiorType != ObjectClassType.ABSTRACT)
          {
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE
                .get(oid, objectClassType.toString(), superiorType.toString(),
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE1
                .get(getNameOrOID(), objectClassType.toString(), superiorType.toString(),
                    superiorClass.getNameOrOID());
            throw new SchemaException(message);
          }
@@ -633,8 +633,8 @@
          if (superiorType != ObjectClassType.ABSTRACT
              && superiorType != ObjectClassType.AUXILIARY)
          {
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE
                .get(oid, objectClassType.toString(), superiorType.toString(),
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE1
                .get(getNameOrOID(), objectClassType.toString(), superiorType.toString(),
                    superiorClass.getNameOrOID());
            throw new SchemaException(message);
          }
@@ -646,8 +646,8 @@
          if (superiorType != ObjectClassType.ABSTRACT
              && superiorType != ObjectClassType.STRUCTURAL)
          {
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE
                .get(oid, objectClassType.toString(), superiorType.toString(),
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE1
                .get(getNameOrOID(), objectClassType.toString(), superiorType.toString(),
                    superiorClass.getNameOrOID());
            throw new SchemaException(message);
          }
@@ -701,8 +701,8 @@
    // in the superior chain.
    if (!derivesTop)
    {
      final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP
          .get(oid);
      final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP1
          .get(getNameOrOID());
      throw new SchemaException(message);
    }
@@ -737,8 +737,8 @@
            // This isn't good because it means that the objectclass
            // requires an attribute type that we don't know anything
            // about.
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR
                .get(oid, requiredAttribute);
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR1
                .get(getNameOrOID(), requiredAttribute);
            throw new SchemaException(message, e);
          }
          declaredRequiredAttributes.add(attributeType);
@@ -769,8 +769,8 @@
            // This isn't good because it means that the objectclass
            // requires an attribute type that we don't know anything
            // about.
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR
                .get(oid, optionalAttribute);
            final LocalizableMessage message = WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR1
                .get(getNameOrOID(), optionalAttribute);
            throw new SchemaException(message, e);
          }
          declaredOptionalAttributes.add(attributeType);
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/ObjectClassSyntaxImpl.java
@@ -78,9 +78,9 @@
  {
    // We'll use the decodeObjectClass method to determine if the value
    // is acceptable.
    final String definition = value.toString();
    try
    {
      final String definition = value.toString();
      final SubstringReader reader = new SubstringReader(definition);
      // We'll do this a character at a time. First, skip over any
@@ -91,8 +91,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE1
            .get(definition);
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("ObjectClassSyntax",
            "valueIsAcceptable", e);
@@ -104,7 +104,7 @@
      final char c = reader.read();
      if (c != '(')
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS1
            .get(definition, (reader.pos() - 1), String.valueOf(c));
        final DecodeException e = DecodeException.error(message);
        StaticUtils.DEBUG_LOG.throwing("ObjectClassSyntax",
@@ -198,8 +198,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          final DecodeException e = DecodeException.error(message);
          StaticUtils.DEBUG_LOG.throwing("ObjectClassSyntax",
              "valueIsAcceptable", e);
@@ -210,7 +210,8 @@
    }
    catch (final DecodeException de)
    {
      invalidReason.append(de.getMessageObject());
      invalidReason.append(ERR_ATTR_SYNTAX_OBJECTCLASS_INVALID1.get(definition,
          de.getMessageObject()));
      return false;
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/SchemaBuilder.java
@@ -206,8 +206,8 @@
      {
        // This means that the definition was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -386,8 +386,8 @@
          }
          else
          {
            final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE
                .get(String.valueOf(oid), usageStr);
            final LocalizableMessage message = WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE1
                .get(definition, usageStr);
            throw new LocalizedIllegalArgumentException(message);
          }
        }
@@ -406,8 +406,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -434,8 +434,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_ATTRTYPE_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -556,8 +557,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -659,8 +660,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DCR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -677,8 +678,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_DCR_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -822,8 +824,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -911,8 +913,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_DSR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -936,8 +938,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_DSR_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -1026,7 +1029,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_EMPTY_VALUE.get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1110,8 +1114,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_MR_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -1134,8 +1138,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_MR_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -1221,8 +1226,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1306,8 +1311,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -1331,8 +1336,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_MRUSE_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -1414,8 +1420,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1511,8 +1517,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -1521,7 +1527,7 @@
      // it cannot be valid.
      if (structuralClass == null)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1545,8 +1551,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_NAME_FORM_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -1636,8 +1643,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1646,7 +1653,7 @@
      final char c = reader.read();
      if (c != '(')
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS1
            .get(definition, (reader.pos() - 1), String.valueOf(c));
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -1754,8 +1761,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -1784,8 +1791,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_OBJECTCLASS_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -1901,14 +1909,11 @@
   *          {@code true} if existing schema elements with the same conflicting
   *          OIDs should be overwritten.
   * @return A reference to this schema builder.
   * @throws ConflictingSchemaElementException
   *           If {@code overwrite} was {@code false} and conflicting schema
   *           elements were found.
   * @throws NullPointerException
   *           If {@code entry} was {@code null}.
   */
  public SchemaBuilder addSchema(final Entry entry, final boolean overwrite)
      throws ConflictingSchemaElementException, NullPointerException
      throws NullPointerException
  {
    Validator.ensureNotNull(entry);
@@ -1923,7 +1928,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -1939,7 +1944,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -1955,7 +1960,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -1971,7 +1976,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -1987,7 +1992,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -2003,7 +2008,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -2019,7 +2024,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -2035,7 +2040,7 @@
        }
        catch (final LocalizedIllegalArgumentException e)
        {
          addWarning(e.getMessageObject());
          warnings.add(e.getMessageObject());
        }
      }
    }
@@ -2174,8 +2179,8 @@
      {
        // This means that the value was empty or contained only
        // whitespace. That is illegal.
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE1
            .get(definition);
        throw new LocalizedIllegalArgumentException(message);
      }
@@ -2238,8 +2243,8 @@
        }
        else
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_TOKEN
              .get(tokenName);
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_TOKEN1
              .get(definition, tokenName);
          throw new LocalizedIllegalArgumentException(message);
        }
      }
@@ -2277,8 +2282,9 @@
    }
    catch (final DecodeException e)
    {
      throw new LocalizedIllegalArgumentException(e.getMessageObject(), e
          .getCause());
      LocalizableMessage msg = ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID1.get(definition,
          e.getMessageObject());
      throw new LocalizedIllegalArgumentException(msg, e.getCause());
    }
    return this;
  }
@@ -2516,13 +2522,6 @@
  void addWarning(final LocalizableMessage warning)
  {
    warnings.add(warning);
  }
  private void addAttributeType(final AttributeType attribute,
      final boolean overwrite) throws ConflictingSchemaElementException
  {
@@ -2575,7 +2574,7 @@
          .getStructuralClassOID());
      if (!overwrite)
      {
        final LocalizableMessage message = ERR_SCHEMA_CONFLICTING_DIT_CONTENT_RULE
        final LocalizableMessage message = ERR_SCHEMA_CONFLICTING_DIT_CONTENT_RULE1
            .get(rule.getNameOrOID(), rule.getStructuralClassOID(),
                conflictingRule.getNameOrOID());
        throw new ConflictingSchemaElementException(message);
@@ -2780,7 +2779,7 @@
      conflictingOC = numericOID2ObjectClasses.get(oc.getOID());
      if (!overwrite)
      {
        final LocalizableMessage message = ERR_SCHEMA_CONFLICTING_OBJECTCLASS_OID
        final LocalizableMessage message = ERR_SCHEMA_CONFLICTING_OBJECTCLASS_OID1
            .get(oc.getNameOrOID(), oc.getOID(), conflictingOC.getNameOrOID());
        throw new ConflictingSchemaElementException(message);
      }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/SchemaUtils.java
@@ -132,7 +132,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -186,7 +186,7 @@
      }
      else
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
            .get(String.valueOf(c), reader.pos() - 1);
        throw DecodeException.error(message);
      }
@@ -195,7 +195,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -258,8 +258,8 @@
          {
            if (lastWasPeriod)
            {
              final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS
                  .get(reader.getString(), reader.pos() - 1);
              final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS1
                  .get(reader.pos() - 1);
              throw DecodeException.error(message);
            }
            else
@@ -271,8 +271,8 @@
          {
            // This must be an illegal character.
            // This must have been an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER
                .get(reader.getString(), reader.pos() - 1);
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
          else
@@ -285,8 +285,8 @@
        if (lastWasPeriod)
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD
              .get(reader.getString());
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD1
              .get(reader.pos() - 1);
          throw DecodeException.error(message);
        }
      }
@@ -301,7 +301,7 @@
          if (length == 0 && !isAlpha(c))
          {
            // This is an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
@@ -309,7 +309,7 @@
          if (!isKeyChar(c, allowCompatChars))
          {
            // This is an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
@@ -319,14 +319,14 @@
      }
      else
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
            .get(String.valueOf(c), reader.pos() - 1);
        throw DecodeException.error(message);
      }
      if (enclosingQuote && c != '\'')
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS1
            .get(reader.pos() - 1, String.valueOf(c));
        throw DecodeException.error(message);
      }
@@ -334,7 +334,8 @@
    if (length == 0)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_NO_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_NO_VALUE1
          .get(reader.pos() - 1);
      throw DecodeException.error(message);
    }
@@ -394,8 +395,8 @@
          {
            if (lastWasPeriod)
            {
              final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS
                  .get(reader.getString(), reader.pos() - 1);
              final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS1
                  .get(reader.pos() - 1);
              throw DecodeException.error(message);
            }
            else
@@ -416,8 +417,8 @@
            }
            // This must have been an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER
                .get(reader.getString(), reader.pos() - 1);
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
          else
@@ -429,7 +430,7 @@
        if (length == 0)
        {
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_NO_VALUE.get();
          final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_NO_VALUE1.get(reader.pos() - 1);
          throw DecodeException.error(message);
        }
      }
@@ -445,7 +446,7 @@
          if (length == 0 && !isAlpha(c))
          {
            // This is an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
@@ -453,7 +454,7 @@
          if (!isKeyChar(c, allowCompatChars))
          {
            // This is an illegal character.
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
            final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
                .get(String.valueOf(c), reader.pos() - 1);
            throw DecodeException.error(message);
          }
@@ -463,7 +464,7 @@
      }
      else
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
        final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
            .get(String.valueOf(c), reader.pos() - 1);
        throw DecodeException.error(message);
      }
@@ -484,7 +485,7 @@
        {
          if (!isDigit(c))
          {
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER
            final LocalizableMessage message = ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER1
                .get(reader.getString(), reader.pos() - 1);
            throw DecodeException.error(message);
          }
@@ -503,7 +504,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -545,7 +546,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -576,7 +577,7 @@
      final char c = reader.read();
      if (c != '\'')
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS1
            .get(reader.pos() - 1, String.valueOf(c));
        throw DecodeException.error(message);
      }
@@ -596,7 +597,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -633,8 +634,8 @@
      if (length == 0)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_RULE_ID_NO_VALUE
            .get();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_RULE_ID_NO_VALUE1
            .get(reader.pos() - 1);
        throw DecodeException.error(message);
      }
@@ -647,14 +648,14 @@
      }
      catch (final NumberFormatException e)
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_RULE_ID_INVALID
        final LocalizableMessage message = ERR_ATTR_SYNTAX_RULE_ID_INVALID1
            .get(ruleID);
        throw DecodeException.error(message);
      }
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -696,7 +697,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -743,7 +744,7 @@
      if (token == null && reader.remaining() > 0)
      {
        reader.reset();
        final LocalizableMessage message = ERR_ATTR_SYNTAX_UNEXPECTED_CLOSE_PARENTHESIS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_UNEXPECTED_CLOSE_PARENTHESIS1
            .get(length);
        throw DecodeException.error(message);
      }
@@ -752,7 +753,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
@@ -855,7 +856,7 @@
      char c = reader.read();
      if (c != '\'')
      {
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS
        final LocalizableMessage message = ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS1
            .get(reader.pos() - 1, String.valueOf(c));
        throw DecodeException.error(message);
      }
@@ -867,7 +868,7 @@
        if (length == 0 && !isAlpha(c))
        {
          // This is an illegal character.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
              .get(String.valueOf(c), reader.pos() - 1);
          throw DecodeException.error(message);
        }
@@ -875,7 +876,7 @@
        if (!isKeyChar(c, allowCompatChars))
        {
          // This is an illegal character.
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID
          final LocalizableMessage message = ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1
              .get(String.valueOf(c), reader.pos() - 1);
          throw DecodeException.error(message);
        }
@@ -891,7 +892,7 @@
    }
    catch (final StringIndexOutOfBoundsException e)
    {
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE.get();
      final LocalizableMessage message = ERR_ATTR_SYNTAX_TRUNCATED_VALUE1.get();
      throw DecodeException.error(message);
    }
  }
opendj3/opendj-ldap-sdk/src/main/java/org/forgerock/opendj/ldap/schema/Syntax.java
@@ -359,8 +359,8 @@
      if (impl == null)
      {
        impl = Schema.getDefaultSyntax().impl;
        final LocalizableMessage message = WARN_ATTR_SYNTAX_NOT_IMPLEMENTED
            .get(oid, Schema.getDefaultSyntax().getOID());
        final LocalizableMessage message = WARN_ATTR_SYNTAX_NOT_IMPLEMENTED1
            .get(getDescription(), oid, Schema.getDefaultSyntax().getOID());
        warnings.add(message);
      }
    }
opendj3/opendj-ldap-sdk/src/main/resources/org/forgerock/opendj/ldap/core.properties
@@ -23,6 +23,7 @@
#
#
#      Copyright 2010 Sun Microsystems, Inc.
#      Portions copyright 2011 ForgeRock AS
#
ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE=Unable to retrieve \
 approximate matching rule %s used as the default for the %s attribute syntax. \
@@ -131,62 +132,10 @@
WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE=The provided value "%s" \
 could not be parsed as a valid integer because it contained only a dash not \
 followed by an integer value
ERR_ATTR_SYNTAX_OID_NO_VALUE=The provided value could not be parsed \
 as a valid OID because it did not contain any characters
ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER=The provided value "%s" could not \
 be parsed as a valid OID because it had an illegal character at position %d
ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS=The provided value "%s" could \
 not be parsed as a valid OID because it had two consecutive periods at or \
 near position %d
ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD=The provided value "%s" could not \
 be parsed as a valid OID because it ends with a period
ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE=The provided value could not be \
 parsed as a valid attribute type description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS=The provided value \
 "%s" could not be parsed as an attribute type description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE=The definition for \
 the attribute type with OID %s declared a superior type with an OID of %s. \
 No attribute type with this OID exists in the server schema
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR=The definition for \
 the attribute type with OID %s declared that approximate matching should be \
 performed using the matching rule "%s".  No such approximate matching rule is \
 configured for use in the Directory Server
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR=The definition for \
 the attribute type with OID %s declared that equality matching should be \
 performed using the matching rule "%s".  No such equality matching rule is \
 configured for use in the Directory Server
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR=The definition for \
 the attribute type with OID %s declared that ordering matching should be \
 performed using the matching rule "%s".  No such ordering matching rule is \
 configured for use in the Directory Server
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR=The definition for \
 the attribute type with OID %s declared that substring matching should be \
 performed using the matching rule "%s".  No such substring matching rule is \
 configured for use in the Directory Server
WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE=The definition \
 for the attribute type with OID %s declared that it should have an attribute \
 usage of %s.  This is an invalid usage
ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE=The provided value could not \
 be parsed as a valid objectclass description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS=The provided \
 value "%s" could not be parsed as an objectclass description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS=The definition \
 for the objectclass with OID %s declared a superior objectclass with an OID \
 of %s.  No objectclass with this OID exists in the server schema
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR=The definition \
 for the objectclass with OID %s declared that it should include required \
 attribute "%s".  No attribute type matching this name or OID exists in the \
 server schema
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR=The definition \
 for the objectclass with OID %s declared that it should include optional \
 attribute "%s".  No attribute type matching this name or OID exists in the \
 server schema
WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER=The provided value "%s" \
 cannot be parsed as a valid IA5 string because it contains an illegal \
 character "%s" that is not allowed in the IA5 (ASCII) character set
@@ -208,9 +157,6 @@
ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE=The provided value is not \
 a valid numeric string because it did not contain any characters.  A numeric \
 string value must contain at least one numeric digit or space
ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE=The provided value could not \
 be parsed as a valid attribute syntax description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS=The provided \
 value "%s" could not be parsed as an attribute syntax description because an \
 open parenthesis was expected at position %d but instead a '%s' character was \
@@ -250,92 +196,28 @@
 a valid UTC time value because %s is not a valid GMT offset
ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE=The provided value %s could \
 not be parsed as a valid UTC time:  %s
ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE=The provided value could not be \
 parsed as a valid DIT content rule description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS=The provided value \
 "%s" could not be parsed as a DIT content rule description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS=The DIT content rule \
 "%s" is associated with a structural objectclass %s that is not defined in \
 the server schema
ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL=The DIT content \
 rule "%s" is associated with the objectclass with OID %s (%s).  This \
 objectclass exists in the server schema but is defined as %s rather than \
 structural
ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS=The DIT content rule \
 "%s" is associated with an auxiliary objectclass %s that is not defined in \
 the server schema
ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY=The DIT content \
 rule "%s" is associated with an auxiliary objectclass %s.  This objectclass \
 exists in the server schema but is defined as %s rather than auxiliary
ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR=The DIT content rule "%s" \
 is associated with a required attribute type %s that is not defined in the \
 server schema
ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR=The DIT content rule "%s" \
 is associated with an optional attribute type %s that is not defined in the \
 server schema
ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR=The DIT content rule \
 "%s" is associated with a prohibited attribute type %s that is not defined in \
 the server schema
ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE=The provided value could not \
 be parsed as a valid name form description because it was empty or contained \
 only whitespace
ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS=The provided \
 value "%s" could not be parsed as a name form description because an open \
 parenthesis was expected at position %d but instead a '%c' character was \
 found
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS=The name form \
 description "%s" is associated with a structural objectclass %s that is not \
 defined in the server schema
ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL=The name \
 form description "%s" is associated with the objectclass with OID %s (%s). \
 This objectclass exists in the server schema but is defined as %s rather than \
 structural
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR=The definition for \
 the name form with OID %s declared that it should include required attribute \
 "%s".  No attribute type matching this name or OID exists in the server \
 schema
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR=The definition for \
 the name form with OID %s declared that it should include optional attribute \
 "%s".  No attribute type matching this name or OID exists in the server \
 schema
ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS=The provided value \
 "%s" could not be parsed as a name form description because it does not \
 specify the structural objectclass with which it is associated
ERR_ATTR_SYNTAX_MR_EMPTY_VALUE=The provided value could not be \
 parsed as a valid matching rule description because it was empty or contained \
 only whitespace
ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS=The provided value "%s" \
 could not be parsed as a matching rule description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX=The matching rule description "%s" \
 is associated with attribute syntax %s that is not defined in the server \
 schema
ERR_ATTR_SYNTAX_MR_NO_SYNTAX=The provided value "%s" could not be \
 parsed as a matching rule description because it does not specify the \
 attribute syntax with which it is associated
ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE=The provided value could not be \
 parsed as a valid matching rule use description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS=The provided value \
 "%s" could not be parsed as a matching rule use description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE=The provided value "%s" \
 could not be parsed as a matching rule use description because the specified \
 matching rule %s is unknown
ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR=The matching rule use description \
 "%s" is associated with attribute type %s that is not defined in the server \
 schema
ERR_ATTR_SYNTAX_MRUSE_NO_ATTR=The provided value "%s" could not be \
 parsed as a matching rule description because it does not specify the set of \
 attribute types that may be used with the associated OID
ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE=The provided value could not be \
 parsed as a valid DIT structure rule description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS=The provided value \
 "%s" could not be parsed as a DIT structure rule description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
@@ -408,9 +290,6 @@
ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR=The provided value \
 "%s" could not be parsed as an other mailbox value because the mailbox \
 contained an illegal character %s at position %d
ERR_ATTR_SYNTAX_GUIDE_NO_OC=The provided value "%s" could not be \
 parsed as a guide value because it did not contain an objectclass name or OID \
 before the octothorpe (#) character
ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR=The provided value "%s" could not \
 be parsed as a guide value because the criteria portion %s contained an \
 illegal character %c at position %d
@@ -432,12 +311,6 @@
ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE=The provided value "%s" \
 could not be parsed as a guide value because the criteria portion %s had an \
 invalid match type starting at position %d
ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP=The provided value "%s" could \
 not be parsed as an enhanced guide value because it did not contain an \
 octothorpe (#) character to separate the objectclass from the criteria
ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC=The provided value "%s" could \
 not be parsed as an enhanced guide value because it did not contain an \
 objectclass name or OID before the octothorpe (#) character
ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP=The provided value "%s" \
 could not be parsed as an enhanced guide value because it did not have an \
 octothorpe (#) character to separate the criteria from the scope
@@ -497,13 +370,6 @@
 value had a zero-length authValue element
ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR=The provided \
 authPassword value had an invalid trailing character at position %d
WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE=The definition \
 for objectclass %s is invalid because it has an objectclass type of %s but \
 this is incompatible with the objectclass type %s for the superior class %s
WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP=The \
 definition for objectclass %s is invalid because it is defined as a \
 structural class but its superior chain does not include the "top" \
 objectclass
WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE=The definition \
 for attribute type %s is invalid because its attribute usage %s is not the \
 same as the usage for its superior type %s
@@ -543,29 +409,13 @@
WARN_ATTR_SYNTAX_LDAPSYNTAX_REGEX_INVALID_PATTERN=The definition for the \
 syntax with OID "%s" could not be parsed as a regex syntax because the provided \
 regex pattern "%s" is invalid
ERR_ATTR_SYNTAX_UNEXPECTED_CLOSE_PARENTHESIS=Unexpected closing \
  parenthesis at position %d
ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS=A single quote was \
  expected at position %d but the character %s was found instead
ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID=Non-numeric \
  OID contained an illegal character %s at position %d
ERR_ATTR_SYNTAX_ILLEGAL_CHAR=Illegal character %s at position %d
ERR_ATTR_SYNTAX_NAME_FORM_NO_REQUIRED_ATTR=The provided value \
 "%s" could not be parsed as a name form description because it does not \
 specify a required naming attribute
ERR_ATTR_SYNTAX_RULE_ID_NO_VALUE= The provided value could not \
  be parsed as a valid rule ID because it did not contain any characters
ERR_ATTR_SYNTAX_RULE_ID_INVALID=The value "%s" \
  could not be parsed as a valid rule ID
ERR_ATTR_SYNTAX_UNKNOWN_SUB_SYNTAX=The definition for the \
 syntax with OID %s declared that it should have a substitution syntax with \
 OID %s. No such syntax is defined
WARN_ATTR_SYNTAX_NOT_IMPLEMENTED=The syntax with OID %s is not \
 implemented. It will be substituted by the default syntax with OID %s
WARN_MATCHING_RULE_NOT_IMPLEMENTED=The matching rule with OID %s is \
  not implemented. It will be substituted by the default matching rule %s
ERR_ATTR_SYNTAX_ILLEGAL_TOKEN=Illegal token %s
ERR_ATTR_SYNTAX_TRUNCATED_VALUE=Unexpected end of value
ERR_ATTR_SYNTAX_CYCLIC_SUB_SYNTAX=The definition for the \
 syntax with OID %s declared a cyclic substitution.
WARN_ATTR_SYNTAX_LDAPSYNTAX_ENUM_INVALID_VALUE=The provided value \
@@ -650,19 +500,12 @@
ERR_INVALID_SUBSCHEMA_SUBENTRY_ATTR=The entry %s includes \
 a subschemaSubentry attribute but it contains an invalid distinguished \
 name "%s": %s
WARN_ATTR_TYPE_NOT_DEFINED=The definition for the \
 attribute type with OID %s declared that it should have a syntax \
 with OID %s which is is not defined in the schema. The missing syntax \
 will be substituted by the core schema syntax: %s
#
# Core messages
#
ERR_SCHEMA_CONFLICTING_ATTRIBUTE_OID=Unable to register attribute \
 type %s with the server schema because its OID %s conflicts with the OID of \
 an existing attribute type %s
ERR_SCHEMA_CONFLICTING_OBJECTCLASS_OID=Unable to register \
 objectclass %s with the server schema because its OID %s conflicts with the \
 OID of an existing objectclass %s
ERR_SCHEMA_CONFLICTING_SYNTAX_OID=Unable to register attribute \
 syntax %s with the server schema because its OID %s conflicts with the OID of \
 an existing syntax %s
@@ -672,9 +515,6 @@
ERR_SCHEMA_CONFLICTING_MATCHING_RULE_USE=Unable to register matching \
 rule use %s with the server schema because its matching rule %s conflicts \
 with the matching rule for an existing matching rule use %s
ERR_SCHEMA_CONFLICTING_DIT_CONTENT_RULE=Unable to register DIT \
 content rule %s with the server schema because its structural objectclass %s \
 conflicts with the structural objectclass for an existing DIT content rule %s
ERR_SCHEMA_CONFLICTING_DIT_STRUCTURE_RULE_ID=Unable to register DIT \
 structure rule %s with the server schema because its rule ID %d conflicts \
 with the rule ID for an existing DIT structure rule %s
@@ -1284,7 +1124,189 @@
 client connection failed
INFO_CLIENT_CONNECTION_CLOSING=The operation was rejected because the \
 client connection is closing
ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid attribute syntax description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid attribute type description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_MR_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid matching rule description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid matching rule use description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid name form description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid object class description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_DCR_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid DIT content rule description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_DSR_ILLEGAL_TOKEN1=The provided value "%s"could not \
 be parsed as a valid DIT structure rule description because it contains an \
 illegal token "%s"
ERR_ATTR_SYNTAX_TRUNCATED_VALUE1=the value appears to be truncated
ERR_ATTR_SYNTAX_ILLEGAL_CHAR_IN_STRING_OID1=the value contains a non-numeric \
 OID which could not be parsed because it contains an illegal character \
 '%s' at position %d
ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS1=the value contains a numeric \
 OID which could not be parsed because it contains two consecutive periods at \
 or near position %d
ERR_ATTR_SYNTAX_OID_NO_VALUE1=the value did not contain an OID at position %d
ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER1=the value contains a numeric OID which \
 could not be parsed because it contains an illegal character '%s' at position %d
ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD1=the value contains a numeric OID which \
 could not be parsed because it ends with a period at position %d
ERR_ATTR_SYNTAX_EXPECTED_QUOTE_AT_POS1=the value should have contained a single \
 quote at position %d but the character '%s' was found instead
ERR_ATTR_SYNTAX_RULE_ID_NO_VALUE1=the value did not contain a rule ID at position %d
ERR_ATTR_SYNTAX_RULE_ID_INVALID1=the value contained an invalid rule ID "%s" \
 which could not be parsed as a number
ERR_ATTR_SYNTAX_UNEXPECTED_CLOSE_PARENTHESIS1=the value contained an unexpected \
 closing parenthesis at position %d
ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID1=The provided value "%s" could not \
 be parsed as a valid attribute syntax description for the following reason: %s
ERR_ATTR_SYNTAX_ATTRTYPE_INVALID1=The provided value "%s" could not \
 be parsed as a valid attribute type description for the following reason: %s
ERR_ATTR_SYNTAX_DCR_INVALID1=The provided value "%s" could not \
 be parsed as a valid DIT content rule description for the following reason: %s
ERR_ATTR_SYNTAX_DSR_INVALID1=The provided value "%s" could not \
 be parsed as a valid DIT structure rule description for the following reason: %s
ERR_ATTR_SYNTAX_MR_INVALID1=The provided value "%s" could not \
 be parsed as a valid matching rule description for the following reason: %s
ERR_ATTR_SYNTAX_MRUSE_INVALID1=The provided value "%s" could not \
 be parsed as a valid matching rule use description for the following reason: %s
ERR_ATTR_SYNTAX_NAME_FORM_INVALID1=The provided value "%s" could not \
 be parsed as a valid name form description for the following reason: %s
ERR_ATTR_SYNTAX_OBJECTCLASS_INVALID1=The provided value "%s" could not \
 be parsed as a valid object class description for the following reason: %s
ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE1=The provided value "%s" could not be \
 parsed as a valid attribute type description because it was empty or \
 contained only whitespace
WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE1=The provided value "%s" \
 definition could not be parsed as a valid attribute type description because \
 it declared that it should have an attribute usage of %s. This is an invalid usage
ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE1=The provided value "%s" could not \
 be parsed as a valid object class description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE1=The provided value "%s" could not \
 be parsed as a valid attribute syntax description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS1=The provided \
 value "%s" could not be parsed as an object class description because an open \
 parenthesis was expected at position %d but instead a '%s' character was \
 found
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS1=The object class "%s" \
 specifies the superior object class "%s" which is not defined in the schema
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR1=The object class "%s" \
 specifies the required attribute type "%s" which is not defined in the schema
WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR1=The object class "%s" \
 specifies the optional attribute type "%s" which is not defined in the schema
ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE1=The provided value "%s" could not be \
 parsed as a valid DIT content rule description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS1=The DIT content rule \
 "%s" is associated with a structural object class %s which is not defined in \
 the schema
ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL1=The DIT content \
 rule "%s" is associated with the "%s" object class.  This \
 object class exists in the schema but is defined as %s rather than \
 structural
ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS1=The DIT content rule \
 "%s" is associated with an auxiliary object class "%s" which is not defined in \
 the schema
ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY1=The DIT content \
 rule "%s" is associated with an auxiliary object class "%s".  This object class \
 exists in the schema but is defined as %s rather than auxiliary
ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE1=The provided value "%s" could not \
 be parsed as a valid name form description because it was empty or contained \
 only whitespace
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS1=The name form \
 description "%s" is associated with a structural object class "%s" which is not \
 defined in the schema
ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL1=The name \
 form description "%s" is associated with the "%s" object class. \
 This object class exists in the schema but is defined as %s rather than \
 structural
ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS1=The provided value \
 "%s" could not be parsed as a name form description because it does not \
 specify the structural object class with which it is associated
ERR_ATTR_SYNTAX_MR_EMPTY_VALUE1=The provided value "%s" could not be \
 parsed as a valid matching rule description because it was empty or contained \
 only whitespace
ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE1=The provided value "%s" could not be \
 parsed as a valid matching rule use description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE1=The provided value "%s" could not be \
 parsed as a valid DIT structure rule description because it was empty or \
 contained only whitespace
ERR_ATTR_SYNTAX_GUIDE_NO_OC1=The provided value "%s" could not be \
 parsed as a guide value because it did not contain an object class name or OID \
 before the octothorpe (#) character
ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP1=The provided value "%s" could \
 not be parsed as an enhanced guide value because it did not contain an \
 octothorpe (#) character to separate the object class from the criteria
ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC1=The provided value "%s" could \
 not be parsed as an enhanced guide value because it did not contain an \
 object class name or OID before the octothorpe (#) character
WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE1=The object class "%s" is \
 invalid because it has an object class type of %s which is incompatible with \
 the object class type %s specified by the superior object class "%s"
WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP1=The object class "%s" \
 is invalid because it is defined as a structural class but its superior chain \
  does not include the "top" object class
ERR_SCHEMA_CONFLICTING_OBJECTCLASS_OID1=Unable to register \
 object class %s with the server schema because its OID %s conflicts with the \
 OID of an existing object class %s
ERR_SCHEMA_CONFLICTING_DIT_CONTENT_RULE1=Unable to register DIT \
 content rule %s with the server schema because its structural object class %s \
 conflicts with the structural object class for an existing DIT content rule %s
WARN_MATCHING_RULE_NOT_IMPLEMENTED1=No implementation found for the matching \
  rule "%s". The default matching rule "%s" will be used instead
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE1=The definition for \
 the attribute type "%s" declared a superior type "%s" which is not defined \
 in the schema
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR1=The definition for \
 the attribute type "%s" declared that approximate matching should be \
 performed using the matching rule "%s" which is not defined \
 in the schema
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR1=The definition for \
 the attribute type "%s" declared that equality matching should be \
 performed using the matching rule "%s" which is not defined \
 in the schema
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR1=The definition for \
 the attribute type "%s" declared that ordering matching should be \
 performed using the matching rule "%s" which is not defined \
 in the schema
WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR1=The definition for \
 the attribute type "%s" declared that substring matching should be \
 performed using the matching rule "%s" which is not defined \
 in the schema
WARN_ATTR_TYPE_NOT_DEFINED1=The definition for the \
 attribute type "%s" declared that it should use the syntax \
 "%s" which is is not defined in the schema. The default syntax "%s" \
 will be used instead
ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR1=The DIT content rule "%s" \
 is associated with a required attribute type "%s" which is not defined in the \
 schema
ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR1=The DIT content rule "%s" \
 is associated with an optional attribute type "%s" which is not defined in the \
 schema
ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR1=The DIT content rule \
 "%s" is associated with a prohibited attribute type "%s" which is not defined in \
 the schema
ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX1=The matching rule "%s" \
 is associated with attribute syntax "%s" which is not defined in the schema
ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE1=The matching rule use "%s" \
 specifies the matching rule "%s" which is not defined in the schema
ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR1=The matching rule use "%s" \
 specifies the attribute type "%s" which is not defined in the schema
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR1=The name form "%s" specifies \
 the required attribute "%s" which is not defined in the schema
ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR1=The name form "%s" specifies \
 the optional attribute "%s" which is not defined in the schema
WARN_ATTR_SYNTAX_NOT_IMPLEMENTED1=The "%s" syntax with OID %s is not \
 implemented. It will be substituted by the default syntax with OID %s