code: public Collection<String> parseLanguages() throws EnhancementParserException {
  
          Collection<String> languages = Sets.newHashSet();
  
          String textAnnotationsQuery = "PREFIX fise: <http://fise.iks-project.eu/ontology/> \n"
                  + "PREFIX dct: <http://purl.org/dc/terms/> \n"
                  + "SELECT * { \n"
                  + "  ?annotation a fise:TextAnnotation . \n"
                  + "  ?annotation dct:type <"
                  + DCTERMS.LINGUISTIC_SYSTEM
                  + "> . \n"
                  + "  ?annotation dct:language ?language . \n"
                  + "} \n";
  
          try {
              RepositoryConnection conn = repository.getConnection();
              try {
                  conn.begin();
  
                  TupleQueryResult textAnnotationsResults = conn.prepareTupleQuery(QueryLanguage.SPARQL, textAnnotationsQuery).evaluate();
                  while (textAnnotationsResults.hasNext()) {
                      BindingSet result = textAnnotationsResults.next();
                      if (result.hasBinding("language")) {
                          languages.add(result.getBinding("language").getValue().stringValue());
                      }
                  }
                  conn.commit();
              } finally {
                  conn.close();
              }
          } catch (QueryEvaluationException | MalformedQueryException e) {
              throw new EnhancementParserException(
                      "Error parsing text annotations", e);
          } catch (RepositoryException e) {
              throw new EnhancementParserException(
                      "Error querying the RDF Model obtained as Service Response",
                      e);
          }
  
          return languages;
      }
docs: /*
  (non-Javadoc)
  
  @see
  io.redlink.sdk.impl.analysis.model.EnhancementsParser#parseLanguages()