private static boolean validate(String key, Map<String, Boolean> validateMap) {
		Boolean ret = validateMap.get(key);
		if (ret != null)
			return ret;

		char[] chars = key.toCharArray();
		for (char c : chars) {
			if (Character.isLetterOrDigit(c) || c == '_' || c == '-') {
				continue;
			} else {
				validateMap.put(key, false);
				return false;
			}

		}
		validateMap.put(key, true);
		return true;
	}