Code Search for Developers
 
 
  

KBShardFacadeBean.java from Texai at Krugle


Show KBShardFacadeBean.java syntax highlighted

/*
 * KBShardFacadeBean.java
 *
 * Created on May 2, 2007, 12:30 PM
 *
 * Description: Provides a single interface to wrap TermFinderFacadeLocal, TermDeleterFacadeLocal, TermDefinitionAccessorLocal,
 * AssociationFinderLocal and AssociationEditorLocal with respect to a single KB shard.
 *
 * Copyright (C) May 2, 2007 Stephen L. Reed.
 *
 * This program is free software; you can redistribute it and/or modify it under the terms
 * of the GNU General Public License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along with this program;
 * if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

package org.texai.kb.ejb.session.shared;

import com.sleepycat.persist.EntityStore;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import org.texai.kb.entity.AbstractReifiedTerm;
import org.texai.kb.entity.AbstractTerm;
import org.texai.kb.entity.AtomicTerm;
import org.texai.kb.entity.BinaryGAF;
import org.texai.kb.entity.Formula;
import org.texai.kb.entity.LocalTermIdReference;
import org.texai.kb.entity.NonAtomicTerm;
import org.texai.kb.entity.PByteArray;
import org.texai.kb.entity.PDate;
import org.texai.kb.entity.PDouble;
import org.texai.kb.entity.PLong;
import org.texai.kb.entity.PString;
import org.texai.kb.entity.PVariable;
import org.texai.kb.entity.QuaternaryGAF;
import org.texai.kb.entity.QuintaryGAF;
import org.texai.kb.entity.RemoteTermIdReference;
import org.texai.kb.entity.Rule;
import org.texai.kb.entity.Symbol;
import org.texai.kb.entity.TernaryGAF;
import org.texai.kb.entity.UnaryGAF;
import org.texai.util.TexaiException;

/**
 *
 * @author reed
 */
public class KBShardFacadeBean implements KBPartitionFacadeLocal {
  
  /** the term finder facade */
  private TermFinderFacadeLocal termFinderFacade;
  
  /** the term deleter facade */
  private TermDeleterFacadeLocal termDeleterFacade;
  
  /** the association finder */
  private AssociationFinderLocal associationFinder;
  
  /** the association editor */
  private AssociationEditorLocal associationEditor;
  
  /** the entity store */
  private EntityStore entityStore;
  
  /** Creates a new instance of KBShardFacadeBean. */
  public KBShardFacadeBean() {
    super();
  }
  
  // TermFinderFacadeLocal
  
  /** Returns the highest term id without incrementing it.
   *
   * @return the highest term id without incrementing it
   */
  public int peekHighestTermId() {
    return termFinderFacade.peekHighestTermId();
  }
  
  /** Finds the LocalTermIdReference having the given termId.
   *
   * @param termId the given term id
   * @return the LocalTermIdReference having the given termId
   * @throws TexaiException if the term is not found
   */
  public LocalTermIdReference findLocalTermIdReferenceByTermId(final int termId) {
    return termFinderFacade.findLocalTermIdReferenceByTermId(termId);
  }
  
  /** Finds the LocalTermIdReference having the given UUID.
   *
   * @param uuid the given UUID
   * @return the LocalTermIdReference having the given UUID
   */
  public LocalTermIdReference findLocalTermIdReferenceByUUID(final UUID uuid) {
    return termFinderFacade.findLocalTermIdReferenceByUUID(uuid);
  }
  
  /** Finds the RemoteTermIdReference having the given termId.
   *
   * @param termId the given term id
   * @return the RemoteTermIdReference having the given termId
   */
  public RemoteTermIdReference findRemoteTermIdReferenceByTermId(final int termId) {
    return termFinderFacade.findRemoteTermIdReferenceByTermId(termId);
  }
  
  /** Finds the term having the given value.
   *
   * @param value the given value object
   * @return the term having the given value
   */
  public AbstractTerm findTermByValue(final Object value) {
    throw new TexaiException("not implemented");
  }
  
  /** Finds the Term having the given termType and termId.
   *
   * @param termType the given term type
   * @param termId the given term id
   * @return the Term having the given termType and termId
   * @throws TexaiException if the term is not found
   */
  public AbstractTerm findTermByTermTypeAndId(final byte termType, final int termId) {
    return termFinderFacade.findTermByTermTypeAndId(termType, termId);
  }
  
  /** Finds the Symbol having the given termId.
   *
   * @param termId the given term id
   * @return the Symbol having the given termId
   * @throws TexaiException if the term is not found
   */
  public Symbol findSymbolByTermId(final int termId) {
    return termFinderFacade.findSymbolByTermId(termId);
  }
  
  /** Finds the Symbol having the given nameValue or null if not found.
   *
   * @param nameValue the given name value
   * @return the Symbol having the given nameValue or null if not found
   */
  public Symbol findSymbolByNameValue(final String nameValue) {
    return termFinderFacade.findSymbolByNameValue(nameValue);
  }
  
  /** Finds the PVariable having the given termId.
   *
   * @param termId the given term id
   * @return the PVariable having the given termId
   * @throws TexaiException if the term is not found
   */
  public PVariable findPVariableByTermId(final int termId) {
    return termFinderFacade.findPVariableByTermId(termId);
  }
  
  /** Finds the PVariable having the given nameValue or null if not found.
   *
   * @param nameValue the given name value
   * @return the PVariable having the given nameValue or null if not found
   */
  public PVariable findPVariableByNameValue(final String nameValue) {
    return termFinderFacade.findPVariableByNameValue(nameValue);
  }
  
  /** Finds the PLong having the given termId.
   *
   * @param termId the given term id
   * @return the PLong having the given termId
   * @throws TexaiException if the term is not found
   */
  public PLong findPLongByTermId(final int termId) {
    return termFinderFacade.findPLongByTermId(termId);
  }
  
  /** Finds the PLong having the given longValue or null if not found.
   *
   * @param longValue the given long value
   * @return the PLong having the given nameValue or null if not found
   */
  public PLong findPLongByLongValue(final Long longValue) {
    return termFinderFacade.findPLongByLongValue(longValue);
  }
  
  /** Finds the PDouble having the given termId.
   *
   * @param termId the given term id
   * @return the PDouble having the given termId
   * @throws TexaiException if the term is not found
   */
  public PDouble findPDoubleByTermId(final int termId) {
    return termFinderFacade.findPDoubleByTermId(termId);
  }
  
  /** Finds the PDouble having the given doubleValue or null if not found.
   *
   * @param doubleValue the given double value
   * @return the PDouble having the given doubleValue or null if not found
   */
  public PDouble findPDoubleByDoubleValue(final Double doubleValue) {
    return termFinderFacade.findPDoubleByDoubleValue(doubleValue);
  }
  
  /** Finds the PString having the given termId.
   *
   * @param termId the given term id
   * @return the PString having the given termId
   * @throws TexaiException if the term is not found
   */
  public PString findPStringByTermId(final int termId) {
    return termFinderFacade.findPStringByTermId(termId);
  }
  
  /** Finds the PString having the given stringValue or null if not found.
   *
   * @param stringValue the given string value
   * @return the PString having the given stringValue or null if not found
   */
  public PString findPStringByStringValue(final String stringValue) {
    return termFinderFacade.findPStringByStringValue(stringValue);
  }
  
  /** Finds the PByteArray having the given termId.
   *
   * @param termId the given term id
   * @return the PByteArray having the given termId
   * @throws TexaiException if the term is not found
   */
  public PByteArray findPByteArrayByTermId(final int termId) {
    return termFinderFacade.findPByteArrayByTermId(termId);
  }
  
  /** Finds the PDate having the given termId.
   *
   * @param termId the given term id
   * @return the PDate having the given termId
   * @throws TexaiException if the term is not found
   */
  public PDate findPDateByTermId(final int termId) {
    return termFinderFacade.findPDateByTermId(termId);
  }
  
  /** Finds the PDate having the given dateValue or null if not found.
   *
   * @param dateValue the given date value
   * @return the PDate having the given dateValue or null if not found
   */
  public PDate findPDateByDateValue(final Date dateValue) {
    return termFinderFacade.findPDateByDateValue(dateValue);
  }
  
  /** Finds the AtomicTerm having the given UUID.
   *
   * @param uuid the given uuid
   * @return the AtomicTerm having the given termId
   * @throws TexaiException if the term is not found
   */
  public AtomicTerm findAtomicTermByUUID(final UUID uuid) {
    return termFinderFacade.findAtomicTermByUUID(uuid);
  }
  
  /** Finds the AtomicTerm having the given termId.
   *
   * @param termId the given term id
   * @return the AtomicTerm having the given termId
   * @throws TexaiException if the term is not found
   */
  public AtomicTerm findAtomicTermByTermId(final int termId) {
    return termFinderFacade.findAtomicTermByTermId(termId);
  }
  
  /** Finds the AtomicTerm having the given termName or null if not found.
   *
   * @param termName the given term name
   * @return the AtomicTerm having the given termName or null if not found
   */
  public AtomicTerm findAtomicTermByTermName(final String termName) {
    return termFinderFacade.findAtomicTermByTermName(termName);
  }
  
  /** Finds the NonAtomicTerm having the given UUID.
   *
   * @param uuid the given uuid
   * @return the NonAtomicTerm having the given termId
   * @throws TexaiException if the term is not found
   */
  public NonAtomicTerm findNonAtomicTermByUUID(final UUID uuid) {
    return termFinderFacade.findNonAtomicTermByUUID(uuid);
  }
  
  /** Finds the NonAtomicTerm having the given termId.
   *
   * @param termId the given term id
   * @return the NonAtomicTerm having the given termId
   * @throws TexaiException if the term is not found
   */
  public NonAtomicTerm findNonAtomicTermByTermId(final int termId) {
    return termFinderFacade.findNonAtomicTermByTermId(termId);
  }
  
  /** Finds the NonAtomicTerm having the given termName or null if not found.
   *
   * @param termName the given term name
   * @return the NonAtomicTerm having the given termName or null if not found
   */
  public NonAtomicTerm findNonAtomicTermByTermName(final String termName) {
    return termFinderFacade.findNonAtomicTermByTermName(termName);
  }
  
  /** Finds the Formula having the given termId.
   *
   * @param termId the given term id
   * @return the Formula having the given termId
   * @throws TexaiException if the term is not found
   */
  public Formula findFormulaByTermId(final int termId) {
    return termFinderFacade.findFormulaByTermId(termId);
  }
  
  /** Finds the Formula having the given term list or null if not found.
   *
   * @param termList the given term list
   * @return the Formula having the given term list or null if not found
   */
  public Formula findFormulaByTermList(final List<AbstractTerm> termList) {
    return termFinderFacade.findFormulaByTermList(termList);
  }
  
  /** Finds the Formula having the given formulaString or null if not found.
   *
   * @param formulaString the given formula string
   * @return the Formula having the given formulaString or null if not found
   */
  public Formula findFormulaByFormulaString(final String formulaString) {
    return termFinderFacade.findFormulaByFormulaString(formulaString);
  }
  
  /** Finds the Rule having the given UUID.
   *
   * @param uuid the given uuid
   * @return the Rule having the given termId
   * @throws TexaiException if the term is not found
   */
  public Rule findRuleByUUID(final UUID uuid) {
    return termFinderFacade.findRuleByUUID(uuid);
  }
  
  /** Finds the Rule having the given termId.
   *
   * @param termId the given term id
   * @return the Rule having the given termId
   * @throws TexaiException if the term is not found
   */
  public Rule findRuleByTermId(final int termId) {
    return termFinderFacade.findRuleByTermId(termId);
  }
  
  /** Finds the Rule having the given formula or null if not found.
   *
   * @param formula the given formula
   * @return the Rule having the given formula or null if not found
   */
  public Rule findRuleByFormula(final Formula formula) {
    return termFinderFacade.findRuleByFormula(formula);
  }
  
  /** Finds the UnaryGAF having the given UUID.
   *
   * @param uuid the given uuid
   * @return the UnaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public UnaryGAF findUnaryGAFByUUID(final UUID uuid) {
    return termFinderFacade.findUnaryGAFByUUID(uuid);
  }
  
  /** Finds the UnaryGAF having the given termId.
   *
   * @param termId the given term id
   * @return the UnaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public UnaryGAF findUnaryGAFByTermId(final int termId) {
    return termFinderFacade.findUnaryGAFByTermId(termId);
  }
  
  /** Finds the UnaryGAF having the given constitutents or null if not found.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @return the UnaryGAF having the given constitutents or null if not found
   */
  public UnaryGAF findUnaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.findUnaryGAFByConstituents(
            predicate,
            args,
            context);
  }
  
  /** Finds the BinaryGAF having the given UUID.
   *
   * @param uuid the given uuid
   * @return the BinaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public BinaryGAF findBinaryGAFByUUID(final UUID uuid) {
    return termFinderFacade.findBinaryGAFByUUID(uuid);
  }
  
  /** Finds the BinaryGAF having the given termId.
   *
   * @param termId the given term id
   * @return the BinaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public BinaryGAF findBinaryGAFByTermId(final int termId) {
    return termFinderFacade.findBinaryGAFByTermId(termId);
  }
  
  /** Finds the BinaryGAF having the given constitutents or null if not found.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @return the BinaryGAF having the given constitutents or null if not found
   */
  public BinaryGAF findBinaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.findBinaryGAFByConstituents(
            predicate,
            args,
            context);
  }
  
  /** Finds the TernaryGAF having the given UUID.
   *
   * @param uuid the given uuid
   * @return the TernaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public TernaryGAF findTernaryGAFByUUID(final UUID uuid) {
    return termFinderFacade.findTernaryGAFByUUID(uuid);
  }
  
  /** Finds the TernaryGAF having the given termId.
   *
   * @param termId the given term id
   * @return the TernaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public TernaryGAF findTernaryGAFByTermId(final int termId) {
    return termFinderFacade.findTernaryGAFByTermId(termId);
  }
  
  /** Finds the TernaryGAF having the given constitutents or null if not found.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @return the TernaryGAF having the given constitutents or null if not found
   */
  public TernaryGAF findTernaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.findTernaryGAFByConstituents(
            predicate,
            args,
            context);
  }
  
  /** Finds the QuaternaryGAF having the given UUID.
   *
   * @param uuid the given uuid
   * @return the QuaternaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public QuaternaryGAF findQuaternaryGAFByUUID(final UUID uuid) {
    return termFinderFacade.findQuaternaryGAFByUUID(uuid);
  }
  
  /** Finds the QuaternaryGAF having the given termId.
   *
   * @param termId the given term id
   * @return the QuaternaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public QuaternaryGAF findQuaternaryGAFByTermId(final int termId) {
    return termFinderFacade.findQuaternaryGAFByTermId(termId);
  }
  
  /** Finds the QuaternaryGAF having the given constitutents or null if not found.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @return the QuaternaryGAF having the given constitutents or null if not found
   */
  public QuaternaryGAF findQuaternaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.findQuaternaryGAFByConstituents(
            predicate,
            args,
            context);
  }
  
  /** Finds the QuintaryGAF having the given UUID.
   *
   * @param uuid the given uuid
   * @return the QuintaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public QuintaryGAF findQuintaryGAFByUUID(final UUID uuid) {
    return termFinderFacade.findQuintaryGAFByUUID(uuid);
  }
  
  /** Finds the QuintaryGAF having the given termId.
   *
   * @param termId the given term id
   * @return the QuintaryGAF having the given termId
   * @throws TexaiException if the term is not found
   */
  public QuintaryGAF findQuintaryGAFByTermId(final int termId) {
    return termFinderFacade.findQuintaryGAFByTermId(termId);
  }
  
  /** Finds the QuintaryGAF having the given constitutents or null if not found.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @return the QuintaryGAF having the given constitutents or null if not found
   */
  public QuintaryGAF findQuintaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.findQuintaryGAFByConstituents(
            predicate,
            args,
            context);
  }
  
  /** Creates the Symbol having the given nameValue.
   *
   * @param nameValue the given name value
   * @return the Symbol having the given nameValue
   */
  public Symbol createSymbolByNameValue(final String nameValue) {
    return termFinderFacade.createSymbolByNameValue(nameValue);
  }
  
  /** Creates the PVariable having the given nameValue.
   *
   * @param nameValue the given name value
   * @return the PVariable having the given nameValue
   */
  public PVariable createPVariableByNameValue(final String nameValue) {
    return termFinderFacade.createPVariableByNameValue(nameValue);
  }
  
  /** Creates the PLong having the given longValue.
   *
   * @param longValue the given long value
   * @return the PLong having the given nameValue
   */
  public PLong createPLongByLongValue(final Long longValue) {
    return termFinderFacade.createPLongByLongValue(longValue);
  }
  
  /** Creates the PDouble having the given doubleValue.
   *
   * @param doubleValue the given double value
   * @return the PLong having the given doubleValue
   */
  public PDouble createPDoubleByDoubleValue(final Double doubleValue) {
    return termFinderFacade.createPDoubleByDoubleValue(doubleValue);
  }
  
  /** Creates the PString having the given stringValue.
   *
   * @param stringValue the given double value
   * @return the PLong having the given doubleValue
   */
  public PString createPStringByStringValue(final String stringValue) {
    return termFinderFacade.createPStringByStringValue(stringValue);
  }
  
  /** Creates the PDate having the given dateValue.
   *
   * @param dateValue the given date value
   * @return the PDate having the given dateValue
   */
  public PDate createPDateByDateValue(final Date dateValue) {
    return termFinderFacade.createPDateByDateValue(dateValue);
  }
  
  /** Creates the bootstrap AtomicTerm having the given termName.
   *
   * @param uuid the UUID
   * @param termName the term name
   * @param prettyName the pretty name
   * @return the AtomicTerm having the given termName
   */
  public AtomicTerm createBootstrapAtomicTerm(
          final UUID uuid,
          final String termName,
          final String prettyName) {
    return termFinderFacade.createBootstrapAtomicTerm(
            uuid,
            termName,
            prettyName);
  }
  
  /** Creates the AtomicTerm having the given termName.
   *
   * @param termName the term name
   * @param prettyName the pretty name
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the AtomicTerm having the given termName
   */
  public AtomicTerm createAtomicTermByTermName(
          final String termName,
          final String prettyName,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createAtomicTermByTermName(
            termName,
            prettyName,
            creator,
            creationPurpose);
  }
  
  /** Creates the NonAtomicTerm having the given termName.
   *
   * @param termName the term name
   * @param prettyName the pretty name
   * @param formula the formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the NonAtomicTerm having the given termName or a new one having
   * the given constituents
   */
  public NonAtomicTerm createNonAtomicTermByTermName(
          final String termName,
          final String prettyName,
          final Formula formula,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createNonAtomicTermByTermName(
            termName,
            prettyName,
            formula,
            creator,
            creationPurpose);
  }
  
  /** Creates the Formula having the given term list.
   *
   * @param formulaTerms the list of terms that constitute this formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the persisted Formula having the given term list
   */
  public Formula createFormulaByTermList(
          final List<AbstractTerm> formulaTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createFormulaByTermList(
            formulaTerms,
            creator,
            creationPurpose);
  }
  
  /** Creates (with the term list omitted) the Formula having the given formulaString.
   *
   * @param termId the given term id
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the persisted Formula having the given formulaString or a new Formula having the
   * given term list
   */
  public Formula createFormulaByFormulaString(
          final String formulaString,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createFormulaByFormulaString(
            formulaString,
            creator,
            creationPurpose);
  }
  
  /** Creates the Rule having the given formula.
   *
   * @param formula the given formula
   * @param context the context
   * @param strength the strength
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the Rule having the given formulaString
   */
  public Rule createRuleByFormula(
          final Formula formula,
          final AbstractReifiedTerm context,
          final Double strength,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createRuleByFormula(
            formula,
            context,
            strength,
            creator,
            creationPurpose);
  }
  
  /** Creates the UnaryGAF having the given constitutents.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @param strength the assertion strength
   * @param generatedPhrase the generated phrase for this ground atomic formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the UnaryGAF having the given constitutents
   */
  public UnaryGAF createUnaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context,
          final Double strength,
          final String generatedPhrase,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createUnaryGAFByConstituents(
            predicate,
            args,
            context,
            strength,
            generatedPhrase,
            creator,
            creationPurpose);
  }
  
  /**
   * Creates the BinaryGAF having the given constitutents.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @param strength the assertion strength
   * @param generatedPhrase the generated phrase for this ground atomic formula
   * @param validateWellFormedFormula the indicator to validate the gaf as a well-formed formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the BinaryGAF having the given constitutents
   */
  public BinaryGAF createBinaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context,
          final Double strength,
          final String generatedPhrase,
          boolean validateWellFormedFormula,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createBinaryGAFByConstituents(
            predicate,
            args,
            context,
            strength,
            generatedPhrase,
            validateWellFormedFormula,
            creator,
            creationPurpose);
  }
  
  /** Creates the TernaryGAF having the given constitutents.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @param strength the assertion strength
   * @param generatedPhrase the generated phrase for this ground atomic formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the TernaryGAF having the given constitutents
   */
  public TernaryGAF createTernaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context,
          final Double strength,
          final String generatedPhrase,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createTernaryGAFByConstituents(
            predicate,
            args,
            context,
            strength,
            generatedPhrase,
            creator,
            creationPurpose);
  }
  
  /** Creates the QuaternaryGAF having the given constitutents.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @param strength the assertion strength
   * @param generatedPhrase the generated phrase for this ground atomic formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the QuaternaryGAF having the given constitutents
   */
  public QuaternaryGAF createQuaternaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context,
          final Double strength,
          final String generatedPhrase,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createQuaternaryGAFByConstituents(
            predicate,
            args,
            context,
            strength,
            generatedPhrase,
            creator,
            creationPurpose);
  }
  
  /** Creates the QuintaryGAF having the given constitutents.
   *
   * @param predicate the given predicate
   * @param args the argument list
   * @param context the context
   * @param strength the assertion strength
   * @param generatedPhrase the generated phrase for this ground atomic formula
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the QuintaryGAF having the given constitutents
   */
  public QuintaryGAF createQuintaryGAFByConstituents(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context,
          final Double strength,
          final String generatedPhrase,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createQuintaryGAFByConstituents(
            predicate,
            args,
            context,
            strength,
            generatedPhrase,
            creator,
            creationPurpose);
  }
  
  /** Creates the defined atomic term.
   *
   * @param termName the term name
   * @param prettyName the pretty name
   * @param commentString the comment string
   * @param isaTerms the list of isa (type) terms
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the specified defined term
   */
  public AtomicTerm createDefinedTerm(
          final String termName,
          final String prettyName,
          final String commentString,
          final List<AbstractReifiedTerm> isaTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createDefinedTerm(
            termName,
            prettyName,
            commentString,
            isaTerms,
            creator,
            creationPurpose);
  }
  
  /** Creates the specified binary predicate term with default list of isa (type) terms [BinaryPredicate, PredicateFocalInArg1],
   * and list of genlPreds (super property) terms [conceptuallyRelated].
   *
   * @param termName the predicate name
   * @param prettyName the pretty name
   * @param commentString the comment string
   * @param creator the creator
   * @param argConstraintTerms the list of argument constraint terms
   * @param creationPurpose the creation purpose
   * @return the specified binary predicate term
   */
  public AtomicTerm createBinaryPredicateTerm(
          final String termName,
          final String prettyName,
          final String commentString,
          final List<AbstractReifiedTerm> argConstraintTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createBinaryPredicateTerm(
            termName,
            prettyName,
            commentString,
            argConstraintTerms,
            creator,
            creationPurpose);
  }
  
  /** Creates the specified binary predicate term.
   *
   *
   * @param termName the predicate name
   * @param prettyName the pretty name
   * @param commentString the comment string
   * @param isaTerms the list of isa (type) terms, defaults to [BinaryPredicate, PredicateFocalInArg1]
   * @param genlPredTerms the list of genlPreds (super property) terms, defaults to [conceptuallyRelated]
   * @param argConstraintTerms the list of argument constraint terms
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the specified binary predicate term
   */
  public AtomicTerm createBinaryPredicateTerm(
          final String termName,
          final String prettyName,
          final String commentString,
          final List<AbstractReifiedTerm> isaTerms,
          final List<AbstractReifiedTerm> genlPredTerms,
          final List<AbstractReifiedTerm> argConstraintTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createBinaryPredicateTerm(
            termName,
            prettyName,
            commentString,
            isaTerms,
            genlPredTerms,
            argConstraintTerms,
            creator,
            creationPurpose);
  }
  
  /**
   * Creates the specified collection term.
   *
   * @param termName the term name
   * @param prettyName the pretty name
   * @param commentString the comment string
   * @param isaTerms the list of isa (type) terms
   * @param genlsTerms the list of genls (superclass) terms
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the specified collection term
   */
  public AtomicTerm createCollectionTerm(
          final String termName,
          final String prettyName,
          final String commentString,
          final List<AbstractReifiedTerm> isaTerms,
          final List<AbstractReifiedTerm> genlsTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createCollectionTerm(
            termName,
            prettyName,
            commentString,
            isaTerms,
            genlsTerms,
            creator,
            creationPurpose);
  }
  
  /**
   * Creates the specified context term.
   *
   * @param termName the term name
   * @param prettyName the pretty name
   * @param commentString the comment string
   * @param isaTerms the list of isa (type) terms which defaults to [Microtheory] when empty
   * @param genlMtTerms the list of genlMt (super context) terms which defaults to [BaseKB] when empty
   * @param creator the creator
   * @param creationPurpose the creation purpose
   * @return the specified collection term
   */
  public AtomicTerm createContextTerm(
          final String termName,
          final String prettyName,
          final String commentString,
          final List<AbstractReifiedTerm> isaTerms,
          final List<AbstractReifiedTerm> genlMtTerms,
          final AbstractReifiedTerm creator,
          final AbstractReifiedTerm creationPurpose) {
    return termFinderFacade.createContextTerm(
            termName,
            prettyName,
            commentString,
            isaTerms,
            genlMtTerms,
            creator,
            creationPurpose);
  }
  
  /** Returns a description of why the given formula is not well formed, or an empty string if the formula is well formed.
   *
   * @param predicate the predicate
   * @param args the argument list
   * @param context the context
   */
  public  String getReasonWhyFormulaIsNotWellFormed(
          final AbstractReifiedTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    return termFinderFacade.getReasonWhyFormulaIsNotWellFormed(
            predicate,
            args,
            context);
  }
  
  // TermDeleterFacadeLocal
  
  /** Deletes the given AtomicTerm.
   *
   * @param atomicTerm the given atomic term
   */
  public boolean deleteAtomicTerm(final AtomicTerm atomicTerm) {
    return termDeleterFacade.deleteAtomicTerm(atomicTerm);
  }
  
  /**
   * Deletes the given domain instance term and the binary GAFs which persist its fields.
   *
   * @param domainInstanceTerm the domain instance term to delete
   */
  public boolean deleteDomainInstanceTerm(final AtomicTerm domainInstanceTerm) {
    throw new TexaiException("not implemented");
  }
  
  /** Deletes the given unary ground atomic formula.
   *
   * @param unaryGAF the given unary ground atomic formula
   */
  public boolean deleteUnaryGAF(final UnaryGAF unaryGAF) {
    return termDeleterFacade.deleteUnaryGAF(unaryGAF);
  }
  
  /** Deletes the given binary ground atomic formula.
   *
   * @param binaryGAF the given binary ground atomic formula
   */
  public boolean deleteBinaryGAF(final BinaryGAF binaryGAF) {
    return termDeleterFacade.deleteBinaryGAF(binaryGAF);
  }
  
  /** Deletes the given ternary ground atomic formula.
   *
   * @param ternaryGAF the given ternary ground atomic formula
   */
  public boolean deleteTernaryGAF(final TernaryGAF ternaryGAF) {
    return termDeleterFacade.deleteTernaryGAF(ternaryGAF);
  }
  
  /** Deletes the given quaternary ground atomic formula.
   *
   * @param quaternaryGAF the given quaternary ground atomic formula
   */
  public boolean deleteQuaternaryGAF(final QuaternaryGAF quaternaryGAF) {
    return termDeleterFacade.deleteQuaternaryGAF(quaternaryGAF);
  }
  
  /** Deletes the given quintary ground atomic formula.
   *
   * @param quintaryGAF the given quintary ground atomic formula
   */
  public boolean deleteQuintaryGAF(final QuintaryGAF quintaryGAF) {
    return termDeleterFacade.deleteQuintaryGAF(quintaryGAF);
  }
  
  /** Delete matching binary ground atomic formulas from all contexts relevant to the given context.
   *
   * @param predicate the predicate that gafs must match
   * @param args the arguments that gafs must match
   * @param context the context the given context
   */
  public boolean deleteBinaryGAFsFromRelevantContexts(
          final AtomicTerm predicate,
          final List<AbstractTerm> args,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  // TermDefinitionAccessorLocal
  
  /** Gathers the types for which the given term is a direct instance from the given context.
   *
   * @param term the given term
   * @param context the most specific context of those from which types are gathered
   * @return the types for which the given term is a direct instance from the given context
   */
  public Set<AbstractReifiedTerm> gatherTypesForTerm(final AbstractReifiedTerm term, final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the types for which the given term is a direct instance within every context.
   *
   * @param term the given term
   * @return the types for which the given term is a direct instance within every context
   */
  public Set<AbstractReifiedTerm> gatherTypesForTerm(final AbstractReifiedTerm term) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the types for which the given term is a direct or indirect instance from the given context.
   *
   * @param term the given term
   * @param context the most specific context of those from which types are gathered
   * @return the types for which the given term is an instance from the given context
   */
  public Set<AbstractReifiedTerm> gatherAllTypesForTerm(final AbstractReifiedTerm term, final AbstractReifiedTerm context) {
     throw new TexaiException("not implemented");
 }
  
  /** Gathers the instances of the given collectin term from the given context.
   *
   * @param term the given term
   * @param context the most specific context of those from which instances are gathered
   * @return the instances of the given collectin term from the given context
   */
  public  Set<AbstractReifiedTerm> gatherInstancesForTerm(final AbstractReifiedTerm term, final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Returns the arity of the given predicate.
   *
   * @param predicate the given predicate
   * @return the arity of the given predicate
   */
  public int predicateArity(final AbstractReifiedTerm predicate) {
    throw new TexaiException("not implemented");
  }
  
  /** Returns the list argument constraints of the given predicate, one for each
   * corresponding argument position.
   *
   * @param predicate the given predicate
   * @return the list argument constraints of the given predicate, one for each
   * corresponding argument position
   */
  public List<AbstractReifiedTerm> predicateArgConstraints(final AbstractReifiedTerm predicate) {
    throw new TexaiException("not implemented");
  }
  
  // AssociationFinderLocal
  
  /** Gets the sole term from the arg1 position of the matching binary ground atomic formula or null if not
   * found.
   *
   * @param predicate the predicate of the matching binary gaf
   * @param arg2 the second argument term of the matching binary gaf
   * @param context the most specific context of those from which the matching gaf is gathered
   * @return the sole term from the arg1 position of the matching binary ground atomic formula or null if not
   * found
   */
  public AbstractTerm getArg1TermFromBinaryGAF(
          final AtomicTerm predicate,
          final AbstractTerm arg2,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the terms from the arg1 position of matching binary ground atomic formulas.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg2 the second argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the terms from the arg1 position of match binary ground atomic formulas
   */
  public Set<AbstractTerm> gatherArg1TermsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg2,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gets the sole term from the arg2 position of the matching binary ground atomic formula or null if not
   * found.
   *
   * @param predicate the predicate of the matching binary gaf
   * @param arg1 the first argument term of the matching binary gaf
   * @return the sole term from the arg2 position of the matching binary ground atomic formula or null if not
   * found
   */
  public AbstractTerm getArg2TermFromBinaryGAF(
          final AtomicTerm predicate,
          final AbstractTerm arg1) {
    throw new TexaiException("not implemented");
  }
  
  /** Gets the sole term from the arg2 position of the matching binary ground atomic formula or null if not
   * found.
   *
   * @param predicate the predicate of the matching binary gaf
   * @param arg1 the first argument term of the matching binary gaf
   * @param context the most specific context of those from which the matching gaf is gathered
   * @return the sole term from the arg2 position of the matching binary ground atomic formula or null if not
   * found
   */
  public AbstractTerm getArg2TermFromBinaryGAF(
          final AtomicTerm predicate,
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the terms from the arg2 position of matching binary ground atomic formulas.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the terms from the arg2 position of match binary ground atomic formulas
   */
  public Set<AbstractTerm> gatherArg2TermsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the ordered list of terms and corresponding strengths from the arg1 position of matching binary ground atomic formulas.
   * The ordering is currently limited to the termId of the arg1s.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg2 the second argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the terms and corresponding strengths from the arg1 position of matching binary ground atomic formulas
   */
  public List<List<Object>> gatherArg1TermsAndStrengthsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg2,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the terms and corresponding strengths from the arg2 position of matching binary ground atomic formulas.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the terms and corresponding strengths from the arg2 position of matching binary ground atomic formulas
   */
  public List<List<Object>> gatherArg2TermsAndStrengthsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the terms from the arg2 position of matching binary ground atomic formulas in every context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @return the terms from the arg2 position of match binary ground atomic formulas
   */
  public Set<AbstractTerm> gatherArg2TermsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg1) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the stub terms and stub contexts from the arg1 position of matching binary ground atomic formulas in every context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg2 the first argument term of matching binary gafs
   * @return the set of pairs of stub terms from the arg1 position of matching binary ground atomic formulas and
   * the stub context in which they were found
   */
  public Set<List<AbstractTerm>> gatherArg1TermsAndContextsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg2) {
    return associationFinder.gatherArg1TermsAndContextsFromBinaryGAFs(
            predicate,
            arg2);
  }
  
  /** Gathers the stub terms and stub contexts from the arg2 position of matching binary ground atomic formulas in every context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @return the set of pairs of stub terms from the arg2 position of matching binary ground atomic formulas and
   * the stub context in which they were found
   */
  public Set<List<AbstractTerm>> gatherArg2TermsAndContextsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg1) {
    return associationFinder.gatherArg2TermsAndContextsFromBinaryGAFs(
            predicate,
            arg1);
  }
  
  /** Gathers ordered list of the stub terms, strengths and stub contexts from the arg1 position of matching
   * binary ground atomic formulas in every context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg2 the second argument term of matching binary gafs
   * @return the ordered list of triples of stub terms from the arg1 position of matching binary ground atomic formulas, the strength and
   * the stub context in which they were found
   */
  public List<List<Object>> gatherArg1TermsStrengthsAndContextsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg2) {
    return associationFinder.gatherArg1TermsStrengthsAndContextsFromBinaryGAFs(
            predicate,
            arg2);
  }
  
  /** Gathers ordered list of the stub terms, strengths and stub contexts from the arg2 position of matching
   * binary ground atomic formulas in every context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @return the ordered list of triples of stub terms from the arg2 position of matching binary ground atomic formulas, the strength and
   * the stub context in which they were found
   */
  public List<List<Object>> gatherArg2TermsStrengthsAndContextsFromBinaryGAFs(
          final AtomicTerm predicate,
          final AbstractTerm arg1) {
    return associationFinder.gatherArg2TermsStrengthsAndContextsFromBinaryGAFs(
            predicate,
            arg1);
  }
  
  /** Gathers the stub terms from the arg2 position of matching binary ground atomic formulas that
   * occur only in the given context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg1 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the stub terms from the arg2 position of match binary ground atomic formulas
   */
  public Set<AbstractTerm> gatherArg2TermsFromBinaryGAFsWithinContext(
          final AtomicTerm predicate,
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    return associationFinder.gatherArg2TermsFromBinaryGAFsWithinContext(
            predicate,
            arg1,
            context);
  }
  
  /** Gathers the term ids from the arg1 position of matching binary ground atomic formulas that
   * occur only in the given context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param arg2 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the term ids from the arg1 position of match binary ground atomic formulas
   */
  public Set<Integer> gatherArg1TermIdsFromBinaryGAFsWithinContext(
          final AtomicTerm predicate,
          final AbstractTerm arg2,
          final AbstractReifiedTerm context) {
    return associationFinder.gatherArg1TermIdsFromBinaryGAFsWithinContext(
            predicate,
            arg2,
            context);
  }
  
  /** Gathers the binary ground atomic formulas having the given arg1 or arg2 from all contexts.
   *
   * @param arg the first or second argument term of matching binary gafs
   * @return the binary ground atomic formulas having the given arg
   */
  public Set<BinaryGAF> gatherBinaryGAFsByArgTerm(final AbstractTerm arg) {
    return associationFinder.gatherBinaryGAFsByArgTerm(arg);
  }
  
  /** Gathers the binary ground atomic formulas having the given arg1 and context.
   *
   * @param arg1 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the binary ground atomic formulas having the given arg1 and context
   */
  public Set<BinaryGAF> gatherBinaryGAFsByArg1Term(
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the binary ground atomic formulas having the given arg1 and context.
   *
   * @param arg1 the first argument term of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the binary ground atomic formulas having the given arg1 and context
   */
  public Set<BinaryGAF> gatherBinaryGAFsByArg1TermWithinContext(
          final AbstractTerm arg1,
          final AbstractReifiedTerm context) {
    return associationFinder.gatherBinaryGAFsByArg1TermWithinContext(
            arg1,
            context);
  }
  
  /** Inclusively gathers the relevant context term ids visible from the given context.
   *
   * @param context the given context
   * @return the set of relevant context term ids visible from the given context, including the given context
   */
  public Set<Integer> gatherContextTermIdsRelevantFrom(final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Inclusively gathers the relevant contexts visible from the given context.  The genlMt propositions are found
   * mostly in the context UniversalVocabularyMt, but additionally some are found in the context BaseKB.
   *
   * @param context the given context
   * @return the set of relevant contexts visible from the given context, including the given context
   */
  public Set<AbstractReifiedTerm> gatherContextsRelevantFrom(final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Exclusively gathers the immediately relevant contexts visible from the given context.
   *
   * @param context the given context
   * @return the set of immediately relevant contexts visible from the given context
   */
  public Set<AbstractReifiedTerm> gatherContextsImmediatelyRelevantFrom(final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Exclusively gathers the closure of the given transitive binary predicate visible from the given context and reified arg1 term from
   * the given context.
   *
   * @param predicate the given transitive predicate
   * @param arg1 the given arg1
   * @param context the given context
   * @return the set of relevant contexts visible from the given context, including the given context
   */
  public Set<AbstractReifiedTerm> gatherTransitiveClosureFrom(
          final AtomicTerm predicate,
          final AbstractReifiedTerm arg1,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Returns an iterator over the set of binary gafs with the given predicate and given relevant context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return an iterator over the binary ground atomic formulas having the given predicate and context
   */
  public Iterator<BinaryGAF> binaryGAFByPredicateIterator(
          final AtomicTerm predicate,
          final AbstractReifiedTerm context) {
    throw new TexaiException("not implemented");
  }
  
  /** Returns an iterator over the set of binary gafs with the given predicate and given relevant context, whose arg1 term ids
   * are members of the given set of constraint term ids.
   *
   * @param predicate the predicate of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @param arg1ConstraintTermIdSet the set of arg1 constraint term ids
   * @return an iterator over the binary ground atomic formulas having the given predicate and context
   */
  public Iterator<BinaryGAF> binaryGAFByPredicateAndConstraintSetIterator(
          final AtomicTerm predicate,
          final AbstractReifiedTerm context,
          final Set<Integer> arg1ConstraintTermIdSet) {
    throw new TexaiException("not implemented");
  }
  
  /** Gathers the list of term ids for binary gafs having the given predicate and context.
   *
   * @param predicate the predicate of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the list of term ids for binary gafs having the given predicate and context
   */
  public List<Integer> gatherBinaryGAFTermIdsByPredicate(final AtomicTerm predicate, final AbstractReifiedTerm context) {
    return associationFinder.gatherBinaryGAFTermIdsByPredicate(predicate, context);
  }
  
  /** Gathers the list of info for binary gafs having the given predicate and context.  Each element is a
   * triple consisting of [term id, arg1 term id, context term id].
   *
   * @param predicate the predicate of matching binary gafs
   * @param context the most specific context of those from which matching gafs are gathered
   * @return the list of info for binary gafs having the given predicate and context
   */
  public List<Integer[]> gatherBinaryGAFInfoByPredicate(final AtomicTerm predicate, final AbstractReifiedTerm context) {
    return associationFinder.gatherBinaryGAFInfoByPredicate(predicate, context);
  }
  
  // AssociationEditorLocal
  
  /**
   * Edits the given binary ground atomic formula.
   *
   * @param oldPredicate the predicate of the old binary gaf
   * @param newPredicate the predicate of the new binary gaf or null if no change
   * @param oldoldArgse argument terms of the old binary gaf
   * @param newArgs the argument terms of the new binary gaf or null if no change
   * @param oldContext the context of the old binary gaf
   * @param newContext the context of the new binary gaf or null if no change
   * @param newStrength the strength of the new binary gaf or null if no change
   * @param newCreator the creator of the new binary gaf or null if no change
   * @param newCreationPurpose the creation purpose of the new binary gaf or null if no change
   * @return the new binary gaf having the same term id
   */
  public BinaryGAF editBinaryGAF(
          final AtomicTerm oldPredicate,
          final AtomicTerm newPredicate,
          final List<AbstractTerm> oldArgs,
          final List<AbstractTerm> newArgs,
          final AbstractReifiedTerm oldContext,
          final AbstractReifiedTerm newContext,
          final Double newStrength,
          final AtomicTerm newCreator,
          final AtomicTerm newCreationPurpose) {
    throw new TexaiException("not implemented");
  }
  
  /**
   * Persists the given binary ground atomic formula.
   *
   * @param binaryGAF the given binary ground atomic formula
   */
  public void editBinaryGAF(final BinaryGAF binaryGAF) {
    associationEditor.editBinaryGAF(binaryGAF);
  }
  
  // dependency injection
  
  /** Sets the term finder.
   *
   * @param termFinderFacade the term finder
   */
  public void setTermFinderFacade(final TermFinderFacadeLocal termFinderFacade) {
    //Preconditions
    assert termFinderFacade != null : "termFinderFacade must not be null";
    
    this.termFinderFacade = termFinderFacade;
  }
  
  /** Sets the term deleter.
   *
   * @param termDeleterFacade the term deleter
   */
  public void setTermDeleterFacade(final TermDeleterFacadeLocal termDeleterFacade) {
    //Preconditions
    assert termDeleterFacade != null : "termDeleterFacade must not be null";
    
    this.termDeleterFacade = termDeleterFacade;
  }
  
  /** Sets the association finder.
   *
   * @param associationFinder the association finder
   */
  public  void setAssociationFinder(final AssociationFinderLocal associationFinder) {
    //Preconditions
    assert associationFinder != null : "associationFinder must not be null";
    
    this.associationFinder = associationFinder;
  }
  
  /** Sets the association editor.
   *
   * @param associationEditorLocal the association editor
   */
  public void setAssociationEditor(final AssociationEditorLocal associationEditor) {
    //Preconditions
    assert associationEditor != null : "associationEditor must not be null";
    
    this.associationEditor = associationEditor;
  }
  
  /** Sets the entity store.
   *
   * @param entityStore
   */
  public void setEntityStore(final EntityStore entityStore) {
    //Preconditions
    assert entityStore != null : "entityStore must not be null";
    
    this.entityStore = entityStore;
  }
  
  /** Initializes the primary and secondary indicies. */
  public void initializeIndices() {
    
  }
  
}




See more files for this project here

Texai

Texai is an chatbot that intelligently seeks to acquire knowledge and friendly behaviors.

Project homepage: http://sourceforge.net/projects/texai
Programming language(s): Java,Shell Script,XML
License: other

  AssociationEditorBean.java
  AssociationEditorLocal.java
  AssociationFinderBean.java
  AssociationFinderLocal.java
  KBPartitionFacadeBean.java
  KBPartitionFacadeLocal.java
  KBShardFacadeBean.java
  TermDeleterFacadeBean.java
  TermDeleterFacadeLocal.java
  TermFinderFacadeBean.java
  TermFinderFacadeLocal.java
  TermManagerBean.java
  TermManagerLocal.java