2017-08-12 79 views
0

我目前正在尝试编写JAPE规则,可以从原始研究文章中识别评论。 假设我想突出显示一个短语,例如“在本评论中我们将讨论...”,“评论总结..”等。 现在我有:JAPE规则区分文档

Phase: Review 
Input: Token 
Options: control = appelt 

Macro: REVIEWTERM 
({Token.string ==~ "[Rr]eview"} | 
{Token.string ==~ "[Oo]verview"} | 
{Token.string ==~ "[Mm]inireview"} | 
{Token.string ==~ "[Ss]tudies"} | 
{!Token.string == "trial"} | 
{!Token.string == "case", !Token.string == "report"}) 

Rule: Mainreview 
(
({Token.category == "IN"})? 
({Token.category == "DT"})? 
(REVIEWTERM) 
({Token.category == "PRP"})? 
{Token.category == "VBZ"} 
): review --> 
:review.Review = {rule = Mainreview} 

但它不能正常工作。你能告诉我哪里出了错?

回答

0

首先我会建议更换喜欢

{Token.string ==〜“[RR] EVIEW”}

与地名与这些值,其中区分大小写标志设置为false宏的选项。

从MainReview规则,我可以看到你有一个稳定的规则(REVIEWTERM)(VBZ)

请确保:

a)您的POS标注器执行此戏言规则之前(只是为了让确定)

b)您的POS标注器产生VBZ类以上

的例子。如果没有帮助 - 请让我知道,我会尝试运行在我的环境这条规则。

+0

感谢您的回答! a)POS标记器在JAPE传感器之前执行。 b)大多数单词“review”后面跟着一个单词,这就是为什么我选择了VBZ类别。该规则适用于主题中的短语,但它也突出垃圾,如“IBD是”,“是”,这不是我正在寻找的评论文章的标志 – smirnovalee

0

在我看来,由于{!Token.string == "trial"} | {!Token.string == "case", !Token.string == "report"}部件,几乎任何令牌都会触发宏REVIEWTERM。除了试用版,案例或报告之外,它将与任何令牌匹配。

因此,您目前的规则Mainreview或多或少地给我任何令牌后跟VBZ(分开或不分开PRP)。