code: public static Collection<Attribute> fromJson(String json, ObjectMapper objectMapper) throws IOException {
          requireNonNull(json);
          JsonNode object = objectMapper.readTree(json);
          if(object.isObject())
              return fromJson((ObjectNode)object);
          else
              throw new IllegalArgumentException("Error parsing json or input was not json object");
      }
docs: Flattens a raw nested json string representation into a collection of attributes. This method has the same effect as
  {@link #fromJson(com.fasterxml.jackson.databind.node.ObjectNode)}, except it takes a json as a string
  and a configured object mapper instance.
  @throws java.io.IOException