All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.biojava.bibliography.BiblioCriterion Maven / Gradle / Ivy

There is a newer version: 1.9.7
Show newest version
// 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