<?xml version="1.0" encoding="UTF-8"?> <!-- -*- nxml -*- -->
<postchunk>
  <section-def-cats>

     
    <def-cat n="inf">
      <cat-item name="inf"/>
    </def-cat>

    <def-cat n="verbcj">
      <cat-item name="verbcj"/>
      <cat-item name="verbcj_enc"/><!--Só entran verbos separábeis con pron intercalado, por tanto 1 unidade léxica (mlu) -->
    </def-cat>

    <def-cat n="aux_verb">
      <cat-item name="aux_verb"/>
    </def-cat>

    <def-cat n="haver_pp">
      <cat-item name="haver_pp"/>
      <cat-item name="haver_pp_enc"/><!--O enclítico forma mlu e por tanto ten o mesmo número de formas léxicas que haver_pp -->
    </def-cat>

    <def-cat n="aux_haver_pp">
      <cat-item name="aux_haver_pp"/>
      <cat-item name="aux_haver_pp_enc"/>
    </def-cat>

    <def-cat n="be_adj">
      <cat-item name="be_adj"/>
    </def-cat>

    <def-cat n="haverhi">
      <cat-item name="haverhi"/>
    </def-cat>

    <def-cat n="haverhi_pp">
      <cat-item name="haverhi_pp"/>
    </def-cat>

    <def-cat n="aux_haverhi">
      <cat-item name="aux_haverhi"/>
    </def-cat>

    <def-cat n="aux_haverhi_pp">
      <cat-item name="aux_haverhi_pp"/>
    </def-cat>

    <def-cat n="SUBJ">
      <cat-item name="subj"/>
    </def-cat>

    <def-cat n="adv">
      <cat-item name="adv"/>
    </def-cat>

  </section-def-cats>

  <section-def-attrs>

    <def-attr n="pers">
      <attr-item tags="p1"/>
      <attr-item tags="p2"/>
      <attr-item tags="p3"/>
      <attr-item tags="PD"/>
    </def-attr>

    <def-attr n="gen">
      <attr-item tags="m"/>
      <attr-item tags="f"/>
      <attr-item tags="mf"/>
      <attr-item tags="GD"/>
      <attr-item tags="nt"/>
    </def-attr>

   <def-attr n="nbr">
      <attr-item tags="sg"/>
      <attr-item tags="pl"/>
      <attr-item tags="sp"/>
      <attr-item tags="ND"/>
   </def-attr>

   <def-attr n="a_verb">
      <attr-item tags="vblex"/>
      <attr-item tags="vbser"/>
      <attr-item tags="vbhaver"/>
      <attr-item tags="vbmod"/>
      <attr-item tags="vaux"/>
    </def-attr>
    
    <def-attr n="temps">
      <attr-item tags="inf"/>
      <attr-item tags="pres"/>
      <attr-item tags="past"/>
      <attr-item tags="pri"/>
      <attr-item tags="prs"/>
      <attr-item tags="imp"/>
      <attr-item tags="pii"/>
      <attr-item tags="cni"/>
      <attr-item tags="ifi"/>
      <attr-item tags="pis"/>
      <attr-item tags="pp"/>
      <attr-item tags="ger"/>
      <attr-item tags="pprs"/>
      <attr-item tags="subs"/>
      <attr-item tags="fti"/>
    </def-attr>

    <def-attr n="a_SV">
      <attr-item tags="SVneg"/>
      <attr-item tags="SV"/>
    </def-attr>     

  </section-def-attrs>
  
  <section-def-vars>
    <def-var n="paraula"/>
    <def-var n="temps_aux"/>
  </section-def-vars>


  <section-rules>

  <!--REGRAS PARA AS NEGACIÓNS (E ADVERBIOS INTERCALADOS) -->

    <rule comment="CHUNK: HAVER_PP">
      <pattern>
        <pattern-item n="haver_pp"/>
      </pattern>
      <action>
	<choose>
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>      
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<lit v="not"/>
		<lit-tag v="adv"/>
	      </lu>
	      <b/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	    </out>  
	  </when>
	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	    </out>
	  </otherwise>
	</choose>
      </action>
    </rule>


  <rule comment="CHUNK: AUX VERB">
      <pattern>
        <pattern-item n="aux_verb"/>
      </pattern>
      <action>
	<choose>
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>      
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<lit v="not"/>
		<lit-tag v="adv"/>
	      </lu>
	      <b/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	    </out>  
	  </when>
	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	    </out>
	  </otherwise>
	</choose>
      </action>
    </rule>
  
   <rule comment="CHUNK: AUX HAVER PP">
      <pattern>
        <pattern-item n="aux_haver_pp"/>
      </pattern>
      <action>
	<choose>
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>      
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<lit v="not"/>
		<lit-tag v="adv"/>
	      </lu>
	      <b pos="2"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	      <b/>
	      <lu>
		<clip pos="3" part="whole"/>
	      </lu>
	    </out>  
	  </when>
	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	      <b pos="2"/>
	       <lu>
		<clip pos="3" part="whole"/>
	      </lu>
	    </out>
	  </otherwise>
	</choose>
      </action>
    </rule>

  <rule comment="CHUNK: VERBO CONXUGADO">
      <pattern>
        <pattern-item n="verbcj"/>
      </pattern>
      <action>
	<choose>
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>  
	    <choose>
	      <when>
		<test>
		  <or>
		    <equal>
		      <clip pos="0" part="a_verb"/>
		      <lit-tag v="vbser"/>
		    </equal>
		    <equal>
		      <clip pos="0" part="a_verb"/>
		      <lit-tag v="vaux"/>
		    </equal>
		  </or>
		</test>
		<out>
		  <lu>
		    <clip pos="1" part="whole"/>
		  </lu>
		  <b/>
		  <lu>
		    <lit v="not"/>
		    <lit-tag v="adv"/>
		  </lu>
		</out>
	      </when>
	      <otherwise>
		<choose>
		  <when>
		    <test>
		      <and>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="pri"/>
			</equal>
			<equal>
			  <clip pos="0" part="pers"/>
			  <lit-tag v="p3"/>
			</equal>
			<equal>
			  <clip pos="0" part="nbr"/>
			  <lit-tag v="sg"/>
			</equal>
		      </and>
		    </test>
		    <let>
		      <var n="temps_aux"/>
		      <lit-tag v="pri.p3.sg"/>
		    </let>
		    <let>
		      <clip pos="1" part="temps"/>
		      <lit-tag v="inf"/>
		    </let>
		    <let>
		      <clip pos="1" part="pers"/>
		      <lit v=""/>
		    </let>
		    <let>
		      <clip pos="1" part="nbr"/>
		      <lit v=""/>
		    </let>
		  </when>
		  <when>
		    <test>
		      <or>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="pri"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="prs"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="imp"/>
			</equal>
		      </or>
		    </test>
		    <let>
		      <var n="temps_aux"/>
		      <lit-tag v="pres"/>
		    </let>	
		  </when>
		  <when>
		    <test>
		      <or>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="cni"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="ifi"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="pii"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="pis"/>
			</equal>
			<equal>
			  <clip pos="0" part="temps"/>
			  <lit-tag v="past"/>
			</equal>
		      </or>
		    </test>
		    <let>
		      <var n="temps_aux"/>
		      <lit-tag v="past"/>
		    </let>
		    <let>
		      <clip pos="1" part="temps"/>
		      <lit-tag v="inf"/>
		    </let>
		  </when>
		</choose>
		<out>
		  <lu>
		    <get-case-from pos="1">
		      <lit v="do"/>
		    </get-case-from>
		    <lit-tag v="vbdo"/>
		    <var n="temps_aux"/>
		  </lu>
		  <b/>
		  <lu>
		    <lit v="not"/>
		    <lit-tag v="adv"/>
		  </lu>
		  <b/>
		</out>
		<choose>
		  <when>
		    <test>
		      <equal>
			<case-of pos="1" part="lem"/>
			<lit v="Aa"/>
		      </equal>
		    </test>
		    <modify-case>
		      <clip pos="1" part="lem"/>
		      <lit v="aa"/>
		    </modify-case>
		  </when>
		</choose>
		<out>
		  <lu>
		    <clip pos="1" part="whole"/>
		  </lu>
		</out>
	      </otherwise>
	    </choose>
	  </when>
	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	    </out>
	  </otherwise>
	</choose>
      </action>
    </rule>

 
  <rule comment="CHUNK: SUBJ">
      <pattern>
        <pattern-item n="SUBJ"/>
      </pattern>
      <action>
	<choose>
	  <when>
	    <test>
	      <and>
		<equal>
		  <clip pos="1" part="pers"/>
		  <lit-tag v="p3"/>
		</equal>
		<equal>
		  <clip pos="1" part="nbr"/>
		  <lit-tag v="sg"/>
		</equal>
	      </and>
	    </test>
	    <let>
	      <clip pos="1" part="gen"/>
	      <lit-tag v="nt"/>
	    </let>
	  </when>
	  <when>
	    <test>
	      <equal>
		<clip pos="1" part="pers"/>
		<lit-tag v="p2"/>
	      </equal>
	    </test>
	    <let>
	      <clip pos="1" part="nbr"/>
	      <lit-tag v="sp"/>
	    </let>
	    <let>
	      <clip pos="1" part="gen"/>
	      <lit-tag v="mf"/>
	    </let>
	  </when>
	  <otherwise>
	    <let>
	      <clip pos="1" part="gen"/>
	      <lit-tag v="mf"/>
	    </let>
	  </otherwise>
	</choose>
	<out>
	  <lu>
	    <clip pos="1" part="whole"/>
	  </lu>
	</out>
      </action>
  </rule>



  <rule comment="CHUNK: HAVER-HI">
      <pattern>
        <pattern-item n="haverhi"/>
      </pattern>
      <action>
	<choose><!--Si en el t2x s'ha posat nombre pl, cal canviar manera d'enviar verb perquè no doni error (sense persona ni nombre, coses del diccionari) -->
	  <when>
	    <test>
	      <and>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="pri"/>
		</equal>
		<equal>
		  <clip pos="0" part="nbr"/>
		  <lit-tag v="pl"/>
		</equal>
	      </and>
	    </test>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="lem"/>
		<clip pos="2" part="a_verb"/>
		<lit-tag v="pres"/>
	      </lu>
	    </out>
	  </when>
	  <when>
	    <test>
	      <and>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="past"/>
		</equal>
		<equal>
		  <clip pos="0" part="nbr"/>
		  <lit-tag v="pl"/>
		</equal>
	      </and>
	    </test>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="lem"/>
		<clip pos="2" part="a_verb"/>
		<clip pos="2" part="temps"/>
	      </lu>
	    </out>
	  </when>
	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	    </out>
	  </otherwise>
	</choose>
	<choose>
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>
	    <out>
	      <b/>
	      <lu>
		<lit v="not"/>
		<lit-tag v="adv"/>
	      </lu>
	    </out>
	  </when>
	</choose>
	<choose>
	  <when><!--segons si porta aux o no, pot haver-hi una tercera lu, envia-la si hi és -->
	    <test>
	      <or>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="cni"/>
		</equal>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="fti"/>
		</equal>
	      </or>
	    </test>
	    <out>
	      <b pos="2"/>
	       <lu>
		<clip pos="3" part="whole"/>
	      </lu>
	    </out>
	  </when>
	</choose>
      </action>
  </rule>

  <rule comment="CHUNK: HAVER-HI">
      <pattern>
        <pattern-item n="haverhi_pp"/>
      </pattern>
      <action>
	<choose><!--Si en el t2x s'ha posat nombre pl, cal canviar manera d'enviar verb perquè no doni error (sense persona ni nombre, coses del diccionari) -->
	  <when>
	    <test>
	      <and>
		<equal>
		  <clip pos="0" part="nbr"/>
		  <lit-tag v="pl"/>
		</equal>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="pri"/>
		</equal>
	      </and>		
	    </test>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="lem"/>
		<clip pos="2" part="a_verb"/>
		<lit-tag v="pres"/>
	      </lu>
	      <b pos="2"/>
	    </out>
	  </when>
	  <when>
	    <test>
	      <and>
		<equal>
		  <clip pos="0" part="nbr"/>
		  <lit-tag v="pl"/>
		</equal>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="past"/>
		</equal>
	      </and>		
	    </test>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="lem"/>
		<clip pos="2" part="a_verb"/>
		<clip pos="2" part="temps"/>
	      </lu>
	      <b pos="2"/>
	    </out>
	  </when>

	  <otherwise>
	    <out>
	      <lu>
		<clip pos="1" part="whole"/>
	      </lu>
	      <b pos="1"/>
	      <lu>
		<clip pos="2" part="whole"/>
	      </lu>
	      <b pos="2"/>
	    </out>
	  </otherwise>
	</choose>
	<choose><!--si és negatiu, imprimeix el 'not', sempre en 2a posició, tant si porta aux com no (there would have been, there has not been). -->
	  <when>
	    <test>
	      <equal>
		<clip pos="0" part="a_SV"/>
		<lit-tag v="SVneg"/>
	      </equal>
	    </test>
	    <out>
	      <lu>
		<lit v="not"/>
		<lit-tag v="adv"/>
	      </lu>
	      <b/>
	    </out>
	  </when>
	</choose>
	<out><!--el tercer chunk sempre hi és -->
	  <lu>
	    <clip pos="3" part="whole"/>
	  </lu>
	</out>
	<choose>
	  <when><!--segons si porta aux o no, pot haver-hi una quarta lu, envia-la si hi és -->
	    <test>
	      <or>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="cni"/>
		</equal>
		<equal>
		  <clip pos="0" part="temps"/>
		  <lit-tag v="fti"/>
		</equal>
	      </or>
	    </test>
	    <out>
	      <b pos="3"/>
	       <lu>
		<clip pos="4" part="whole"/>
	      </lu>
	    </out>
	  </when>
	</choose>
      </action>
  </rule>


  </section-rules>
</postchunk>
