public abstract class Atom extends AtomicBase
AtomicBase extension defining specialised functionalities.
| Modifier | Constructor and Description |
|---|---|
protected |
Atom(Atom a) |
protected |
Atom(VarPatternAdmin pattern,
ReasonerQuery par) |
containsVar, copy, getCombinedPattern, getParentQuery, getPattern, getVarName, getVarNames, isUserDefined, setParentQuery, toString, txclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitequivalenceHashCode, isAllowedToFormRuleHead, isEquivalent, isPredicate, isRelation, isResource, isSelectable, isType, validateOntologicallyprotected Atom(VarPatternAdmin pattern, ReasonerQuery par)
protected Atom(Atom a)
public RelationshipAtom toRelationshipAtom()
public boolean isAtom()
public boolean isRuleResolvable()
public boolean isRecursive()
public Set<VarProperty> getVarProperties()
protected java.util.stream.Stream<IdPredicate> getPartialSubstitutions()
public Set<Var> getRoleExpansionVariables()
public int computePriority(Set<Var> subbedVars)
subbedVars - variables having a substitutionpublic int baseResolutionPriority()
protected abstract boolean isRuleApplicableViaAtom(Atom headAtom)
public java.util.stream.Stream<InferenceRule> getApplicableRules()
public boolean requiresMaterialisation()
public boolean requiresRoleExpansion()
public abstract SchemaConcept getSchemaConcept()
public abstract ConceptId getTypeId()
public abstract Var getPredicateVariable()
public java.util.stream.Stream<Predicate> getPredicates()
public <T extends Predicate> java.util.stream.Stream<T> getPredicates(Class<T> type)
@Nullable public IdPredicate getIdPredicate(Var var)
var - variable of interest@Nullable public <T extends Predicate> T getPredicate(Var var, Class<T> type)
T - predicate type genericvar - variable the predicate refers totype - predicate typepublic abstract java.util.stream.Stream<Predicate> getInnerPredicates()
public <T extends Predicate> java.util.stream.Stream<T> getInnerPredicates(Class<T> type)
public java.util.stream.Stream<TypeAtom> getTypeConstraints()
public <T extends Atomic> java.util.stream.Stream<T> getNeighbours(Class<T> type)
public java.util.stream.Stream<Atomic> getNonSelectableConstraints()
public Set<TypeAtom> getSpecificTypeConstraints()
public Atom inferTypes()
inferTypes in interface AtomicinferTypes in class AtomicBasepublic List<Atom> atomOptions(Answer sub)
sub - partial substitutionpublic Atom addType(SchemaConcept type)
public Atom rewriteToUserDefined(Atom parentAtom)
parentAtom - parent atom that triggers rewritepublic abstract Unifier getUnifier(Atom parentAtom)
parentAtom - atom to be unified withpublic MultiUnifier getMultiUnifier(Atom parentAtom, boolean exact)
parentAtom - atom to be unified withexact - flag indicating whether unification should be exactCopyright © 2017 Grakn Labs Ltd. All rights reserved.