code: public Optional<MarkupLanguage> getMarkupLanguage(String key) {
          Optional<String> property = getString(key);
          if (property.isPresent()) {
              return Optional.of(MarkupLanguage.valueOf(property.get()));
          } else {
              return Optional.empty();
          }
      }
docs: Return the MarkupLanguage property value associated with the given key, or
  {@code defaultValue} if the key cannot be resolved.
  
  @param key the property name to resolve
  @return The MarkupLanguage property