如何使用GATE嵌入像“BWP Gazetteer”这样的外部插件

时间:2013-03-08 09:38:35

标签: nlp gate

我想使用BWP Gazetteer代替GATE的默认地名录。为此,我将其作为creole.xml中的资源添加,并将其JAR包含在工作区中。

Creole.xml

  <RESOURCE>
<NAME>BWPGazetteer</NAME>
<JAR>BWPGazetteer.jar</JAR>
<CLASS>bwp.gate.gazetteer.BWPGazetteer</CLASS>
<COMMENT>A BWPGazetteer.</COMMENT>
  <PARAMETER NAME="document" RUNTIME="true"
    COMMENT="The document to be processed"> gate.Document</PARAMETER>
  <PARAMETER NAME="annotationSetName" RUNTIME="true"
    COMMENT="The annotation set to be used for the generated annotations"
    OPTIONAL="true">java.lang.String</PARAMETER>
  <PARAMETER NAME="listsURL"
    DEFAULT="resources/gazetteer/lists.def"
    COMMENT="The URL to the file with list of lists" SUFFIXES="def">
    java.net.URL</PARAMETER>
  <PARAMETER DEFAULT="UTF-8"
    COMMENT="The encoding used for reading the definitions" NAME="encoding">
    java.lang.String</PARAMETER>
  <PARAMETER DEFAULT="true"
    COMMENT="Should this gazetteer diferentiate on case"
    NAME="caseSensitive">java.lang.Boolean</PARAMETER>
  <PARAMETER DEFAULT="true"
    COMMENT="Should this gazetteer only match whole words"
    NAME="wholeWordsOnly">java.lang.Boolean</PARAMETER>
    <PARAMETER NAME="normalizedDistanceThreshold"
            COMMENT="Maximum normalized distance(0.0-1.0) for a match"
            DEFAULT="0.1">
            java.lang.Double
        </PARAMETER>
<PARAMETER DEFAULT="true"
    COMMENT="Should this gazetter avoid overlapping annotations"
    NAME= "avoidOverlapingAnnotations">
    java.lang.Boolean
</PARAMETER>

有人能告诉我在我的JAVA代码或配置文件中需要进一步更改才能使用它吗?

1 个答案:

答案 0 :(得分:1)

您不需要修改任何creole.xml文件,只需下载并解压缩BWPGazetteer发行版,将BWPGazetteer目录加载为CREOLE插件,创建地名词典实例并将其插入管道在适当的地方。到目前为止,最简单的方法是使用GATE Developer来构建管道(包括在正确位置的相关地名词典实例),然后右键单击“Export for GATECloud.net”。这将生成一个zip文件,其中包含已保存的应用程序状态(application.xgapp)以及应用程序使用的所有插件和资源文件。

将此zip文件解压缩到项目中的某个位置,然后您只需使用PersistenceManager.loadObjectFromFile(或loadObjectFromUrl)加载已保存的应用程序及其所需的所有插件。