
org.biojavax.DocRef Maven / Gradle / Ivy
/*
* 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.orDocRef
*/
package org.biojavax;
import java.util.List;
import org.biojava.utils.ChangeType;
import org.biojava.utils.ChangeVetoException;
import org.biojava.utils.Changeable;
/**
* Represents a documentary reference. Relates to the reference table
* in BioSQL.
* @author Mark Schreiber
* @author Richard Holland
* @see RankedDocRef
* @since 1.5
*/
public interface DocRef extends Comparable,Changeable {
public static final ChangeType CROSSREF = new ChangeType(
"This reference's crossref has changed",
"org.biojavax.DocRef",
"CROSSREF"
);
public static final ChangeType REMARK = new ChangeType(
"This reference's remark has changed",
"org.biojavax.DocRef",
"REMARK"
);
/**
* The document reference may refer to an object in another database. If so,
* this method will return that reference.
* @return Value of property crossref.
*/
public CrossRef getCrossref();
/**
* The document reference may refer to an object in another database. Use this
* method to set that reference. Null will unset it.
* @param crossref New value of property crossref.
* @throws ChangeVetoException in case of objections.
*/
public void setCrossref(CrossRef crossref) throws ChangeVetoException;
/**
* Returns a textual description of the document reference. This field is
* immutable so should be set using the constructor of the implementing class.
* @return Value of property location.
*/
public String getLocation();
/**
* Returns the title of the document reference.
* @return Value of property title.
*/
public String getTitle();
/**
* Returns the authors of the document reference.
* It will usually be in the form "Jones H., Bloggs J et al" or similar -
* a human-readable text value. Editors will have (ed.) appended,
* consortiums will have (consortium) appended.
* @return Value of property authors.
*/
public String getAuthors();
/**
* Returns the authors of the document reference as a set of DocRefAuthor
* implementation instances. This field is immutable so should be set using
* the constructor of the implementing class.
* @return The set of authors.
*/
public List getAuthorList();
/**
* Returns a CRC64 checksum of this document reference, allowing for easy
* comparisons with other document references.
* @return Value of property CRC.
*/
public String getCRC();
/**
* If remarks have been made about this document reference, this method
* will return them.
* @return Value of property Remark.
*/
public String getRemark();
/**
* Set the remarks for this document reference using this method. Remarks
* can be anything, it is derived from the equivalent field in the GenBank
* format.
* @param Remark New value of property Remark.
* @throws ChangeVetoException in case of objections.
*/
public void setRemark(String Remark) throws ChangeVetoException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy