Class BiblioEntryParser

  • All Implemented Interfaces:
    DRIModule, gate.creole.ANNIEConstants, gate.Executable, gate.LanguageAnalyser, gate.ProcessingResource, gate.Resource, gate.util.FeatureBearer, gate.util.NameBearer, Serializable

    @CreoleResource(name="DRI Modules - Bibliographic Entries Parser")
    public class BiblioEntryParser
    extends gate.creole.AbstractLanguageAnalyser
    implements gate.ProcessingResource, DRIModule
    Parse the contents of bibliographic entries by querying Bibsonomy, FreeCite, CrossRef and GoogleScholar
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class gate.creole.AbstractProcessingResource

        gate.creole.AbstractProcessingResource.InternalStatusListener, gate.creole.AbstractProcessingResource.IntervalProgressListener
    • Field Summary

      Fields 
      Modifier and Type Field Description
      Function<gate.Annotation,​Integer> bibsonomyParsing
      Bibsonomy
      Function<gate.Annotation,​Integer> crossRefParsing
      CrossRef
      Function<gate.Annotation,​Integer> freeCiteParsing
      FreeCite
      Function<gate.Annotation,​Integer> googleScholarParsingTitleAnn
      Google Scholar
      • Fields inherited from class gate.creole.AbstractLanguageAnalyser

        corpus, document
      • Fields inherited from class gate.creole.AbstractProcessingResource

        interrupted
      • Fields inherited from class gate.creole.AbstractResource

        name
      • Fields inherited from class gate.util.AbstractFeatureBearer

        features
      • Fields inherited from interface gate.creole.ANNIEConstants

        ANNOTATION_COREF_FEATURE_NAME, DATE_ANNOTATION_TYPE, DATE_POSTED_ANNOTATION_TYPE, DEFAULT_FILE, DOCUMENT_COREF_FEATURE_NAME, JOB_ID_ANNOTATION_TYPE, LOCATION_ANNOTATION_TYPE, LOOKUP_ANNOTATION_TYPE, LOOKUP_CLASS_FEATURE_NAME, LOOKUP_INSTANCE_FEATURE_NAME, LOOKUP_LANGUAGE_FEATURE_NAME, LOOKUP_MAJOR_TYPE_FEATURE_NAME, LOOKUP_MINOR_TYPE_FEATURE_NAME, LOOKUP_ONTOLOGY_FEATURE_NAME, MONEY_ANNOTATION_TYPE, ORGANIZATION_ANNOTATION_TYPE, PERSON_ANNOTATION_TYPE, PERSON_GENDER_FEATURE_NAME, PLUGIN_DIR, SENTENCE_ANNOTATION_TYPE, SPACE_TOKEN_ANNOTATION_TYPE, TOKEN_ANNOTATION_TYPE, TOKEN_CATEGORY_FEATURE_NAME, TOKEN_KIND_FEATURE_NAME, TOKEN_LENGTH_FEATURE_NAME, TOKEN_ORTH_FEATURE_NAME, TOKEN_STRING_FEATURE_NAME
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void bibsonomyAnalysis​(gate.Annotation ref, String refTxt)
      Parse a bibliographic entry by Bibsonomy and store results as annotation features
      static BibTexWrap bibsonomyExpansion​(gate.Annotation ref, String refTxt, String disambiguationString)
      Given the bibliographic entry GATE annotation, its text, a entry is retrieved from Bibsonomy.
      void crossRefAnalysis​(gate.Annotation ref, String refTxt)
      Parse a bibliographic entry by CrossRef and store results as annotation features
      void execute()  
      void freeCiteAnalysis​(gate.Annotation ref, String refTxt)
      Parse a bibliographic entry by FreeCite and store results as annotation features
      String getInputBiblioEntryAS()  
      String getInputBiblioEntryAStype()  
      String getUseBibsonomy()  
      String getUseCrossRef()  
      String getUseFreeCite()  
      String getUseGoogleScholar()  
      void googleScholarAnalysis​(gate.Annotation ref, String refTxt)
      Parse a bibliographic entry by Bibsonomy and store results as annotation features
      static GoogleScholarResult googleScholarExpansion​(gate.Annotation ref, String refTxt, String disambiguationString)
      Given the bibliographic entry GATE annotation, its text, a Google Scholar search result is retrieved.
      static void populateFmBibtex​(gate.FeatureMap fm, BibTexWrap resultEntry)
      Add the Bibsonomy bibliographic entry parsing results as features of a feature map
      static void populateFmGoogleScholar​(gate.FeatureMap fm, GoogleScholarResult resultEntry)
      Add the Google Scholar bibliographic entry parsing results as features of a feature map
      boolean resetAnnotations()
      Delete the annotations provided by a module
      void setInputBiblioEntryAS​(String inputCitationAS)  
      void setInputBiblioEntryAStype​(String inputCitationAStype)  
      void setUseBibsonomy​(String useBibsonomy)  
      void setUseCrossRef​(String useCrossRef)  
      void setUseFreeCite​(String useFreeCite)  
      void setUseGoogleScholar​(String useGoogleScholar)  
      • Methods inherited from class gate.creole.AbstractLanguageAnalyser

        getCorpus, getDocument, setCorpus, setDocument
      • Methods inherited from class gate.creole.AbstractProcessingResource

        addProgressListener, addStatusListener, cleanup, fireProcessFinished, fireProgressChanged, fireStatusChanged, getRuntimeParameterValues, getRuntimeParameterValues, init, interrupt, isInterrupted, reInit, removeProgressListener, removeStatusListener
      • Methods inherited from class gate.creole.AbstractResource

        checkParameterValues, flushBeanInfoCache, forgetBeanInfo, getBeanInfo, getInitParameterValues, getInitParameterValues, getName, getParameterValue, getParameterValue, getParameterValues, removeResourceListeners, setName, setParameterValue, setParameterValue, setParameterValues, setParameterValues, setResourceListeners, toString
      • Methods inherited from class gate.util.AbstractFeatureBearer

        getFeatures, setFeatures
      • Methods inherited from interface gate.Executable

        interrupt, isInterrupted
      • Methods inherited from interface gate.util.FeatureBearer

        getFeatures, setFeatures
      • Methods inherited from interface gate.util.NameBearer

        getName, setName
      • Methods inherited from interface gate.ProcessingResource

        reInit
      • Methods inherited from interface gate.Resource

        cleanup, getParameterValue, init, setParameterValue, setParameterValues
    • Field Detail

      • freeCiteParsing

        public Function<gate.Annotation,​Integer> freeCiteParsing
        FreeCite
      • crossRefParsing

        public Function<gate.Annotation,​Integer> crossRefParsing
        CrossRef
      • bibsonomyParsing

        public Function<gate.Annotation,​Integer> bibsonomyParsing
        Bibsonomy
      • googleScholarParsingTitleAnn

        public Function<gate.Annotation,​Integer> googleScholarParsingTitleAnn
        Google Scholar
    • Constructor Detail

      • BiblioEntryParser

        public BiblioEntryParser()
    • Method Detail

      • getInputBiblioEntryAS

        public String getInputBiblioEntryAS()
      • setInputBiblioEntryAS

        @RunTime
        @CreoleParameter(defaultValue="Analysis",
                         comment="The name of the input annotation set for Bibliographic Entries")
        public void setInputBiblioEntryAS​(String inputCitationAS)
      • getInputBiblioEntryAStype

        public String getInputBiblioEntryAStype()
      • setInputBiblioEntryAStype

        @RunTime
        @CreoleParameter(defaultValue="ref",
                         comment="The name of the input annotation type for Bibliographic Entries")
        public void setInputBiblioEntryAStype​(String inputCitationAStype)
      • getUseGoogleScholar

        public String getUseGoogleScholar()
      • setUseGoogleScholar

        @RunTime
        @CreoleParameter(defaultValue="true",
                         comment="Set true to parse biblio entries by Google Scholar")
        public void setUseGoogleScholar​(String useGoogleScholar)
      • getUseBibsonomy

        public String getUseBibsonomy()
      • setUseBibsonomy

        @RunTime
        @CreoleParameter(defaultValue="true",
                         comment="Set true to parse biblio entries by Bibsonomy")
        public void setUseBibsonomy​(String useBibsonomy)
      • getUseFreeCite

        public String getUseFreeCite()
      • setUseFreeCite

        @RunTime
        @CreoleParameter(defaultValue="true",
                         comment="Set true to parse biblio entries by FreeCite")
        public void setUseFreeCite​(String useFreeCite)
      • getUseCrossRef

        public String getUseCrossRef()
      • setUseCrossRef

        @RunTime
        @CreoleParameter(defaultValue="true",
                         comment="Set true to parse biblio entries by CrossRef")
        public void setUseCrossRef​(String useCrossRef)
      • execute

        public void execute()
                     throws gate.creole.ExecutionException
        Specified by:
        execute in interface gate.Executable
        Overrides:
        execute in class gate.creole.AbstractProcessingResource
        Throws:
        gate.creole.ExecutionException
      • freeCiteAnalysis

        public void freeCiteAnalysis​(gate.Annotation ref,
                                     String refTxt)
        Parse a bibliographic entry by FreeCite and store results as annotation features
        Parameters:
        ref - Biblio entry annotation
        refTxt -
      • crossRefAnalysis

        public void crossRefAnalysis​(gate.Annotation ref,
                                     String refTxt)
        Parse a bibliographic entry by CrossRef and store results as annotation features
        Parameters:
        ref - Biblio entry annotation
        refTxt -
      • bibsonomyAnalysis

        public void bibsonomyAnalysis​(gate.Annotation ref,
                                      String refTxt)
        Parse a bibliographic entry by Bibsonomy and store results as annotation features
        Parameters:
        ref - Biblio entry annotation
        refTxt -
      • bibsonomyExpansion

        public static BibTexWrap bibsonomyExpansion​(gate.Annotation ref,
                                                    String refTxt,
                                                    String disambiguationString)
        Given the bibliographic entry GATE annotation, its text, a entry is retrieved from Bibsonomy. The disambiguationString provides a text to guess the right bibsonomy result if multiple matching entry are found for a bibliography entry.
        Parameters:
        ref -
        refTxt -
        disambiguationString -
        Returns:
      • populateFmBibtex

        public static void populateFmBibtex​(gate.FeatureMap fm,
                                            BibTexWrap resultEntry)
        Add the Bibsonomy bibliographic entry parsing results as features of a feature map
        Parameters:
        fm -
        resultEntry -
      • googleScholarAnalysis

        public void googleScholarAnalysis​(gate.Annotation ref,
                                          String refTxt)
        Parse a bibliographic entry by Bibsonomy and store results as annotation features
        Parameters:
        ref - Biblio entry annotation
        refTxt -
      • googleScholarExpansion

        public static GoogleScholarResult googleScholarExpansion​(gate.Annotation ref,
                                                                 String refTxt,
                                                                 String disambiguationString)
        Given the bibliographic entry GATE annotation, its text, a Google Scholar search result is retrieved. The disambiguationString provides a text to guess the right Google Scholar search result if multiple matching entry are found for a bibliography entry.
        Parameters:
        ref -
        refTxt -
        disambiguationString -
        Returns:
      • populateFmGoogleScholar

        public static void populateFmGoogleScholar​(gate.FeatureMap fm,
                                                   GoogleScholarResult resultEntry)
        Add the Google Scholar bibliographic entry parsing results as features of a feature map
        Parameters:
        fm -
        resultEntry -
      • resetAnnotations

        public boolean resetAnnotations()
        Description copied from interface: DRIModule
        Delete the annotations provided by a module
        Specified by:
        resetAnnotations in interface DRIModule
        Returns: