fr.inria.corese.kgram.core.Query.getSelect()方法的使用及代码示例

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

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

Query.getSelect介绍

[英]PRAGMA: do not use at compile time (use getSelectFun())
[中]PRAGMA:编译时不要使用(使用getSelectFun())

代码示例

代码示例来源:origin: fr.inria.corese/kgram

  1. public Mappings distinct(List<Node> list) {
  2. Mappings map = distinct(query.getSelect(), list);
  3. //map.setNodeList(list);
  4. return map;
  5. }

代码示例来源:origin: fr.inria.corese/kgram

  1. public Mappings distinctAll() {
  2. List<Node> list = query.getSelectNodes();
  3. if (list.isEmpty()) {
  4. list = query.getSelect();
  5. }
  6. if (list.isEmpty()) {
  7. list = getSelect();
  8. }
  9. return distinct(list, list);
  10. }

代码示例来源:origin: fr.inria.corese/kgram

  1. void initiate(Query q, boolean b, boolean all){
  2. this.query = q;
  3. isDistinct = b;
  4. isListGroup = q.isListGroup();
  5. setSelect(q.getSelect());
  6. if (isDistinct) {
  7. if (all) {
  8. List<Node> list = q.getSelectNodes();
  9. if (list.isEmpty()){
  10. distinct = group(q.getSelectFun());
  11. }
  12. else {
  13. distinct = group(q.toExp(list));
  14. }
  15. }
  16. else {
  17. distinct = group(q.getSelectFun());
  18. }
  19. distinct.setDistinct(true);
  20. distinct.setDuplicate(q.isDistribute());
  21. }
  22. }

代码示例来源:origin: fr.inria.corese/kgram

  1. subNode = subQuery.getSelect().get(i);
  2. outNode = qq.getOuterNodeSelf(subNode);
  3. Node value = res.getNode(subNode);

代码示例来源:origin: Wimmics/corese

  1. void setQuery(Query q){
  2. query = q;
  3. select = new Vector<String> ();
  4. for (Node node : q.getSelect()){
  5. select.add(node.getLabel());
  6. }
  7. }

代码示例来源:origin: fr.inria.corese/kgram

  1. public List<String> getVariables() {
  2. List<String> list = new ArrayList<String>();
  3. for (Node node : getSelect()) {
  4. list.add(node.getLabel());
  5. }
  6. return list;
  7. }

代码示例来源:origin: Wimmics/corese

  1. void setQuery(Query q){
  2. query = q;
  3. select = new ArrayList<String> ();
  4. for (Node node : q.getSelect()){
  5. select.add(node.getLabel());
  6. }
  7. }

代码示例来源:origin: fr.inria.corese/kgram

  1. /**
  2. * Project on select variables of query Modify this Mapping
  3. */
  4. public void project(Query q) {
  5. ArrayList<Node> lqNodes = new ArrayList<Node>();
  6. ArrayList<Node> ltNodes = new ArrayList<Node>();
  7. for (Node qNode : q.getSelect()) {
  8. Node tNode = getNode(qNode);
  9. if (tNode != null) {
  10. lqNodes.add(qNode);
  11. ltNodes.add(tNode);
  12. }
  13. }
  14. init(lqNodes, ltNodes);
  15. }

代码示例来源:origin: Wimmics/corese

  1. for (Node qv : q.getSelect()) {
  2. sb.append(qv.getLabel());
  3. sb.append(SPACE);
  4. for (Node var : q.getSelect()) {
  5. Node val = m.getNode(var);
  6. if (val == null) {

代码示例来源:origin: Wimmics/corese

  1. void body() {
  2. Node resultVariable = graph.addProperty(RESULTVARIABLE);
  3. for (Node n : query.getSelect()) {
  4. graph.addEdge(root, resultVariable, getVariable(n));
  5. }
  6. int i = 0;
  7. for (Mapping m : map) {
  8. process(m, i++);
  9. }
  10. }

代码示例来源:origin: fr.inria.corese/kgram

  1. /**
  2. * pop select nodes of sub query
  3. */
  4. private void pop(Query subQuery, Mapping ans) {
  5. Memory env = memory;
  6. Query qq = query;
  7. for (Node subNode : subQuery.getSelect()) {
  8. if (ans.isBound(subNode)) {
  9. Node outNode = qq.getOuterNodeSelf(subNode);
  10. env.pop(outNode);
  11. env.popPath(outNode);
  12. }
  13. }
  14. }

代码示例来源:origin: Wimmics/corese

  1. void body(Serializer sb) {
  2. Query q = map.getQuery();
  3. for (Node n : q.getSelect()) {
  4. sb.append("rs:resultVariable '", getName(n));
  5. sb.appendPNL("'");
  6. }
  7. int i = 0;
  8. for (Mapping m : map) {
  9. process(m, sb, i++);
  10. }
  11. }

代码示例来源:origin: fr.inria.corese/kgram

  1. /**
  2. * Is one node of subquery select already bound in memory ?
  3. */
  4. private boolean isBound(Query subQuery, Memory env) {
  5. Query qq = query;
  6. for (Node subNode : subQuery.getSelect()) {
  7. if (env.isBound(subNode)){
  8. return true;
  9. }
  10. // get outer node:
  11. Node outNode = qq.getOuterNodeSelf(subNode);
  12. if (outNode != null && env.isBound(outNode)) {
  13. return true;
  14. }
  15. if (env.getBind() != null && env.getBind().isBound(subNode.getLabel())){
  16. return true;
  17. }
  18. }
  19. return false;
  20. }

代码示例来源:origin: Wimmics/corese

  1. void fillTable(Mappings map) {
  2. Query q = map.getQuery();
  3. List<fr.inria.corese.kgram.api.core.Node> vars = q.getSelect();
  4. if (q.isUpdate() && map.size() > 0){
  5. vars = map.get(0).getQueryNodeList();

代码示例来源:origin: fr.inria.corese/kgram

  1. for (Node subNode : sub.getSelect()) {

代码示例来源:origin: fr.inria.corese/kgram

  1. int index = memory.getIndex(query.getSelect());
  2. if (index != -1) {
  3. backtrack = index;

代码示例来源:origin: Wimmics/corese

  1. void process(Mapping m, Serializer sb, int i){
  2. Query q = map.getQuery();
  3. sb.appendNL("rs:solution [");
  4. sb.appendPNL("rs:index ", i);
  5. for (Node n : q.getSelect()){
  6. if (m.getNode(n) != null){
  7. sb.appendNL("rs:binding [");
  8. sb.append("rs:variable '", getName(n));
  9. sb.appendPNL("'");
  10. sb.appendNL("rs:value ", m.getValue(n));
  11. sb.appendPNL("]");
  12. }
  13. }
  14. sb.appendPNL("]");
  15. }

代码示例来源:origin: Wimmics/corese

  1. void process(Mapping m, int i){
  2. Node solution = graph.addProperty(SOLUTION);
  3. Node index = graph.addProperty(INDEX);
  4. Node binding = graph.addProperty(BINDING);
  5. Node variable = graph.addProperty(VARIABLE);
  6. Node value = graph.addProperty(VALUE);
  7. Node sol = graph.addBlank(bnid());
  8. graph.addEdge(root, solution, sol);
  9. graph.addEdge(sol, index, graph.addLiteral(i));
  10. for (Node n : query.getSelect()){
  11. if (m.getNode(n) != null){
  12. Node bind = graph.addBlank(bnid());
  13. graph.addEdge(sol, binding, bind);
  14. graph.addEdge(bind, variable, getVariable(n));
  15. graph.addEdge(bind, value, graph.addNode((IDatatype) m.getValue(n)));
  16. }
  17. }
  18. }

相关文章