当前位置: 首页>>代码示例>>Java>>正文


Java BindingHashMap类代码示例

本文整理汇总了Java中org.apache.jena.sparql.engine.binding.BindingHashMap的典型用法代码示例。如果您正苦于以下问题:Java BindingHashMap类的具体用法?Java BindingHashMap怎么用?Java BindingHashMap使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BindingHashMap类属于org.apache.jena.sparql.engine.binding包,在下文中一共展示了BindingHashMap类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: visit

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
@Override
public void visit(ElementData el) {
    final NodeExprNormalizer nenzer = new NodeExprNormalizer();
    final ElementData nzed = new ElementData();
    final List<Var> vars = el.getVars();
    vars.forEach((v) -> {
        nzed.add(v);
    });
    el.getRows().forEach((b) -> {
        final BindingHashMap binding = new BindingHashMap();
        vars.forEach((v) -> {
            final Node n = b.get(v);
            if (n != null) {
                n.visitWith(nenzer);
                binding.add(v, nenzer.getResult());
            }
            nzed.add(binding);
        });
    });
    endVisit(nzed, nenzer);
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:22,代码来源:ElementNormalizer.java

示例2: BindingHashMapOverwrite

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
/**
     * Constructs a new binding from a query solution.
     *
     * @param binding -
     */
    public BindingHashMapOverwrite(final QuerySolution binding) {
        var = null;
        node = null;
        if (binding == null) {
            parent = null;
        } else {
            final BindingHashMap p = new BindingHashMap();
            for (Iterator<String> it = binding.varNames(); it.hasNext();) {
                final String varName = it.next();
                if (binding.get(varName) != null) {
                    p.add(Var.alloc(varName), binding.get(varName).asNode());
                }
            }
            parent = p;
        }
//        LOG.trace("New binding #" + System.identityHashCode(this) + " copies " + binding);
    }
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:23,代码来源:BindingHashMapOverwrite.java

示例3: asBinding

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
/**
 * Turns a QuerySolution into a Binding. 
 * @param map  the input QuerySolution
 * @return a Binding or null if the input is null
 */
public static Binding asBinding(final QuerySolution map) {
	if(map != null) {
		BindingHashMap result = new BindingHashMap();
		Iterator<String> varNames = map.varNames();
		while(varNames.hasNext()) {
			String varName = varNames.next();
			RDFNode node = map.get(varName);
			if(node != null) {
				result.add(Var.alloc(varName), node.asNode());
			}
		}
		return result;
	}
	else {
		return null;
	}
}
 
开发者ID:TopQuadrant,项目名称:shacl,代码行数:23,代码来源:JenaUtil.java

示例4: mergeValues

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
/**
 * merge values in qvalues.
 *
 * @param qvariables
 * @param qvalues
 * @param variables
 * @param values
 */
private void mergeValues(
        final List<Var> qvariables,
        final List<Binding> qvalues,
        final List<Var> variables,
        final List<BindingHashMapOverwrite> values) {

    // check that no variable is duplicate in variables and qvariables
    // brute force, ok if not many variables.
    checkNotContainsSome(qvariables, variables);
    checkNotContainsSome(variables, qvariables);

    // merge variables
    qvariables.addAll(variables);

    // deal with empty cases
    if (values.isEmpty() && qvalues.isEmpty()) {
        return;
    }
    // ensure not empty
    ensureNotEmpty(qvariables, qvalues);
    ensureNotEmpty(variables, values);

    // perform the merge
    int j = qvalues.size();
    for (int i = 0; i < j; i++) {
        Binding qb = qvalues.remove(0);
        for (Binding b : values) {
            BindingHashMap newqb = new BindingHashMap();
            newqb.addAll(qb);
            newqb.addAll(b);
            qvalues.add(newqb);
        }
    }
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:43,代码来源:SelectPlanImpl.java

示例5: ensureNotEmpty

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
/**
 * Utility function. ensures there is at least a row of null values in a
 * values block.
 *
 * @param <T> a sub class of Binding
 * @param variables the values variables
 * @param values the values bindings
 */
protected final <T extends Binding>  void ensureNotEmpty(
        final List<Var> variables,
        final List<T> values) {
    Objects.requireNonNull(variables);
    Objects.requireNonNull(values);
    if (values.isEmpty()) {
        final BindingHashMap map = new BindingHashMap();
        values.add((T) new BindingHashMapOverwrite(map, null, null));
    }
}
 
开发者ID:thesmartenergy,项目名称:sparql-generate,代码行数:19,代码来源:PlanBase.java

示例6: toBinding

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
private Binding toBinding(String[] row) {
	BindingHashMap result = new BindingHashMap();
	for (int i = 0; i < row.length; i++) {
		if (isUnboundValue(row[i]))
			continue;
		result.add(getVar(i), NodeFactory.createLiteral(sanitizeString(row[i])));
	}
	// Add current row number as ?ROWNUM
	result.add(TarqlQuery.ROWNUM, NodeFactory.createLiteral(
			Integer.toString(rownum), XSDDatatype.XSDinteger));
	return result;
}
 
开发者ID:tarql,项目名称:tarql,代码行数:13,代码来源:CSVParser.java

示例7: binding

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
public static Binding binding(List<Var> header, String... values) {
	if (header.size() != values.length) {
		throw new IllegalArgumentException(
				"header and values must have same length: " + 
						header + ", " + Arrays.toString(values));
	}
	BindingHashMap result = new BindingHashMap();
	for (int i = 0; i < header.size(); i++) {
		result.add(header.get(i), NodeFactoryExtra.parseNode(values[i]));
	}
	return result;
}
 
开发者ID:tarql,项目名称:tarql,代码行数:13,代码来源:Helpers.java

示例8: removePseudoVars

import org.apache.jena.sparql.engine.binding.BindingHashMap; //导入依赖的package包/类
public static Binding removePseudoVars(Binding binding) {
	BindingHashMap result = new BindingHashMap();
	Iterator<Var> it = binding.vars();
	while (it.hasNext()) {
		Var var = it.next();
		if (var.equals(TarqlQuery.ROWNUM)) continue;
		result.add(var, binding.get(var));
	}
	return result;
}
 
开发者ID:tarql,项目名称:tarql,代码行数:11,代码来源:Helpers.java


注:本文中的org.apache.jena.sparql.engine.binding.BindingHashMap类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。