package org.jactr.core.chunk.link; import org.jactr.core.chunk.IChunk; import org.jactr.core.utils.parameter.IParameterized; /* * default logging */ /** * an associative link between two chunks, j & i, where i (usually) contains a * reference to j and j spreads activation to i. The amount of activaqtion is * usually scaled by the strength of the association. * * @author harrison */ public interface IAssociativeLink extends IParameterized { static public final String STRENGTH_PARAM = "Strength"; /** * get the chunk containing the reference to j * * @return */ public IChunk getIChunk(); /** * get the chunk that is contained by i and will spread activation to it. * * @return */ public IChunk getJChunk(); /** * strength of the association * * @return */ public double getStrength(); /** * copy the parameters from link to this, but only if they have the same i & j * @param link */ public void copy(IAssociativeLink link) throws IllegalArgumentException; }