private static String printGDMStatement(final Statement statement) {

    final StringBuilder sb = new StringBuilder();

    final Long id = statement.getId();

    sb.append("{statement: id ='");

    if (id != null) {

      sb.append(id);
    } else {

      sb.append("no statement id available");
    }

    sb.append("' :: ");

    final String uuid = statement.getUUID();

    sb.append("uuid = '");

    if (uuid != null) {

      sb.append(uuid);
    } else {

      sb.append("no uuid available");
    }

    sb.append("' :: ");

    final String subject = printGDMNode(statement.getSubject());

    sb.append("subject = '").append(subject).append("' :: ");

    final String predicateURI = statement.getPredicate().getUri();

    sb.append("predicate = '").append(predicateURI).append("' :: ");

    final String object = printGDMNode(statement.getObject());

    sb.append("object = '").append(object).append("'}");

    return sb.toString();
  }