¡Cómo mostrar el resultado de las consultas SPARQL en una obra! ¿ver?

Estoy escribiendo una aplicación donde un usuario puede cargar archivos .rdf y luego ejecutar consultas SPARQL en él. En este momento estoy atascado en cómo formatear el resultado de la consulta. Por ejemplo: un ASK-Query genera un booleano y un SELECT-Query devuelve un ResultSet. CONSTRUCTy DESCRIBEdevolver un nuevo RDF-Graph.
¿Cómo obtengo el resultado de la consulta dada en un formulario para pasarla a mi vista? Allí espero imprimir una tabla HTML.

Para una mejor comprensión de mi problema, creé este ejemplo de código minimalista:

import java.io.InputStream;

import com.hp.hpl.jena.*;

public class playground {

    public static void main(String[] args) {

      InputStream in = FileManager.get().open("vc-db-1.rdf");
      Model model = ModelFactory.createDefaultModel();
      model.read(in, null);

      String queryStringSelect = "SELECT ?subject ?predicate ?object WHERE { ?subject ?predicate ?object }";
      String queryStringAsk = "ASK WHERE { ?subject ?predicate ?object }";
      String queryStringDescribe = "DESCRIBE * WHERE { ?subject ?predicate ?object }";
      String queryStringConstruct = "CONSTRUCT { ?subject ?predicate ?object } WHERE { ?subject ?predicate ?object }";

      QueryExecution qe = QueryExecutionFactory.create(queryStringDescribe,
        model);
      Query q = QueryFactory.create(queryStringDescribe);

      int queryType = q.getQueryType();
      switch (queryType) {
      case Query.QueryTypeAsk:
          boolean b = qe.execAsk(); // Result that has to be formatted
          ResultSetFormatter.outputAsTSV(System.out, b);
          break;
      case Query.QueryTypeConstruct:
          model = qe.execConstruct(); // Result that has to be formatted
          model.write(System.out);
          break;
      case Query.QueryTypeDescribe:
          model = qe.execDescribe(); // Result that has to be formatted
          model.write(System.out);
          break;
      case Query.QueryTypeSelect:
          ResultSet results = qe.execSelect(); // Result that has to be
                 // formatted
          ResultSetFormatter.outputAsTSV(System.out, results);
          break;
      }

      model.close();
      qe.close();

    }

}

El archivo .rdf mencionado se puede descargar aquí: http://jena.apache.org/tutorials/sparql_data/vc-db-1.rdf

Respuesta 1

mi pregunta es, ¿cómo funciona la serialización de Java? Estoy serializando 100_000 objetos de una clase con un nombre de clase largo y nombres de campo largos. Y lleva mucho más tiempo que con otra clase con poco ...

Tengo estos símbolos arraylist public ArrayList <ArrayList <Letter>> setLetters () {ArrayList <ArrayList <Letter>> letters = new ArrayList <> (); ArrayList <...

Estoy evaluando Node.js para el posible reemplazo de mi funcionalidad de inserción actual en una aplicación web Java. Escribí un servidor de sondeo largo y simple que funciona como un intermediario entre el cliente y Java ...

Estoy trabajando en una función que desglosa la entrada dada en denominaciones usando una llamada recursiva. En cada paso se repite en dos variantes: continuar con la moneda actual: agregarla a la lista ...