All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.weaverplatform.sp4rql.model.restriction.Sp4rqlRestriction Maven / Gradle / Ivy

package com.weaverplatform.sp4rql.model.restriction;

import com.weaverplatform.sp4rql.model.scope.Sp4rqlScope;
import com.weaverplatform.sp4rql.model.token.VariableToken;
import com.weaverplatform.util.IndentStringBuilder;

import java.util.HashSet;

/*
 * A restriction is an atomic part of the query. It represents a way of narrowing down
 * a solution of elements based on the tokens it gets as input.
 *             +-------------+
 *   tokens -> | restriction | -> solutions
 *             +-------------+
 */
public interface Sp4rqlRestriction extends IndentStringBuilder.Serializable {

  void setAlias(String alias);

  String getAlias();

  void setInScope(Sp4rqlScope scope);

  Sp4rqlScope inScope();

  HashSet getExposedVariables();

  void buildString(IndentStringBuilder builder);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy