class: AuthorFormat

public abstract class: AuthorFormat
Author: franke (initial creation)
Project: Phase: 1.0; Status: Proposed; Version: $Revision: 1951 $ $LastChangedDate: 2009-05-07 10:; Complexity: 1
Dates: Created: 16.07.2009 15:13:05; Modified: 16.07.2009 15:13:05;
Flags: Active: false; IsRoot: false; IsLeaf: false;
Extension Points:
UUID: {65CAD3AF-D887-43ea-904A-DAB7E4390750}
Abstract superclass for author string decoding formats. Provides basic functionality.
 

Goto: Custom Properties, Fields, Methods

See also: Author, AuthorDecoder, BibTeXSpecialFormat1, LooseFormatWithInfoInBraces, OxfordJournalFormat, ResidualFormat, ScienceDirectFormat, WesternFormat1, WesternFormat10, WesternFormat11, WesternFormat12, WesternFormat13, WesternFormat14, WesternFormat2, WesternFormat3, WesternFormat4, WesternFormat5, WesternFormat6, WesternFormat7, WesternFormat8, WesternFormat9

Appears in: creators

Connections
 
Custom Properties
 
AuthorFormat Attributes
Attribute Details
protected static const String
  FORBIDDEN_CHARACTERS
Initial: "(\\d|\\*|\\(|\\)|\\[|\\]|\\{|\\}|!|\\$|§|%|&|/|=|\\+|\\?|¤|email|written|et al)"
protected static const String
  GIVEN_NAME_FORMAT
Initial: "(" + NAME + "( *(" + NAME + "|" + INITIALS + "))*( +" + PREFIX + ")?)"
protected static const String
  GIVEN_NAME_FORMAT_MIXED
Initial: "((" + NAME + "|" + INITIALS + ")( *(" + NAME + "|" + INITIALS + "))*)"
protected Set
  givenNames
Initial: null
protected static const String
  IGNORE_CHARACTERS
Initial: ".*(@).*"
protected static const String
  INITIAL
Initial: "(([A-Z]|Ch|Sch|Th|Chr)\\.?)"
protected static const String
  INITIALS
Initial: "(" + INITIAL + "( *-? *" + INITIAL + ")*)"
private static Logger
  logger
Initial: Logger.getLogger(AuthorFormat.class)
protected static const String
  LOOSE_SYLLABLE
Initial: "([\\p{L}\\d\\.'\\-\\*\\(\\)\\[\\]\\{\\}@!\\$§%&/=\\+\\?¤]+)"
Notes: protected static final String LOOSE_SYLLABLE = "([\\w\\.'-]+)";
protected static const String
  MIDDLEFIX
Initial: "(y|dela|de la)"
protected static const String
  NAME
Initial: "(" + WORD + "( *- *" + WORD + ")*)"
protected static const String
  PREFIX
Initial: "(von|vom|von +und +zu|zu|de +la|dela|la|d e|du|of|van|van +der|van +den|den|der|und|le|Le|La)"
protected Set
  surnames
Initial: null
protected static const String
  SYLLABLE
Initial: "([A-ZÄÖÜ][a-zäöüßáâàéêèíîìôçø]+)"
protected static const String
  TITLE
Initial: "(Dr\\.|Doktor|Doctor|Prof\\.|Professor|Kardinal|Geheimrat|Bischof|)"
protected static const String
  WORD
Initial: "((O')?" + SYLLABLE + "(" + SYLLABLE + ")*)"
 
AuthorFormat Methods
Operation Details
public
compareTo(
   AuthorFormat o):int
Sequential
Notes: {@inheritDoc}
public
getAuthorListCheckingGivenNames(
   String[] authors):List
Sequential
Tags: throws=Exception
public
getAuthorListCheckingNames(
   String authorsString,
   String[] authors):List
Sequential
Tags: throws=Exception
Notes: Parses authors using controlled vocabularies.
@return A {@link List} of {@link Author} beans.
@link Exception}
public
getAuthorListLeadingSurname(
   String[] authors,
   String limit):List
Sequential
Notes: Parses authors in the following formats: "Müller, Herbert", "Meier-Schmitz, K.L." etc.
@return The authors as list of author objects.
public
getAuthorListLooseFormat(
   String[] authors):List
Sequential
protected
getAuthorListLooseFormatSurnameFirst(
   String[] authors):List
Sequential
public
getAuthorListNormalFormat(
   String[] authors):List
Sequential
Notes: Parses authors in the following formats: "Peter Müller" or "Linda McCartney" or "John Gabriel Smith-Wesson" or "Karl H. Meiser" Returns false results with e.g. "Harald Grün Haselstein" or "Karl Kardinal Lehmann" or "Ban Ki Moon"
@return The authors as list of author objects.
public
getAuthorListNormalFormat(
   String[] authors,
   String separator):List
Sequential
Notes: Parses authors in the following formats: "Peter Müller" or "Linda McCartney" or "John Gabriel Smith-Wesson" or "Karl H. Meiser" Returns false results with e.g. "Harald Grün Haselstein" or "Karl Kardinal Lehmann" or "Ban Ki Moon"
@return The authors as list of author objects.
public
getAuthorListWithInitials(
   String[] authors):List
Sequential
Notes: Parses authors in the following formats: "P. Müller" or "L. McCartney" or "J.-P. Smith-Wesson" or "K. H. Meiser" or "R-X Wang"
@return The authors as list of author objects.
public abstract
getAuthors(
   String authorString):List
Sequential
Tags: throws=Exception
Notes: This method is called to execute the parser.
@return A {@link List} of {@link Author} beans.
public abstract
getDescription():String
Sequential
Notes: Returns a description what kind of format this parser analyzes.
@return The description.
public
getGivenNames():Set
Sequential
Tags: throws=Exception
Notes: Returns the list of given names. If the list is not initialized yet, this is done.
@return The list of given names.
@link Exception}.
public abstract
getName():String
Sequential
Notes: Returns the name of this parser.
@return The name
public static
getNamesFromFile(
   String filename):Set
Sequential
Tags: throws=Exception
Notes: Reads words from a file into a {@link Set}.
@return A {@link Set} containing the words in a file.
@link Exception}.
public abstract
getPattern():String
Sequential
Notes: Returns the regular expression to identify a string this Class can probably handle.
@return A string containing a regular expression.
public abstract
getSignificance():int
Sequential
Notes: This method is called to get an integer value that indicates how reliable the result of this parser is.
@return An integer value between 1 (highly reliable) and {@link Integer.MAX_VALUE} (not reliable at all).
public
getSurnames():Set
Sequential
Tags: throws=Exception
Notes: Returns the list of surnames. If the list is not initialized yet, this is done.
@return The list of surnames.
@link Exception}.
public abstract
getWarning():String
Sequential
Notes: Should be implemented in case the format the parser analyzes is very special or is covered by other Parsers, too.
@return A warning message why the result of this parser might be problematic.
public
isGivenName(
   String name):boolean
Sequential
Tags: throws=Exception
Notes: Checks a controlled vocabulary, if the given string is a given name.
@return <code>true</code> if the given string is contained in the list of given names.
@link Exception}.
public
isSurname(
   String name):boolean
Sequential
Tags: throws=Exception
Notes: Checks a controlled vocabulary, if the given string is a surname.
@return <code>true</code> if the given string is contained in the list of surnames.
@link Exception}.
public
setGivenNames(
   Set givenNames):void
Sequential
public
setSurnames(
   Set surnames):void
Sequential