##############################################################################
#                                                                            #
# rules for the recognition of english pleonastic pronouns                   #
# this file uses the syntax for the declarations of automatons by Romaric    #
# Besancon (Cf. his 2003/03/11 document)                                     #
#                                                                            #
# Created on Thu may 10 2007                                                 #
# by Claire Mouton (Claire.Mouton@cea.fr)                                    #
#                                                                            #
# $Id: rules-eng-pleonasticPronouns.txt                                  #
#                                                                            #
##############################################################################
# expression des positions dans les contraintes: first current next last

set encoding=utf8
using modex lima-analysis.xml
using groups LinguisticProcessing


use categoriesClassesDeclaration-eng.txt

@AdjModal=(necessary,unnecessary,possible,impossible,certain,uncertain,likely,unlikely,important,good,bad,useful,unuseful,useless,advisable,unadvisable,convenient,unconvenient,inconvenient,sufficient,unsufficient,insufficient,economical,easy,desirable,undesirable,difficult,legal,illegal,true,false,right,wrong,expensive,cheap,common,rare,hard)

@VerbCognitif=(recommended,thought,believed,known,anticipated,assumed,expected,said)

@VerbLogique=(seems,appears,means,follows)

@PleoPron=($PRON)

@Is=(is,'s,is not,isn't,be,been)

@AdjModal:@PleoPron @Is:, (@Tout){1-n} , de:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()


@AdjModal:@PleoPron @Is:that:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@AdjModal:@PleoPron @Is:(for $NC){0-n} to:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@AdjModal:@PleoPron @Is:(for $NP){0-n} to:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@AdjModal:@PleoPron @Is:(for $PRON){0-n} to:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@VerbCognitif:@PleoPron @Is:that:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@VerbCognitif:@PleoPron @Is:to:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,left.2,"Pleon")
+CreateRelationBetween(left.1,left.2,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@VerbLogique:@PleoPron:that{0-1}:SYNTACTIC_RELATION:
+SecondUngovernedBy(left.1,trigger.1,"Pleon")
+CreateRelationBetween(left.1,trigger.1,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@PleoPron::@Is time to:SYNTACTIC_RELATION:
+SecondUngovernedBy(trigger.1,right.1,"Pleon")
+CreateRelationBetween(trigger.1,right.1,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@PleoPron::@Is thanks to:SYNTACTIC_RELATION:
+SecondUngovernedBy(trigger.1,right.1,"Pleon")
+CreateRelationBetween(trigger.1,right.1,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@PleoPron::@Is why:SYNTACTIC_RELATION:
+SecondUngovernedBy(trigger.1,right.1,"Pleon")
+CreateRelationBetween(trigger.1,right.1,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()

@PleoPron::@Is because:SYNTACTIC_RELATION:
+SecondUngovernedBy(trigger.1,right.1,"Pleon")
+CreateRelationBetween(trigger.1,right.1,"Pleon")
=>AddRelationInGraph()
=<ClearStoredRelations()
