private void parseDatatype() {
    if (currentToken() == LITERAL) {
      advance();
    } else if (matches(LBRACE)) {
      parseParams();
      if (matches(MINUS)) {
        if (!parsePattern()) {
          error(RelaxngBundle.message("relaxng.parse.error.pattern-expected"));
        }
      }
      match(RBRACE, RelaxngBundle.message("relaxng.parse.error.rbrace-expected"));
    }
  }
private void parseDatatype()