package lux.index.attribute; import lux.xml.QName; import org.apache.lucene.util.Attribute; /** * Mark a token as occurring within the scope of a list of QNames */ public interface QNameAttribute extends Attribute { /** *@return whether there are any more QNames */ boolean hasNext(); /** * @return whether the next QName is the first QName */ boolean onFirst(); /** * @return the next QName */ QName next(); /** add another QName, and reset the counter. * @param qname the QName to associate with the current token */ void addQName (QName qname); /** clear the current set of QNames. We don't do this in clear() since we want * these to persist across a range of tokens */ void clearQNames (); }