org.apache.jena.query.Query.addResultVar()方法的使用及代码示例

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

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

Query.addResultVar介绍

[英]Add a projection variable to a SELECT query
[中]将投影变量添加到SELECT查询

代码示例

代码示例来源:origin: apache/jena

  1. /** Add a collection of projection variables to a SELECT query */
  2. public void addProjectVars(Collection<?> vars)
  3. {
  4. for ( Object obj : vars )
  5. {
  6. if ( obj instanceof String )
  7. {
  8. this.addResultVar( (String) obj );
  9. continue;
  10. }
  11. if ( obj instanceof Var )
  12. {
  13. this.addResultVar( (Var) obj );
  14. continue;
  15. }
  16. throw new QueryException( "Not a variable or variable name: " + obj );
  17. }
  18. resultVarsSet = true ;
  19. }

代码示例来源:origin: apache/jena

  1. /**
  2. * Add an Expression as variable to the select.
  3. *
  4. * @param expr
  5. * The expression to add.
  6. * @param var
  7. * The variable to add.
  8. */
  9. public void addVar(Expr expr, Var var) {
  10. if (expr == null) {
  11. throw new IllegalArgumentException("expr may not be null");
  12. }
  13. if (var == null) {
  14. throw new IllegalArgumentException("var may not be null");
  15. }
  16. query.setQueryResultStar(false);
  17. query.addResultVar(var, expr);
  18. aggHandler.add( expr, var );
  19. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. /**
  2. * Add an Expression as variable to the select.
  3. *
  4. * @param expr
  5. * The expression to add.
  6. * @param var
  7. * The variable to add.
  8. */
  9. public void addVar(Expr expr, Var var) {
  10. if (expr == null) {
  11. throw new IllegalArgumentException("expr may not be null");
  12. }
  13. if (var == null) {
  14. throw new IllegalArgumentException("var may not be null");
  15. }
  16. query.setQueryResultStar(false);
  17. query.addResultVar(var, expr);
  18. aggHandler.add( expr, var );
  19. }

代码示例来源:origin: apache/jena

  1. /**
  2. * Add a variable to the select. If the variable is <code>null</code> the
  3. * variables are set to star.
  4. *
  5. * @param var
  6. * The variable to add.
  7. */
  8. public void addVar(Var var) {
  9. if (var == null) {
  10. query.setQueryResultStar(true);
  11. } else {
  12. query.setQueryResultStar(false);
  13. query.addResultVar(var);
  14. }
  15. }

代码示例来源:origin: org.apache.jena/jena-querybuilder

  1. /**
  2. * Add a variable to the select. If the variable is <code>null</code> the
  3. * variables are set to star.
  4. *
  5. * @param var
  6. * The variable to add.
  7. */
  8. public void addVar(Var var) {
  9. if (var == null) {
  10. query.setQueryResultStar(true);
  11. } else {
  12. query.setQueryResultStar(false);
  13. query.addResultVar(var);
  14. }
  15. }

代码示例来源:origin: apache/jena

  1. @Override
  2. public void visitSelectResultForm(Query query) {
  3. newQuery.setQuerySelectType();
  4. newQuery.setDistinct(query.isDistinct());
  5. VarExprList x = query.getProject();
  6. for (Var v : x.getVars()) {
  7. Expr expr = x.getExpr(v);
  8. if (expr == null)
  9. newQuery.addResultVar(v);
  10. else
  11. newQuery.addResultVar(v, expr);
  12. }
  13. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. public static Query asQuery(Op op, Dialect dialect)
  2. {
  3. Query query = QueryFactory.make() ;
  4. Converter v = new Converter(query, dialect) ;
  5. //OpWalker.walk(op, v) ;
  6. op.visit(v) ;
  7. List<Var> vars = v.projectVars;
  8. query.setQueryResultStar(vars.isEmpty()); // SELECT * unless we are projecting
  9. Iterator<Var> iter = vars.iterator();
  10. for (; iter.hasNext();) {
  11. Var var = iter.next();
  12. if (v.varExpression.containsKey(var))
  13. query.addResultVar(var, v.varExpression.get(var));
  14. else
  15. query.addResultVar(var);
  16. }
  17. ElementGroup eg = v.currentGroup ;
  18. query.setQueryPattern(eg) ;
  19. query.setQuerySelectType() ;
  20. query.setResultVars() ;
  21. return query ;
  22. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. @Override
  2. public void visitSelectResultForm(Query query) {
  3. newQuery.setQuerySelectType() ;
  4. newQuery.setDistinct(query.isDistinct()) ;
  5. VarExprList x = query.getProject() ;
  6. for (Var v : x.getVars()) {
  7. Expr expr = x.getExpr(v) ;
  8. if ( expr == null )
  9. newQuery.addResultVar(v) ;
  10. else
  11. newQuery.addResultVar(v, expr) ;
  12. }
  13. }

代码示例来源:origin: apache/jena

  1. private void findAndAddNamedVars()
  2. {
  3. Iterator<Var> varIter = null ;
  4. if ( hasGroupBy() )
  5. varIter = groupVars.getVars().iterator() ;
  6. else
  7. {
  8. // Binding variables -- in patterns, not in filters and not in EXISTS
  9. LinkedHashSet<Var> queryVars = new LinkedHashSet<>() ;
  10. PatternVars.vars(queryVars, this.getQueryPattern()) ;
  11. if ( this.hasValues() )
  12. queryVars.addAll(getValuesVariables()) ;
  13. // if ( this.hasValues() )
  14. // queryVars.addAll(getValuesVariables()) ;
  15. varIter = queryVars.iterator() ;
  16. }
  17. // All query variables, including ones from bNodes in the query.
  18. for ( ; varIter.hasNext() ; )
  19. {
  20. Object obj = varIter.next() ;
  21. //Var var = (Var)iter.next() ;
  22. Var var = (Var)obj ;
  23. if ( var.isNamedVar() )
  24. addResultVar(var) ;
  25. }
  26. }

代码示例来源:origin: apache/jena

  1. public void addDescribeNode(Node node)
  2. {
  3. if ( node.isVariable() ) { addResultVar(node) ; return ; }
  4. if ( node.isURI() || node.isBlank() )
  5. {
  6. if ( !resultNodes.contains(node) )
  7. resultNodes.add(node);
  8. return ;
  9. }
  10. if ( node.isLiteral() )
  11. throw new QueryException("Result node is a literal: "+FmtUtils.stringForNode(node)) ;
  12. throw new QueryException("Result node not recognized: "+node) ;
  13. }

代码示例来源:origin: org.trellisldp/trellis-triplestore

  1. /**
  2. * This code is equivalent to the SPARQL query below.
  3. *
  4. * <p><pre><code>
  5. * SELECT ?subject ?predicate ?object
  6. * WHERE { GRAPH fromGraphName { ?subject ?predicate ?object } }
  7. * </code></pre>
  8. */
  9. private Stream<Quad> fetchAllFromGraph(final String fromGraphName, final IRI toGraphName) {
  10. final Query q = new Query();
  11. q.setQuerySelectType();
  12. q.addResultVar(SUBJECT);
  13. q.addResultVar(PREDICATE);
  14. q.addResultVar(OBJECT);
  15. final ElementPathBlock epb = new ElementPathBlock();
  16. epb.addTriple(create(SUBJECT, PREDICATE, OBJECT));
  17. final ElementGroup elg = new ElementGroup();
  18. elg.addElement(new ElementNamedGraph(createURI(fromGraphName), epb));
  19. q.setQueryPattern(elg);
  20. final Stream.Builder<Quad> builder = builder();
  21. rdfConnection.querySelect(q, qs -> builder.accept(rdf.createQuad(toGraphName,
  22. getSubject(qs), getPredicate(qs), getObject(qs))));
  23. return builder.build();
  24. }

代码示例来源:origin: trellis-ldp/trellis

  1. /**
  2. * This code is equivalent to the SPARQL query below.
  3. *
  4. * <p><pre><code>
  5. * SELECT ?subject ?predicate ?object
  6. * WHERE { GRAPH fromGraphName { ?subject ?predicate ?object } }
  7. * </code></pre>
  8. */
  9. private Stream<Quad> fetchAllFromGraph(final String fromGraphName, final IRI toGraphName) {
  10. final Query q = new Query();
  11. q.setQuerySelectType();
  12. q.addResultVar(SUBJECT);
  13. q.addResultVar(PREDICATE);
  14. q.addResultVar(OBJECT);
  15. final ElementPathBlock epb = new ElementPathBlock();
  16. epb.addTriple(create(SUBJECT, PREDICATE, OBJECT));
  17. final ElementGroup elg = new ElementGroup();
  18. elg.addElement(new ElementNamedGraph(createURI(fromGraphName), epb));
  19. q.setQueryPattern(elg);
  20. final Stream.Builder<Quad> builder = builder();
  21. rdfConnection.querySelect(q, qs -> builder.accept(rdf.createQuad(toGraphName,
  22. getSubject(qs), getPredicate(qs), getObject(qs))));
  23. return builder.build();
  24. }

代码示例来源:origin: apache/jena

  1. case VAR2:
  2. o = Var();
  3. getQuery().addResultVar((Var)o) ; getQuery().addJsonMapping(s, o) ;
  4. break;
  5. case STRING_LITERAL1:
  6. case STRING_LITERAL_LONG2:
  7. o = RDFLiteral();
  8. getQuery().addResultVar(s, NodeValue.makeNode(o)) ; getQuery().addJsonMapping(s, o) ;
  9. break;
  10. case INTEGER:
  11. case DOUBLE_NEGATIVE:
  12. o = NumericLiteral();
  13. getQuery().addResultVar(s, NodeValue.makeNode(o)) ; getQuery().addJsonMapping(s, o) ;
  14. break;
  15. case TRUE:
  16. case FALSE:
  17. o = BooleanLiteral();
  18. getQuery().addResultVar(s, NodeValue.makeNode(o)) ; getQuery().addJsonMapping(s, o) ;
  19. break;
  20. default:

代码示例来源:origin: org.trellisldp/trellis-triplestore

  1. /**
  2. * This code is equivalent to the SPARQL query below.
  3. *
  4. * <p><pre><code>
  5. * SELECT ?object
  6. * WHERE {
  7. * GRAPH trellis:PreferServerManaged { ?object dc:isPartOf IDENTIFIER }
  8. * }
  9. * </code></pre>
  10. */
  11. private Stream<Quad> fetchContainmentQuads() {
  12. if (getInteractionModel().getIRIString().endsWith("Container")) {
  13. final Query q = new Query();
  14. q.setQuerySelectType();
  15. q.addResultVar(OBJECT);
  16. final ElementPathBlock epb = new ElementPathBlock();
  17. epb.addTriple(create(OBJECT, rdf.asJenaNode(DC.isPartOf), rdf.asJenaNode(identifier)));
  18. final ElementNamedGraph ng = new ElementNamedGraph(rdf.asJenaNode(Trellis.PreferServerManaged), epb);
  19. final ElementGroup elg = new ElementGroup();
  20. elg.addElement(ng);
  21. q.setQueryPattern(elg);
  22. final Stream.Builder<Quad> builder = builder();
  23. rdfConnection.querySelect(q, qs -> builder.accept(rdf.createQuad(LDP.PreferContainment,
  24. identifier, LDP.contains, getObject(qs))));
  25. return builder.build();
  26. }
  27. return Stream.empty();
  28. }

代码示例来源:origin: trellis-ldp/trellis

  1. /**
  2. * This code is equivalent to the SPARQL query below.
  3. *
  4. * <p><pre><code>
  5. * SELECT ?object
  6. * WHERE {
  7. * GRAPH trellis:PreferServerManaged { ?object dc:isPartOf IDENTIFIER }
  8. * }
  9. * </code></pre>
  10. */
  11. private Stream<Quad> fetchContainmentQuads() {
  12. if (getInteractionModel().getIRIString().endsWith("Container")) {
  13. final Query q = new Query();
  14. q.setQuerySelectType();
  15. q.addResultVar(OBJECT);
  16. final ElementPathBlock epb = new ElementPathBlock();
  17. epb.addTriple(create(OBJECT, rdf.asJenaNode(DC.isPartOf), rdf.asJenaNode(identifier)));
  18. final ElementNamedGraph ng = new ElementNamedGraph(rdf.asJenaNode(Trellis.PreferServerManaged), epb);
  19. final ElementGroup elg = new ElementGroup();
  20. elg.addElement(ng);
  21. q.setQueryPattern(elg);
  22. final Stream.Builder<Quad> builder = builder();
  23. rdfConnection.querySelect(q, qs -> builder.accept(rdf.createQuad(LDP.PreferContainment,
  24. identifier, LDP.contains, getObject(qs))));
  25. return builder.build();
  26. }
  27. return Stream.empty();
  28. }

代码示例来源:origin: SmartDataAnalytics/jena-sparql-api

  1. q.setResultVars();
  2. for(String v : query.getResultVars()) {
  3. q.addResultVar(v);

代码示例来源:origin: org.trellisldp/trellis-triplestore

  1. final Query q = new Query();
  2. q.setQuerySelectType();
  3. q.addResultVar(SUBJECT);
  4. q.addResultVar(PREDICATE);
  5. q.addResultVar(OBJECT);
  6. final Var s = Var.alloc("s");

代码示例来源:origin: trellis-ldp/trellis

  1. final Query q = new Query();
  2. q.setQuerySelectType();
  3. q.addResultVar(PREDICATE);
  4. q.addResultVar(OBJECT);

代码示例来源:origin: org.trellisldp/trellis-triplestore

  1. final Query q = new Query();
  2. q.setQuerySelectType();
  3. q.addResultVar(PREDICATE);
  4. q.addResultVar(OBJECT);

代码示例来源:origin: SmartDataAnalytics/DL-Learner

  1. @Override
  2. public Query toQuery(){
  3. Query query = QueryFactory.make();
  4. query.setQuerySelectType();
  5. query.addResultVar(NodeFactory.createVariable("x0"));
  6. query.setDistinct(true);
  7. query.setPrefix("rdf", "http://www.w3.org/1999/02/22-rdf-syntax-ns#");
  8. query.setPrefix("rdfs", "http://www.w3.org/2000/01/rdf-schema#");
  9. query.setPrefix("yago", "http://dbpedia.org/class/yago/");
  10. query.setPrefix("cyc", "http://sw.opencyc.org/2008/06/10/concept/");
  11. query.setPrefix("owl", "http://www.w3.org/2002/07/owl#");
  12. query.setPrefix("dbp", "http://dbpedia.org/property/");
  13. query.setPrefix("dbo", "http://dbpedia.org/ontology/");
  14. query.setPrefix("dbr", "http://dbpedia.org/resource/");
  15. query.setPrefix("dc", "http://purl.org/dc/terms/");
  16. ElementGroup whereClause = new ElementGroup();
  17. ElementTriplesBlock triples = new ElementTriplesBlock();
  18. for(Triple t : buildTriples(this)){
  19. triples.addTriple(t);
  20. }
  21. whereClause.addElement(triples);
  22. query.setQueryPattern(whereClause);
  23. return query;
  24. }

相关文章