private PropertyIdValue processGDMPredicate(
      final Predicate predicate, final String propertyValueDataType) {

    final String predicateURI = predicate.getUri();

    return createOrGetWikidataProperty(predicateURI, propertyValueDataType);
  }
  private static String determineWikidataPropertyValueDataType(
      final Predicate gdmPredicate, final NodeType gdmObjectType) {

    final String propertyValueDataType;

    switch (gdmObjectType) {
      case Literal:
        propertyValueDataType = DatatypeIdValue.DT_STRING;

        break;
      case Resource:
        propertyValueDataType = DatatypeIdValue.DT_ITEM;

        break;
      default:
        propertyValueDataType = DatatypeIdValue.DT_STRING;

        LOG.debug(
            "set property value data type '{}' for property '{}', because object type is '{}'",
            propertyValueDataType,
            gdmPredicate.getUri(),
            gdmObjectType);
    }

    return propertyValueDataType;
  }