code: @Override
      public final boolean isValid(String literal, ValidationContext context) {
          try {
              checkValid(literal);
          } catch (DatatypeException e) {
              return false;
          }
          return true;
      }
docs: Calls <code>checkValid(CharSequence literal)</code>.
  @param literal the value
  @param context the validation context (ignored by subclasses)
  @return <code>true</code> if valid and <code>false</code> if not
  @see org.relaxng.datatype.Datatype#isValid(java.lang.String, org.relaxng.datatype.ValidationContext)