Search code examples
solrlucenen-triplessiren

SIREn N-Tuples Results


Is it possible in SIREn to work with N-Tuples values(by names) in the SolrDocument? I want to parse query results without regexp of the response string.

Something like:

SolrDocument.getField("ntriple","name"); // get "Jim Maple" value for '<http:/example.org/schema/name> predicate

More details:

//N-Tuple from the IndexQueryNTriple.java file

 private final String[] doc1 = 

 { "http:/example.org/person/jim",

 "<http:/example.org/person/jim> <http:/example.org/schema/type> <http:/example.org
  /schema/Person> .\n" + 

  "<http:/example.org/person/jim> <http:/example.org/schema/name> \"Jim Maple\" .\n" 
 };

 final SolrInputDocument document1 = new SolrInputDocument();

document1.addField("url", doc1[0]);
document1.addField("ntriple", doc1[1]);
add(document1); 

final SolrQuery query2 = new SolrQuery();
query2.setQueryType("siren");
query2.set(SirenParams.NQ, "* <name> 'john AND gartner'"); // ntriple query
final QueryResponse response2 = server.query(query2);
for (SolrDocument d : response2.getResults()) {

///?????? want to get 'name' value from the long N-Triple string with ALL values
 d.getField("ntriple","name"); // get "Jim Maple" value

}

Solution

  • Unfortunately NxParser has some limitations for the format of the triples it can parse