@POST
  @Consumes({MediaType.APPLICATION_JSON})
  @Produces({MediaType.APPLICATION_JSON})
  @Path("create")
  public Feedback create(FeedbackPayload feedbackPayload)
  {
    if(feedbackPayload == null)
      throw new ExceptionReporter(new NullPointerException("No 'FeedbackPayload' given."));
    
    if(feedbackPayload.getUserUri() == null || feedbackPayload.getUserUri().trim().equals(""))
      throw new ExceptionReporter(new NullPointerException("User URI needed to create the feedback."));
    if(feedbackPayload.getMessage() == null || feedbackPayload.getMessage().trim().equals(""))
      throw new ExceptionReporter(new NullPointerException("A message needed to create the feedback."));
    if(feedbackPayload.getAuthenticationToken() == null || feedbackPayload.getAuthenticationToken().trim().equals(""))
      throw new ExceptionReporter(new NullPointerException("An authentication token needed to create the feedback."));
    
    String feedbackUri = QueryReader.getString("FeedbackQueries.baseNS") + UUID.randomUUID().toString();
    String query = FeedbackQueries.getCreateFeedbackUpdate(feedbackPayload.getUserUri(), 
                                                           (feedbackPayload.getJourneyUri()==null)?"":feedbackPayload.getJourneyUri(), 
                                                           feedbackPayload.getMessage(), 
                                                           feedbackUri);
    Query sparqlQuery = new Query(query);
    feedbackEndpoint.update(sparqlQuery);

    Feedback feedback = new Feedback();
    feedback.setUri(feedbackUri);
    return feedback;
  }