
org.biojava.bibliography.BiblioCriterion Maven / Gradle / Ivy
// BiblioCriterion.java
//
// [email protected]
// April 2001
//
/*
* BioJava development code
*
* This code may be freely distributed and modified under the
* terms of the GNU Lesser General Public Licence. This should
* be distributed with the code. If you do not have a copy,
* see:
*
* http://www.gnu.org/copyleft/lesser.html
*
* Copyright for this code is held jointly by the individual
* authors. These should be listed in @author doc comments.
*
* For more information on the BioJava project and its aims,
* or to join the biojava-l mailing list, visit the home page
* at:
*
* http://www.biojava.org/
*
*/
package org.biojava.bibliography;
/**
* The criteria define how the matching or ordering should be done
* during queries.
*
* @author Martin Senger
* @version $Id$
* @since 1.3
*/
public class BiblioCriterion {
/**
* A query criterion.
*/
public static final int QUERY_CRITERION = 0;
/**
* A sort criterion.
*/
public static final int SORT_CRITERION = 1;
/**
*
* Each Criterion is identified by its name.
* A list of criteria names is used in methods for querying and sorting
* (see {@link BibRefQuery} interface).
*
*
*
* The implementations are advised to use descriptive names.
* For example, the names for matching can be:
*
* match all words
* match any word
* case insensitive
* case sensitive
* partial word match
* full word match
*
* and the names for ordering can be:
*
* ascending
* descending
*
* Another example of how to use Criteria is to allow regular expressions in queries.
* Not every implementation is supposed to have the capability of matching by regular
* expressions but those who have can specify (and document), for example, criterion
* with name regular expression.
*
*/
public String name;
/**
* The criteria can be used for defining rules for matching
* (type {@link #QUERY_CRITERION}), or for ordering (type {@link #SORT_CRITERION}).
*/
public int type = QUERY_CRITERION;
/**
*
* A list of other criteria names that this criterion is mutually exclusive with.
*
*
*
* For example, a sort criterion ascending will probably have
* descending in this list.
*
*/
public String[] mutuallyExclusiveWith;
/**
* A name of a repository subset which this criterion is valid/used for.
* @see BiblioEntryStatus#repositorySubset
*/
public String forSubset;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy