org.languagetool.resource.es.disambiguation.xml Maven / Gradle / Ivy
The newest version!
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/print.xsl" title="Pretty print" ?> <?xml-stylesheet type="text/css" href="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/rules.css" title="Easy editing stylesheet" ?> <!-- Spanish Disambiguation Rules for LanguageTool Copyright (C) 2011 Juan Martorell This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA --> <!DOCTYPE rules [ <!ENTITY % entities SYSTEM "../../resource/es/entities.ent" > %entities; ]> <rules lang="es" xsi:noNamespaceSchemaLocation="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/resource/disambiguation.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <unification feature="numero"> <equivalence type="S"> <token postag="(N.{2}|[ADP].{3}|V.{4})[SN].*|_GN_.S" postag_regexp="yes"/> </equivalence> <equivalence type="P"> <token postag="(N.{2}|[ADP].{3}|V.{4})[PN].*|_GN_.P" postag_regexp="yes"/> </equivalence> </unification> <unification feature="genero"> <equivalence type="M"> <token postag="(N.|[ADP].{2}|V.{5})[CMN].*|_GN_M." postag_regexp="yes"/> </equivalence> <equivalence type="F"> <token postag="(N.|[ADP].{2}|V.{5})[CF].*|_GN_F." postag_regexp="yes"/> </equivalence> </unification> <unification feature="persona"> <equivalence type="primera"> <token postag="(P.|V.{3})[10].*" postag_regexp="yes"/> </equivalence> <equivalence type="segona"> <token postag="(P.|V.{3})[20].*" postag_regexp="yes"/> </equivalence> <equivalence type="tercera"> <token postag="(P.|V.{3})[30].*" postag_regexp="yes"/> </equivalence> </unification> <rule id="SER_LA_REPERA" name="ser la repera"> <pattern> <token skip="4" postag="VS.*" postag_regexp="yes" inflected="yes">ser</token> <token>la</token> <marker> <token>repera</token> </marker> </pattern> <disambig action="add"> <wd pos="NCFS000"/> </disambig> </rule> <rulegroup id="IGNORE_ENGLISH_WORDS" name="etiqueta palabras inglesas para ignorarlas"> <antipattern> <token regexp="yes">the|than</token> <token postag="V.P.*" postag_regexp="yes"/> </antipattern> <rule> <pattern> <token postag="UNKNOWN" regexp="yes">&english_common;</token> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception></token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1,2"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token postag="_english_ignore_"/> <marker> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> </marker> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:2"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception></token> <token postag="UNKNOWN" regexp="yes">&english_common;<exception>in</exception></token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1,2"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> <token>'</token> <token>s</token> </marker> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token>to</token> <token regexp="yes">[a-z]+</token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:2 postags:VB"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token case_sensitive="yes">I</token> <token regexp="yes">[a-z]+<exception>buffet</exception><exception regexp="yes">&english_no;</exception></token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:2 postags:VB[PD]"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <!-- TODO: The Sino-Russian (change in tokenization) --> <rule> <pattern> <token postag="_english_ignore_|UNKNOWN" postag_regexp="yes" regexp="yes">[a-z]+<exception regexp="yes">saint|anti|&english_no;</exception></token> <token spacebefore="no">-</token> <token spacebefore="no" regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception></token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1,3"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[a-z]+<exception regexp="yes">saint|anti|&english_no;</exception></token> <token spacebefore="no">-</token> <token postag="_english_ignore_|UNKNOWN" postag_regexp="yes" spacebefore="no" regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception></token> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1,3"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token postag="_english_ignore_"/> <marker> <token regexp="yes">a|to</token> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> </marker> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:3"/> <disambig action="add"> <wd pos="_english_ignore_"/> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token postag="_english_ignore_"/> <marker> <token regexp="yes">a|to</token> </marker> <token postag="_english_ignore_"/> </pattern> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <token>from</token> <token/> <marker> <token>to</token> </marker> </pattern> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> </rulegroup> <rulegroup id="IGNORE_ENGLISH_WORDS2" name="etiqueta paraules angleses"> <rule> <pattern> <token postag="_english_ignore_"/> <marker> <token regexp="yes">[a-z]+|'s<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> </marker> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:2"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+<exception regexp="yes">&english_no;|&english_forward;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+|,<exception regexp="yes">&english_no;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_|allow_saxon_genitive" postag_regexp="yes"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+|,<exception regexp="yes">&english_no;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_|allow_saxon_genitive" postag_regexp="yes"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+|,<exception regexp="yes">&english_no;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_|allow_saxon_genitive" postag_regexp="yes"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[a-z]+|,<exception regexp="yes">&english_no;</exception><exception postag="_english_ignore_"/></token> </marker> <token postag="_english_ignore_|allow_saxon_genitive" postag_regexp="yes"/> </pattern> <filter class="org.languagetool.rules.IsEnglishWordFilter" args="formPositions:1"/> <disambig action="add"> <wd pos="_english_ignore_"/> </disambig> </rule> </rulegroup> <rulegroup id="fix_dict" name="fix dictionary"> <rule> <pattern> <token>primer</token> </pattern> <disambig action="replace"> <wd lemma="primero" pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <token>buen</token> </pattern> <disambig action="replace"> <wd lemma="bueno" pos="AQ0MS0"/> </disambig> </rule> <rule> <pattern> <token>mapuche</token> </pattern> <disambig action="replace"> <wd lemma="mapuche" pos="AQ0CN0"/> </disambig> </rule> <rule> <pattern> <token>mapuche</token> </pattern> <disambig action="add"> <wd lemma="mapuche" pos="NCCN000"/> </disambig> </rule> <rule> <pattern> <token>crió</token> </pattern> <disambig action="add"> <wd lemma="criar" pos="VMIS3S0"/> </disambig> </rule> <rule> <pattern> <token>dió</token> </pattern> <disambig action="add"> <wd lemma="dar" pos="VMIS3S0"/> </disambig> </rule> <rule> <pattern> <token>xi</token> </pattern> <disambig action="remove" postag="NCFS000"/> </rule> <rule> <!-- not always true, but better to analyze it this way --> <pattern> <token>mas</token> </pattern> <disambig action="replace" postag="RG"/> </rule> <rule> <!-- not always true, but better to analyze it this way --> <pattern> <token>ya</token> </pattern> <disambig action="remove" postag="CS"/> </rule> <rule> <pattern> <token><exception regexp="yes">,|;</exception></token> <marker> <token>entonces</token> </marker> </pattern> <disambig action="remove" postag="CS"/> </rule> </rulegroup> <rule id="ESTAIS" name="estáis (verb)"> <pattern> <token postag="V.*" postag_regexp="yes">estáis</token> </pattern> <disambig action="remove" postag="NCMP000"/> </rule> <rule id="HAS" name="has, estás (voseo)"> <pattern> <token postag="VAIP2V0" regexp="yes">has|estás</token> </pattern> <disambig action="remove" postag="VAIP2V0"/> </rule> <rule id="pagar_impuestos" name="pagar impuestos"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">pagar</token> <token postag="NCMP000">impuestos</token> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="PUNCT" name="puntuación"> <rule> <pattern> <token regexp="yes">[.;:!?…()\[\]‒–—―\-]</token> </pattern> <disambig action="add"> <wd pos="_PUNCT"/> </disambig> </rule> <rule id="PUNCT1" name="signos que no interrumpen el sintagma"> <pattern> <token regexp="yes">[,'"‘’“”«»¡¿]</token> </pattern> <disambig action="add"> <wd pos="_PUNCT_CONT"/> </disambig> </rule> <rule id="PUNCT_OPEN" name="comillas apertura"> <pattern> <marker> <token regexp="yes" spacebefore="yes">['"]</token> </marker> <token spacebefore="no"><exception postag="_PUNCT.*" postag_regexp="yes"/></token> </pattern> <disambig action="add"> <wd pos="_QM_OPEN"/> </disambig> </rule> <rule id="QM_OPEN" name="comillas apertura"> <pattern> <marker> <token regexp="yes" spacebefore="yes">[“‘«'"]</token> </marker> </pattern> <disambig action="add"> <wd pos="_QM_OPEN"/> </disambig> </rule> <rule id="QM_OPEN2" name="comillas apertura"> <pattern> <token postag="SENT_START"/> <marker> <token regexp="yes">[“‘«'"]</token> </marker> <token spacebefore="no"/> </pattern> <disambig action="add"> <wd pos="_QM_OPEN"/> </disambig> </rule> <rule id="QM_CLOSE" name="comillas de cierre"> <antipattern> <token postag="SENT_START"/> <token spacebefore="no">"</token> </antipattern> <pattern> <marker> <token regexp="yes" spacebefore="no">['"’”»]</token> </marker> </pattern> <disambig action="add"> <wd pos="_QM_CLOSE"/> </disambig> </rule> <rule id="ELLIPSIS" name="puntos suspensivos"> <pattern> <token>.</token> <token>.</token> <token>.</token> </pattern> <disambig action="add"> <wd pos="_ellipsis"/> <wd pos="_ellipsis"/> <wd pos="_ellipsis"/> </disambig> </rule> </rulegroup> <rule id="biblia" name="abreviaturas de libros de la Biblia"> <pattern case_sensitive="yes"> <marker> <token regexp="yes">Ab|Abd|Abdías|Ag|Am|Amós|Ap|Apocalipsis|Azarías|Ba|Bar|Baruc|Bel|Cantares|Canto|Carta|Cnt|Co|Col|Colosenses|Corintios|Cr|Cro|Crónicas|Ct|CtJ|Daniel|Deuteronomio|Dn|DnDC|DnGr|Dt|Ec|Eclesiastés|Eclesiástico|Eclo|Ef|Efesios|Esd|Esdras|Esr|Est|EstDC|Ester|Ex|Ez|Ezequiel|Filemón|Filipenses|Flm|Flp|Ga|Gl|Gn|Gálatas|Génesis|Ha|Hab|Habacuc|Hag|Hageo|Hb|Hch|Heb|Hebreos|Hechos|Is|Isaías|Jb|Jdt|Jer|Jeremías|Jl|Jn|Job|Joel|Jon|Jonás|Jos|Josué|Jr|Juan|Jud|Judas|Judit|Jue|Jueces|Lamentaciones|Lao|Laodicenses|Lc|Levítico|Lm|Lucas|Lv|M|Mac|Macabeos|Mal|Malaquías|Man|Manasés|Marcos|Mateo|Mc|Mi|Miq|Miqueas|Ml|Mt|Na|Nah|Nahúm|Ne|Neh|Nehemías|Nm|Nuevo|Números|Oración|Os|Oseas|P|Pedro|Pr|Proverbios|Qo|R|Reyes|Rm|Ro|Romanos|Rt|Rut|S|Sab|Sabiduría|Sal|Sal151|Salmo|Salmos|Salterio|Samuel|Santiago|Sb|serpiente|Si|SIH|So|Sof|Sofonías|St|Stg|Sus|Susana|Tb|Tesalonicenses|Testamento|Ti|Timoteo|Tit|Tito|Tm|Tobit|Tres|Ts|Tt|Za|Zac|Zacarías|Éxodo</token> </marker> <token regexp="yes">[0-9][0-9,.-]*</token> </pattern> <disambig action="add"> <wd pos="_abrev_biblia" lemma="_abrev_biblia"/> </disambig> </rule> <rule id="DE_HECHO" name="de hecho"> <pattern> <token>de</token> <marker> <token>hecho</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rulegroup id="LOC_PREP" name="locuciones preposicionales"> <rule id="pese_a" name="pese a"> <pattern> <marker> <token>pese</token> </marker> <token regexp="yes">a|al</token> <!-- TODO: excetpions? --> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> </disambig> </rule> <rule id="junto_a" name="junto a/con"> <antipattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token>junto</token> </antipattern> <pattern> <marker> <token>junto</token> <token regexp="yes">a|con</token> </marker> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> <wd pos="LOC_PREP"/> </disambig> </rule> <rule id="junto_al" name="junto al"> <antipattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token>junto</token> </antipattern> <pattern> <marker> <token>junto</token> </marker> <token>al</token> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> </disambig> </rule> <rule id="acerca_de" name="acerca de"> <antipattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token regexp="yes">acerca|aparte</token> </antipattern> <pattern> <marker> <token regexp="yes">acerca|aparte</token> <token>de</token> </marker> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> <wd pos="LOC_PREP"/> </disambig> </rule> <rule id="acerca_del" name="acerca del"> <antipattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token regexp="yes">acerca|aparte</token> </antipattern> <pattern> <marker> <token regexp="yes">acerca|aparte</token> </marker> <token>del</token> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> </disambig> </rule> <rule id="en_pos_del" name="en pos del"> <pattern> <marker> <token>en</token> <token>pos</token> </marker> <token>del</token> </pattern> <disambig action="replace"> <wd pos="LOC_PREP"/> <wd pos="LOC_PREP"/> </disambig> </rule> </rulegroup> <rule id="CARA_A_CARA" name="cara a cara (noun)"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token>cara</token> <token>a</token> <token>cara</token> </marker> </pattern> <disambig action="replace"> <wd lemma="cara a cara" pos="NCMN000"/> <wd lemma="cara a cara" pos="AQ0MN0"/> <wd lemma="cara a cara" pos="AQ0MN0"/> </disambig> </rule> <rulegroup id="LOC_ADV" name="locuciones adverbiales"> <rule id="CADA_VEZ_MAS" name="cada vez más"> <pattern> <token>cada</token> <token regexp="yes">&unidades_tiempo;|vez</token> <token regexp="yes">más|menos</token> </pattern> <disambig action="replace"> <wd lemma="cada vez más" pos="LOC_ADV"/> <wd lemma="cada vez más" pos="LOC_ADV"/> <wd lemma="cada vez más" pos="LOC_ADV"/> </disambig> </rule> <rule id="en_efecto" name="en efecto (locución adverbial)"> <pattern> <marker> <token>en</token> <token>efecto</token> </marker> <token><exception postag="A..[MC][SN].*|V.P..SM" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd lemma="en efecto" pos="LOC_ADV"/> <wd lemma="en efecto" pos="LOC_ADV"/> </disambig> </rule> <rule id="en_realidad" name="en realidad (locución adverbial)"> <pattern> <marker> <token>en</token> <token>realidad</token> </marker> <token><exception regexp="yes">aumentada|virtual</exception></token> </pattern> <disambig action="replace"> <wd lemma="en realidad" pos="LOC_ADV"/> <wd lemma="en realidad" pos="LOC_ADV"/> </disambig> </rule> <rule id="por_primera_vez" name="por primera vez (locución adverbial)"> <pattern> <marker> <token>por</token> <token postag="AO0FS0"/> <token>vez</token> </marker> </pattern> <disambig action="replace"> <wd lemma="por primera vez" pos="LOC_ADV"/> <wd lemma="por primera vez" pos="LOC_ADV"/> <wd lemma="por primera vez" pos="LOC_ADV"/> </disambig> </rule> <rule id="por_tanto" name="por tanto"> <pattern> <marker> <token>por</token> <token>tanto</token> </marker> <token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="por_supuesto" name="por supuesto"> <antipattern> <token inflected="yes">dar</token> <token min="0" max="2" postag="RG|LOC_ADV" postag_regexp="yes"/> <token>por</token> <token>supuesto</token> </antipattern> <pattern> <marker> <token>por</token> <token>supuesto</token> </marker> <token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="por_cierto" name="por cierto"> <pattern> <marker> <token>por</token> <token>cierto</token> </marker> <token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="por_momentos" name="por momentos"> <pattern> <marker> <token>por</token> <token>momentos</token> </marker> <token><exception postag="NC[MC][PN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="por_un_momento" name="por un momento"> <pattern> <marker> <token>por</token> <token>un</token> <token>momento</token> </marker> <token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="de_nuevo" name="de nuevo"> <pattern> <marker> <token>de</token> <token>nuevo</token> </marker> <token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> <example type="untouched">Con la propuesta <marker>de nuevo</marker> servidor</example> </rule> <rule id="frente_a" name="frente a"> <pattern> <marker> <token>frente</token> </marker> <token regexp="yes">a|al</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule id="dado_que" name="dado que"> <pattern> <token><exception postag="D..[MC][SN]." postag_regexp="yes"/></token> <marker> <token>dado</token> <token>que</token> </marker> </pattern> <disambig action="replace"> <wd pos="LOC_CS"/> <wd pos="LOC_CS"/> </disambig> </rule> <rule id="en_tanto" name="en tanto"> <pattern> <marker> <token>en</token> <token>tanto</token> </marker> <token><exception postag="N.[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_CS"/> <wd pos="LOC_CS"/> </disambig> </rule> <rule id="en_absoluto" name="en absoluto"> <pattern> <marker> <token>en</token> <token>absoluto</token> </marker> <token postag="AQ.*" postag_regexp="yes"/> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="al_menos" name="al menos"> <pattern> <marker> <token>al</token> <token>menos</token> </marker> <token><exception postag="AQ.[MC][SN].*|V.P...SM" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="mientras_tanto" name="mientras tanto"> <pattern> <marker> <token>mientras</token> <token>tanto</token> </marker> <!-- exceptions? --> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> <rule id="sobre_todo" name="sobre todo"> <pattern> <marker> <token>sobre</token> <token>todo</token> </marker> <token><exception postag="NC[MC][SN].*|D..MS.|DA0NS0" postag_regexp="yes"/></token> </pattern> <disambig action="replace"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> <example type="untouched"><marker>Sobre todo</marker> lo demás.</example> <example type="untouched">Sobre todo hombre.</example> <example type="untouched">Sobre todo lo demás.</example> </rule> <rule id="gota_a_gota" name="gota a gota (locución adverbial)"> <pattern> <token><exception postag="D.*" postag_regexp="yes"/></token> <marker> <token>gota</token> <token>a</token> <token>gota</token> </marker> </pattern> <disambig action="replace"> <wd lemma="gota a gota" pos="LOC_ADV"/> <wd lemma="gota a gota" pos="LOC_ADV"/> <wd lemma="gota a gota" pos="LOC_ADV"/> </disambig> </rule> <rule id="lo_demás" name="lo demás"> <pattern> <token postag="DA0NS0">lo</token> <token postag="PI0CN000">demás</token> </pattern> <disambig action="filterall"/> </rule> <rule id="el_paso_a_paso" name="el paso a paso (noun)"> <pattern> <token regexp="yes">el|del|al</token> <marker> <token>paso</token> <token>a</token> <token>paso</token> </marker> </pattern> <disambig action="replace"> <wd pos="NCMS000"/> <wd pos="SPS00"/> <wd pos="NCMS000"/> </disambig> </rule> <rule id="el_dia_a_dia" name="el día a día (noun)"> <pattern> <token regexp="yes">el|del|al|mi|tu|su|nuestro|vuestro</token> <marker> <token>día</token> <token>a</token> <token>día</token> </marker> </pattern> <disambig action="replace"> <wd pos="NCMS000"/> <wd pos="SPS00"/> <wd pos="NCMS000"/> </disambig> </rule> <rule id="el_sin_fin" name="el sin fin (noun)"> <pattern> <token regexp="yes">el|del|al|un|este|ese|aquel</token> <marker> <token>sin</token> <token>fin</token> </marker> </pattern> <disambig action="replace"> <wd pos="NCMS000"/> <wd pos="AQ0MS0"/> </disambig> </rule> <rule id="por_tant" name="por tanto"> <pattern> <marker> <token>por</token> <token>tanto</token> </marker> <!--<token><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token>--> </pattern> <disambig action="replace"> <wd lemma="por tanto" pos="LOC_CS"/> <wd lemma="por tanto" pos="LOC_CS"/> </disambig> <!--<example type="untouched">Y <marker>por tanto</marker> honor.</example>--> </rule> </rulegroup> <rulegroup id="tal_como" name="tal como"> <rule> <pattern> <token postag="PD.*|RG" postag_regexp="yes" regexp="yes">tal|tales|así|igual</token> <token postag="PR000000">como</token> </pattern> <disambig action="filterall"/> </rule> </rulegroup> <rule id="no_ij" name="no interjecció"> <pattern> <marker> <token>salve</token> </marker> <token><exception regexp="yes">,|!</exception></token> </pattern> <disambig action="remove" postag="I"/> </rule> <rule id="manos_libres" name="manos libres"> <pattern> <token postag="D..M[SP]." postag_regexp="yes"/> <marker> <token>manos</token> <token>libres</token> </marker> </pattern> <disambig action="replace"> <wd lemma="manos libres" pos="NCMN000"/> <wd lemma="manos libres" pos="AQ0MN0"/> </disambig> </rule> <rulegroup id="LA_NOUN" name="la (noun)"> <rule> <pattern> <marker> <token>la</token> </marker> <token min="0" regexp="yes">a|de</token> <token regexp="yes">44[0-9](Hz)?|agudo|sobreagudo|grave|sobregrave|diapasón</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token><exception regexp="yes">el|los|un</exception></token> <marker> <token>mi</token> </marker> <token><exception regexp="yes">mayor|menor</exception></token> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <token postag="DA.*" postag_regexp="yes" regexp="yes">las?</token> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rulegroup id="PREFIXES" name="prefijos"> <rule> <pattern> <marker> <token regexp="yes">paleo|histórico|hispano|anglo|pos|bio</token> </marker> <token spacebefore="no">-</token> <token postag="[NA].*" postag_regexp="yes" spacebefore="no"/> </pattern> <disambig action="replace" postag="RG"/> </rule> <rule> <pattern> <token>fito</token> <token spacebefore="no">-</token> <token postag="CC"/> <token inflected="yes">zoosanitario</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token>zoo</token> <token spacebefore="no">-</token> <token postag="CC"/> <token inflected="yes">fitosanitario</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">pre|pos|post|co</token> </marker> <token spacebefore="no">-</token> <token spacebefore="no" regexp="yes">[\p{Lu}\d].*</token> </pattern> <disambig action="replace" postag="RG"/> </rule> </rulegroup> <rule id="DEMASIADO" name="demasiado"> <pattern> <token postag="RG">demasiado</token> </pattern> <disambig action="remove" postag="VMP00SM"/> </rule> <rule id="TAL" name="qué tal"> <pattern> <token>qué</token> <marker> <token>tal</token> </marker> </pattern> <disambig action="filter" postag="PD.*"/> </rule> <rulegroup id="NADA" name="nada"> <rule> <pattern> <marker> <token>nada<exception scope="previous" postag="D.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="remove" postag="NCFS000"/> </rule> <rule> <pattern> <marker> <token>nada</token> </marker> <token regexp="yes">más|menos|ni</token> </pattern> <disambig action="filter" postag="PI0CS000"/> </rule> <rule> <pattern> <token inflected="yes">haber</token> <marker> <token postag="PI0CS000">nada</token> </marker> </pattern> <disambig action="filter" postag="PI0CS000"/> </rule> <rule> <pattern> <marker> <token postag="RG">nada</token> </marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <marker> <token>nada</token> </marker> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes" min="0" max="2"/> <token postag="V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="PI0CS000"/> </rule> <rule> <pattern> <token postag="V.[IS].*" postag_regexp="yes"/> <marker> <token>nada</token> </marker> </pattern> <disambig action="filter" postag="PI0CS000"/> </rule> <rule> <pattern> <token postag="VA[IS].*" postag_regexp="yes"/> <token postag="V.P.*" postag_regexp="yes"/> <marker> <token>nada</token> </marker> </pattern> <disambig action="filter" postag="PI0CS000"/> </rule> </rulegroup> <rulegroup id="MUCHO" name="mucho (adverb)"> <rule> <pattern> <marker> <token regexp="yes">mucho|muchísimo|bastante|tanto</token> </marker> <token regexp="yes" inflected="yes">mejor|peor|mayor|menor|más|menos|antes|después</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <marker> <token>mucho</token> </marker> <token regexp="yes">juntos|juntas</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token>quien</token> <marker> <token>mucho</token> </marker> <token min="0" max="1" postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token postag="V.[SI].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> </rulegroup> <rule id="ADVERB_BEFORE" name="adverb before adjective"> <pattern> <!--|todo--> <!-- "mas" is usaully a typo for "más" --> <token postag="RG" regexp="yes">todavía|mal|.+mente|muy|poco|muchísimo|poquísimo|tantísimo|tanto|tan|entonces|pronto|bastante|bien|aún|casi|harto|nada|incluso|ya|nunca|demasiado|medio|mejor|más|mas|menos|no|solo|sólo|peor|quizás?|algo|siempre|también|tampoco|aun</token> </pattern> <disambig action="add"> <wd pos="RG_before"/> </disambig> </rule> <rulegroup id="ORDINALS" name="ordinales"> <rule> <pattern> <token postag="AO.*" postag_regexp="yes" regexp="yes" inflected="yes">&ordinales_decenas;</token> <token postag="AO.*" postag_regexp="yes" regexp="yes" inflected="yes">&ordinales_unidades;</token> </pattern> <disambig action="filterall"/> </rule> </rulegroup> <rulegroup id="NUMERALS" name="numerales"> <rule> <pattern> <marker> <token regexp="yes">mil|treinta|cuarenta|cincuenta|sesenta|setenta|ochenta|noventa</token> <token>y</token> <token>un</token> </marker> </pattern> <disambig action="replace"> <wd pos="DN0MP0"/> <wd pos="DN0MP0"/> <wd pos="DN0MP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">mil|treinta|cuarenta|cincuenta|sesenta|setenta|ochenta|noventa</token> <token>y</token> <token>una</token> </marker> </pattern> <disambig action="replace"> <wd pos="DN0FP0"/> <wd pos="DN0FP0"/> <wd pos="DN0FP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">mil|ciento</token> </marker> <token postag="DN0.P0" postag_regexp="yes"/> </pattern> <disambig action="replace"> <wd pos="DN0CP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">mil|ciento</token> </marker> <token>y</token> <token postag="DN0.P0" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="DN.*"/> </rule> <rule> <pattern> <marker> <token regexp="yes">[1234567890][1234567890., ]+[1234567890]</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="NCCN000"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[1234567890][1234567890., ]+[1234567890]</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="DN0CP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[1234567890]{1,2}</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="NCCN000"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[1234567890]{1,2}</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="DN0CP0"/> </disambig> </rule> <rule> <pattern> <marker> <token spacebefore="yes">1</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="DN0CS0"/> </disambig> </rule> <rule> <pattern> <marker> <token spacebefore="yes">1</token> </marker> </pattern> <disambig action="remove"> <wd lemma="numeral" pos="DN0CP0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[^.,]*</token> <marker> <token spacebefore="no">1</token> </marker> </pattern> <disambig action="add"> <wd lemma="numeral" pos="DN0CS0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[^.,]*</token> <marker> <token spacebefore="no">1</token> </marker> </pattern> <disambig action="remove"> <wd lemma="numeral" pos="DN0CP0"/> </disambig> </rule> <!-- ordinals --> <rule> <pattern> <marker> <token regexp="yes">[13]|[2-9][13]</token> <token spacebefore="no">.</token> <token spacebefore="no">er</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0MS0"/> <wd pos="AO0MS0"/> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">[1234567890]+º<exception postag="AO.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <token>el</token> <marker> <token regexp="yes">[1234567890]+</token> </marker> </pattern> <disambig action="add"> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes" case_sensitive="yes">[1234567890]+[aª]<exception postag="AO.*" postag_regexp="yes"/><exception>0a</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="AO0FS0"/> </disambig> </rule> <rule> <pattern> <token>la<exception scope="previous" postag="D..MS." postag_regexp="yes"/></token> <marker> <token regexp="yes">[1234567890]+</token> </marker> </pattern> <disambig action="add"> <wd pos="AO0FS0"/> </disambig> </rule> <!--<rule> <pattern> <marker> <token regexp="yes">[1234567890]+ns<exception postag="AO.*" postag_regexp="yes"/><exception regexp="yes">[01234]ns</exception></token> </marker> </pattern> <disambig action="add"><wd pos="AO0MP0"/></disambig> </rule>--> <!--<rule> <pattern> <token>los</token> <marker> <token regexp="yes">[1234567890]+</token> </marker> </pattern> <disambig action="add"><wd pos="AO0MP0"/></disambig> </rule>--> <!--<rule> <pattern> <marker> <token regexp="yes">[1234567890]+es<exception postag="AO.*" postag_regexp="yes"/><exception>0es</exception></token> </marker> </pattern> <disambig action="add"><wd pos="AO0FP0"/></disambig> </rule>--> <rule> <pattern> <token>las</token> <marker> <token regexp="yes">[1234567890]+</token> </marker> </pattern> <disambig action="add"> <wd pos="AO0FP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">([13]|[2-9][13])\.er</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">\d+\.[ºo]</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">\d+\.[ºo]</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0MS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">\d+\.[ªa]</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0FS0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">\d+\.os</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0MP0"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">\d+\.as</token> </marker> </pattern> <disambig action="replace"> <wd pos="AO0FP0"/> </disambig> </rule> <!-- romans--> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">(?=.)M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})<exception postag="_enumeracio"/></token> </marker> </pattern> <disambig action="add"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes" spacebefore="yes">(?=.)m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})<exception regexp="yes">cm|mm</exception><exception postag="_enumeracio"/></token> </marker> </pattern> <disambig action="add"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <token postag="SENT_START"/> <marker> <token regexp="yes">(?=.)m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})</token> </marker> </pattern> <disambig action="add"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <token>-</token> <marker> <token regexp="yes">(?=.)m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})</token> </marker> </pattern> <disambig action="add"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">(?=.)m{0,4}(cm|cd|d?c{0,3})(xc|xl|l?x{0,3})(ix|iv|v?i{0,3})</token> </marker> <token>)</token> </pattern> <disambig action="add"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern> <token>omega</token> <token>3</token> </pattern> <disambig action="replace"> <wd pos="AQ0CN0" lemma="omega 3"/> <wd pos="AQ0CN0" lemma="omega 3"/> </disambig> </rule> </rulegroup> <rulegroup id="MILLON" name="millón"> <rule> <pattern> <token postag="DN..P." postag_regexp="yes"/> <marker> <token regexp="yes" inflected="yes">millón|billón|trillón|coma|cero|uno|una</token> </marker> </pattern> <disambig action="add"> <wd pos="K"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes" inflected="yes">millón|billón|trillón|coma|cero|uno|una</token> </marker> <token postag="DN..P." postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="K"/> </disambig> </rule> </rulegroup> <rulegroup id="romans_exceptions" name="excepciones números romanos"> <rule> <pattern case_sensitive="yes"> <token postag="SENT_START"/> <token min="0" max="3" postag="_PUNCT.*" postag_regexp="yes"/> <marker> <token>I</token> </marker> </pattern> <disambig action="remove"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">i|li|mi|vi|di</token> </marker> </pattern> <disambig action="remove"> <wd pos="AO0CN0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[1234567890., ]+</token> <marker> <token spacebefore="yes">m</token> </marker> </pattern> <disambig action="replace" postag="NCMP000"/> </rule> <rule> <pattern> <token regexp="yes">1|/|por</token> <marker> <token>m</token> </marker> </pattern> <disambig action="replace" postag="NCMS000"/> </rule> <rule id="la_numero_dos" name="la número dos"> <pattern> <marker> <token regexp="yes">la|una|esta|esa|aquella</token> <token>número</token> <token postag="AO0C[NS]0|DN0[^F]P0" postag_regexp="yes"><exception regexp="yes">.*un</exception></token> </marker> </pattern> <disambig action="replace"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule id="la_numero_uno" name="la número uno"> <pattern> <marker> <token regexp="yes">la|una|esta|esa|aquella</token> <token>número</token> <token regexp="yes">uno|1</token> </marker> </pattern> <disambig action="replace"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <token postag="DN.*" postag_regexp="yes"/> <marker> <token regexp="yes" case_sensitive="yes">aC|dC</token> </marker> </pattern> <disambig action="replace"> <wd pos="RG"/> </disambig> </rule> <rule id="en_base" name="en base + numeral"> <pattern> <token regexp="yes">en|de</token> <token>base</token> <marker> <token postag="DN.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule id="percentage" name="porcentaje"> <pattern> <token regexp="yes">[\d,. ]+[%‰‱]</token> </pattern> <disambig action="replace"> <wd pos="NCMS000"/> </disambig> </rule> <rule id="numero_graus" name="grados"> <pattern> <token regexp="yes">([\d,. ]+[º°′″‴])+[CFKNSEW]?<exception regexp="yes">[\d,. ]+º</exception></token> </pattern> <disambig action="replace"> <wd pos="NCMP000"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">latitud|longitud</token> <marker> <token regexp="yes">[\d,. ]+[º°′″‴]</token> </marker> </pattern> <disambig action="replace"> <wd pos="NCMP000"/> </disambig> </rule> <rule id="graus" name="graus"> <pattern> <token regexp="yes">°[CFKNSEW]</token> </pattern> <disambig action="replace"> <wd pos="NCMN000"/> </disambig> </rule> <rule id="un_grau" name="1 grau"> <pattern> <token regexp="yes">1°[CFNSEW]?</token> </pattern> <disambig action="replace"> <wd pos="NCMS000"/> </disambig> </rule> <rule id="veinte_aniversario" name="veinte aniversario"> <pattern> <marker> <and> <token postag="NCCN000"/> <token postag="DN0CP0"/> </and> </marker> <token>aniversario</token> </pattern> <disambig action="replace" postag="AO0MS0"/> </rule> </rulegroup> <rulegroup id="UNIDADES_SI" name="Sistema Internacional de Unidades"> <rule> <antipattern> <token regexp="yes">[\d\.,  ]*\d</token> <token regexp="yes">aC|dC|a|aC|dC|el|es</token> </antipattern> <pattern> <token regexp="yes">[\d\.,  ]*\d</token> <marker> <token regexp="yes" case_sensitive="yes">[%‰‱]|(da|h|k|M|G|T|P|E|Z|Y|d|c|m|µ|n|p|f|a|z|y)?(m|g|s|A|K|cd|mol|Hz|N|Pa|J|W|Wh|C|V|Ω|S|F|T|Wb|H|rad|sr|lm|lx|Bq|Gy|Sv|kat|l|L)[²³23]?<exception postag="NP.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="Y"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[\d\.,  ]*\d</token> <token regexp="yes" case_sensitive="yes">[%‰‱]|(da|h|k|M|G|T|P|E|Z|Y|d|c|m|µ|n|p|f|a|z|y)?(m|g|s|A|K|cd|mol|Hz|N|Pa|J|W|Wh|C|V|Ω|S|F|T|Wb|H|rad|sr|lm|lx|Bq|Gy|Sv|kat|l|L)[²³23]?<exception postag="NP.*" postag_regexp="yes"/></token> <token>/</token> <marker> <token regexp="yes" case_sensitive="yes">[%‰‱]|(da|h|k|M|G|T|P|E|Z|Y|d|c|m|µ|n|p|f|a|z|y)?(m|g|s|A|K|cd|mol|Hz|N|Pa|J|W|Wh|C|V|Ω|S|F|T|Wb|H|rad|sr|lm|lx|Bq|Gy|Sv|kat|l|L)[²³23]?<exception postag="NP.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="Y"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">\d+</token> <marker> <token>min</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">[\d,\.]+º[\d,\.]+</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rulegroup id="UNIDADES2" name="abreiaturas de unidades"> <rule> <pattern> <token regexp="yes">[1234567890., ]+|/|por<exception postag="_PUNCT.*" postag_regexp="yes"/></token> <marker> <token>ha</token> </marker> <token><exception postag="V.P..SM" postag_regexp="yes"/></token> <!-- Exception: 2012 ha sido --> </pattern> <disambig action="replace"> <wd lemma="hectárea" pos="NCFN000"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[h1234567890., ]+|/|per<exception postag="_PUNCT.*" postag_regexp="yes"/></token> <marker> <token>min</token> </marker> </pattern> <disambig action="replace"> <wd lemma="minuto" pos="NCMN000"/> </disambig> </rule> </rulegroup> <rule id="hemos" name="hemos (haber)"> <pattern> <token postag="VAIP1P0">hemos</token> <token postag="V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="ENUMERATIONS" name="enumeraciones con lestras: a)"> <rule> <pattern> <token postag="SENT_START"/> <marker> <token regexp="yes">[a-z]</token> </marker> <token spacebefore="no">)</token> </pattern> <disambig action="add"> <wd pos="_enumeration"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">,|;|y|o|ni</token> <marker> <token regexp="yes">[a-z]</token> </marker> <token spacebefore="no">)</token> </pattern> <disambig action="add"> <wd pos="_enumeration"/> </disambig> </rule> <rule> <pattern> <token regexp="yes" inflected="yes">letra|sección|apartado</token> <token regexp="yes">[a-z]</token> <token regexp="yes">,|y|o|ni</token> <marker> <token regexp="yes">[a-z]</token> </marker> </pattern> <disambig action="add"> <wd pos="_enumeration"/> </disambig> </rule> <rule> <pattern> <token regexp="yes" inflected="yes">letra|sección|apartado</token> <marker> <token regexp="yes">[a-z]</token> </marker> </pattern> <disambig action="add"> <wd pos="_enumeration"/> </disambig> </rule> </rulegroup> <rule id="alrededor_de" name="alrededor de"> <pattern> <token postag="D...P." postag_regexp="yes"/> <marker> <token regexp="yes">alrededor|cerca</token> <token>de</token> </marker> <token postag="DN.*" postag_regexp="yes"/> </pattern> <disambig action="replace"> <wd pos="LOC_ADV" lemma="alrededor de"/> <wd pos="LOC_ADV" lemma="alrededor de"/> </disambig> </rule> <rule id="ellas_juntas" name="ellas juntas"> <pattern> <token postag="P.*" postag_regexp="yes">ellas</token> <token postag="A.*" postag_regexp="yes">juntas</token> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="CURRENCIES" name="monedas"> <rule> <pattern> <token regexp="yes">[\$€£][\d\.,]+</token> </pattern> <disambig action="add"> <wd pos="Z"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">[\$€£]?[\d\.,]+</token> <marker> <token regexp="yes" case_sensitive="yes">USD|EUR</token> </marker> </pattern> <disambig action="add"> <wd pos="NCMN000"/> </disambig> </rule> </rulegroup> <rulegroup id="habemos" name="habemos"> <rule> <pattern> <token>nos</token> <token>las</token> <marker> <token>habemos</token> </marker> <token min="0" max="4" postag="RG|LOC_ADV" postag_regexp="yes"/> <token>con</token> </pattern> <disambig action="add"> <wd lemma="haber" pos="VMIP1P0"/> </disambig> </rule> <rule> <pattern> <token skip="3">con</token> <token>nos</token> <token>las</token> <marker> <token>habemos</token> </marker> </pattern> <disambig action="add"> <wd lemma="haber" pos="VMIP1P0"/> </disambig> </rule> </rulegroup> <rule id="ser_infinitive" name="ser (infinitivo)"> <pattern> <token><exception postag="D[^R].[MC]S." postag_regexp="yes"/></token> <marker> <token>ser</token> </marker> <token min="0" max="3" postag="RG|LOC_ADV" postag_regexp="yes"/> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.N.*"/> </rule> <rulegroup id="poder_inf_nom" name="poder (inf/nom)"> <rule> <pattern> <token regexp="yes" inflected="yes">coger|tomar|disminuir|aumentar</token> <marker> <token postag="N.*" postag_regexp="yes">poder</token> </marker> </pattern> <disambig action="remove" postag="V.N.*"/> </rule> <rule> <!--needed when next word should be infinitive, but the infinitive is wrong or missing --> <pattern> <token>no</token> <marker> <token postag="V.N.*" postag_regexp="yes">poder<exception postag="_GN_MS"/></token> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> </rulegroup> <rule id="poder_podar" name="poder/podar + infinitiu"> <pattern> <marker> <and> <token inflected="yes">poder</token> <token inflected="yes">podar</token> </and> </marker> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove"> <wd lemma="podar"/> </disambig> </rule> <rule id="poder_podrir" name="poder/podrir + infinitiu"> <pattern> <marker> <and> <token inflected="yes">poder</token> <token inflected="yes">podrir</token> </and> </marker> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove"> <wd lemma="podrir"/> </disambig> </rule> <rulegroup id="COMO" name="como"> <rule> <pattern> <token>que</token> <marker> <token>como</token> </marker> <token postag="[NA].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <marker> <token>como</token> </marker> <token postag="[NAD].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <token regexp="yes">&pronombre_personal_atono;</token> <marker> <token>como</token> </marker> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rule> <pattern> <marker> <token postag="[CP].*" postag_regexp="yes">como</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> </rulegroup> <rulegroup id="GRAVE" name="grave (adj/verb)"> <rule> <pattern> <token postag="N..P.*" postag_regexp="yes"/> <token>de</token> <token postag_regexp="yes" postag="[NA].*" min="1" max="2"><exception>graves</exception></token> <marker> <token postag="AQ0CP0">graves</token> </marker> </pattern> <disambig action="filter" postag="AQ0CP0"/> </rule> <rule> <pattern> <token postag="N..S.*" postag_regexp="yes"/> <token>de</token> <token postag_regexp="yes" postag="[NA].*" min="1" max="2"><exception>grave</exception></token> <marker> <token postag="AQ0CS0">grave</token> </marker> </pattern> <disambig action="filter" postag="AQ0CS0"/> </rule> </rulegroup> <rulegroup id="VINO" name="vino (noun/verb)"> <rule> <pattern> <marker> <token>vino<exception scope="previous" postag="SPS00|LOC_PREP" postag_regexp="yes"/></token> </marker> <token>con</token> <token postag="P.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <token>no</token> <marker> <token>vino</token> </marker> <token>con</token> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <marker> <token>vino<exception scope="previous" postag="D..MS.|SPS00|LOC_PREP|SP:DA" postag_regexp="yes"/></token> </marker> <token postag="D.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <marker> <token>vino<exception scope="previous" postag="D..MS.|SPS00|LOC_PREP" postag_regexp="yes"/></token> </marker> <token postag="V.P...F|V.P..P.|A..F..|A...P." postag_regexp="yes"/> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rule id="nublado_no_nombre" name="nublado (no nombre)"> <pattern> <marker> <token postag="VMP.*" postag_regexp="yes" inflected="yes">nublar</token> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule id="lleno_no_nombre" name="lleno, llena (no nombre)"> <!--<antipattern> <unify> <feature id="genero"></feature> <feature id="numero"></feature> <token postag="D.*" postag_regexp="yes"/> <token inflected="yes" regexp="yes">lleno|llena</token> </unify> </antipattern>--> <pattern> <marker> <token postag="AQ.*" postag_regexp="yes" inflected="yes">lleno</token> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule id="este_no_nombre" name="este (no nombre)"> <pattern> <marker> <token postag="DD0MS0">este</token> </marker> <token postag="NCMS000"/> </pattern> <disambig action="remove" postag="NCMS000"/> </rule> <rule id="LEE_NOUN" name="lee + nombre"> <pattern> <token>lee</token> <marker> <token postag="N.*|PI.*" postag_regexp="yes" regexp="yes" inflected="yes">revista|chiste|novela|nada</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rulegroup id="VAN_GOGH" name="van Gogh"> <rule> <pattern> <marker> <token>van</token> <token regexp="yes">(?-i)Aartsen|Agt|Allen|Asperen|Baaren|Basten|Beethoven|Beinum|Belin|Bommel|Bree|Buren|Campen|Dam|Delden|der|Dijk|Dine|Dong|Dyck|Egmond|Eyck|Gaal|Goethem|Gogh|Halen|Hauwe|Hemel|Immersel|Kempen|Lier|Maldere|Marwijk|Mill|Morrison|Nieuwkerk|Nistelrooy|Otterloo|Persie|Petegem|Ragin|Rensburg|Rompuy|Schalkwyk|Someren|Vaart|Val|Valen|Van|Vliet|Vlijmen|Wassenaer</token> </marker> </pattern> <disambig action="replace"> <wd pos="NPCNSP0"/> <wd pos="NPCNSP0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">\p{Lu}.+</token> <marker> <token>van</token> </marker> <token regexp="yes">\p{Lu}.+</token> </pattern> <disambig action="replace"> <wd pos="NPCNSP0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">\p{Lu}.+</token> <marker> <token>van</token> </marker> <token regexp="yes">den|der</token> <token regexp="yes">\p{Lu}.+</token> </pattern> <disambig action="replace"> <wd pos="NPCNSP0"/> </disambig> </rule> </rulegroup> <rule id="DA_VINCI" name="da Vinci"> <pattern> <marker> <token>da</token> <token regexp="yes">(?-i)Messina|Cividale|Morte|Costa|Lingua|Língua|Gagliano|Palestrina|Perugia|Silva|Cunha|Gama|Viadana|Vinci|Ponte</token> </marker> </pattern> <disambig action="replace"> <wd pos="NPCNSP0"/> <wd pos="NPCNSP0"/> </disambig> </rule> <rule id="DI_STEFANO" name="di Stefano"> <pattern> <marker> <token>di</token> <token regexp="yes">(?-i)Stefano|Stéfano|Maria|María</token> </marker> </pattern> <disambig action="replace"> <wd pos="NPCNSP0"/> <wd pos="NPCNSP0"/> </disambig> </rule> <rule id="s_ese" name="ese"> <pattern> <marker> <token regexp="yes">s|ese</token> </marker> <token regexp="yes">larga|corta|sonora|sorda|impura|marcada|líquida|mayúscula</token> </pattern> <disambig action="replace"> <wd lemma="ese" pos="NCFS000"/> </disambig> </rule> <rulegroup id="telegraphic_writing0" name="escritura telegráfica"> <rule> <pattern> <token postag="SENT_START"/> <marker> <token postag="NCMP000">apuntes</token> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="NCMP000"/> </rule> </rulegroup> <rulegroup id="telegraphic_writing" name="escritura telegráfica"> <rule> <pattern> <token regexp="yes">abierto|cerrado</token> <token regexp="yes" inflected="yes">mañana|tarde|noche|víspera|festivo|&dias_semana;</token> </pattern> <disambig action="immunize"/> </rule> <rule> <pattern> <token postag="N.*" postag_regexp="yes" inflected="yes">solicitud</token> <token postag="N.*" postag_regexp="yes" inflected="yes">certificado</token> </pattern> <disambig action="filterall"/> </rule> </rulegroup> <rule id="annual" name="desastre de Annual"> <pattern> <token regexp="yes" inflected="yes">desastre|batalla|ocupación|victoria|derrota</token> <token regexp="yes">de|en</token> <marker> <token case_sensitive="yes">Annual</token> </marker> </pattern> <disambig action="replace" postag="NPCSG00"/> </rule> <rulegroup id="nombre_aposicion" name="nombre en aposición"> <rule> <pattern> <token inflected="yes" regexp="yes">población|tarea|audiencia|función|conversión|criatura|fecha</token> <marker> <token>objetivo</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes">base</token> <token>de</token> <token>datos</token> <marker> <token>objetivo</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes">premio</token> <marker> <token case_sensitive="yes">goya</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">entrada|salida</token> <marker> <token regexp="yes">norte|sur|este|oeste</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">chico|hombre|mujer|persona|modelo</token> <marker> <token>icono</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <marker> <token postag="NC.*" postag_regexp="yes" inflected="yes">libro</token> <token postag="NC.*" postag_regexp="yes" regexp="yes">entrevista|resumen|documento|testimonio</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">sala|salón|habitación|cocina</token> <marker> <token>comedor</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">factor|efecto|invitado|invitadas|fiesta|celebración|ataque|miembro</token> <marker> <token>sorpresa</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes">música</token> <marker> <token regexp="yes">rock|tecno|disco|country|dance|pop|jazz|folk|reggae</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token regexp="yes" inflected="yes">país|estado|función|asociación|sociedad</token> <marker> <token>miembro</token> </marker> </pattern> <disambig action="replace"> <wd lemma="paria" pos="AQ0CN0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">país|estado</token> <marker> <token>paria</token> </marker> </pattern> <disambig action="replace"> <wd lemma="paria" pos="AQ0CS0"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">paises|estados</token> <marker> <token>parias</token> </marker> </pattern> <disambig action="replace"> <wd lemma="paria" pos="AQ0CP0"/> </disambig> </rule> <rule> <pattern> <token>tamaño</token> <token regexp="yes">carta|oficio|office|legal|letter|tabloide|A[012345]</token> </pattern> <disambig action="replace"> <wd lemma="tamaño" pos="LOC_ADC"/> <wd lemma="tamaño" pos="LOC_ADC"/> </disambig> </rule> <rule> <pattern> <token regexp="yes" inflected="yes">página|navegador|sitio|plataforma|agregador</token> <marker> <token>web</token> </marker> </pattern> <disambig action="filter" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">línea|evento|escuela|planta|centro|proyecto|propuesta|piso|apartamento|casa|prueba|capítulo|vivienda</token> <marker> <token>piloto</token> </marker> </pattern> <disambig action="replace" postag="AQ0CN0"/> </rule> <rule> <pattern> <token inflected="yes">presentación</token> <marker> <token inflected="yes">libro</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">color|modo|tipo</token> <marker> <token postag="N.*" postag_regexp="yes"><exception>son</exception><exception postag="SPS00|LOC.*|R.*|VA.*|C.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token inflected="yes">tratamiento</token> <marker> <token inflected="yes">aumento</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">pistola|revólver|fusil|escopeta</token> <marker> <token inflected="yes">calibre</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token inflected="yes">sexo</token> <marker> <token inflected="yes">contacto</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token postag="NC.*" postag_regexp="yes"/> <marker> <token inflected="yes" regexp="yes">modelo|base|pivote|prototipo|estilo</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <marker> <token inflected="yes">serie</token> </marker> <token regexp="yes" case_sensitive="yes">[\d\.]+|[A-Z]\d*</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token postag="NC.*" postag_regexp="yes"/> <marker> <token inflected="yes">sede</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token regexp="yes" inflected="yes">acuerdo|comisión|condición|constitución|contrato|convención|convenio|decisión|directiva|documento|estatuto|estrategia|política|programa|proyecto|sistema</token> <marker> <token>marco</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <rulegroup id="no_verbo" name="not verb"> <rule> <pattern> <marker> <token postag="NCFP000" regexp="yes">acciones|redes|cuestiones</token> </marker> <token regexp="yes">de|del</token> </pattern> <disambig action="filter" postag="NCFP000"/> </rule> <rule> <pattern> <marker> <token postag="NCFP000" regexp="yes">acciones|redes|cuestiones</token> </marker> <token postag="A..[FC][PN].|V.P..PF" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="NCFP000"/> </rule> </rulegroup> <rulegroup id="causa_efecto" name="causa-efecto (noun not verb)"> <rule> <pattern> <marker> <token>causa</token> </marker> <token regexp="yes">[/\-yo]</token> <token>efecto</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">binomio|relación|conexión|ratio|asociación|aleación|concordancia|tradución|interpretación|correción|corpus|paralelo|diccionario|traductor|corrector|par|figura|pareja|dualidad</token> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> <token regexp="yes">[/euyo-]</token> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> </rulegroup> <rule id="PERO" name="pero"> <pattern> <token>pero</token> </pattern> <disambig action="filter" postag="CC"/> </rule> <rule id="SENOR" name="señor"> <pattern> <marker> <token inflected="yes">señor</token> </marker> <token regexp="yes" case_sensitive="yes">[A-ZÀÈÌÒÙÁÉÍÓÚ].*</token> </pattern> <disambig action="filter" postag="NC.*"/> </rule> <rulegroup id="CABEZAS" name="cabeza (género)"> <!-- original POS tag: NCC --> <antipattern> <token inflected="yes">cabeza</token> <token>de</token> <token regexp="yes">chorlito|turco</token> </antipattern> <antipattern> <token inflected="yes">cabeza</token> <token regexp="yes">huecas?|locas?|oficial|oficiales|pensantes?|rapadas?|supremos?</token> </antipattern> <antipattern> <token inflected="yes">cabeza</token> <token regexp="yes">de|del</token> <token postag="[DA].*|V.P.*|RG" postag_regexp="yes" max="4" min="0"/> <token regexp="yes" inflected="yes">familia|tribu|clan|religión|orden|rama|grupo|lista|linaje|fiel|gremio|sindicato|partido|organización|saga</token> </antipattern> <rule> <pattern> <token>cabeza</token> </pattern> <disambig action="replace"> <wd lemma="cabeza" pos="NCFS000"/> </disambig> </rule> <rule> <pattern> <token>cabezas</token> </pattern> <disambig action="replace"> <wd lemma="cabeza" pos="NCFP000"/> </disambig> </rule> </rulegroup> <rule id="VAN" name="van (n f)"> <antipattern> <token postag="&pronombre_personal_atono;" postag_regexp="yes"/> <token postag="&pronombre_personal_atono;" postag_regexp="yes"/> <token>van</token> </antipattern> <pattern> <token postag="D..FS." postag_regexp="yes"/> <marker> <token>van</token> </marker> <token><exception>a</exception></token> </pattern> <disambig action="replace" postag="NCFS000"/> </rule> <rule id="no_adj" name="no adj"> <pattern> <marker> <token postag="NC.*" postag_regexp="yes" inflected="yes">campeón</token> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="adj_infrequent" name="infrecuente como adjetivo"> <pattern> <token postag="V.*" postag_regexp="yes" regexp="yes">acepto|aceptas?</token> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="amigo_n" name="amigo not adj"> <pattern> <token regexp="yes" inflected="yes">bueno|malo|mal</token> <marker> <token inflected="yes" postag="N.*" postag_regexp="yes">amigo</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule id="paso_pasa" name="paso,pasa not adj"> <pattern> <token><exception regexp="yes" inflected="yes">higo|uva</exception></token> <marker> <token inflected="yes">paso</token> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="vivo" name="vivo (adj)"> <pattern> <token postag="V.*" postag_regexp="yes"><exception postag="[NA].*" postag_regexp="yes"/></token> <marker> <token postag="A.*" postag_regexp="yes" inflected="yes">vivo</token> </marker> </pattern> <disambig action="filter" postag="A.*"/> </rule> <rulegroup id="WRONG_ESTA" name="wrong esta/está"> <rule id="expresa" name="expresa"> <pattern> <token>esta</token> <marker> <token>expresa</token> </marker> <token><exception postag="NC[FC][SN]000" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="V.I.*"/> </rule> <rule> <pattern> <token>esta</token> <marker> <token>despierto</token> </marker> </pattern> <disambig action="filter" postag="A.*"/> </rule> </rulegroup> <rule id="adj_inusual" name="adj inusual"> <pattern> <token postag="N.*" postag_regexp="yes" regexp="yes">playas?</token> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="not_adj" name="not adj"> <pattern> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">moscas?|líneas?|manera|ideas?</token> <token postag="A.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="propuesta" name="propuesta (nombre)"> <pattern> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes">propuesta</token> </marker> <token><exception>por</exception></token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rulegroup id="nombre_seguidode_nombrepropio" name="nombre seguido de nombre propio: calle Ayacuco"> <rule> <pattern> <token inflected="yes" regexp="yes">&nombre_seguidode_nombrepropio;</token> <marker> <and> <token postag="V.*" postag_regexp="yes" regexp="yes">\p{Lu}.+</token> <token postag="V.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="filter" postag="[^V].*"/> <example type="untouched">Amb qui es <marker>casa</marker> Lídia?</example> </rule> <rule> <pattern> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes" regexp="yes">&nombre_seguidode_nombrepropio;<exception scope="previous" regexp="yes">me|te|se|nos|os|le|les|lo</exception></token> <!-- <exception postag_regexp="yes" postag="&pronombre_personal_atono_POS;" scope="previous"/>--> </marker> <token regexp="yes">\p{Lu}.+</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">&nombre_seguidode_nombrepropio;</token> <token regexp="yes">['"‘“«] </token> <marker> <and> <token postag="V.*" postag_regexp="yes" regexp="yes">\p{Lu}.+</token> <token postag="V.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="filter" postag="[^V].*"/> </rule> <rule> <pattern> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes" regexp="yes">&nombre_seguidode_nombrepropio;</token> </marker> <token regexp="yes">['"‘“«] </token> <token regexp="yes">\p{Lu}.+</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <!-- SPECIAL CASES --> <rule id="agua" name="agua, not verb"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes" regexp="yes">agua|sustantivo</token> </marker> </pattern> <disambig action="filterall"/> </rule> <!-- Determiners --> <rule id="EL" name="el (det)"> <antipattern> <token>el</token> <token>la</token> <!-- musical note --> </antipattern> <pattern> <marker> <token postag="DA.*" postag_regexp="yes"/> </marker> <token regexp="yes">de|del|que</token> </pattern> <disambig action="filter" postag="DA.*"/> </rule> <rulegroup id="fuera_de_juego" name="fuera de juego: no adverbio"> <rule> <pattern> <token postag="D.*|SP:DA" postag_regexp="yes"/> <marker> <token>fuera</token> </marker> <token>de</token> <token>juego</token> </pattern> <disambig action="replace"> <wd lemma="fuera" pos="NCMS000"/> </disambig> </rule> <rule> <pattern> <token postag="D.*|SP:DA" postag_regexp="yes"/> <marker> <token>fueras</token> </marker> <token>de</token> <token>juego</token> </pattern> <disambig action="replace"> <wd lemma="fuera" pos="NCMP000"/> </disambig> </rule> </rulegroup> <rulegroup id="solo" name="solo (noun)"> <rule> <pattern> <token postag="D..[MC]S." postag_regexp="yes"/> <marker> <token postag="NC.*" postag_regexp="yes">solo</token> </marker> <token regexp="yes">de|del</token> <token postag="D.*" postag_regexp="yes" min="0"/> <token postag="NC.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token postag="D..[MC]S." postag_regexp="yes"/> <marker> <token postag="NC.*" postag_regexp="yes" skip="5">solo</token> </marker> <token regexp="yes">tuttis?</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <rulegroup id="ADVERBS" name="adverbios"> <rule> <pattern> <marker> <token postag="RG">cuanto</token> </marker> <token regexp="yes">más|menos</token> <token postag="A.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token regexp="yes">lo|qué</token> <marker> <token>cerca</token> </marker> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token>mano</token> <token>a</token> <token>mano</token> </marker> </pattern> <disambig action="add"> <wd lemma="mano a mano" pos="NCMN000"/> <wd lemma="mano a mano" pos="NCMN000"/> <wd lemma="mano a mano" pos="NCMN000"/> </disambig> </rule> <rule> <pattern> <token><exception postag="D.*" postag_regexp="yes"/></token> <marker> <token>mano</token> <token>a</token> <token>mano</token> </marker> </pattern> <disambig action="add"> <wd lemma="mano a mano" pos="LOC_ADV"/> <wd lemma="mano a mano" pos="LOC_ADV"/> <wd lemma="mano a mano" pos="LOC_ADV"/> </disambig> </rule> <rule> <!-- TODO ambiguous: los apenas conocidos --> <pattern> <token postag="RG">apenas<exception scope="previous" postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token>apenas</token> </marker> <token postag="PP.*" postag_regexp="yes" min="0" max="2"/> <token postag="V.[^MNPG].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token postag="V.[SI].*" postag_regexp="yes"/> <token min="0" postag="V.[NP].*" postag_regexp="yes"/> <marker> <token postag="RG.*" postag_regexp="yes"/> </marker> <token postag="RG.*|LOC_ADV" postag_regexp="yes" min="0" max="4"/> <token postag="SP.*|_PUNCT.*|D...P.|CC" postag_regexp="yes"><exception regexp="yes">de|del</exception></token> </pattern> <disambig action="remove" postag="DI0[MC]S0"/> </rule> <rule> <pattern> <token postag="V.[SI].*" postag_regexp="yes"/> <token min="0" postag="V.[NP].*" postag_regexp="yes"/> <marker> <token postag="RG.*" postag_regexp="yes"/> </marker> <token postag="RG.*|LOC_ADV" postag_regexp="yes" min="0" max="4"/> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="remove" postag="DI0[MC]S0"/> </rule> <rule> <pattern> <token>más</token> <marker> <token postag="RG">tarde</token> </marker> <token postag="A.*|V.P.*|PX.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule> <pattern> <token>demasiado<exception scope="previous" regexp="yes">ha|has</exception></token> </pattern> <disambig action="remove" postag="VMP.*"/> </rule> <rule> <pattern> <token>además</token> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule> <pattern> <token>pronto<exception postag="_GN_MS"/></token> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule> <pattern> <marker> <token postag="RG.*" postag_regexp="yes" regexp="yes">mal|bien<exception scope="previous" regexp="yes">algún|ningún</exception></token> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filterall"/> <example type="untouched">El mal siempre triunfa.</example> <example type="untouched">El bien siempre triunfa.</example> </rule> <rule> <pattern> <marker> <token postag="RG_before|RG" postag_regexp="yes" regexp="yes">demasiado|bastante|poco|tanto|muy</token> <token postag="A.*|V.P.*|RG" postag_regexp="yes"/> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token postag="RG.*" postag_regexp="yes">mucho</token> <token postag="A.*" postag_regexp="yes" inflected="yes" regexp="yes">mayor|menor</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <antipattern> <token>un</token> <token>solo</token> </antipattern> <pattern> <token regexp="yes">temprano|incluso|solo|abajo<exception postag="_GN_MS"/></token> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule> <pattern> <marker> <token postag="RG|LOC_ADV|RG_before" postag_regexp="yes"/> <token postag="A.*" postag_regexp="yes">claro</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token regexp="yes">cada|esta|esa|aquella</token> <marker> <token postag="N.*" postag_regexp="yes" regexp="yes">mañana|tarde</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <marker> <token postag="RG">fuera</token> </marker> <token>de</token> <token regexp="yes">lugar|sitio|juego</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <marker> <token postag="RG">acaso</token> </marker> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <marker> <token postag="RG">asaz</token> </marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> </rulegroup> <rulegroup id="NO_ADV" name="no (adverb not noun)"> <rule> <pattern> <token><exception postag="D..MS." postag_regexp="yes"/></token> <marker> <token>no</token> </marker> </pattern> <disambig action="filter" postag="RN"/> </rule> <rule> <pattern> <token postag="D..FS." postag_regexp="yes"/> <marker> <token>no</token> </marker> <token min="0">-</token> <token postag="(A..|NC)[FC][SN].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RN"/> </rule> </rulegroup> <rule id="igual" name="todos igual"> <pattern> <unify negate="yes"> <feature id="numero"/> <feature id="genero"/> <token postag="DI.*" postag_regexp="yes" inflected="yes">todo</token> <marker> <token regexp="yes">igual|bien</token> </marker> </unify> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule id="mas_adj" name="más + adj no adv"> <pattern> <token postag="RG"/> <!--más|menos|muy|bien--> <marker> <token regexp="yes">largo|seguro</token> </marker> </pattern> <disambig action="filter" postag="AQ.*"/> </rule> <rule id="clara_y_simplemente" name="clara y simplemente (adv)"> <pattern> <marker> <token postag="A..[FC]S." postag_regexp="yes"/> <token regexp="yes">y|e|ni|o|u</token> <token postag="RG" regexp="yes">.*mente</token> </marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="replace"> <wd pos="RG"/> <wd pos="RG"/> <wd pos="RG"/> </disambig> </rule> <rule id="ESTAR_GERUNDIO" name="estar/ir + gerundio"> <pattern> <token inflected="yes" regexp="yes">estar|ir</token> <marker> <token postag="V.G.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filterall"/> </rule> <rule id="haciendo" name="haciendo (gerundio)"> <pattern> <token postag="V.G.*" postag_regexp="yes">haciendo</token> </pattern> <disambig action="filterall"/> </rule> <rule id="el_haya" name="el haya"> <pattern> <token regexp="yes">el|al|del|un|algún|ningún</token> <token regexp="yes">&nombre_fem_el;<exception postag="NCCS000"/></token> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule id="FUTURO_SUBJUNTIVO" name="futuro subjuntivo, inusual"> <pattern> <and> <token postag="VMSF2S0"/> <token postag="[AN].*" postag_regexp="yes"/> </and> </pattern> <disambig action="remove" postag="VMSF2S0"/> </rule> <rulegroup id="DEBER" name="deber (verb)"> <rule> <pattern> <token postag="DP.*" postag_regexp="yes"/> <token postag="NCMS000">deber</token> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token inflected="yes">deber</token> </marker> <token postag="RG|LOC_ADV|_PUNCT_CONT|P.*" postag_regexp="yes" max="4" min="0"/> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rule> <pattern> <marker> <token inflected="yes">deber</token> </marker> <token postag="RG|LOC_ADV|_PUNCT_CONT|P.*" postag_regexp="yes" max="4" min="0"/> <token>de</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> </rulegroup> <rulegroup id="SOLER" name="soler (verb)"> <antipattern> <token postag="DA0MS0"/> <token>suelo</token> </antipattern> <rule> <pattern> <marker> <token inflected="yes">soler</token> </marker> <token min="0" postag="RG"/> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rule> <pattern> <marker> <token inflected="yes">soler</token> </marker> <token min="0" postag="RG"/> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove"> <wd lemma="solar"/> </disambig> </rule> <rule> <pattern> <token inflected="yes">soler</token> <token min="0" postag="RG"/> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filter" postag="V.N.*"/> </rule> </rulegroup> <rule id="PODER" name="poder/pudrir (verb)"> <pattern> <marker> <token inflected="yes">poder</token> </marker> <token min="0" postag="RG"/> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove"> <wd lemma="pudrir"/> </disambig> </rule> <rule id="TRATAR" name="tratar de"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">tratar</token> <token>de</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rulegroup id="HABER_PARTICIPO" name=" haver + participio"> <rule> <pattern> <token inflected="yes" postag="VA.*" postag_regexp="yes">haber</token> <token postag="V.P..SM" postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token inflected="yes" postag="VA.*" postag_regexp="yes">haber</token> <token postag="V.P..SM" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="PREP_VERB" name="no verbo conjugado detrás de preposición"> <!-- after: en el debe andar before: en la era llamada--> <rule> <pattern> <token postag="SP.*|LOC_PREP" postag_regexp="yes"><exception postag="PP.*|P0.*|RG.*|CS" postag_regexp="yes"/></token> <marker> <and> <token postag="N.*|A.*|RG|Z|PI.*" postag_regexp="yes"/> <token postag="V.[^NGP].*" postag_regexp="yes"><exception postag="V.N.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="V.[^NGP].*"/> </rule> <rule> <!-- including agreement errors --> <pattern> <token postag="SP.*|LOC_PREP" postag_regexp="yes"><exception postag="PP.*|P0.*|RG.*|CS" postag_regexp="yes"/></token> <token postag="DA.*" postag_regexp="yes"/> <marker> <and> <token postag="N.*|A.*|RG|Z" postag_regexp="yes"/> <token postag="V.[^NGP].*" postag_regexp="yes"><exception postag="V.N.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="V.[^NGP].*"/> </rule> <rule> <pattern> <token postag="SPS00|LOC_PREP" postag_regexp="yes"><exception postag="RG"/></token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D[AIP].*" postag_regexp="yes"/> <marker> <and> <token postag="NC.*|V.P.*|A.*|PI.*|Z" postag_regexp="yes"/> <token postag="V.[MSIG].*" postag_regexp="yes"/> </and> </marker> </unify> </pattern> <disambig action="remove" postag="V.[MSIG].*"/> </rule> </rulegroup> <rule id="diputado" name="diputado"> <pattern> <token inflected="yes">ser</token> <marker> <token inflected="yes" regexp="yes">diputado|soldado</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule id="LASER" name="láser, no adj inv"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token>láser</token> </marker> </pattern> <disambig action="remove"> <wd pos="AQ0CN0"/> </disambig> </rule> <rule id="diferencia" name="diferencia"> <pattern> <token inflected="yes" regexp="yes">más|menos|mayor|menor</token> <marker> <token inflected="yes">diferencia</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rulegroup id="quedar_participio" name="quedar + participio"> <rule> <pattern> <unify> <feature id="numero"/> <marker> <token postag="V.[^P].*" postag_regexp="yes" inflected="yes" regexp="yes">quedar|restar|ser|estar</token> <token postag="V.P.*" postag_regexp="yes"><exception inflected="yes">demasiado</exception></token> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <unify> <feature id="numero"/> <marker> <token postag="V.[^P].*" postag_regexp="yes" inflected="yes" regexp="yes">quedar|restar|ser|estar</token> <token postag="V.P.*" postag_regexp="yes"><exception inflected="yes">demasiado</exception></token> </marker> </unify> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="hacer_falta" name="hacer falta (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">hacer</token> <token postag="NCFS000">falta</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">hacer</token> <token postag="NCFS000">falta</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="estar_en_marcha" name="estar en marcha (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">estar</token> <token postag="SPS00">en</token> <token postag="NCFS000">marcha</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">estar</token> <marker> <token postag="SPS00">en</token> <token postag="NCFS000">marcha</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="dar_a_luz" name="dar a luz (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">dar</token> <token postag="SPS00">a</token> <token postag="NCFS000">luz</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">dar</token> <marker> <token postag="SPS00">a</token> <token postag="NCFS000">luz</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="tomar_en_serio" name="tomar en serio (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">tomar</token> <token postag="SPS00">en</token> <token postag="AQ0MS0">serio</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">tomar</token> <marker> <token postag="SPS00">en</token> <token postag="AQ0MS0">serio</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="traer_de_vuelta" name="traer de vuelta (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">traer</token> <token postag="SPS00">de</token> <token postag="NCFS000">vuelta</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">traer</token> <marker> <token postag="SPS00">de</token> <token postag="NCFS000">vuelta</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="tener_que" name="tener que"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">tener</token> <token postag="CS">que</token> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" skip="1">tener</token> <marker> <token postag="CS">que</token> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rule id="dejar_de" name="dejar de + inf."> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes" skip="2">dejar</token> </marker> <token>de</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rulegroup id="llevar_a_cabo" name="llevar a cabo (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">llevar</token> <token postag="SPS00">a</token> <token postag="NCMS000" regexp="yes">cabo|término</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">llevar</token> <marker> <token postag="SPS00">a</token> <token postag="NCMS000" regexp="yes">cabo|término</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="echar_en_falta" name="echar en falta (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">echar</token> <token postag="SPS00">en</token> <token postag="NCFS000">falta</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">echar</token> <marker> <token postag="SPS00">en</token> <token postag="NCFS000">falta</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="tener_en_cuenta" name="tener en cuenta (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">tener</token> <token postag="SPS00">en</token> <token postag="NCFS000">cuenta</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" skip="2">tener</token> <marker> <token postag="SPS00">en</token> <token postag="NCFS000">cuenta</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rulegroup id="poner_en_marcha" name="poner en marcha (verb)"> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes" inflected="yes">poner</token> <token postag="SP.*" postag_regexp="yes" regexp="yes">en|al</token> <token postag="NC.S000" postag_regexp="yes" regexp="yes">marcha|práctica|descubierto</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" skip="2">poner</token> <marker> <token postag="SP.*" postag_regexp="yes" regexp="yes">en|al</token> <token postag="NC.S000" postag_regexp="yes" regexp="yes">marcha|práctica|descubierto</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> </rulegroup> <rule id="pedir_prestado" name="pedir prestado"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">pedir</token> <marker> <token>prestado</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> </disambig> </rule> <rule id="dar_cuenta" name="dar cuenta"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">dar</token> <token>cuenta</token> </pattern> <disambig action="add"> <wd pos="_GV_"/> <wd pos="_GV_"/> </disambig> </rule> <rule id="dar_de_alta" name="dar de alta"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">dar</token> <token>de</token> <marker> <token regexp="yes">alta|baja</token> </marker> </pattern> <disambig action="add"> <wd pos="_GV_"/> </disambig> </rule> <rule id="como_resultado" name="como resultado"> <pattern> <token>como</token> <token>resultado</token> </pattern> <disambig action="replace"> <wd lemma="como" pos="SPS00"/> <wd lemma="resultado" pos="NCMS00"/> </disambig> </rule> <rule id="presentar" name="presentar reclamo"> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">presentar</token> <token postag="N.*" postag_regexp="yes" inflected="yes">reclamo</token> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="E_CONJ" name="e (conjunción)"> <rule> <pattern> <marker> <token>e<exception scope="previous" regexp="yes">la|una|esta|esa|aquella</exception></token> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <marker> <token>u<exception scope="previous" regexp="yes">la|una|esta|esa|aquella</exception></token> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rule id="BIEN_CC" name="bien (conjunción)"> <pattern> <token postag="CC">bien</token> <token postag="[NAP].*" postag_regexp="yes"/> <token postag="CC">bien</token> <token postag="[NAP].*" postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> <rule id="CONFORME_CS" name="conforme (conjunción)"> <pattern> <marker> <token postag="CS">conforme</token> </marker> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes" min="0" max="2"/> <token postag="V.[MSI].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="CS"/> </rule> <!--sobre (no preposición, nombre)--> <rulegroup id="SOBRE" name="sobre (nombre/preposición)"> <rule> <pattern> <token postag="D..MS." postag_regexp="yes"><exception inflected="yes">todo</exception><exception postag="R.*" postag_regexp="yes"/></token> <marker> <token postag="NCMS000">sobre</token> </marker> <token><exception postag="D.*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="N.*"/> <example type="untouched">Este sobre el otro.</example> </rule> <rule> <pattern> <token postag="N.*" postag_regexp="yes"/> <marker> <token>sobre</token> </marker> <token postag="[DAN].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rule id="MEDIANTE" name="mediante (preposición)"> <pattern> <token><exception>Dios</exception></token> <marker> <token postag="SPS00">mediante</token> </marker> <token postag="[DAN].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="A.*"/> </rule> <!-- P_N Posesivo + nombre <rule id="PN" name="Pos + Nom "> <pattern> <marker> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DP.*" postag_regexp="yes"/> <token postag="[NA].*" postag_regexp="yes"><exception postag="C.|SP.*|R.*" postag_regexp="yes"/></token> </unify> </marker> </pattern> <disambig action="unify"/> </rule>--> <rule id="dicho" name="dicho + Nom "> <pattern> <marker> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="VMP.*|AQ.*" postag_regexp="yes" inflected="yes">decir<exception postag="_GV_"/></token> <token postag="NC.*" postag_regexp="yes"><exception postag="C.|SP.*|R.*|P.*" postag_regexp="yes"/></token> </unify> </marker> </pattern> <disambig action="filterall"/> </rule> <rule id="dance" name="dance (english)"> <pattern> <token regexp="yes" inflected="yes">música|canción|ritmo|baile|lista|estilo|carácter</token> <token min="0" postag="_QM_OPEN"/> <marker> <token>dance</token> </marker> </pattern> <disambig action="replace"> <wd pos="AQ0CN0"/> </disambig> </rule> <rulegroup id="PP_NOUN" name="pronombre personal / nombre"> <rule> <pattern> <token>el</token> <marker> <token>yo</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token postag="P.*" postag_regexp="yes">yo<exception scope="previous">el</exception></token> </pattern> <disambig action="filter" postag="P.*"/> <example type="untouched">El yo que me define.</example> </rule> </rulegroup> <rulegroup id="medio_adj" name="medio (adj)"> <rule> <pattern> <token regexp="yes" inflected="yes">alto|bajo</token> <token postag="CC|_PUNT_CONT" postag_regexp="yes"/> <marker> <token postag="A.*" postag_regexp="yes" inflected="yes">medio</token> </marker> </pattern> <disambig action="filter" postag="A.*"/> </rule> </rulegroup> <rulegroup id="medio_adv" name="medio (adv) + adj: medio viva medio muerta"> <rule> <pattern> <token postag="DN.[MC].." postag_regexp="yes"/> <token>y</token> <marker> <token>medio</token> </marker> </pattern> <disambig action="replace" postag="DN0MP0"/> </rule> <rule> <pattern> <token regexp="yes">uno|un</token> <token>y</token> <marker> <token>medio</token> </marker> </pattern> <disambig action="replace" postag="DN0MP0"/> </rule> <rule> <pattern> <marker> <token postag="RG">medio</token> </marker> <token postag="AQ0FS0|AQ0FP0|AQ0MP0|V.P...F|V.P..PM" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <!-- medio + adj. masc --> <pattern> <marker> <token postag="RG">medio</token> </marker> <token regexp="yes">lleno|vacío|desnudo|vestido|muerto|vio|crudo|seco</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <marker> <token postag="RG">medio</token> </marker> <token skip="2"/> <token>medio</token> </pattern> <disambig action="filter" postag="RG"/> </rule> <rule> <pattern> <token>medio</token> <token skip="2"/> <marker> <token postag="RG">medio</token> </marker> </pattern> <disambig action="filter" postag="RG"/> </rule> </rulegroup> <rulegroup id="justo" name="justo (adv)"> <rule> <pattern> <marker> <token postag="RG">justo</token> </marker> <token regexp="yes">afuera|adentro|fuera|dentro|aquí|allí|ahí|allá</token> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule> <pattern> <token inflected="yes">ser</token> <marker> <token postag="RG">justo</token> </marker> <token postag="D.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="RG.*"/> </rule> </rulegroup> <rule id="por_si_acaso" name="por si acaso + verb"> <pattern> <token>si</token> <token>acaso</token> <marker> <and> <token postag="V.[SI].*" postag_regexp="yes"/> <token postag="A.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="adj_sent_end" name="adjectives at sentence end"> <pattern> <token><exception regexp="yes">no|que|ya|porqe|aún|como</exception><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> <marker> <and> <token postag="AQ.*" postag_regexp="yes"><exception regexp="yes">somos|molesta|reflejas?</exception></token> <token postag="V.[SI].2S." postag_regexp="yes"/> </and> </marker> <token postag="_PUNCT.*" postag_regexp="yes" regexp="yes">[\.,;]</token> </pattern> <disambig action="filter" postag="AQ.*|_GN_.*|N.*"/> </rule> <rulegroup id="adv_adj" name="adverbi + adjectivo"> <rule id="aa1" name="aa1"> <pattern> <token>más</token> <marker> <token>bien</token> </marker> <token postag="AQ.*|NC.*|SPS.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="R.*"/> </rule> <rule id="aa3" name="aa1"> <pattern> <marker> <token postag="RG_begore"><exception regexp="yes">molt|poc|tant|tan|força|massa|tot|també</exception><exception postag="N.*" postag_regexp="yes"/></token> </marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"><exception postag="V.[NMIS].*|_GV_" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="R.*"/> </rule> <rule id="aa4" name="aa1"> <pattern> <token postag="RG_begore|.*LOC_ADV.*" postag_regexp="yes"><exception regexp="yes">molt|poc|tant|tan|força|massa|tot|més|també</exception></token> <marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"><exception postag="V.[NMIS].*|_GV_|RG" postag_regexp="yes"/><exception inflected="yes" regexp="yes">estat|part</exception><exception>nou</exception></token> </marker> <token><exception regexp="yes">seus?</exception></token> </pattern> <disambig action="filter" postag="A.*|V.P.*|DP.*"/> <example type="untouched">Són massivament admiradors seus.</example> </rule> <rule id="aa5" name="aa1"> <!-- amb més públic, per a tal objectiu. Excep: en gairebé tots els; de més alta qualitat --> <pattern> <token postag="SPS00"><exception>cap</exception></token> <token postag="RG_begore"><exception regexp="yes">molt|poc|tant|tan|.+ment|massa|ben</exception></token> <marker> <token postag="NC.*" postag_regexp="yes"><exception postag="D.*|PI.*|VS.*" postag_regexp="yes"/></token> </marker> <token><exception postag="NC.*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="NC.*"/> </rule> <!-- cas: molt comunes. Però: tal objectiu--> <rule id="aa6" name="aa1"> <pattern> <!-- <token postag="SPS00" negate_pos="yes"/> PROVISIONAL!!! --> <marker> <and> <token postag="RG_before"/> <token postag="D.*" postag_regexp="yes"/> </and> </marker> <and> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception postag="N.[MC][SN].*" postag_regexp="yes"/></token> </and> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule id="aa6b" name="aa1"> <pattern> <token>de</token> <marker> <and> <token postag="RG">molt</token> <token postag="D.*" postag_regexp="yes"/> </and> </marker> <and> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception postag="N.[MC][SN].*" postag_regexp="yes"/></token> </and> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule id="aa7" name="la muy astuta"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="DA.*" postag_regexp="yes"/> <token postag="RG_begore"/> <token postag="AQ.*|V.P.*" postag_regexp="yes"><exception postag="V.[SI].*" postag_regexp="yes"/><exception>mal</exception></token> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule id="aa8" name="aa1"> <pattern> <token postag="D.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filter" postag="A.*|V.P.*|_GN_.*"/> </rule> <rule id="aa9" name="aa1"> <pattern> <token postag="D.*|N.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG_before" postag_regexp="yes"/> <marker> <token postag="AQ.*|V.P.*" postag_regexp="yes"><exception>solo</exception></token> </marker> </pattern> <disambig action="filter" postag="A.*|V.P.*|_GN_.*"/> </rule> <rule id="aa11" name="aa1"> <pattern> <token postag="RG.*|V.[SI].*|PI.*|_PUNCT.*" postag_regexp="yes"/> <marker> <token postag="RG_before"><exception>mejor</exception></token> </marker> <token postag="AQ.*|V.P.*|PX.*" postag_regexp="yes"><exception postag="N.[MC][SN].*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule id="aa12" name="aa1"> <!-- ampliar a LOC_ADV --> <!-- Haurien de concordar?? --> <pattern> <token postag="N.*|_GN_.*|RG.*|V.[SI].*|PI.*" postag_regexp="yes"/> <token postag="_PUNCT.*" postag_regexp="yes"/> <marker> <token postag="RG_begore"><exception regexp="yes">força|tot</exception></token> </marker> <token postag="AQ.*|V.P.*|PX.*" postag_regexp="yes"><exception postag="N.[MC][SN].*" postag_regexp="yes"/></token> <!-- <exception postag="V.[^P].*" postag_regexp="yes"/> --> </pattern> <disambig action="filter" postag="RG.*"/> </rule> <rule id="aa13" name="aa1"> <pattern> <token postag="N.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <marker> <token postag="AQ.*|V.P.*|PX.*" postag_regexp="yes"><exception postag="V.[^P].*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="A.*|V.P.*|PX.*|_GN_.*"/> </rule> <rule id="aa14" name="aa1"> <pattern> <token postag="N.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <marker> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> </marker> <token postag="AQ.*|V.P.*|PX.*" postag_regexp="yes"><exception postag="V.[^P].*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag=".*LOC_ADV.*|RG.*"/> </rule> <rule id="aa15" name="aa1"> <pattern> <token postag="N.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG.*" postag_regexp="yes"/> <token postag=".*LOC_ADV.*|RG_before" postag_regexp="yes"/> <marker> <token postag="AQ.*|V.P.*|PX.*" postag_regexp="yes"><exception postag="V.[^P].*" postag_regexp="yes"/><exception>solo</exception></token> </marker> </pattern> <disambig action="filter" postag="A.*|V.P.*|PX.*|_GN_.*"/> </rule> <rule id="aa16" name="aa1"> <!-- tan regular, molt dur, etc. --> <pattern> <token postag="RG_begore"/> <marker> <and> <token postag="AQ.*" postag_regexp="yes"/> <token postag="V.N.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="filter" postag="A.*|_GN_.*"/> </rule> <rule id="aa17" name="los peor pagados"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="DA.*" postag_regexp="yes"/> <unify-ignore> <token postag="RG_before|RG" postag_regexp="yes" regexp="yes">peor|mejor</token> </unify-ignore> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule id="aa18" name="orejas igual de grandes"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="NC..*" postag_regexp="yes"/> <unify-ignore> <marker> <token postag="RG_before|RG" postag_regexp="yes">igual</token> </marker> <token>de</token> </unify-ignore> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </unify> </pattern> <disambig action="filter" postag="RG.*"/> </rule> </rulegroup> <rulegroup id="not_noun" name="not noun"> <rule> <pattern> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">varios?</token> <token postag="N.*|SENT_END|PARA_END" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">no|eres|lo|los|de|restante|restantes|ves|ve</token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">cuanto|considerando<exception scope="previous">el</exception></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <and> <token inflected="yes" regexp="yes">todo|no|pronto<exception postag="D[^D].*|DD.MS." postag_regexp="yes" scope="previous"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token inflected="yes" regexp="yes">y|o|nada</token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>hemos</token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>dan<exception postag="D..MS.|AO0MS0" postag_regexp="yes" scope="previous"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token regexp="yes">si|son|sino<exception scope="previous" regexp="yes">un|el|este|de|del|al</exception><exception scope="previous" postag="SPS00|LOC_PREP" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <marker> <and> <token>ser</token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> <token regexp="yes" inflected="yes">padre|madre</token> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <!-- al buscarlas --> <pattern> <token>al</token> <marker> <and> <token postag="V.N.*" postag_regexp="yes"><exception>parecer</exception></token> <token postag="N.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <!-- por qué ser --> <pattern> <token>por</token> <token>qué</token> <marker> <and> <token postag="V.N.*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token postag="V.N.*" postag_regexp="yes"><exception postag="D..[MC]S.|DA.[MC]..|SP:DA" postag_regexp="yes" scope="previous"/><exception scope="previous" regexp="yes">bajo|gran</exception></token> <!--|AQ0MS0--> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">ser|poder|saber</exception></token> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <token postag="D[AP].[MC]S." postag_regexp="yes"/> <token postag="RG" min="0"/> <token postag="A..[MC]S." postag_regexp="yes"/> <marker> <token postag="NCMS000">ser</token> </marker> </pattern> <disambig action="filter" postag="NCMS000"/> </rule> <rule> <antipattern> <token postag="D[AP].[MC]S." postag_regexp="yes"/> <token postag="RG"/> <token postag="A..[MC]S." postag_regexp="yes"/> <token postag="NCMS000"/> </antipattern> <pattern> <and> <token postag="V.N.*" postag_regexp="yes">ser<exception postag="D..[MC]S.|DA.[MC].." postag_regexp="yes" scope="previous"/></token> <!--|AQ0MS0--> <token postag="N.*" postag_regexp="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token regexp="yes">ese|a<exception postag="D..FS." postag_regexp="yes" scope="previous"/><exception scope="previous">el</exception></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>haces<exception postag="D..MP." postag_regexp="yes" scope="previous"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>haz<exception postag="D..MS." postag_regexp="yes" scope="previous"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>habla<exception postag="D..[FC]S.|SPS00|LOC_PREP" postag_regexp="yes" scope="previous"/><exception scope="previous">el</exception></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <and> <token>hablas<exception postag="D..[FC]P.|SPS00|LOC_PREP" postag_regexp="yes" scope="previous"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <token><exception postag="D.*" postag_regexp="yes"/></token> <marker> <token postag="A.*" postag_regexp="yes" inflected="yes">bonito</token> </marker> </pattern> <disambig action="remove" postag="NC.*"/> </rule> </rulegroup> <rule id="possessive_pronoun" name="posesivo pronombre"> <pattern> <token postag="DA.*" postag_regexp="yes"/> <marker> <token postag="PX.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="remove" postag="DP.*"/> </rule> <rule id="possessive_not_pronoun" name="posesivo determinante"> <pattern> <marker> <and> <token postag="PX.*" postag_regexp="yes"/> <token postag="DP.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="PX.*"/> </rule> <rule id="noun_verb_error" name="noun/verb including agreement errors"> <pattern> <token postag="D[^N].*" postag_regexp="yes"><exception postag="P.*|_GN_.*" postag_regexp="yes"/><exception regexp="yes">el|tu</exception></token> <marker> <and> <token postag="N.*|A.*|RG|Z" postag_regexp="yes"/> <token postag="V.[^NGP].*" postag_regexp="yes"><exception postag="V.N.*" postag_regexp="yes"/><exception inflected="yes">ser</exception></token> </and> </marker> </pattern> <disambig action="remove" postag="V.[^NGP].*"/> </rule> <rulegroup id="not_verb" name="not verb"> <rule> <pattern> <token regexp="yes">mamá|cinco|honestas?|placer</token> <!-- honestar: very unusual verb --> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <token><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> <marker> <token>así</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <token><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> <marker> <token regexp="yes">comidas?</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule id="serie" name="serie (noun)"> <pattern> <marker> <token postag="NC.*" postag_regexp="yes">serie</token> </marker> <token regexp="yes">de|del</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule id="amigo" name="amigo (not verb)"> <pattern> <!--<token><exception regexp="yes">me|te|se</exception></token>--> <marker> <token regexp="yes" inflected="yes">amigo|español|bicicleta</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token postag="N.*" postag_regexp="yes" regexp="yes">sedes?</token> </marker> <token regexp="yes">de|del</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes">partida</token> </marker> <token>de</token> <token regexp="yes">nacimiento|defunción</token> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <token>qué</token> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes">distancia</token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <rule id="un_not_verb" name="un + not verb"> <pattern> <token postag="DI.*" postag_regexp="yes"><exception postag="DI.*" postag_regexp="yes" negate_pos="yes"/></token> <marker> <and> <token postag="V.[SIM].*" postag_regexp="yes"/> <token postag="[AN].*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="V.[SIM].*"/> </rule> <rulegroup id="el_not_verb" name="el + not verb"> <rule> <!--el uno--> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="DA.*" postag_regexp="yes"><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> <marker> <token postag="[AN].*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="remove" postag="V.[SIM].*"/> </rule> <rule> <!--el uno--> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="D.*" postag_regexp="yes"><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/><exception>qué</exception></token> <marker> <token postag="[AN].*" postag_regexp="yes"><exception postag="V...3S." postag_regexp="yes"/></token> </marker> </unify> </pattern> <disambig action="remove" postag="V.[SIM].*"/> </rule> <rule> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes">regla</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> </rulegroup> <rulegroup id="uno_pron" name="uno (pronoun)"> <rule> <pattern> <marker> <token postag="PI0MS000">uno</token> </marker> <token>de</token> <token postag="D..[MC]P." postag_regexp="yes"/> </pattern> <disambig action="filter" postag="PI0MS000"/> </rule> <rule> <pattern> <token>el</token> <marker> <token postag="PI0MS000">uno</token> </marker> </pattern> <disambig action="filter" postag="PI0MS000"/> </rule> </rulegroup> <rulegroup id="probably_noun" name="probably_noun"> <rule> <pattern> <marker> <token inflected="yes">casa</token> </marker> <token regexp="yes">del?</token> </pattern> <disambig action="filter" postag="NC.*"/> </rule> <rule> <pattern> <token inflected="yes">mesa</token> </pattern> <disambig action="filter" postag="NC.*"/> </rule> </rulegroup> <rule id="verbnoun_sentstart" name="verb/noun at sent start"> <!-- Copa del mundo, formas de vida... Y objetos de valor --> <antipattern> <token>de</token> <token>que</token> </antipattern> <pattern> <token postag="SENT_START|CC|_PUNCT.*" postag_regexp="yes"/> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"><exception regexp="yes">deje|era</exception></token> <token postag="NC.*" postag_regexp="yes"/> </and> </marker> <token inflected="yes" regexp="yes">de|entre</token> </pattern> <disambig action="remove" postag="V.[ISM].*"/> </rule> <rulegroup id="la_cosas" name="la cosas (nombre, incluyendo error"> <antipattern> <token>no</token> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes" max="2"/> <token postag="V.S.*" postag_regexp="yes"/> </antipattern> <rule> <pattern> <token postag="SENT_START" skip="-1"><exception scope="next" postag="CS|P[RT].*|LOC_CS" postag_regexp="yes"/></token> <token postag="D.*" postag_regexp="yes"/> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.S.*" postag_regexp="yes"><exception postag="V.I.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="V.[SM].*"/> </rule> <rule> <pattern> <token postag="SENT_START" skip="-1"><exception scope="next" postag="CS|P[RT].*|LOC_CS" postag_regexp="yes"/></token> <token>,</token> <token postag="D.*" postag_regexp="yes"/> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.S.*" postag_regexp="yes"><exception postag="V.I.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="V.[SM].*"/> </rule> <rule> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.S.*" postag_regexp="yes"><exception postag="V.I.*" postag_regexp="yes"/></token> </and> </marker> <token postag="V.*[123].*" postag_regexp="yes"><exception postag="V.*[123].*" postag_regexp="yes" negate_pos="yes"/></token> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <rulegroup id="la_planta" name="la planta (noun), exception to next rule"> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DA.*" postag_regexp="yes"><exception scope="previous" postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/><exception>lo</exception></token> <marker> <and> <token postag="NC.*" postag_regexp="yes"/> <token postag="V.[MSI].*" postag_regexp="yes"/> </and> </marker> </unify> <token min="0">no</token> <token postag="V.*|AQ.*|&pronombre_personal_atono_POS;" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.[MSI].*"/> <example type="untouched">Se la ve tranquila.</example> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DA.*" postag_regexp="yes"><exception>lo</exception></token> <marker> <and> <token postag="NC.*" postag_regexp="yes"/> <token postag="V.[MSI].*" postag_regexp="yes"/> </and> </marker> </unify> <token regexp="yes">de|del</token> <token><exception regexp="yes">manera|forma</exception></token> </pattern> <disambig action="remove" postag="V.[MSI].*"/> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DA.*" postag_regexp="yes"><exception>lo</exception></token> <marker> <and> <token postag="NC.*" postag_regexp="yes"/> <token postag="V.[MSI].*" postag_regexp="yes"/> </and> </marker> </unify> <token postag="SP.*" postag_regexp="yes"/> <token>que</token> </pattern> <disambig action="remove" postag="V.[MSI].*"/> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="NC.*" postag_regexp="yes" inflected="yes" regexp="yes">queja|sentencia</token> </marker> </unify> </pattern> <disambig action="remove" postag="V.[SMI].*"/> </rule> </rulegroup> <rulegroup id="que_la_saque" name="que + pronombre verbo 3a persona sing"> <antipattern> <token>la</token> <token>persona</token> </antipattern> <antipattern> <token>las</token> <token>personas</token> </antipattern> <rule> <pattern> <token><exception postag="V.*" postag_regexp="yes" inflected="yes" regexp="yes">hacer|conseguir</exception></token> <token regexp="yes">quien|que<exception postag="LOC_CS"/></token> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <marker> <token postag="VM..3S." postag_regexp="yes"/> </marker> </pattern> <disambig action="filter" postag="V.*|_GV_"/> </rule> <rule> <pattern> <token regexp="yes">que|quien</token> <token>un</token> <marker> <token postag="VM..3S." postag_regexp="yes"><exception postag="NC[MC][SN].*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="V.*|_GV_"/> </rule> </rulegroup> <rulegroup id="verbnoun_verb" name="verb/noun + verb"> <antipattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token postag="V.[IS].*" postag_regexp="yes"/> </antipattern> <antipattern> <token postag="CS|PR.*" postag_regexp="yes" skip="5"/> <token regexp="yes">lo|la|los|las</token> <token postag="V...[123].." postag_regexp="yes"/> </antipattern> <antipattern> <!-- usually verb --> <token>procura</token> </antipattern> <rule> <pattern> <token postag="D[DAIP].[MF].*" postag_regexp="yes"/> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">dan|son</exception></token> </and> </marker> <token postag="V.[IS].*" postag_regexp="yes"><exception postag="V.[MIS].*|_GV_" postag_regexp="yes" negate_pos="yes"/></token> </pattern> <disambig action="filter" postag="[^V].*"/> </rule> <rule> <pattern> <token postag="D[DAIP].[MF].*" postag_regexp="yes"/> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">dan|son</exception></token> </and> </marker> <token postag="(PP|P0).*" postag_regexp="yes"/> <token postag="V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="[^V].*"/> </rule> <rule> <pattern> <token postag="D[DAIP].[MF].*" postag_regexp="yes"/> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">dan|son</exception></token> </and> </marker> <token postag="(PP|P0).*" postag_regexp="yes"/> <token postag="(PP|P0).*" postag_regexp="yes"/> <token postag="V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="[^V].*"/> </rule> <rule> <pattern> <token postag="D[DAIP].[MF].*" postag_regexp="yes"/> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">dan|son</exception></token> </and> </marker> <token regexp="yes">no|ya</token> <token postag="(PP|P0).*|V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="[^V].*"/> </rule> </rulegroup> <rule id="PREP_MI" name="preposición + mí"> <pattern> <token postag="SPS00"/> <token postag="PP1CSO00">mí</token> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="PP_VERB" name="pronombre personal seguido de verbo"> <antipattern> <token>se</token> <token postag="V...[12].." postag_regexp="yes"><exception postag="V...3.." postag_regexp="yes"/></token> </antipattern> <rule> <pattern> <token regexp="yes" postag="P.*" postag_regexp="yes">me|te|se|nos|os</token> <token regexp="yes" postag="P.*" postag_regexp="yes">&pronombre_personal_atono;</token> <token postag="V.[^MNPG].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+</exception></token> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token regexp="yes" postag="P.*" postag_regexp="yes">&pronombre_personal_atono;<exception postag="D.*" postag_regexp="yes"/></token> </marker> <token postag="V.[^MNPG].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+</exception></token> </pattern> <disambig action="filter" postag="P[0P].*"/> </rule> <rule> <pattern> <token regexp="yes" postag="P.*" postag_regexp="yes">&pronombre_personal_atono;<exception postag="D.*" postag_regexp="yes"/></token> <marker> <token postag="V.[^MNPG].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+</exception></token> </marker> </pattern> <disambig action="filter" postag="V.[^MNPG].*"/> <example type="untouched">Él apenas leyó 10.</example> </rule> <!-- including determiners: la, lo, las, los --> <!--<rule> <pattern> <token regexp="yes" postag="P.*" postag_regexp="yes">&pronombre_personal_atono;</token> <token postag="V.[^MNPG].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+</exception><exception postag="[NA].*" postag_regexp="yes"/></token> </pattern> <disambig action="filterall" postag="V.[^MNPG].*"/> <example type="untouched">Él apenas leyó 10.</example> </rule>--> <rule> <pattern> <token>lo</token> <marker> <token postag="V.[^MNPG].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+|uno</exception><exception postag="A.*|V.P.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="V.[^MNPG].*"/> <example type="untouched">Él apenas leyó 10.</example> </rule> <rule> <pattern> <marker> <token postag="P.*" postag_regexp="yes">lo</token> </marker> <token postag="V.[SI].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="P.*"/> </rule> </rulegroup> <rule id="la_not_verb" name="la + not verb"> <pattern> <token postag="DA.*" postag_regexp="yes">la</token> <marker> <token regexp="yes">calle|sangre</token> <!-- exceptions? --> </marker> </pattern> <disambig action="remove" postag="V.[SIM].*"/> </rule> <rule id="el_infinitivo" name="el + infinitivo"> <pattern> <token regexp="yes">el|al|del</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="remove" postag="V.[^N].*"/> </rule> <rule id="modal_verb" name="modal verb"> <pattern> <marker> <token postag="V.*" postag_regexp="yes" regexp="yes" inflected="yes">querer|deber|poder|gustar|encantar|intentar|saber<exception>gusto</exception></token> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="noun_not_reflexive_verb" name="nombre, no verbo reflexivo"> <rule> <pattern> <marker> <token>persona<exception scope="previous">se</exception></token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> <rule> <pattern> <marker> <token>personas<exception scope="previous">te</exception></token> </marker> </pattern> <disambig action="filter" postag="N.*"/> </rule> </rulegroup> <!-- NOMINAL GROUPS --> <rule id="MEGA" name="mega"> <antipattern> <token>mega</token> <token postag="[NA].*|V.P.*" postag_regexp="yes"/> </antipattern> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token>mega</token> </marker> </pattern> <disambig action="remove" postag="AQ0CN0"/> </rule> <rulegroup id="verb_improbable" name="verbo improbable"> <rule> <pattern> <token><exception postag="&pronombre_personal_atono_POS;|CS|PR.*|LOC_CS" postag_regexp="yes"/></token> <marker> <token postag="[NDA].*" postag_regexp="yes" regexp="yes">una|espacio|desnudo|desnudas?</token> </marker> <token><exception postag="D.*" postag_regexp="yes"/></token> </pattern> <disambig action="remove" postag="V.*"/> <example type="untouched">Encontrar algo que los una.</example> <example type="untouched">Algo que una los distintos partidos.</example> </rule> <rule> <pattern> <marker> <token>media</token> </marker> <token postag="NCFS000"/> </pattern> <disambig action="filter" postag="AQ0FS0"/> </rule> <rule> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token>sitio</token> </marker> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token>camino</token> </marker> <token regexp="yes">del?</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token regexp="yes">casa|casas</token> </marker> <token postag="V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> </rulegroup> <rule id="FUERA_DE_JUEGO" name="fuera de juego"> <pattern> <token postag="D..MP." postag_regexp="yes"/> <marker> <token>fuera</token> </marker> <token>de</token> <token>juego</token> </pattern> <disambig action="replace" postag="NCMP000"/> </rule> <rule id="NOMBRE_PROPIOS" name="nombres propios"> <antipattern> <token postag="A.*|NC.*" postag_regexp="yes" regexp="yes">\p{Lu}+<exception>IRA</exception></token> </antipattern> <pattern> <token><exception postag="SENT_START"/><exception regexp="yes">[—–\-]</exception><exception regexp="yes">[¿¡"'«»‘“:]</exception></token> <marker> <token postag="NP.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="filter" postag="NP.*"/> <example type="untouched">LA CONSTANTE RIVALIDAD ENTRE ELLOS.</example> </rule> <rulegroup id="CUYO" name="cuyo + nombre/vebo"> <rule> <pattern> <token regexp="yes">cuy[oa]s?</token> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="remove" postag="V.[MSI].*"/> </rule> </rulegroup> <rule id="haber_error" name="haber (sin hache) + participio"> <pattern> <token regexp="yes">abría|abríais|abríamos|abrían|abrías|as|ayas|aya|an|a|e</token> <marker> <token postag="VMP00SM" regexp="yes">dicho|pasado</token> </marker> </pattern> <disambig action="filter" postag="VMP00SM"/> </rule> <rulegroup id="UNA" name="una (not verb)"> <rule> <pattern> <marker> <token regexp="yes">una|uno</token> </marker> <!-- error: está --> <token>esta</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token>una</token> </marker> <token postag="_QM.*" postag_regexp="yes"/> <token postag="[AN].*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token>uno</token> </marker> <token regexp="yes">del?</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token>una</token> </marker> <token>de</token> <token postag="D.*|PP.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rule> <pattern> <marker> <token regexp="yes">una|uno</token> </marker> <token postag="CC"/> <token inflected="yes">otro</token> </pattern> <disambig action="remove" postag="V.*"/> </rule> </rulegroup> <rulegroup id="CONTRA" name="contra"> <rule> <pattern> <token postag="SPS00">en</token> <token postag="NCCS000">contra</token> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token><exception postag="D..[FC][SN]." postag_regexp="yes"/></token> <marker> <token postag="SPS00">contra</token> </marker> </pattern> <disambig action="filter" postag="SPS00"/> </rule> </rulegroup> <rule id="adjinusual" name="adjective unusual"> <pattern> <marker> <token postag="N.*" inflected="yes" postag_regexp="yes" regexp="yes">animalista|ayudante|mueble|profesional|estudiante|muelle|teniente|terminal|vertiente|celular</token> <!-- virgen --> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="MIRADA" name="mirada (no participio)"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes" regexp="yes">miradas?</token> </marker> </pattern> <disambig action="remove" postag="V.P.*"/> </rule> <rule id="MADRUGADA" name="madurgada (no participio)"> <pattern> <token regexp="yes">madrugadas?|revistas?|validas?</token> </pattern> <disambig action="remove" postag="V.P.*"/> </rule> <rule id="pequeno" name="pequeño: adjectivo, no nombre, ante nombre"> <pattern> <marker> <token postag="AQ.*" postag_regexp="yes" inflected="yes" regexp="yes">pequeño|grande</token> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="AQ.*"/> </rule> <rulegroup id="adj_nom" name="adj + nombre"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="AQ.*|D.*" postag_regexp="yes" regexp="yes" inflected="yes">principal|pequeño|grande|diferente|vario|distinto|importante|gran|bueno|medio<exception>bueno</exception></token> <token postag="NC.*" postag_regexp="yes"/> </unify> </pattern> <disambig action="filterall"/> </rule> </rulegroup> <rulegroup id="los_distintos" name="los distintos"> <rule> <pattern> <token postag="DA.*" postag_regexp="yes"/> <marker> <token inflected="yes" regexp="yes">varios|distintos|diferentes</token> </marker> </pattern> <disambig action="remove" postag="D.*"/> </rule> <rule> <pattern> <marker> <token inflected="yes" regexp="yes">varios|distintos|diferentes</token> </marker> <token>debido</token> <token>a</token> </pattern> <disambig action="remove" postag="D.*"/> </rule> </rulegroup> <rulegroup id="grupos_adj_n" name="grupos de ajectivos y nombres"> <rule> <pattern> <token postag="NC.P.*" postag_regexp="yes"/> <token postag="A...S.*" postag_regexp="yes"/> <token postag="CC"/> <token postag="A...S.*" postag_regexp="yes"/> <token postag="A...P.*" postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token postag="NC.P.*" postag_regexp="yes"/> <token postag="A...S.*" postag_regexp="yes"/> <token>,</token> <token postag="A...S.*" postag_regexp="yes"/> <token postag="CC"/> <token postag="A...S.*" postag_regexp="yes"/> <token postag="A...P.*" postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> </rulegroup> <rulegroup id="DNumN" name="Det + Numeral + Nom/Adj"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="D[AID].*" postag_regexp="yes"/> <token postag="DN0CP0"/> <token postag="A.*|V.P.*|N.*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token postag="D[AID].[MC][PN0].*" postag_regexp="yes"/> <token postag="DN0[CM]P0" postag_regexp="yes"/> <token postag="A..[MC][PN0].*|V.P..PM.?|N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[AID].[FC][PN0].*" postag_regexp="yes"/> <token postag="DN0[CF]P0" postag_regexp="yes"/> <token postag="A..[FC][PN0].*|V.P..PF.?|N.[FC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <rule id="DDDN" name="todos los demás bienes"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="DI.*" postag_regexp="yes" inflected="yes">todo</token> <token postag="D[AD].*" postag_regexp="yes"/> <token postag="DI.*" postag_regexp="yes">demás</token> <token postag="N.*|PI.*|A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule id="DDN" name=" Det + Det + Noun/Pronoun"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="DI.*" postag_regexp="yes" inflected="yes">todo</token> <token postag="D[AD].*" postag_regexp="yes"/> <token postag="N.*|PI.*|A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule id="D_DI_N" name=" Det + Det + Noun/Pronoun"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="D[AIP].*" postag_regexp="yes"/> <token postag="DI.*" postag_regexp="yes" inflected="yes">poco</token> <token postag="N.*|A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <!-- D_R_N : Det + Adverbio + Nombre--> <!--<rule id="D_R_N" name="Det + Adv +Nom"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="R.*" postag_regexp="yes"><exception postag="A.*" postag_regexp="yes"/></token> </marker> <token postag="N.*" postag_regexp="yes"><exception>son</exception><exception postag="(C|SP).*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="R.*"/> <example type="untouched">su mismo puesto</example> </rule>--> <!-- DDN : Determinante posesivo + Determinante indefinido + Nombre --> <rule id="DDN_u" name="Det + Nom + Adj"> <pattern> <marker> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DP.*" postag_regexp="yes"/> <token postag="DI.*" postag_regexp="yes"><exception inflected="yes" regexp="yes">otro|poco</exception></token> <token postag="N.*" postag_regexp="yes"/> </unify> </marker> </pattern> <disambig action="unify"/> </rule> <!-- DNA : Det + Nombre + adjetivo--> <rulegroup id="DNA" name="Det + Nom + Adj"> <rule> <pattern> <marker> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D.*" postag_regexp="yes"><exception>lo</exception></token> <token postag="N.*" postag_regexp="yes"><exception>a</exception></token> <token postag="A.*" postag_regexp="yes"><exception regexp="yes">solo|auto|queda|gran</exception></token> </unify> </marker> </pattern> <disambig action="unify"/> <example inputform="una[uno/DI0FS0,uno/PI0FS000]" outputform="una[uno/DI0FS0]" type="ambiguous">Es <marker>una</marker> ocasión romántica.</example> <example type="untouched">Es una romántica ocasión.</example> </rule> <rule> <pattern> <marker> <token postag="D[^R].[MC][SN0].*" postag_regexp="yes"/> <token postag="N.[MC][SN0].*" postag_regexp="yes"/> <token postag="A..[MC][SN0].*|V.P..SM|PX.[MC][SN0].*" postag_regexp="yes"><exception postag="V[MA]IP3S0.?" postag_regexp="yes"/><exception regexp="yes">solo|auto|gran</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][SN0].*" postag_regexp="yes"/> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception>a</exception></token> <token postag="A..[FC][SN0].*|V.P..SF|PX.[FC][SN0].*" postag_regexp="yes"><exception regexp="yes">afecta|queda|gran</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[MC][PN0].*" postag_regexp="yes"/> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[MC][PN0].*|V.P..PM|PX.[MC][PN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][PN0].*" postag_regexp="yes"/> <token postag="N.[FC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][PN0].*|V.P..PF|PX.[FC][PN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <!-- DAN : Determinante + Adjetivo + Nombre--> <rulegroup id="DAN" name="Det + Adj + Nom"> <rule> <antipattern> <token>esta</token> <token/> <token postag="RG"/> </antipattern> <pattern> <marker> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D.*" postag_regexp="yes"><exception>qué</exception></token> <token postag="A.*|V.P.*" postag_regexp="yes"><exception inflected="yes">niño</exception></token> <token postag="N.*" postag_regexp="yes"><exception postag="[DC].*" postag_regexp="yes"/><exception regexp="yes">de|son|era|solo</exception></token> </unify> </marker> </pattern> <disambig action="unify"/> <example inputform="una[uno/DI0FS0,uno/PI0FS000]" outputform="una[uno/DI0FS0]" type="ambiguous">Es <marker>una</marker> romántica ocasión.</example> <example type="untouched">Es una ocasión romántica.</example> </rule> <rule> <pattern> <marker> <token postag="D[^R].[MC][SN0].*" postag_regexp="yes"/> <token postag="A..[MC][SN0].*|V.P..SM.?|PX.[MC][SN0].*" postag_regexp="yes"><exception>niño</exception></token> <token postag="N.[MC][SN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][SN0].*" postag_regexp="yes"/> <token postag="A..[FC][SN0].*|V.P..SF.?|PX.[FC][SN0].*" postag_regexp="yes"/> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception>era</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[MC][PN0].*" postag_regexp="yes"/> <token postag="A..[MC][PN0].*|V.P..PM.?|PX.[MC][PN0].*" postag_regexp="yes"/> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception regexp="yes">todos|tantos</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][PN0].*" postag_regexp="yes"/> <token postag="A..[FC][PN0].*|V.P..PF.?|PX.[FC][PN0].*" postag_regexp="yes"/> <token postag="N.[FC][PN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <!-- NSN : Nom + Nom/Prep + Nom/Adj = prep <rule id="NSN" name="Nom + Nom/Prep + Nom/Adj"> <pattern> <token postag="N.*" postag_regexp="yes"><exception postag="RN|CS" postag_regexp="yes"/></token> <marker> <token postag="S.*" postag_regexp="yes"/> </marker> <token postag="[NA].*" postag_regexp="yes"><exception postag="P.*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="S.*"/> </rule> --> <rule id="ANAA" name=" Adj + Nom + Adj"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A.*|V.P.*" postag_regexp="yes"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="ANA" name=" Adj + Nom + Adj"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="D[NDA].*" postag_regexp="yes"/></token> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <marker> <token postag="A..[MC][SN0].*|V.P..SM.?" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/></token> <token postag="N.[MC][SN0].*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="D[DNA].*" postag_regexp="yes"/></token> <token postag="A..[MC][SN0].*|V.P..SM.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[FC][SN0].*|V.P..SF.?" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/></token> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][SN0].*|V.P..SF.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[MC][PN0].*|V.P..PM.?" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[MC][PN0].*|V.P..PM.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[FC][PN0].*|V.P..PF.?" postag_regexp="yes"><exception postag="A.0CN0|_GV_" postag_regexp="yes"/></token> <token postag="N.[FC][PN0].*" postag_regexp="yes"><exception postag="V.[MIS].*" postag_regexp="yes"/><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][PN0].*|V.P..PF.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <rule id="Nom_3Adj" name="nom + tres adj abans de concordar"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="N.*" postag_regexp="yes"/> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.P.*|AQ.*" postag_regexp="yes"><exception postag="_GN.*" postag_regexp="yes"/><exception>bajo</exception></token> </and> </marker> <token postag="V.P.*|AQ.*" postag_regexp="yes"/> <token postag="V.P.*|AQ.*" postag_regexp="yes"/> </unify> </pattern> <disambig action="filter" postag="V.P.*|AQ.*"/> </rule> <rulegroup id="NAA" name="Nom + Adj + Adj"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="N.*" postag_regexp="yes"><exception postag="D[AND].*" postag_regexp="yes"/><exception regexp="yes">queda|troba|ret|torna|posa|veu|seus?</exception></token> <token postag="A.*|V.P.*" postag_regexp="yes"><exception postag="AO0CN0"/><exception>seré</exception></token> <token postag="A.*|V.P.*" postag_regexp="yes"><exception>bajo</exception></token> </marker> </unify> </pattern> <disambig action="filterall"/> <example type="untouched">si es pren vi acompanyat</example> </rule> <rule> <pattern> <token><exception postag="D..F..|D...P." postag_regexp="yes"/></token> <marker> <token postag="N.[MC][SN0].*" postag_regexp="yes"><exception postag="D[AND].*" postag_regexp="yes"/><exception>ret</exception></token> <token postag="A..[MC][SN0].*|V.P..SM.?" postag_regexp="yes"><exception>seré</exception></token> <token postag="A..[MC][SN0].*|V.P..SM.?" postag_regexp="yes"><exception>bajo</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <token><exception postag="D..M..|D...P." postag_regexp="yes"/></token> <marker> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception regexp="yes">seu|troba|torna|posa|veu</exception></token> <token postag="A..[FC][SN0].*|V.P..SF.?" postag_regexp="yes"/> <token postag="A..[FC][SN0].*|V.P..SF.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[MC][PN0].*|V.P..PM.?" postag_regexp="yes"/> <token postag="A..[MC][PN0].*|V.P..PM.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="N.[FC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][PN0].*|V.P..PF.?" postag_regexp="yes"/> <token postag="A..[FC][PN0].*|V.P..PF.?" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <!--P_V Cuando está delante de un verbo, se trata de un pronombre--> <rule id="PRON_VERB" name="Pronombre + Verbo"> <pattern> <marker> <and> <token postag="D.*" postag_regexp="yes"><exception scope="previous" postag="SPS00"/></token> <token postag="P.*" postag_regexp="yes"/> </and> </marker> <token postag="V.[^M].*" postag_regexp="yes"><exception postag="N.*|V.N.*|A.*|PI.*|Z|V.P.*|V.*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="P.*"/> <example type="untouched">De lo uno y lo otro</example> <example type="untouched">Las hechas</example> </rule> <!--D_AN Detrás de un determinante, va el nombre y no el adjetivo--> <rule id="D_AN" name="Art + Nom/Adj = Nom"> <antipattern> <!-- possible error esta/está --> <token>esta</token> <token postag="AQ.*" postag_regexp="yes"/> </antipattern> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="D.*" postag_regexp="yes"><exception postag="R.*" postag_regexp="yes"/><exception>lo</exception></token> <marker> <and> <token postag="N.*" postag_regexp="yes"><exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="AQ.*" postag_regexp="yes"><exception inflected="yes" regexp="yes">nuevo|precedente</exception></token> <token negate_pos="yes" postag="V.*" postag_regexp="yes"/> </and> </marker> </unify> <token negate_pos="yes" postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="N.*"/> <example inputform="blanca[blanco/AQ0FS0,blanco/NCFS000]" outputform="blanca[blanco/NCFS000]" type="ambiguous">Me gusta la <marker>blanca</marker>.</example> <example type="untouched">Eran demasiado siniestros.</example> <example type="untouched">Una nueva formula.</example> <example type="untouched">Ya los estraño a todos.</example> </rule> <!-- D_N Cuando está delante de un nombre, se trata de un determinante.--> <rule id="D_N" name="Artículo + Nombre"> <pattern> <marker> <token postag="D[^T].*" postag_regexp="yes"><exception inflected="yes">todo</exception><exception postag="R.*|P[IX].*" postag_regexp="yes"/></token> </marker> <token postag="[NA].*|P[^R].*" postag_regexp="yes"><exception postag="V.*|P[IX].*|D.*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="D.*|_GN_.*"/> <example type="untouched">Es cierto que otros sectores han crecido mucho.</example> </rule> <rule id="POS_N" name="possessive + noun: mi contra"> <antipattern> <token regexp="yes">sobre|ante|contra</token> <token postag="DA.*|UNKNOWN|NP.*" postag_regexp="yes"/> </antipattern> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DP.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes"><exception postag="[DC].*" postag_regexp="yes"/><exception>de</exception></token> </marker> </unify> </pattern> <disambig action="remove" postag="V.*|SPS00"/> </rule> <!-- END: nominal groups --> <rulegroup id="que_causa" name="no noun after relative. Ex: que causa, que busca"> <rule> <antipattern> <token postag="SENT_START|_PUNCT.*" postag_regexp="yes"/> <marker> <token>que</token> </marker> <token postag="N.*" postag_regexp="yes"/> <token>tan</token> </antipattern> <antipattern> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> <token min="0" max="2" postag_regexp="yes" postag="&pronombre_personal_atono_POS;"/> <token postag="V.[SI].*" postag_regexp="yes"/> </antipattern> <pattern> <token postag="PR.*" postag_regexp="yes"><exception>como</exception><exception scope="previous" regexp="yes">para|por</exception></token> <marker> <and> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">disparates?|desgracias?|penas?</exception></token> <token postag="VM[SI].*" postag_regexp="yes"><exception postag="VMIP1S0" postag_regexp="yes"/></token> </and> </marker> <token><exception postag="V.[SI].*" postag_regexp="yes"/></token> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <token postag="PR.*" postag_regexp="yes"><exception>como</exception></token> <token>no</token> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="VM[SI].*" postag_regexp="yes"><exception postag="VMIP1S0" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rulegroup id="PREPOSICIONES" name="preposiciones"> <rule> <pattern> <marker> <token>vía<exception postag="_GN_FS"/><exception scope="previous" postag="D..FS." postag_regexp="yes"/></token> </marker> <token postag="[NAD].*" postag_regexp="yes"/> </pattern> <disambig action="replace" postag="SPS00"/> </rule> <rule> <pattern> <marker> <token>respecto</token> </marker> <token regexp="yes">a|al|de|del</token> </pattern> <disambig action="replace"> <wd pos="LOC_PREP" lemma="respecto a"/> </disambig> </rule> <rule> <!-- ambiguous!! --> <pattern> <marker> <token postag="SPS00">para<exception scope="previous" postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> </marker> <token postag="[PNAD].*|V.[NP].*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="SPS00"/> </rule> <rule> <pattern> <marker> <token postag="SPS00">para<exception scope="previous" postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> </marker> <token min="0">no</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="SPS00"/> </rule> <rule> <pattern> <marker> <token postag="AQ0MS0">salvo</token> </marker> <token postag="V.I.*" postag_regexp="yes" inflected="yes">ser</token> </pattern> <disambig action="remove" postag="SPS00"/> </rule> <rule> <pattern> <marker> <token postag="V.*" postag_regexp="yes">entre</token> </marker> <token>en</token> </pattern> <disambig action="remove" postag="SPS00"/> </rule> <rule> <pattern> <marker> <token>según</token> </marker> <token postag="P.*" postag_regexp="yes" min="0" max="2"/> <token postag="V.[MSI].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="SPS00"/> </rule> <rule> <pattern> <!-- TODO: exceptions?--> <token postag="SPS00"><exception postag="LOC_ADV"/><exception regexp="yes">bajo|para|hasta|cabe</exception></token> </pattern> <disambig action="filter" postag="SPS00|_GV_"/> <example type="untouched">en mi contra.</example> </rule> <rule> <pattern> <marker> <token postag="SPS00">bajo<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> <token postag="D.*|V.P.*|AQ.*" postag_regexp="yes"/> <token postag="[DYAN].*|PR.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="SPS00|_GV_"/> </rule> <rule> <pattern> <marker> <token postag="SPS00">bajo<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> <token postag="N.*" postag_regexp="yes"><exception postag="VS.*" postag_regexp="yes"/></token> <!-- <token regexp="yes">identidad|identidades|normas?|normativas?|tutelas?|demanda|amenazas?|acusación|acusaciones|jurisdicción|circunstancias|licencia|poder|dominio|dirección|presidencia|cuidado|atención|fianza|secreto|administración|principios|consideración|luz|tortura|condiciones</token>--> </pattern> <disambig action="filter" postag="SPS00|_GV_"/> </rule> <rule> <pattern> <marker> <token postag="SPS00">bajo<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="filter" postag="SPS00|_GV_"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">situar|colocar|ubicar</token> <marker> <token postag="SPS00">bajo<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="SPS00|_GV_"/> </rule> <rule> <pattern> <token postag="N.*" postag_regexp="yes"><exception postag="RN|CS" postag_regexp="yes"/></token> <marker> <token postag="S.*" postag_regexp="yes">bajo</token> </marker> <token postag="[NA].*" postag_regexp="yes"><exception postag="P.*|V.[IS].*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="S.*|_GV_"/> </rule> </rulegroup> <rule id="mas_bajo" name="más + adj no adv"> <pattern> <token postag="RG"/> <!--más|menos|muy|bien--> <marker> <token>bajo</token> </marker> </pattern> <disambig action="filter" postag="AQ.*"/> </rule> <!--<rulegroup id="adj_punct" name="adjectivo no verbo antes de puntuación"> <rule> <pattern> <token><exception regexp="yes">no|que|ya|porqe|aún|como</exception><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/></token> <marker> <and> <token postag="AQ.*" postag_regexp="yes"><exception regexp="yes">somos|molesta|reflejas?</exception></token> <token postag="V.[SI].2S." postag_regexp="yes"/> </and> </marker> <token postag="_PUNCT.*" postag_regexp="yes" regexp="yes">[\.,;]<exception>?</exception></token> </pattern> <disambig action="filter" postag="AQ.*|_GN_.*|N.*"/> </rule> </rulegroup>--> <rule id="de_not_adj" name="de + no adj"> <pattern> <token>de</token> <marker> <token inflected="yes" regexp="yes">político|directivo|informe</token> </marker> <token><exception postag="NC.*" postag_regexp="yes"/></token> </pattern> <disambig action="remove" postag="AQ.*"/> </rule> <rulegroup id="not_adj_no_agreement" name="not adjective if no agreement"> <rule> <pattern> <token><exception postag="NC.*" postag_regexp="yes"/></token> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">sucursal(es)?|combos?<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="A.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">varios?|varias?|afectas?|plantar<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="A.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> </rulegroup> <rule id="not_participle" name="not participle"> <antipattern> <token inflected="yes">haber</token> <token postag="V.P.*" postag_regexp="yes"/> </antipattern> <pattern> <token inflected="yes" regexp="yes">diputar|soler</token> </pattern> <disambig action="remove" postag="V.P.*"/> </rule> <rule id="que_era" name="qué era"> <pattern> <token>qué</token> <marker> <token postag="VS.*" postag_regexp="yes">era</token> </marker> <token postag="[ANPD].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="NCFS000"/> </rule> <rule id="que_nombre" name="que/qué nombre (frequent error)"> <pattern> <token>que</token> <marker> <token postag="N.*" postag_regexp="yes" regexp="yes">nombres?</token> </marker> <token min="0" max="2" postag_regexp="yes" postag="&pronombre_personal_atono_POS;"/> <token postag="V.[IS].*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="V.*"/> </rule> <rulegroup id="Det_Noun" name="det + nombre"> <antipattern> <token>demás</token> <token postag="NC.S..|V.P..S.|A...S." postag_regexp="yes"/> </antipattern> <antipattern> <token regexp="yes">los|las</token> <token>demás</token> </antipattern> <antipattern> <token>mi</token> <token>todo</token> </antipattern> <antipattern> <token>qué</token> <token postag="V.I.*" postag_regexp="yes"/> </antipattern> <antipattern> <token postag="D..CP." postag_regexp="yes"/> <token postag="A..CP.|NCCP000" postag_regexp="yes"/> </antipattern> <antipattern> <token>cuál</token> <token>seria</token> </antipattern> <rule> <pattern> <marker> <token postag="D[^R].[MC][SN0].*" postag_regexp="yes"><exception>todo</exception></token> <token postag="(N|A.|PX).[MC][SN0].*|V.P..SM" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][SN0].*" postag_regexp="yes"/> <token postag="(N|A.|PX).[FC][SN0].*|V.P..SF" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[MC][PN0].*" postag_regexp="yes"/> <token postag="(N|A.|PX).[MC][PN0].*|V.P..PM" postag_regexp="yes"><exception postag="DN.*|_GN_MS" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="D[^R].[FC][PN0].*" postag_regexp="yes"/> <token postag="(N|A.|PX).[FC][PN0].*|V.P..PF" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> <rule> <pattern> <token postag="D[^R].[MC][SN0].*" postag_regexp="yes">un</token> <marker> <token postag="(N|A.|PX).[MC][SN0].*|V.P..SM" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="(N|A.|PX).[MC][SN0].*|V.P..SM|_GN_MS"/> </rule> <rule> <pattern> <token postag="D[^R].[FC][SN0].*" postag_regexp="yes">una</token> <marker> <token postag="(N|A.|PX).[FC][SN0].*|V.P..SF" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="(N|A.|PX).[FC][SN0].*|V.P..SF|_GN_FS"/> </rule> <rule> <pattern> <token postag="D[^R].[MC][PN0].*" postag_regexp="yes">unos</token> <marker> <token postag="(N|A.|PX).[MC][PN0].*|V.P..PM" postag_regexp="yes"><exception postag="DN.*|_GN_MS" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="(N|A.|PX).[MC][PN0].*|V.P..SF|_GN_MP"/> </rule> <rule> <pattern> <token postag="D[^R].[FC][PN0].*" postag_regexp="yes">unas</token> <marker> <token postag="(N|A.|PX).[FC][PN0].*|V.P..PF" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="filter" postag="(N|A.|PX).[FC][PN0].*|V.P..SF|_GN_FP"/> </rule> </rulegroup> <rulegroup id="DETERMINERS" name="determinantes"> <rule> <pattern> <and> <token postag="D.*" postag_regexp="yes" inflected="yes" regexp="yes">uno|ambos|mi|tu|su|nuestro|vuestro</token> <token postag="_GN_.*" postag_regexp="yes"/> </and> </pattern> <disambig action="filter" postag="D.*|_GN_.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="D.*" postag_regexp="yes" inflected="yes" regexp="yes">varios|diferentes</token> <token postag="_GN_MP" postag_regexp="yes"/> </and> </marker> <token postag="_GN_MP"/> </pattern> <disambig action="filter" postag="D.*|_GN_.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="D.*" postag_regexp="yes" inflected="yes" regexp="yes">varios|diferentes</token> <token postag="_GN_FP" postag_regexp="yes"/> </and> </marker> <token postag="_GN_FP"/> </pattern> <disambig action="filter" postag="D.*|_GN_.*"/> </rule> </rulegroup> <rule id="verb_notnoun" name="verb not noun: queda"> <pattern> <token postag="V.*" postag_regexp="yes" regexp="yes">toma|tomas|fija|quedo|queda|descargue|salga|vales?|ganas?|cerca|compruebas?|cuelgas?|figura|forma|tira|giras?|mandas?|aceptas?|cobras?|matas?|esperas?<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[IS].*|_GV_|SPS00|LOC_PREP" postag_regexp="yes"/></token> </pattern> <disambig action="remove" postag="[AND].*"/> </rule> <rule id="presta" name="presta: verb/adj"> <pattern> <marker> <token postag="V.*" postag_regexp="yes" regexp="yes">presta|prestas|presto</token> </marker> <token postag="NC.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rule id="not_noun1" name="not noun"> <pattern> <and> <token postag="NC.*" postag_regexp="yes" regexp="yes">racistas?|hoy|magistral|magistrales|entretanto<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="NC.*" postag_regexp="yes" negate_pos="yes"/> </and> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule id="la_not_noun" name="la not noun"> <pattern> <token postag="[DP].*" postag_regexp="yes">la<exception postag="_GN_MS"/></token> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule id="la_dejo" name="la dejo (verb)"> <antipattern> <token postag="V.[SI].*" postag_regexp="yes"/> <token postag="V.[SI].*" postag_regexp="yes"/> </antipattern> <antipattern> <token postag="V.[SIN].*" postag_regexp="yes"/> <token>la</token> <token postag="V.[SI].*" postag_regexp="yes"/> </antipattern> <antipattern> <token inflected="yes">haber</token> <token postag="V.P..SM" postag_regexp="yes"/> <token>la</token> <token postag="V.[SI].*" postag_regexp="yes"/> </antipattern> <pattern> <token postag="P.*" postag_regexp="yes">la<exception postag="_GN_FS"/><exception scope="previous" postag="SP.*|LOC_PREP" postag_regexp="yes"/></token> <token postag="V.[SI].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}[\p{Ll}\-'·]+</exception></token> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="not_noun_no_agreement0" name="not noun if no agreement"> <antipattern> <token regexp="yes">del|al</token> <token postag="NC[MC]S000" postag_regexp="yes"/> </antipattern> <rule> <pattern> <marker> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">tantos?|sí|era|si|solo|son|e|la|las|u|hoy|mañana|ayer|ambos|sino|este|vaya|vayas|eras|ver|pasa|pasas|bien<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">dominó|trata|tratas|mientes?|alrededor|dejas?|crías?|busco|dejes?|buscas?|fallas?|tantos?|resultas?|uso|usas?|cuestas?|cortas?|enseñas?|haya|sí|era|si|solo|son|e|la|las|u|hoy|mañana|ayer|ambos|sino|este|vaya|vayas|eras|ver|pasa|pasas|calmas?<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[IS].*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rulegroup id="NomAdj" name="nom + adj"> <rule> <pattern> <marker> <token postag="N.[MC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception>seré</exception></token> <token postag="A..[MC][SN0].*|V.P..SM|PX.[MC][SN0].*" postag_regexp="yes"><exception postag="AO.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <antipattern> <!-- atención al cliente adecuada --> <token postag="D..MS.|SP:DA" postag_regexp="yes"/> <token postag="N.C[SN0].*" postag_regexp="yes"/> </antipattern> <pattern> <marker> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][SN0].*|V.P..SF|PX.[FC][SN0].*" postag_regexp="yes"><exception>queda</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[MC][PN0].*|V.P..PM|PX.[MC][PN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="N.[FC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> <token postag="A..[FC][PN0].*|V.P..PF|PX.[FC][PN0].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <rule id="adj_antepuesto_improbable" name="adjetivo antepuesto improbable"> <pattern> <marker> <token postag="V.N.*" postag_regexp="yes">escalar</token> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="AQ0CS0"/> </rule> <rulegroup id="AdjNom" name="adj + nom"> <antipattern> <!-- adjetivo improbable antepuesto --> <token postag="A.*" postag_regexp="yes" regexp="yes" inflected="yes">mural|volante|concursante</token> <token postag="N.*" postag_regexp="yes"/> </antipattern> <antipattern> <token postag="A.*" postag_regexp="yes"/> <token postag="VMIP3S0"/> </antipattern> <rule> <pattern> <marker> <token postag="A..[MC][SN0].*|V.P..SM|PX.[MC][SN0].*" postag_regexp="yes"><exception postag="AQ0CN0|_GV_|N.CN.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">tener|poder|voler|saber|hacer|estar</exception></token> <token postag="N.[MC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception postag="V.N.*" postag_regexp="yes">ser</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MS"/> <wd pos="_GN_MS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[FC][SN0].*|V.P..SF|PX.[FC][SN0].*" postag_regexp="yes"><exception postag="AQ0CN0|_GV_|N.CN.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">tener|poder|voler|saber</exception><exception>seria</exception></token> <token postag="N.[FC][SN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/><exception regexp="yes">enseña|era|SA</exception></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FS"/> <wd pos="_GN_FS"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[MC][PN0].*|V.P..PM|PX.[MC][PN0].*" postag_regexp="yes"><exception postag="AQ0CN0|_GV_|N.CN.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">tener|poder|voler|saber</exception></token> <token postag="N.[MC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_MP"/> <wd pos="_GN_MP"/> </disambig> </rule> <rule> <pattern> <marker> <token postag="A..[FC][PN0].*|V.P..PF|PX.[FC][PN0].*" postag_regexp="yes"><exception postag="AQ0CN0|_GV_|N.CN.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">tener|poder|voler|saber</exception></token> <token postag="N.[FC][PN0].*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_GN_FP"/> <wd pos="_GN_FP"/> </disambig> </rule> </rulegroup> <rule id="tan_x_como" name="tan duro como"> <pattern> <token>tan</token> <marker> <token postag="A.*" postag_regexp="yes"/> </marker> <token>como</token> </pattern> <disambig action="remove" postag="N.*|V.[SI].*"/> </rule> <rulegroup id="not_noun_no_agreement1" name="not noun if no agreement"> <antipattern> <token regexp="yes">del|al</token> <token postag="NC[MC]S000" postag_regexp="yes"/> </antipattern> <rule> <pattern> <marker> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">tantos?|sí|era|si|solo|son|e|la|las|u|hoy|mañana|ayer|ambos|sino|este|vaya|vayas|eras|ver|pasa|pasas|bien<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="N.*" postag_regexp="yes" regexp="yes">trata|tratas|percibo|pruebas?|muestra|muestras|alrededor|dejas?|crías?|busco|dejes?|buscas?|fallas?|faltas?|tantos?|resultas?|uso|usas?|cuestas?|hablas?|cortas?|enseñas?|haya|sí|era|si|solo|son|e|la|las|u|hoy|mañana|ayer|ambos|sino|este|vaya|vayas|eras|ver|pasa|pasas|calmas?<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[IS].*" postag_regexp="yes"/></token> <token postag="N.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> </rulegroup> <rule id="LO_MAL_QUE" name="lo + adj + que"> <pattern> <token>lo</token> <marker> <token postag="A.*|V.P,*" postag_regexp="yes"/> </marker> <token>que</token> </pattern> <disambig action="filter" postag="A.*|V.P.*"/> </rule> <rule id="not_adj_no_agreement2" name="not adjective if no agreement"> <pattern> <marker> <and> <token postag="A.*|V.P.*" postag_regexp="yes" regexp="yes">alumbrado|llena|venerando|computador(a|es|as)?|mal|solo|mejor|parejas?|jugador(a|es|as)?|matemáticas|docenas?|cenizas?<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="N.*|RG|V.G.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*|V.P.*"/> </rule> <rule id="baja" name="baja (adj o verb)"> <pattern> <token postag="SENT_START|_PUNCT|CC" postag_regexp="yes"/> <marker> <token postag="V.*" postag_regexp="yes">baja<exception postag="_GN_FS"/></token> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule id="not_verb_if_agreement" name="not verb if agreement"> <pattern> <and> <token inflected="yes" regexp="yes">uno|serie|cena|historia</token> <token postag="_GN_.*" postag_regexp="yes"/> </and> </pattern> <disambig action="remove" postag="V.[MSI].*"/> </rule> <rule id="no_verbo2" name="not verb"> <pattern> <token postag="N.*" postag_regexp="yes" inflected="yes" regexp="yes">disparate|cosa|misión|grado|desgracia|pena</token> <!-- destino? --> </pattern> <disambig action="filter" postag="N.*|_GN_.*"/> </rule> <rule id="no_verbo3" name="not verb"> <pattern> <token postag="A.*" postag_regexp="yes" inflected="yes">lindo</token> <!-- destino? --> </pattern> <disambig action="filter" postag="A.*"/> </rule> <rulegroup id="not_adj_special" name="not adjective (special cases)"> <rule> <pattern> <token><exception inflected="yes">ser</exception></token> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">refleja|reflejas<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="V.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule> <pattern> <token><exception inflected="yes">estar</exception><exception regexp="yes">estas?</exception></token> <marker> <and> <token postag="A.*" postag_regexp="yes" inflected="yes">falto<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="A.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> <token><exception regexp="yes">de|del</exception></token> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule> <pattern> <token><exception postag="V.*|RG" postag_regexp="yes"/><exception regexp="yes">estas?</exception></token> <marker> <token regexp="yes">fríos?<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes" inflected="yes">objetivo</token> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> </rulegroup> <rulegroup id="not_adj_but_verb" name="not adjective but verb"> <antipattern> <!-- possible error esta/está --> <token regexp="yes">estas?</token> <token postag="AQ.*" postag_regexp="yes"/> </antipattern> <antipattern> <token regexp="yes">vivas?</token> <token postag="CC"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> </antipattern> <rule> <pattern> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">sumas?|tardas?|fallas?|acepto|aceptas?|quedas?|quedo|duras?|duro|calmas?<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[NMIS].*" postag_regexp="yes"/></token> <token postag="V.[IS].*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> <rule> <pattern> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">lata|vivas?|custodias?|sanas?|aceptas?|acepto|infectas?|faltas?|falto|precisas?|preciso|tardo|tardas?|cortas?|cojo|coja|cojas|quedo|queda|quedas|despierto|despiertas?<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[NMIS].*|RG_before" postag_regexp="yes"/></token> <token postag="[AN].*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="[AN].*"/> </rule> <rule> <pattern> <marker> <and> <token postag="A.*" postag_regexp="yes" regexp="yes">paso|pasas|pasa<exception postag="_GN_.*" postag_regexp="yes"/><exception scope="previous" postag="V.[NMIS].*|RG_before" postag_regexp="yes"/></token> <token postag="A.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="A.*"/> </rule> </rulegroup> <rule id="verb_notnoun2" name="verb IP1S not noun"> <pattern> <token postag="SENT_START|_PUNCT.*|C.*" postag_regexp="yes"/> <marker> <token postag="VMIP1S0"><exception postag="_GN_.*" postag_regexp="yes"/><exception>frío</exception></token> </marker> <token postag="NC.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="[AN].*"/> </rule> <rulegroup id="imperative" name="imperative verb"> <rule> <pattern> <token postag="SENT_START|_PUNCT.*" postag_regexp="yes"/> <marker> <token postag="VSM02P0">sed</token> </marker> </pattern> <disambig action="filterall"/> </rule> <rule> <pattern> <token inflected="yes" regexp="yes">poder|querer|deber|que</token> <marker> <token>callaos</token> </marker> </pattern> <disambig action="remove" postag="NCMP000"/> </rule> </rulegroup> <rule id="PT_not_noun" name="PT not noun if no agreement"> <pattern> <marker> <token postag="PT.*" postag_regexp="yes"><exception scope="previous">el</exception></token> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rulegroup id="todo_lo" name="todo lo"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="D.*" postag_regexp="yes" inflected="yes">todo</token> </marker> <token postag="DA.*" postag_regexp="yes"/> </unify> <token><exception postag="V.[SI].*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="D.*|_GN_.*"/> </rule> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="D.*" postag_regexp="yes" inflected="yes">todo</token> <marker> <token postag="DA.*" postag_regexp="yes"/> </marker> </unify> <token><exception postag="V.[SI].*" postag_regexp="yes"/></token> </pattern> <disambig action="filter" postag="DA.*|_GN_.*"/> </rule> </rulegroup> <rule id="not_det_no_agreement" name="not determinant if no agreement"> <pattern> <!-- These words would require specific rules for agreement--> <marker> <and> <token postag="D.*" postag_regexp="yes" inflected="yes" regexp="yes">todo|ambos<exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="D.*" postag_regexp="yes" negate_pos="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="D.*"/> </rule> <rule id="noun_nounverb" name="noun + verb/noun"> <antipattern> <token>alas</token> <token postag="NC[FC]P000" postag_regexp="yes"/> </antipattern> <pattern> <token postag="N.*" postag_regexp="yes"><exception postag="V.*|D.*|A.*|V.P.*|_GV_|C.*|RG.*|complement|.*LOC.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">&denominacion;|numeral</exception><exception regexp="yes">.*%</exception></token> <marker> <and> <token postag="V.[IS].*" postag_regexp="yes"><exception regexp="yes">\p{Lu}.*</exception></token> <token postag="N.*" postag_regexp="yes"><exception postag="_GN_.*|A.*|V.P.*|PX.*" postag_regexp="yes"/><exception regexp="yes">promedio|descuento</exception></token> <!-- VMSP1S0|VMIP2S0 --> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <rule id="el_cria" name="él cría"> <pattern> <token regexp="yes">él|ella|usted|uno|lo</token> <marker> <and> <token postag="V...3S.*" postag_regexp="yes"><exception regexp="yes">\p{Lu}.*</exception></token> <token postag="N.*" postag_regexp="yes"><exception postag="_GN_.*|A.*|V.P.*|PX.*|VMIP1S0.?" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="remove" postag="N.*"/> </rule> <!--<rule id="VerbNounAdj" name="verb/noun/adj: verb"> <pattern> <token postag="R.*|.*LOC_ADV.*" postag_regexp="yes" negate_pos="yes"><exception regexp="yes">["“«'‘-]</exception></token> <marker> <and> <token postag="A.*|V.P.*" postag_regexp="yes"><exception postag="_GN_.*|RG.*" postag_regexp="yes"/><exception regexp="yes">\p{Lu}.*</exception></token> <token postag="V.[SI].*" postag_regexp="yes"><exception postag="_GV_"/><exception regexp="yes"/></token> <token postag="N.*" postag_regexp="yes"><exception postag="DN.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="filter" postag="V.[^P].*"/> </rule>--> <rule id="nom_adv_adj" name="not noun: características muy particulares"> <antipattern> <token>a</token> <token postag="VMP00SM"/> </antipattern> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <marker> <token postag="NC.*" postag_regexp="yes"><exception postag="D.*|V[SA].*|V.[MSI].*|_GN_.*" postag_regexp="yes"/></token> </marker> <unify-ignore> <token postag="RG_before"/> </unify-ignore> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </unify> </pattern> <disambig action="remove" postag="A.*|V.P.*"/> </rule> <rulegroup id="Nom_AdjNotAgrees" name="nombre + adjectivo que no ha concordado"> <rule> <pattern> <token postag="NC.*" postag_regexp="yes"><exception postag="V.*|A.*|complement.*" postag_regexp="yes"/><exception inflected="yes" regexp="yes">&denominacion;|&dias_semana;</exception></token> <marker> <and> <token postag="N.*" postag_regexp="yes"><exception regexp="yes">\p{Lu}.+</exception></token> <token postag="V.P.*|AQ.*" postag_regexp="yes"><exception postag="_GN.*|SPS00|V.[GMIS].*|CC|RG.*" postag_regexp="yes"/><exception inflected="yes">amigo</exception></token> <!-- exc. just allà --> </and> </marker> </pattern> <disambig action="filter" postag="V.P.*|AQ.*"/> </rule> <rule> <pattern> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="_GN_.*" postag_regexp="yes"/> </and> <and> <token postag="A.*" postag_regexp="yes"/> <token postag="_GN_.*" postag_regexp="yes"/> </and> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.P.*|AQ.*" postag_regexp="yes"><exception postag="_GN.*|SPS00|V.[GMIS].*|CC|RG.*" postag_regexp="yes"/></token> <!-- exc. just allà --> </and> </marker> </pattern> <disambig action="filter" postag="V.P.*|AQ.*"/> </rule> <rule> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="N.*" postag_regexp="yes"/> <token postag="RG_begore"/> <token postag="A.*" postag_regexp="yes"/> </unify> <marker> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="V.P.*|AQ.*" postag_regexp="yes"><exception postag="_GN.*|SPS00|V.[GMIS].*|CC|RG.*" postag_regexp="yes"/></token> <!-- exc. just allà --> </and> </marker> </pattern> <disambig action="filter" postag="V.P.*|AQ.*"/> </rule> </rulegroup> <rulegroup id="verb_adjective" name="verb + adjective"> <!-- El riu passa engorjat. Viatges sola. Ronda amagat. --> <rule> <antipattern> <token postag="V.*[123].*" postag_regexp="yes" skip="3"><exception scope="next" postag="C.*|_PUNCT.*" postag_regexp="yes"/></token> <token postag="V.*[123].*" postag_regexp="yes"><exception postag="_GN_.*" postag_regexp="yes"/></token> </antipattern> <pattern> <token><exception postag="D[^R]..S.|V.N.*" postag_regexp="yes"/></token> <marker> <and> <token postag="NC.*" postag_regexp="yes"><exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="VM[IS]..S." postag_regexp="yes" inflected="yes"/> </and> </marker> <token postag="A...S.|V.P..S." postag_regexp="yes"/> </pattern> <disambig action="remove" postag="NC.*"/> <example type="untouched">Hay dos casa rojo.</example> </rule> <rule> <!-- hi ha cap cas? --> <pattern> <token><exception postag="D[^R]..P." postag_regexp="yes"/></token> <marker> <and> <token postag="NC.*" postag_regexp="yes"><exception postag="_GN_.*" postag_regexp="yes"/></token> <token postag="VM[IS]..P." postag_regexp="yes"/> </and> </marker> <token postag="A...P.|V.P..P." postag_regexp="yes"/> </pattern> <disambig action="remove" postag="NC.*"/> </rule> <rule> <pattern> <marker> <token postag="V.*[123].*" postag_regexp="yes" regexp="yes">queda|quedas|sales|sal<exception postag="_GN_.*" postag_regexp="yes"/></token> </marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </pattern> <disambig action="filter" postag="V.*[123].*"/> </rule> </rulegroup> <rule id="VerbAdjective" name="verb/adjective no agreement"> <!-- too greedy?! --> <antipattern> <!-- error: tu --> <token>tú</token> <token postag="VMIP3S0"/> </antipattern> <antipattern> <token postag="NC.*|CS|PR.*" postag_regexp="yes"/> <token>este</token> <!-- error: esté --> <token postag="A.*" postag_regexp="yes"/> </antipattern> <antipattern> <token regexp="yes">estas|esta</token> <!-- error: estás --> <token postag="A.*" postag_regexp="yes" skip="3"/> <!--<token regexp="yes">\?|\.|que|porque</token>--> </antipattern> <pattern> <token><exception postag="RG_before|LOC_ADV|_GV_|SPS00|CC|UNKNOWN|V.[SING].*|_PUNCT.*|&pronombre_personal_atono_POS;" postag_regexp="yes"/><exception inflected="yes" regexp="yes">ser|estar|parecer|considerar</exception><exception regexp="yes">super|súper</exception></token> <marker> <and> <token postag="A.*" postag_regexp="yes"><exception postag="_GN_.*" postag_regexp="yes"/><exception regexp="yes">\p{Lu}+[\p{Ll}·]*</exception><exception regexp="yes">presentes?|antiguas?|llenas|libres?|eficientes?</exception></token> <token postag="V.*" postag_regexp="yes"><exception postag="V.P.*|_GV_|VM[IS]P1S0|V.G.*|VMM..V.*|V.+:P.*" postag_regexp="yes"/></token> </and> </marker> </pattern> <disambig action="filter" postag="V.*"/> </rule> <rulegroup id="tanto_no_det" name="tanto: no determinant"> <rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <marker> <token regexp="yes">tanto|mucho</token> </marker> <token postag="NP.*|V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="D.*"/> </rule> <!--<rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <marker> <token>mucho</token> </marker> <token postag="N.*|V.N.*" postag_regexp="yes"/> </pattern> <disambig action="remove" postag="D.*"/> </rule>--> </rulegroup> <!-- EXCEPTIONS FOR SOME GRAMMAR RULES --> <rulegroup id="tanto_como" name="tanto + __ + como + __"> <rule> <pattern> <marker> <token skip="6">tanto</token> </marker> <token>como</token> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token postag="A.*|V.P.*|PX.*" postag_regexp="yes" skip="20"/> <token>como</token> <token postag="A.*|V.P.*|PX.*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token postag="A.*|V.P.*|PX.*" postag_regexp="yes" skip="20"/> <token>como</token> <token>no</token> <token postag="A.*|V.P.*|PX.*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token postag="N.*" postag_regexp="yes" skip="20"/> <token>como</token> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token postag="N.*" postag_regexp="yes"/> <token postag="A.*" postag_regexp="yes" skip="20"/> <token>como</token> <token postag="A.*|SPS00" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token regexp="yes" skip="20">\p{Lu}.*</token> <token>como</token> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> <rule> <pattern> <token regexp="yes" skip="1">tanto|tantas</token> <token postag="N.*" postag_regexp="yes" skip="20"/> <marker> <token>como</token> </marker> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_como"/> </disambig> </rule> <rule> <pattern> <marker> <token>tanto</token> </marker> <token postag="N.*" postag_regexp="yes" skip="20"/> <token>como</token> <token>no</token> <token postag="N.*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_tanto"/> </disambig> </rule> </rulegroup> <rule id="DD_after_noun" name="DD after noun"> <pattern> <unify> <feature id="numero"/> <feature id="genero"/> <token postag="D.*" postag_regexp="yes"/> <token postag="N.*" postag_regexp="yes"><exception postag="R.*" postag_regexp="yes"/></token> <marker> <token postag="DD.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="_DD_after_noun"/> </disambig> </rule> <!-- Verbs, tenses, persona --> <rule id="yo_cante" name="yo cante (1p sg)"> <pattern> <token>yo<exception scope="previous" postag="V.[IS].1S." postag_regexp="yes"/></token> <marker> <token postag="VMSP1S0"/> </marker> </pattern> <disambig action="filterall"/> </rule> <rule id="yo_estudio" name="yo estudio"> <pattern> <token postag="PP1CSN00">yo<exception scope="previous" postag="V.[IS].1S." postag_regexp="yes"/></token> <token postag="V...1S." postag_regexp="yes"/> </pattern> <disambig action="filterall"/> </rule> <rulegroup id="not_imperative" name="no imperativo"> <rule> <pattern> <token postag="&pronombre_personal_atono_POS;|RN" postag_regexp="yes"/> <marker> <token postag="V.[SI].*" postag_regexp="yes"/> </marker> </pattern> <disambig action="remove" postag="V.M.*"/> </rule> <rule> <pattern> <marker> <token postag="N.*" postag_regexp="yes" regexp="yes">velas?</token> </marker> </pattern> <disambig action="remove" postag="V.M.*"/> </rule> </rulegroup> <rulegroup id="imperative_not_indicative" name="imperativo, no indicativo"> <rule> <pattern> <token postag="SENT_START"/> <token min="0" max="3" regexp="yes">\p{P}</token> <marker> <and> <token postag="V.[SI].*" postag_regexp="yes" skip="7"/> <token postag="V.M.*" postag_regexp="yes"/> </and> </marker> <!--<token>o</token>--> <token>si</token> <token>no</token> </pattern> <disambig action="remove" postag="V.[SI].*"/> </rule> <rule> <pattern> <token>por</token> <token>favor</token> <token min="0" max="1" regexp="yes">\p{P}</token> <marker> <and> <token postag="V.[SI].*" postag_regexp="yes"/> <token postag="V.M.*" postag_regexp="yes"/> </and> </marker> </pattern> <disambig action="remove" postag="V.[SI].*"/> </rule> </rulegroup> <rulegroup id="allowed_repetitions" name="allowed repetitions"> <rule> <pattern> <token regexp="yes">.+o</token> <token spacebefore="no">/</token> <marker> <token spacebefore="no">a</token> </marker> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <marker> <token spacebefore="no">.</token> <token spacebefore="no" regexp="yes" case_sensitive="yes">es|ES</token> </marker> <token>es</token> </pattern> <disambig action="immunize"/> </rule> <rule> <pattern> <marker> <token regexp="yes">sapiens|muy|bunga</token> </marker> <token><match no="0"/></token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token>a</token> </marker> <token>A</token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token>de</token> </marker> <token>De</token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <token>de</token> <token>la</token> <marker> <token>a</token> </marker> <token>a</token> <token>la</token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <token>La</token> <marker> <token regexp="yes">[Ll]a</token> </marker> <token regexp="yes">[Ll]and</token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <!-- al pan pan y al vino vino --> <pattern> <token>al</token> <marker> <token regexp="yes">pan|vino</token> </marker> <token regexp="yes"><match no="1"/></token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <token>si</token> <marker> <token>no</token> </marker> <token>no</token> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes" min="0" max="2"/> <token postag="V.[SI].*" postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <marker> <token>no</token> </marker> <token>no</token> <token spacebefore="no">-</token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <marker> <token regexp="yes">ja|je|ji</token> </marker> <token><match no="0"/></token> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">ja|je|ji</token> <marker> <token><match no="0"/></token> </marker> </pattern> <disambig action="add"> <wd pos="_allow_repeat"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">ja|je|ji|ha|he|hi</token> <token>,</token> <marker> <token><match no="0"/></token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">ja|je|ji|ha|he|hi</token> </marker> <token>,</token> <token><match no="0"/></token> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <!-- SOME EXTRA TAGGING --> <rulegroup id="letras_mayusculas" name="letras sueltas mayúsculas"> <antipattern> <token regexp="yes">\p{Lu}+</token> <token regexp="yes">\p{Lu}</token> </antipattern> <antipattern> <token regexp="yes">\p{Lu}</token> <token regexp="yes">\p{Lu}+</token> </antipattern> <rule> <pattern> <token><exception postag="SENT_START"/><exception regexp="yes">[¿?¡!"'‘“«»—–:\-]</exception></token> <marker> <token regexp="yes">\p{Lu}</token> </marker> </pattern> <disambig action="add"> <wd pos="NPCN000"/> </disambig> </rule> <rule> <!--A es igual a B--> <pattern> <token postag="SENT_START"/> <!--<token min="0" regexp="yes">[¿?¡!"'‘“«»—–:\-]</token>--> <marker> <token regexp="yes">\p{Lu}</token> </marker> <token postag="VS..3S." postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="NPCN000"/> </disambig> </rule> <rule> <!--A es igual a B--> <pattern> <token postag="SENT_START"/> <token regexp="yes">[¿?¡!"'‘“«»—–:\-]</token> <marker> <token regexp="yes">\p{Lu}</token> </marker> <token postag="VS..3S." postag_regexp="yes"/> </pattern> <disambig action="add"> <wd pos="NPCN000"/> </disambig> </rule> </rulegroup> <rulegroup id="nom_en_complement" name="nom en complement"> <rule> <pattern> <token postag="SP.*|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token>com</token> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D[ADI].*" postag_regexp="yes"/> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DA.*" postag_regexp="yes"/> <token postag="PX.*" postag_regexp="yes"/> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D[ADI].*" postag_regexp="yes"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <!-- Durant el període medieval gremis d'artesans --> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <and> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"><exception postag="DI.*" postag_regexp="yes"/></token> <token postag="complement" postag_regexp="yes"/> </and> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <and> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"><exception postag="DI.*" postag_regexp="yes"/></token> <token postag="complement" postag_regexp="yes"/> </and> <token postag="RG_before"/> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"><exception>a</exception></token> <marker> <token postag="PD0NS000"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <!-- complement regit per la preposició 'a' --> <rule> <pattern> <token regexp="yes">a|al</token> <marker> <token postag="N.*|PI.*|PD.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <token>a</token> <token postag="D[ADI].*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <token>a</token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="DA.*" postag_regexp="yes"/> <token postag="PX.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <token>a</token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="D[ADI].*" postag_regexp="yes"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <token>a</token> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="A.*|V.P.*" postag_regexp="yes"/> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <token>a</token> <marker> <token postag="PD0NS000"/> </marker> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="complement_a" postag_regexp="yes"/> </and> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <and> <token postag="N.*" postag_regexp="yes"/> <token postag="complement_a" postag_regexp="yes"/> </and> <token postag="RG_before"/> <marker> <token postag="A.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="complement_a"/> </disambig> </rule> <rule> <pattern> <and> <token postag="NCF.*" postag_regexp="yes"/> <token postag="complement.*" postag_regexp="yes"/> </and> <token>y</token> <marker> <token>media</token> </marker> </pattern> <disambig action="replace"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <and> <token postag="NCM.*" postag_regexp="yes"/> <token postag="complement.*" postag_regexp="yes"/> </and> <token>y</token> <marker> <token>medio</token> </marker> </pattern> <disambig action="replace"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token>cada</token> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement_cada"/> </disambig> </rule> </rulegroup> <rulegroup id="adj_ignore_concordance" name="adjectivo que ya acompaña a un nombre"> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="N.*" postag_regexp="yes"/> <marker> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="ignore_concordance"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="N.*" postag_regexp="yes"/> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> <marker> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="ignore_concordance"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="N.*" postag_regexp="yes"/> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> <token regexp="yes">y|o|ni|e|u|,</token> <marker> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="ignore_concordance"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token postag="N.*" postag_regexp="yes"/> <token postag="RG_before"/> <marker> <token postag="A.*|PX.*|V.P.*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="ignore_concordance"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="genero"/> <feature id="numero"/> <token regexp="yes">yo|mí|tú|ti|él|ella|nosotros|vosotros|nosotras|vosotras|ellos|ellas|usted|ustedes|vos</token> <marker> <token inflected="yes">mismo</token> </marker> </unify> </pattern> <disambig action="add"> <wd pos="ignore_concordance"/> </disambig> </rule> </rulegroup> <rulegroup id="possible_np" name="posible nombre propio"> <rule> <antipattern> <token postag="SENT_START"/> <token min="1" max="4" regexp="yes">\p{P}</token> <marker> <token postag="AQ.*|DA.*|PP.*|P0.*|V.[GMSIP].*|N.*|RG|DP.*|SPS00|SP:DA|I" postag_regexp="yes" regexp="yes">\p{Lu}\p{Ll}*</token> </marker> </antipattern> <antipattern> <token postag="SENT_START"/> <marker> <token postag="AQ.*|DA.*|PP.*|P0.*|V.[GMSIP].*|N.*|RG|DP.*|SPS00|SP:DA|I" postag_regexp="yes" regexp="yes">\p{Lu}\p{Ll}*</token> </marker> </antipattern> <antipattern> <token regexp="yes">[¿¡"'«»‘“:—–\-]</token> <marker> <token postag="AQ.*|DA.*|PP.*|P0.*|V.[GMSIP].*|N.*|RG|DP.*|SPS00|SP:DA|I" postag_regexp="yes" regexp="yes">\p{Lu}\p{Ll}*</token> </marker> </antipattern> <antipattern> <token regexp="yes">\p{Lu}\p{Lu}\p{Lu}+</token> <token regexp="yes">\p{Lu}\p{Lu}\p{Lu}+</token> </antipattern> <antipattern case_sensitive="yes"> <token regexp="yes">A</token> <token regexp="yes">\p{Lu}\p{Lu}\p{Lu}+</token> </antipattern> <pattern> <marker> <token postag="AQ.*|DA.*|PP.*|P0.*|V.[GMSIP].*|N.*|RG|DP.*|SPS00|SP:DA|I" postag_regexp="yes" regexp="yes">\p{Lu}.*</token> </marker> </pattern> <disambig action="add"> <wd pos="_possible_NP"/> </disambig> </rule> <rule> <antipattern> <token postag="SENT_START"/> <token spacebefore="no">-</token> </antipattern> <pattern> <token spacebefore="no">-</token> <marker> <token spacebefore="no" postag="AQ.*|DA.*|PP.*|P0.*|V.[GMSI].*|N.*|RG|DP.*|SPS00|I" postag_regexp="yes" regexp="yes">\p{Lu}.*</token> </marker> </pattern> <disambig action="add"> <wd pos="_possible_NP"/> </disambig> </rule> </rulegroup> <rulegroup id="noun_complement" name="noun in complement"> <rule> <pattern> <token>cada</token> <marker> <token postag="N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_complement_cada"/> </disambig> </rule> </rulegroup> <rulegroup id="reflexive_verb" name="reflexive verb"> <rule> <pattern> <unify> <feature id="numero"/> <feature id="persona"/> <token postag="P0.*" postag_regexp="yes"/> <marker> <token postag="V.[SI].*" postag_regexp="yes"/> </marker> </unify> </pattern> <disambig action="add"> <wd pos="_reflexive"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="numero"/> <feature id="persona"/> <token postag="P0.*" postag_regexp="yes"/> <token postag="VA[SI].*" postag_regexp="yes" inflected="yes">haber</token> </unify> <marker> <token postag="V.P..SM" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_reflexive"/> </disambig> </rule> <rule> <pattern> <unify> <feature id="numero"/> <feature id="persona"/> <token postag="P0.*" postag_regexp="yes"/> <token postag="V.[SI].*" postag_regexp="yes" inflected="yes">ir</token> </unify> <token>a</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="_reflexive"/> </disambig> </rule> </rulegroup> <rulegroup id="infinitive_complement" name="Verbo en infinitivo como complemento"> <rule> <pattern> <token postag="N.*|A.*" postag_regexp="yes"/> <token postag="SPS00"/> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag=".*LOC_PREP.*" postag_regexp="yes"/> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SPS00|.*LOC_PREP.*" postag_regexp="yes"/> <token>no</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="N.*|A.*" postag_regexp="yes"/> <token postag="SPS00"/> <token postag="SPS00"/> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">en|,|a|para|al|por</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="SENT_START|_PUNCT.*|D[ADI].MS.*" postag_regexp="yes"><exception>tanto</exception></token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">poder|voler|dejar</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">después|antes</token> <token>de</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> <rule> <pattern> <token postag="complement"/> <token regexp="yes">y|o|e|u|pero|sino|,</token> <marker> <token postag="V.N.*" postag_regexp="yes"/> </marker> </pattern> <disambig action="add"> <wd pos="complement"/> </disambig> </rule> </rulegroup> <!-- IGNORE SPELLING --> <rule id="aloe_vera" name="aloe vera"> <pattern> <token>aloe</token> <token>vera</token> </pattern> <disambig action="immunize"/> </rule> <rule id="un_haiga" name="un haiga"> <pattern> <token>un</token> <marker> <token>haiga</token> </marker> </pattern> <disambig action="add"> <wd lemma="haiga" pos="NCMS000"/> </disambig> </rule> <rule id="URL" name="url"> <!-- It excludes URLs from list of unknown words --> <pattern> <token regexp="yes">(https?|ftp)://.*|www.*</token> </pattern> <disambig action="add"> <wd pos="IS_URL" lemma="IS_URL"/> </disambig> </rule> <rulegroup id="ABBREVIATIONS" name="abreviaturas"> <rule name="fechas abreviadas"> <pattern> <token regexp="yes" case_sensitive="yes">(\d|[12]\d|3[01])[EFMAJSOND]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token>p</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">\d+</token> </pattern> <disambig action="add"> <wd lemma="página" pos="NCFS000"/> </disambig> </rule> <rule> <pattern> <marker> <token>pp</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">\d+</token> </pattern> <disambig action="add"> <wd lemma="página" pos="NCFP000"/> </disambig> </rule> <rule> <pattern> <token regexp="yes">\d+</token> <marker> <token>pp</token> </marker> <token spacebefore="no">.</token> </pattern> <disambig action="add"> <wd lemma="página" pos="NCFP000"/> </disambig> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">Ctrl|CTRL|Alt|ALT|MAYÚS|Mayús</token> </marker> <token>+</token> <!--<token regexp="yes">.|Alt|ALT|MAYÚS|Mayús|F[0-9]</token>--> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern case_sensitive="yes"> <token regexp="yes">Ctrl|CTRL|Alt|ALT|MAYÚS|Mayús</token> <token min="0">+</token> <marker> <token regexp="yes">.|Alt|ALT|MAYÚS|Mayús|F[0-9]</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token>loc</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">comparativa|adjetival|distributiva|preposicional|conjuncional|adverbial</token> </pattern> <disambig action="add"> <wd lemma="locución" pos="NCFS000"/> </disambig> </rule> </rulegroup> <rulegroup id="SEMANTIC" name="desambiguación semántica"> <rule id="CREER_CREAR" name="creer/crear"> <pattern> <marker> <token inflected="yes">creer</token> </marker> <token>que</token> </pattern> <disambig action="remove"> <wd lemma="crear"/> </disambig> </rule> </rulegroup> <rulegroup id="IGNORE_SOME_ANGLICISMS" name="ignore some common anglicisms if they go with unknown words"> <rule> <pattern> <token postag="UNKNOWN"/> <token min="0">-</token> <marker> <token regexp="yes">online|on-line|website|sport|stock|peak|display</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">online|on-line|website|sport|stock|peak|display</token> </marker> <token min="0">-</token> <token postag="UNKNOWN"/> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rule id="plin" name="a mí, plin"> <pattern> <token>a</token> <token regexp="yes">mí|ti|él|ella|nosotros|nosotras|vosotros|vosotras|ellos|ellas|(?-i)\p{Lu}.+</token> <token min="0">,</token> <marker> <token regexp="yes">plin|plim</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule id="DE_LA_A" name="de la a a la z"> <pattern case_sensitive="yes"> <token regexp="yes">de|a|desde|hasta</token> <token>la</token> <marker> <token regexp="yes">[a-z]</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule name="Ignore spelling pm/am" id="pm_am"> <!-- style rules can be suggested for these abbreviations --> <pattern> <token regexp="yes">([012][0-9][\.,])?[0-6]?[0-9]</token> <token regexp="yes" case_sensitive="yes">pm|am|PM|AM|GMT|CEST|UTC|EST</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rulegroup id="hace_x_tiempo" name="hace tres años, hace mucho tiempo"> <rule> <pattern> <token><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/><exception regexp="yes">qué|cuánto</exception></token> <marker> <token postag="V.I[PI]3S0" postag_regexp="yes" inflected="yes" skip="12">hacer<exception postag=".*LOC_ADV.*" postag_regexp="yes"/><exception scope="next" regexp="yes">que|en</exception><exception scope="next" postag="_PUNCT.*" postag_regexp="yes">,</exception><exception postag="V.[MSI].*|_GV_|DA.*" postag_regexp="yes" scope="next"/></token> </marker> <token regexp="yes" inflected="yes">&unidades_tiempo;|&estaciones_ano;|&meses_ano;|momento|instante|tiempo|rato</token> </pattern> <disambig action="add"> <wd pos="LOC_ADV"/> </disambig> </rule> <rule> <antipattern> <token regexp="yes">mucho|poco|muchísimo|poquísimo</token> <token postag="AQ.*|V.P.*" postag_regexp="yes"/> </antipattern> <pattern> <token><exception postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/><exception regexp="yes">qué|cuánto</exception></token> <marker> <token postag="V.I[PI]3S0" postag_regexp="yes" inflected="yes">hacer<exception postag=".*LOC_ADV.*" postag_regexp="yes"/><exception scope="next" regexp="yes">que|en</exception><exception scope="next" postag="_PUNCT.*" postag_regexp="yes">,</exception><exception postag="V.[MSI].*|_GV_|DA.*" postag_regexp="yes" scope="next"/></token> <token regexp="yes">mucho|poco|muchísimo|poquísimo</token> </marker> </pattern> <disambig action="add"> <wd pos="LOC_ADV"/> <wd pos="LOC_ADV"/> </disambig> </rule> </rulegroup> <rulegroup id="IGNORE_SPELLING_MONHTS" name="ignorar meses abreviados"> <rule> <pattern> <marker> <token regexp="yes">&meses_ano;</token> </marker> <token regexp="yes" min="0">[\,/\-]</token> <token regexp="yes">\d\d|\d\d\d\d</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">\d+</token> <token regexp="yes" min="0">[\,/\-]</token> <marker> <token regexp="yes">&meses_ano;</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">\d+</token> <token min="0" regexp="yes">-|/</token> <marker> <token regexp="yes">&meses_ano_abrv;</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">&meses_ano_abrv;</token> </marker> <token min="0" max="2" regexp="yes">-|/|\.</token> <token regexp="yes">\d+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">&meses_ano_abrv;</token> <token min="0" max="2" regexp="yes">-|/|\.</token> <token regexp="yes">&meses_ano_abrv;</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rulegroup name="Ignore spelling numbers " id="IGNORE_NUMBERS"> <rule> <!-- 2ºA --> <pattern> <token regexp="yes">\d+[ªº][A-Z]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- minus sign --> <pattern> <token regexp="yes">−?[\d .,]+%?</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- style rules can be suggested for these abbreviations --> <pattern> <token regexp="yes">([012][0-9][\.,])?[0-6]?[0-9]</token> <token regexp="yes" case_sensitive="yes">pm|am|PM|AM|GMT|CEST|UTC|EST</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[\d ,\.]+x[\d ,\.]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <antipattern case_sensitive="yes"> <token regexp="yes">[A-Z]+</token> <token spacebefore="no">-</token> <token spacebefore="no">[A-Z]+</token> </antipattern> <pattern case_sensitive="yes"> <token regexp="yes">[A-Z0-9]+</token> <token spacebefore="no">-</token> <token spacebefore="no" regexp="yes">[A-Z0-9]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes" case_sensitive="yes">[A-Z]+\d+<exception regexp="yes">CO2|COVID19</exception></token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">([01]?\d|2[0-3])h[0-5]?\d(min|m)([0-5]?\ds)?</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">([01]?\d|2[0-3])h[0-5]?\d</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[0-5]?\d(min|m)[0-5]?\ds</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern case_sensitive="yes"> <token regexp="yes">\d\d\d\d*[A-Z]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes" case_sensitive="yes">\d+\.d+[a-z]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes" case_sensitive="yes">\d+[\.,d]*x\d+[\.,d]*(cm|mm|m)</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes" case_sensitive="yes">\d+(px|p|v|r)</token> </pattern> <disambig action="ignore_spelling"/> </rule> <!-- wrong units --> <rule> <pattern case_sensitive="yes"> <token regexp="yes" case_sensitive="yes">\d+[\.,d](sg|mt|K[mgplWB]|Kbps|Kcal|Kbit|k|K)</token> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rule id="monedas" name="monedas"> <pattern> <token regexp="yes">M[£€$]</token> </pattern> <disambig action="add"> <wd lemma="euros" pos="NCMN000"/> </disambig> </rule> <rule id="plurals" name="algunos plurales"> <pattern> <token postag="D.*" postag_regexp="yes"/> <marker> <token case_sensitive="yes" regexp="yes">(Picasso|Miró|Dalí|Rembrandt|Botticelli)s</token> </marker> </pattern> <disambig action="add"> <wd lemma="np" pos="NCMP000"/> </disambig> </rule> <rule id="ignore_initials" name="ignorar iniciales en nombres propios"> <pattern> <token regexp="yes">\p{Lu}.*</token> <marker> <token regexp="yes">[A-Z]</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule id="AND_CO" name="ignorar iniciales & Co"> <pattern> <token regexp="yes">\p{Lu}.*</token> <token regexp="yes">and|&</token> <marker> <token regexp="yes" case_sensitive="yes">Co|CO</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule id="IGNORE_LETTER_QUOTES" name="ignore letters between quotes"> <pattern> <token postag="_QM_OPEN"/> <marker> <token regexp="yes" spacebefore="no">.</token> </marker> <token postag="_QM_CLOSE"/> </pattern> <disambig action="ignore_spelling"/> </rule> <rule name="Ignore spelling of punctuation characters" id="IGNORE_SPELLING_OF_PUNCTUATION"> <pattern> <!-- ignore spelling of underscores etc. --> <token regexp="yes">[_~°]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rulegroup id="ignore_pp" name="ignorar pp (puntos porcentuales"> <rule> <pattern> <token regexp="yes">[\d \.,]+\dpp</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[\d \.,]+\d</token> <marker> <token>pp</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rulegroup id="onomatopeyas" name="algunas onomatopeyas"> <rule> <pattern> <token case_sensitive="yes" regexp="yes">[Mm]mm+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token case_sensitive="yes" regexp="yes">A?a+h+</token> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rule id="MADE_IN" name="made in"> <pattern> <marker> <token>made</token> <token>in</token> <token regexp="yes" case_sensitive="yes">USA|China|Europe|Taiwan|Spain|France|Germany|Italy</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule id="APOSTROPHE" name="apóstrofo, no comillas"> <pattern> <token regexp="yes">\p{L}+<exception regexp="yes">[\(«“]</exception><exception postag="SENT_START"/></token> <marker> <token spacebefore="no" regexp="yes">['’]</token> </marker> <token spacebefore="no" regexp="yes">\p{L}+</token> </pattern> <disambig action="add"> <wd pos="_allow_apostrophe"/> </disambig> </rule> <rulegroup id="jura_y_recontrajura" name="jura y recontrajura"> <rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <token>y</token> <marker> <token>re<match no="0"/></token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token postag="V.*" postag_regexp="yes"/> <token>y</token> <marker> <token><match no="0"/></token> <token>re<match no="1"/></token> </marker> </pattern> <disambig action="immunize"/> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes"/> <token>y</token> <marker> <token>recontra<match no="0"/></token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token postag="&pronombre_personal_atono_POS;" postag_regexp="yes"/> <token postag="V.*" postag_regexp="yes"/> <token>y</token> <marker> <token><match no="0"/></token> <token>recontra<match no="1"/></token> </marker> </pattern> <disambig action="immunize"/> </rule> </rulegroup> <rulegroup id="IGNORE_SPELLING_OF_ABBREVIATIONS" name="Ignore spelling of some uppercase abbreviations"> <rule> <pattern> <token regexp="yes">\d+xx?|x\d+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- lowercase word + abbreviation with no vowels --> <pattern case_sensitive="yes"> <token regexp="yes">.*[a-z].*</token> <token min="0">(</token> <marker> <token regexp="yes">[BCDFGHJKLMNPQRSTVWXZ]{3,6}</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- abbreviation with no vowels + lowercase word --> <pattern case_sensitive="yes"> <marker> <token regexp="yes">[BCDFGHJKLMNPQRSTVWXZ]{3,6}</token> </marker> <token min="0">)</token> <token regexp="yes">.*[a-z].*</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- termina en vocal, n o s --> <pattern case_sensitive="yes"> <marker> <token>n</token> </marker> <token>o</token> <token>s</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">\d+</token> <marker> <token regexp="yes">&meses_ano_abrv;</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">&meses_ano_abrv;</token> </marker> <token regexp="yes">\d+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">\d\d?(&meses_ano_abrv;)\d\d(\d\d)?</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">\d\d?</token> <token>-</token> <token regexp="yes">&meses_ano_abrv;</token> <token>-</token> <token regexp="yes">\d\d(\d\d)?</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <marker> <token regexp="yes">\d\d?</token> <token>/</token> <token regexp="yes">&meses_ano_abrv;</token> <token>/</token> <token regexp="yes">\d\d(\d\d)?</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <!-- c o n c l u s i ó n --> <pattern> <marker> <token regexp="yes">\p{L}</token> </marker> <token regexp="yes">\p{L}</token> <token regexp="yes">\p{L}</token> <token regexp="yes">\p{L}</token> </pattern> <disambig action="immunize"/> </rule> <rule> <!-- c o n c l u s i ó n --> <pattern> <token regexp="yes">\p{L}</token> <token regexp="yes">\p{L}</token> <token regexp="yes">\p{L}</token> <marker> <token regexp="yes">\p{L}</token> </marker> </pattern> <disambig action="immunize"/> </rule> <rule> <!-- word in syllables --> <pattern> <marker> <token regexp="yes">\p{L}{1,4}</token> <token>/</token> <token regexp="yes">\p{L}{1,4}</token> <token>/</token> <token regexp="yes">\p{L}{1,4}</token> <token>/</token> <token regexp="yes">\p{L}{1,4}</token> </marker> </pattern> <disambig action="immunize"/> </rule> </rulegroup> <rulegroup id="MATEMATICAS" name="notación matemática"> <rule> <pattern> <token regexp="yes">[∀-⋿]</token> <token regexp="yes">[a-z]</token> </pattern> <disambig action="immunize"/> </rule> <rule> <pattern> <token regexp="yes">[a-z]</token> <token regexp="yes">[=><\+]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[=><]</token> <token regexp="yes">[a-z]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[a-z][⁰ⁱ²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₔₕₖₗₘₙₚₛₜ]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">[a-z]</token> <token regexp="yes">[⁰ⁱ²³⁴⁵⁶⁷⁸⁹⁺⁻⁼⁽⁾ⁿ₀₁₂₃₄₅₆₇₈₉₊₋₌₍₎ₐₑₒₓₔₕₖₗₘₙₚₛₜ]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes">&math_operators;</token> <token regexp="yes" case_sensitive="yes">[a-zA-Z]|[A-Z][A-Z]</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token regexp="yes" case_sensitive="yes">[a-zA-Z]|[A-Z][A-Z]</token> <token regexp="yes">&math_operators;</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token skip="1" inflected="yes" regexp="yes">lado|recta|semirrecta|hipotenusa|base|altura|diagonal|segmento|distancia|triángulo|rectángulo|cuadrado|polígono|pentágono|hexágono</token> <marker> <token case_sensitive="yes" regexp="yes">[A-Z][A-Z]+</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token skip="1" inflected="yes" regexp="yes">lado|recta|semirrecta|hipotenusa|base|altura|diagonal|segmento|distancia|triángulo|rectángulo|cuadrado|polígono|pentágono|hexágono</token> <token case_sensitive="yes" regexp="yes">[A-Z][A-Z]+</token> <token postag="_PUNT_CONT|CC" postag_regexp="yes"/> <marker> <token case_sensitive="yes" regexp="yes">[A-Z][A-Z]+</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rule id="HEXADECIMAL_NOTATION" name="notación hexadecimal"> <pattern> <token regexp="yes" case_sensitive="yes">0x[0-9A-Fa-f]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule id="OCTAL_NOTATION" name="notación octal"> <pattern> <token regexp="yes" case_sensitive="yes">0o[0-7]+</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rulegroup id="ignore_spelling_on_off" name="ignorar ortografía on/off"> <rule> <pattern> <token inflected="yes" regexp="yes">estado|fase|posición</token> <token min="0" postag="_QM_OPEN"/> <marker> <token regexp="yes">on|off</token> </marker> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token>on</token> <token regexp="yes">[\-/]</token> <token>off</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern> <token>off</token> <token regexp="yes">[\-/]</token> <token>on</token> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rulegroup id="nombres_persona" name="nombres de persona abreviados"> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">[A-Z]</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="ignore_spelling"/> </rule> <rule> <pattern case_sensitive="yes"> <marker> <token regexp="yes">[A-Z]</token> </marker> <token spacebefore="no">.</token> <token regexp="yes">[A-Z]</token> <token spacebefore="no">.</token> <token regexp="yes">\p{Lu}.*</token> </pattern> <disambig action="ignore_spelling"/> </rule> </rulegroup> <rule id="ignore_uppercase_letters" name="A a Z"> <antipattern case_sensitive="yes"> <token>y</token> <token>Y</token> </antipattern> <pattern case_sensitive="yes"> <token regexp="yes">[A-Z]</token> <token regexp="yes">[aoy]</token> <token regexp="yes">[A-Z]</token> </pattern> <disambig action="immunize"/> </rule> <rule id="prefijo_entre_parentesis" name="prefijo entre parèntesis"> <!-- (mal)gastar --> <pattern> <token>(</token> <marker> <token regexp="yes" spacebefore="no">des|de|dis|in|mal|anti|pro</token> <token spacebefore="no">)</token> </marker> <token spacebefore="no"/> </pattern> <disambig action="immunize"/> </rule> <rule id="ABREVIATURAS_CON_PUNTO" name="abreviaturas con punto"> <pattern> <marker> <token regexp="yes" case_sensitive="yes">&abreviaturas;</token> </marker> <token spacebefore="no">.</token> </pattern> <disambig action="ignore_spelling"/> </rule> <!-- CHUNKER --> <rulegroup id="PERIFRASIS_VERBALES" name="perífrasis verbales"> <rule> <pattern> <token inflected="yes">tener</token> <token>que</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token inflected="yes">haber</token> <token postag="V.P.*" postag_regexp="yes"><exception postag="[NA].*" postag_regexp="yes"/></token> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" regexp="yes">continuar|seguir|estar|ir|proseguir</token> <token postag="V.G.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" regexp="yes">poder|querer|desear|deber|saber</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">deber</token> <token>de</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes">ir</token> <token>a</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> <rule> <pattern> <token postag="V.*" postag_regexp="yes" inflected="yes" regexp="yes">volver|comenzar|empezar</token> <token>a</token> <token postag="V.N.*" postag_regexp="yes"/> </pattern> <disambig action="addchunk"> <wd pos="GV"/> <wd pos="GV"/> <wd pos="GV"/> </disambig> </rule> </rulegroup> </rules>