gpt4 book ai didi

org.eclipse.rdf4j.query.algebra.ZeroLengthPath类的使用及代码示例

转载 作者:知者 更新时间:2024-03-14 10:37:31 26 4
gpt4 key购买 nike

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

ZeroLengthPath介绍

[英]A tuple expression that matches a path of length zero against an RDF graph. They can can be targeted at one of three context scopes: all contexts, null context only, or named contexts only.
[中]将长度为零的路径与RDF图匹配的元组表达式。它们可以针对三个上下文范围中的一个:所有上下文、仅空上下文或仅命名上下文。

代码示例

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

@Override
  public ZeroLengthPath clone() {
    ZeroLengthPath clone = (ZeroLengthPath)super.clone();
    clone.setSubjectVar(getSubjectVar().clone());
    clone.setObjectVar(getObjectVar().clone());

    if (getContextVar() != null) {
      clone.setContextVar(getContextVar().clone());
    }

    return clone;
  }
}

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

@Override
public Set<String> getBindingNames() {
  return getAssuredBindingNames();
}

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

@Override
public boolean equals(Object other) {
  if (other instanceof ZeroLengthPath) {
    ZeroLengthPath o = (ZeroLengthPath)other;
    return subjectVar.equals(o.getSubjectVar()) && objectVar.equals(o.getObjectVar())
        && nullEquals(contextVar, o.getContextVar()) && scope.equals(o.getScope());
  }
  return false;
}

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

/**
 * Creates a zero-length path that matches a subject-, predicate-, object- and context variable against
 * statements from the specified context scope.
 */
public ZeroLengthPath(Scope scope, Var subjVar, Var objVar, Var conVar) {
  setScope(scope);
  setSubjectVar(subjVar);
  setObjectVar(objVar);
  setContextVar(conVar);
}

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

@Override
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement) {
  if (subjectVar == current) {
    setSubjectVar((Var)replacement);
  }
  else if (objectVar == current) {
    setObjectVar((Var)replacement);
  }
  else if (contextVar == current) {
    setContextVar((Var)replacement);
  }
  else {
    super.replaceChildNode(current, replacement);
  }
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.rdf4j/rdf4j-queryalgebra-evaluation

@Override
public void meet(ZeroLengthPath node) {
  Var subjVar = node.getSubjectVar();
  Var objVar = node.getObjectVar();
  if ((subjVar != null && subjVar.hasValue()) || (objVar != null && objVar.hasValue())) {
    // subj = obj
    cardinality = 1.0;
  }
  else {
    // actual cardinality = count(union(subjs, objs))
    // but cost is equivalent to ?s ?p ?o ?c (impl scans all statements)
    // so due to the lower actual cardinality we value it in preference to a fully unbound statement pattern.
    cardinality = getSubjectCardinality(subjVar) * getObjectCardinality(objVar)
        * getContextCardinality(node.getContextVar());
  }
}

代码示例来源:origin: apache/incubator-rya

/**
   * Check whether any solution for the {@link StatementPattern} could be derived from
   * reflexive property inference, and if so, replace the pattern with a union of itself and the
   * reflexive solution.
   */
  @Override
  protected void meetSP(StatementPattern node) throws Exception {
    // Only applies when the predicate is defined and reflexive
    final Var predVar = node.getPredicateVar();
    if (predVar.getValue() != null && inferenceEngine.isReflexiveProperty((IRI) predVar.getValue())) {
      final StatementPattern originalSP = node.clone();
      // The reflexive solution is a ZeroLengthPath between subject and
      // object: they can be matched to one another, whether constants or
      // variables.
      final Var subjVar = node.getSubjectVar();
      final Var objVar = node.getObjectVar();
      final ZeroLengthPath reflexiveSolution = new ZeroLengthPath(subjVar, objVar);
      node.replaceWith(new InferUnion(originalSP, reflexiveSolution));
    }
  }
}

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

public List<Var> getVarList() {
  return getVars(new ArrayList<>(4));
}

代码示例来源:origin: de.tudarmstadt.ukp.inception.rdf4j/rdf4j-queryalgebra-evaluation

cardinalityMap.put(tupleExpr, statistics.getCardinality(tupleExpr));
if (tupleExpr instanceof ZeroLengthPath) {
  varsMap.put(tupleExpr, ((ZeroLengthPath)tupleExpr).getVarList());

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

@Override
public void meet(ZeroLengthPath node) {
  Var subjVar = node.getSubjectVar();
  Var objVar = node.getObjectVar();
  if ((subjVar != null && subjVar.hasValue()) || (objVar != null && objVar.hasValue())) {
    // subj = obj
    cardinality = 1.0;
  }
  else {
    // actual cardinality = count(union(subjs, objs))
    // but cost is equivalent to ?s ?p ?o ?c (impl scans all statements)
    // so due to the lower actual cardinality we value it in preference to a fully unbound statement pattern.
    cardinality = getSubjectCardinality(subjVar) * getObjectCardinality(objVar)
        * getContextCardinality(node.getContextVar());
  }
}

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

return new ZeroLengthPath(scope, subjVar, endVar, contextVar);
return new ZeroLengthPath(scope, subjVar, endVar, contextVar);

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

/**
 * Creates a zero-length path that matches a subject-, predicate-, object- and context variable against
 * statements from the specified context scope.
 */
public ZeroLengthPath(Scope scope, Var subjVar, Var objVar, Var conVar) {
  setScope(scope);
  setSubjectVar(subjVar);
  setObjectVar(objVar);
  setContextVar(conVar);
}

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

@Override
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement) {
  if (subjectVar == current) {
    setSubjectVar((Var)replacement);
  }
  else if (objectVar == current) {
    setObjectVar((Var)replacement);
  }
  else if (contextVar == current) {
    setContextVar((Var)replacement);
  }
  else {
    super.replaceChildNode(current, replacement);
  }
}

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

public List<Var> getVarList() {
  return getVars(new ArrayList<Var>(4));
}

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

cardinalityMap.put(tupleExpr, statistics.getCardinality(tupleExpr));
if (tupleExpr instanceof ZeroLengthPath) {
  varsMap.put(tupleExpr, ((ZeroLengthPath)tupleExpr).getVarList());

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

public CloseableIteration<BindingSet, QueryEvaluationException> evaluate(ZeroLengthPath zlp,
    final BindingSet bindings)
  throws QueryEvaluationException
{
  final Var subjectVar = zlp.getSubjectVar();
  final Var objVar = zlp.getObjectVar();
  final Var contextVar = zlp.getContextVar();
  Value subj = null;
  try {
    subj = evaluate(subjectVar, bindings);
  }
  catch (QueryEvaluationException e) {
  }
  Value obj = null;
  try {
    obj = evaluate(objVar, bindings);
  }
  catch (QueryEvaluationException e) {
  }
  if (subj != null && obj != null) {
    if (!subj.equals(obj)) {
      return new EmptyIteration<BindingSet, QueryEvaluationException>();
    }
  }
  return getZeroLengthPathIterator(bindings, subjectVar, objVar, contextVar, subj, obj);
}

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

@Override
  public ZeroLengthPath clone() {
    ZeroLengthPath clone = (ZeroLengthPath)super.clone();
    clone.setSubjectVar(getSubjectVar().clone());
    clone.setObjectVar(getObjectVar().clone());

    if (getContextVar() != null) {
      clone.setContextVar(getContextVar().clone());
    }

    return clone;
  }
}

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

@Override
public boolean equals(Object other) {
  if (other instanceof ZeroLengthPath) {
    ZeroLengthPath o = (ZeroLengthPath)other;
    return subjectVar.equals(o.getSubjectVar()) && objectVar.equals(o.getObjectVar())
        && nullEquals(contextVar, o.getContextVar()) && scope.equals(o.getScope());
  }
  return false;
}

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

return new ZeroLengthPath(scope, subjVar, endVar, contextVar);
return new ZeroLengthPath(scope, subjVar, endVar, contextVar);

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

public Set<String> getBindingNames() {
  return getAssuredBindingNames();
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com