org.eclipse.rdf4j.repository.RepositoryConnection.prepareTupleQuery()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(12.3k)|赞(0)|评价(0)|浏览(155)

本文整理了Java中org.eclipse.rdf4j.repository.RepositoryConnection.prepareTupleQuery方法的一些代码示例,展示了RepositoryConnection.prepareTupleQuery的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RepositoryConnection.prepareTupleQuery方法的具体详情如下:
包路径:org.eclipse.rdf4j.repository.RepositoryConnection
类名称:RepositoryConnection
方法名:prepareTupleQuery

RepositoryConnection.prepareTupleQuery介绍

[英]Prepares a SPARQL query that produces sets of value tuples, that is a SPARQL SELECT query. In case the query contains relative URIs that need to be resolved against an external base URI, one should use #prepareTupleQuery(QueryLanguage,String,String) instead.
[中]

代码示例

代码示例来源:origin: eclipse/rdf4j

/**
 * Prepares a SPARQL query that produces sets of value tuples, that is a SPARQL SELECT query. In case the
 * query contains relative URIs that need to be resolved against an external base URI, one should use
 * {@link #prepareTupleQuery(QueryLanguage, String, String)} instead.
 * 
 * @param query
 *        The query string, in SPARQL syntax.
 * @return a {@link TupleQuery} ready to be evaluated on this {@link RepositoryConnection}.
 * @throws IllegalArgumentException
 *         If the supplied query is not a tuple query.
 * @throws MalformedQueryException
 *         If the supplied query is malformed.
 * @see #prepareTupleQuery(QueryLanguage, String)
 */
public default TupleQuery prepareTupleQuery(String query)
  throws RepositoryException, MalformedQueryException
{
  return prepareTupleQuery(QueryLanguage.SPARQL, query);
}

代码示例来源:origin: org.eclipse.rdf4j/rdf4j-client

/**
 * Prepares a SPARQL query that produces sets of value tuples, that is a SPARQL SELECT query. In case the
 * query contains relative URIs that need to be resolved against an external base URI, one should use
 * {@link #prepareTupleQuery(QueryLanguage, String, String)} instead.
 * 
 * @param query
 *        The query string, in SPARQL syntax.
 * @return a {@link TupleQuery} ready to be evaluated on this {@link RepositoryConnection}.
 * @throws IllegalArgumentException
 *         If the supplied query is not a tuple query.
 * @throws MalformedQueryException
 *         If the supplied query is malformed.
 * @see #prepareTupleQuery(QueryLanguage, String)
 */
public default TupleQuery prepareTupleQuery(String query)
  throws RepositoryException, MalformedQueryException
{
  return prepareTupleQuery(QueryLanguage.SPARQL, query);
}

代码示例来源:origin: eclipse/rdf4j

@Override
public TupleQuery prepareTupleQuery(QueryLanguage ql, String query, String baseURI)
  throws MalformedQueryException, RepositoryException
{
  return getDelegate().prepareTupleQuery(ql, query, baseURI);
}

代码示例来源:origin: org.eclipse.rdf4j/rdf4j-client

@Override
public TupleQuery prepareTupleQuery(QueryLanguage ql, String query, String baseURI)
  throws MalformedQueryException, RepositoryException
{
  return getDelegate().prepareTupleQuery(ql, query, baseURI);
}

代码示例来源:origin: fr.lirmm.graphik/graal-store-rdf4j

private TupleQuery getTermsQuery() throws AtomSetException {
  if (this.termsQuery == null) {
    try {
      this.termsQuery = this.connection.prepareTupleQuery(QueryLanguage.SPARQL, SELECT_TERMS_QUERY);
    } catch (RepositoryException e) {
      throw new AtomSetException(e);
    } catch (MalformedQueryException e) {
      if (LOGGER.isErrorEnabled()) {
        LOGGER.error("Error on SPARQL query syntax", e);
      }
    }
  }
  return this.termsQuery;
}

代码示例来源:origin: fr.lirmm.graphik/graal-store-rdf4j

private TupleQuery getPredicatesQuery() throws AtomSetException {
  if (this.predicatesQuery == null) {
    try {
      this.predicatesQuery = this.connection.prepareTupleQuery(QueryLanguage.SPARQL, SELECT_PREDICATES_QUERY);
    } catch (RepositoryException e) {
      throw new AtomSetException(e);
    } catch (MalformedQueryException e) {
      if (LOGGER.isErrorEnabled()) {
        LOGGER.error("Error on SPARQL query syntax", e);
      }
    }
  }
  return this.predicatesQuery;
}

代码示例来源:origin: org.streampipes/streampipes-storage-rdf4j

public TupleQueryResult executeQuery(String sparqlQuery) throws QueryEvaluationException, RepositoryException, MalformedQueryException {
 RepositoryConnection connection = repository.getConnection();
 TupleQuery tupleQuery;
 TupleQueryResult result;
 tupleQuery = connection.prepareTupleQuery(
     QueryLanguage.SPARQL, sparqlQuery);
 result = tupleQuery.evaluate();
 connection.close();
 return result;
}

代码示例来源:origin: streampipes/streampipes-ce

public TupleQueryResult executeQuery(String sparqlQuery) throws QueryEvaluationException, RepositoryException, MalformedQueryException {
 RepositoryConnection connection = repository.getConnection();
 TupleQuery tupleQuery;
 TupleQueryResult result;
 tupleQuery = connection.prepareTupleQuery(
     QueryLanguage.SPARQL, sparqlQuery);
 result = tupleQuery.evaluate();
 connection.close();
 return result;
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.app/inception-kb

public List<KBHandle> getSubProperty(KnowledgeBase aKB, String aIdentifier, boolean aAll)
  throws QueryEvaluationException
{
  List<KBHandle> resultList = read(aKB, (conn) -> {
    ValueFactory vf = conn.getValueFactory();
    String QUERY = SPARQLQueryStore.getSubProperty(aKB);
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("oItem", vf.createIRI(aIdentifier));
    tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri());
    tupleQuery.setIncludeInferred(true);
    return evaluateListQuery(aKB, tupleQuery, aAll, "s");
  });
  resultList.sort(Comparator.comparing(KBObject::getUiLabel));
  return resultList;
}

代码示例来源:origin: fr.lirmm.graphik/graal-store-rdf4j

@Override
public CloseableIterator<Atom> match(Atom atom) throws AtomSetException {
  
  ConjunctiveQuery query = DefaultConjunctiveQueryFactory.instance().create(atom);
  StringWriter s = new StringWriter();
  SparqlConjunctiveQueryWriter w = new SparqlConjunctiveQueryWriter(s, this.utils.getURIzer());
  try {
    w.write(query);
    w.close();
  } catch (IOException e1) {
    throw new AtomSetException("Error while converting to SPARQL " + atom, e1);
  }
  TupleQuery sparqlQuery = this.connection.prepareTupleQuery(s.toString());
  TupleQueryResult result = sparqlQuery.evaluate();
  return new TupleQueryResultAtomIterator(result, atom, utils);
}

代码示例来源:origin: inception-project/inception

public List<KBHandle> getSubProperty(KnowledgeBase aKB, String aIdentifier, boolean aAll)
  throws QueryEvaluationException
{
  List<KBHandle> resultList = read(aKB, (conn) -> {
    ValueFactory vf = conn.getValueFactory();
    String QUERY = SPARQLQueryStore.getSubProperty(aKB);
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("oItem", vf.createIRI(aIdentifier));
    tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri());
    tupleQuery.setIncludeInferred(true);
    return evaluateListQuery(aKB, tupleQuery, aAll, "s");
  });
  resultList.sort(Comparator.comparing(KBObject::getUiLabel));
  return resultList;
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.app/inception-kb

@Override
public List<KBHandle> listPropertiesRangeValue(KnowledgeBase aKB, String aProperty,
    boolean aIncludeInferred, boolean aAll)
  throws QueryEvaluationException
{
  List<KBHandle> resultList = read(aKB, (conn) -> {
    ValueFactory vf = conn.getValueFactory();
    String QUERY = SPARQLQueryStore.queryForPropertySpecificRange(aKB);
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("aProperty", vf.createIRI(aProperty));
    tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri());
    tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri());
    tupleQuery.setIncludeInferred(aIncludeInferred);
    return evaluateListQuery(aKB, tupleQuery, aAll, "s");
  });
  
  List<KBHandle> resultLabelList = readLabelsWithoutLanguage(aKB, aAll, resultList);
  resultLabelList.sort(Comparator.comparing(KBObject::getUiLabel));
  return resultLabelList;
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.app/inception-kb

@Override
public List<KBHandle> list(KnowledgeBase aKB, IRI aType, boolean aIncludeInferred, boolean aAll,
    int aLimit)
  throws QueryEvaluationException
{
  Set<KBHandle> labels = getSubPropertyLabels(aKB);
  List<KBHandle> resultList = read(aKB, (conn) -> {
    String QUERY = SPARQLQueryStore.listInstances(aKB, labels);
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("pTYPE", aKB.getTypeIri());
    tupleQuery.setBinding("oPROPERTY", aType);
    tupleQuery.setBinding("pLABEL", aKB.getLabelIri());
    tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri());
    tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri());
    tupleQuery.setIncludeInferred(aIncludeInferred);
    return evaluateListQuery(aKB, tupleQuery, aAll, "s");
  });
  resultList.sort(Comparator.comparing(KBObject::getUiLabel));
  return resultList;
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.app/inception-kb

@Override
public List<KBHandle> listProperties(KnowledgeBase aKB, boolean aIncludeInferred, boolean aAll)
  throws QueryEvaluationException
{
  Set<KBHandle> labels = getSubPropertyLabels(aKB);
  List<KBHandle> resultList = read(aKB, (conn) -> {
    String QUERY = SPARQLQueryStore.queryForPropertyList(aKB, labels);
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("pTYPE", aKB.getTypeIri());
    tupleQuery.setBinding("oPROPERTY", aKB.getPropertyTypeIri());
    tupleQuery.setBinding("pLABEL", aKB.getPropertyLabelIri());
    tupleQuery.setBinding("pDESCRIPTION", aKB.getDescriptionIri());
    tupleQuery.setBinding("pSUBPROPERTY", aKB.getSubPropertyIri());
    tupleQuery.setIncludeInferred(aIncludeInferred);
    return evaluateListQuery(aKB, tupleQuery, aAll, "s");
  });
  resultList.sort(Comparator.comparing(KBObject::getUiLabel));
  return resultList;
}

代码示例来源:origin: franzinc/agraph-java-client

public void testBaseURIInQueryString() throws Exception {
  testCon.add(vf.createIRI("urn:test:s1"), vf.createIRI("urn:test:p1"), vf.createIRI("urn:test:o1"));
  TupleQueryResult rs = testCon.prepareTupleQuery(QueryLanguage.SPARQL, "BASE <urn:test:s1> SELECT * { <> ?p ?o }").evaluate();
  try {
    assertTrue(rs.hasNext());
  } finally {
    rs.close();
  }
}

代码示例来源:origin: franzinc/agraph-java-client

public void testBaseURIInParam() throws Exception {
  testCon.add(vf.createIRI("http://example.org/s1"), vf.createIRI("urn:test:p1"), vf.createIRI("urn:test:o1"));
  TupleQueryResult rs = testCon.prepareTupleQuery(QueryLanguage.SPARQL, "SELECT * { <s1> ?p ?o }", "http://example.org").evaluate();
  try {
    assertTrue(rs.hasNext());
  } finally {
    rs.close();
  }
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.app/inception-kb

@Override
public boolean statementsMatchSPO(KnowledgeBase akb, KBStatement mockStatement)
{
  try (RepositoryConnection conn = kbService.getConnection(akb)) {
    ValueFactory vf = conn.getValueFactory();
    String QUERY = "SELECT * WHERE { ?s ?p ?o . }";
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("s", vf.createIRI(mockStatement.getInstance().getIdentifier()));
    tupleQuery.setBinding("p", vf.createIRI(mockStatement.getProperty().getIdentifier()));
    InceptionValueMapper mapper = new InceptionValueMapper();
    tupleQuery.setBinding("o", mapper.mapStatementValue(mockStatement, vf));
    try (TupleQueryResult result = tupleQuery.evaluate()) {
      return result.hasNext();
    }
  }
}

代码示例来源:origin: franzinc/agraph-java-client

public void testBaseURIInParamWithTrailingSlash() throws Exception {
  testCon.add(vf.createIRI("http://example.org/s1"), vf.createIRI("urn:test:p1"), vf.createIRI("urn:test:o1"));
  TupleQueryResult rs = testCon.prepareTupleQuery(QueryLanguage.SPARQL, "SELECT * { <s1> ?p ?o }", "http://example.org/").evaluate();
  try {
    assertTrue(rs.hasNext());
  } finally {
    rs.close();
  }
}

代码示例来源:origin: inception-project/inception

@Override
public boolean statementsMatchSPO(KnowledgeBase akb, KBStatement mockStatement)
{
  try (RepositoryConnection conn = kbService.getConnection(akb)) {
    ValueFactory vf = conn.getValueFactory();
    String QUERY = "SELECT * WHERE { ?s ?p ?o . }";
    TupleQuery tupleQuery = conn.prepareTupleQuery(QueryLanguage.SPARQL, QUERY);
    tupleQuery.setBinding("s", vf.createIRI(mockStatement.getInstance().getIdentifier()));
    tupleQuery.setBinding("p", vf.createIRI(mockStatement.getProperty().getIdentifier()));
    InceptionValueMapper mapper = new InceptionValueMapper();
    tupleQuery.setBinding("o", mapper.mapStatementValue(mockStatement, vf));
    try (TupleQueryResult result = tupleQuery.evaluate()) {
      return result.hasNext();
    }
  }
}

代码示例来源:origin: franzinc/agraph-java-client

private int size(IRI defaultGraph)
    throws RepositoryException, MalformedQueryException, QueryEvaluationException {
  TupleQuery qry = testCon.prepareTupleQuery(QueryLanguage.SPARQL, "SELECT * { ?s ?p ?o }");
  DatasetImpl dataset = new DatasetImpl();
  dataset.addDefaultGraph(defaultGraph);
  qry.setDataset(dataset);
  TupleQueryResult result = qry.evaluate();
  try {
    int count = 0;
    while (result.hasNext()) {
      result.next();
      count++;
    }
    return count;
  } finally {
    result.close();
  }
}

相关文章

微信公众号

最新文章

更多