Class BabelnetAnnotator

  • 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 - BabelNet annotator")
    public class BabelnetAnnotator
    extends gate.creole.AbstractLanguageAnalyser
    implements gate.ProcessingResource, Serializable, DRIModule
    This module enrich the textual contents of a paper by applying WSD, by invoking BabelNet REFERENCE: http://babelnet.org/
    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 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
    • Constructor Detail

      • BabelnetAnnotator

        public BabelnetAnnotator()
    • Method Detail

      • getBabelnetAPIkey

        public String getBabelnetAPIkey()
      • setBabelnetAPIkey

        @RunTime
        @CreoleParameter(defaultValue="",
                         comment="Set the babelNet API key - http://babelnet.org/")
        public void setBabelnetAPIkey​(String babelnetAPIkey)
      • getBabelnetLanguage

        public String getBabelnetLanguage()
      • setBabelnetLanguage

        @RunTime
        @CreoleParameter(defaultValue="",
                         comment="Set the language to consider for BabelNet disambiguation")
        public void setBabelnetLanguage​(String babelnetLanguage)
      • getSentenceAnnotationSetToAnalyze

        public String getSentenceAnnotationSetToAnalyze()
      • setSentenceAnnotationSetToAnalyze

        @RunTime
        @CreoleParameter(defaultValue="Analysis",
                         comment="Set name of the annotation set where the sentences to parse are annotated")
        public void setSentenceAnnotationSetToAnalyze​(String sentenceAnnotationSetToAnalyze)
      • getSentenceAnnotationTypeToAnalyze

        public String getSentenceAnnotationTypeToAnalyze()
      • setSentenceAnnotationTypeToAnalyze

        @RunTime
        @CreoleParameter(defaultValue="Sentence",
                         comment="The type of sentence annotations")
        public void setSentenceAnnotationTypeToAnalyze​(String sentenceAnnotationTypeToAnalyze)
      • getTokenAnnotationSetToAnalyze

        public String getTokenAnnotationSetToAnalyze()
      • setTokenAnnotationSetToAnalyze

        @RunTime
        @CreoleParameter(defaultValue="Analysis",
                         comment="Set name of the annotation set where the token of the sentences to parse are annotated")
        public void setTokenAnnotationSetToAnalyze​(String tokenAnnotationSetToAnalyze)
      • getTokenAnnotationTypeToAnalyze

        public String getTokenAnnotationTypeToAnalyze()
      • setTokenAnnotationTypeToAnalyze

        @RunTime
        @CreoleParameter(defaultValue="Token",
                         comment="The type of token annotations")
        public void setTokenAnnotationTypeToAnalyze​(String tokenAnnotationTypeToAnalyze)
      • setSentenceIdsToAnalyze

        @RunTime
        @CreoleParameter(defaultValue="",
                         comment="The ids of all the sentence type annotations to parse. If empty or null all annotations of sentence type will be parsed")
        public void setSentenceIdsToAnalyze​(Set<String> sentenceIdsToAnalyze)
      • getSentenceIdsToAnalyze

        public Set<String> getSentenceIdsToAnalyze()
      • init

        public gate.Resource init()
        Specified by:
        init in interface gate.Resource
        Overrides:
        init in class gate.creole.AbstractProcessingResource
      • execute

        public void execute()
        Specified by:
        execute in interface gate.Executable
        Overrides:
        execute in class gate.creole.AbstractProcessingResource
      • main

        public static void main​(String[] args)
      • languageAwareDisambiguation

        public static void languageAwareDisambiguation​(boolean isLangAware,
                                                       BabelnetAnnotator babelAnn,
                                                       gate.Document doc,
                                                       List<gate.Annotation> sentenceAnnList,
                                                       String sentAnnSet,
                                                       String sentAnnType,
                                                       String tokenAnnSet,
                                                       String tokenAnnType)
        Determine the majority language from the list of sentence annotations and parse all the sentence annotations by means of the parser for that language. If the list of sentence annotations is null or empty all the annotation of the sentence type specified are parsed.
        Parameters:
        isLangAware -
        doc -
        sentenceAnnList -
        sentAnnSet -
        sentAnnType -
        tokenAnnSet -
        tokenAnnType -
      • languageAwareDisambiguation

        public static void languageAwareDisambiguation​(boolean isLangAware,
                                                       BabelnetAnnotator babelAnn,
                                                       gate.Document doc,
                                                       gate.Annotation sentenceAnn,
                                                       String sentAnnSet,
                                                       String sentAnnType,
                                                       String tokenAnnSet,
                                                       String tokenAnnType)
      • resetAnnotations

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