Project

General

Profile

Download (1.55 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2009 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9

    
10
package eu.etaxonomy.cdm.model.reference;
11

    
12
/**
13
 * This interface represents journals. A journal is a periodical
14
 * {@link IPublicationBase publication} containing several {@link IArticle articles}.
15
 * <P>
16
 * This class corresponds, according to the TDWG ontology, to the publication type
17
 * term (from PublicationTypeTerm): "Journal".
18
 */
19
public interface IJournal extends IPublicationBase{
20

    
21
	/**
22
	 * Returns the ISSN (International Standard Serial Number)
23
	 */
24
	public String getIssn();
25

    
26
	/**
27
	 * Sets the ISSN (International Standard Serial Number)
28
	 * @param issn
29
	 */
30
	public void setIssn(String issn);
31

    
32
    /**
33
     * Guesses if the publication name is a journal name
34
     * on comparing typical journal name parts
35
     * @param publicationName
36
     * @return true if it is probably a journal
37
     */
38
    public static boolean guessIsJournalName(String publicationName) {
39
        String rgEx =
40
                "(.*((J|By?ull?|Mag|Centralbl|Newsl(ett)?|Trans|Chron|Cas|Giorn|Zhurn)\\.|"    //abbrev titles
41
                  + "Zeitung|Journal).*|"  //non-abbrev titles
42
                + "Blumea|Flora|Haussknechtia)";     //full title (no other title parts exist)
43
        //Trans. ??
44
        boolean matches = publicationName.matches(rgEx);
45
        return matches;
46
    }
47

    
48
}
(11-11/41)