-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathDocRef.java
More file actions
118 lines (103 loc) · 3.72 KB
/
DocRef.java
File metadata and controls
118 lines (103 loc) · 3.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/*
* 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<DocRefAuthor> 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;
}