<?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" ?>
    <!--
  Galician Grammar and Typo Rules for LanguageTool
  Copyright (C) 2006 Marcin Miłkowski
  Copyright (C) 2009 Susana Sotelo Docío

  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 meses_ano_abrev "(?:jan|feb|mar|abr|mai|xu[lnñ]|ago|set|out|nov|dec)">
    <!ENTITY meses_ano "(?:x(?:aneiro|u(?:ñ|ll)o)|febreiro|marzo|abril|maio|agosto|setembro|outubro|novembro|decembro)">
    <!ENTITY dias_semana_abrev "(?:seg|ter|cua|mar|qui|sex|sáb|dom)">
    <!ENTITY dias_semana "(?:segunda|terza|martes|cuarta|quinta|sexta|sábado|domingo)">
    <!ENTITY partes_do_dia "(?:mañá|matina|tarde|noite)">
    <!ENTITY expressoes_de_tempo "(?:segundo|minuto|hora|día|semana|(?:bi|tri|quadri|se)mestre|ano|década|decenio|milenio|tempo|temporada|época)s?|mes|meses">

    <!ENTITY puntos_cardeais "(?:n(?:acente|or(?:te|[do]este))|su(?:l|(?:ro)este)|este|o(?:este|ccidente|riente)|poñente)">
    <!ENTITY adverbios_de_intensidade "bastante|ben|demasiado|moitísimo|máis|menos|moi|nada|pouco|canto|case|tanto|tan|todo"><!-- XXX untranslated assaz|demais|*«quão -->
    <!ENTITY adverbios_de_lugar "abaixo|enriba|dentro|adiante|fóra|aí|alén|ai|aquén|atrás|acá|dentro|embaixo|externamente|alí|lonxe|preto"><!-- XXX *algures|*alhures|*nenhures -->
    <!ENTITY codigos_de_pais "(?:A(?:[DEFGIMNOQRSTUWZ]|LS?)|M[ACDGHKLMNOPQRSTUVWXYZ]|S[ACDEGHIJKLMNORTUVYZb]|B[ABDEFGHIJMNORSTVWYZ]|C[ACFGHIKLMNORSUVXYZ]|G[ABDEFHILMNPQRSTUWY]|T[CDFGHJKMNOPRTVWZ]|N[ACEFGILOPRTUZ]|P[AEFGHKLMNRTWY]|K[EGHIMNPRWYZ]|L[ABCIKRSTUVY]|I[DELNOQRST]|E[CEGHNRST]|F[IJKMORX]|U[AGKMSYZ]|V[ACEGINU]|D[EJKMOZ]|H[KMNRTU]|R[EOUW]|J[MOP]|Y[ETU]|Z[AMR]|W[FS]|OM|QA)">
    <!ENTITY divisas "(?:euros|dólares|francos|pesos|libras|rublos|rupias|iuans|iens|[€£¥$₽])">

    <!ENTITY separadores_de_oracoes "(?:[,;:…–—\(«“]|\-|\[)">
    <!ENTITY hifen "(?:[-‑])">
    <!ENTITY tracos_de_separacao "(?:[-‑]|–|—)">

    <!ENTITY unidades_de_medida "(?:(?:[khdcmnµfYZEPTGM]|da)?(?:[gmlsJNWCVSFTHΩ]|Hz|cd|lm|mol|Pa|Wb|rad|sr|lx|Bq|Gy|Sv|kat|Np|eV)(?:⁻)?[23¹²³]?|º[CFK]|cv|k?cal|mmHg|atm|ton|kWh|GWa|MWd|MWh|mAh|min)">
    <!ENTITY unidades_de_medida_por_extenso "(?:quil[oó]|dec[ií]|cent[ií]|mil[ií]|micr[oó])?(grama|metro|litro|segundo)s?|hectar(es)?|(grau|(quilo)?tonelada)s?">
    <!ENTITY tabela_periodica "(?:[UVW]|C[adeflmnorsu]?|N[abdehiop]?|P[abdmortu]?|S[bcegimnr]?|T[abcehilms]|A[cglmrstu]|R[abefghnu]|B[aehikr]?|H[efgos]?|M[cdgnot]|F[elmr]?|L[airuv]|D[bsy]|E[rsu]|G[ade]|I[nr]?|O[gs]?|Z[nr]|Kr?|Yb?|Xe|[₁₂₃₄₅₆₇₈₉₀])">

    <!ENTITY precede_nome_proprio "(asociación|avenida|balneario|parella?|coalición|colección|cometa|concurso|copa|curso|designación|designado|distribución|escola|estación|estilo|filme|fundación|galardón|xeración|illa|imperio|iniciativa|instituto|titulado|lagoa?|lei|libro|monte|museo|navío|novela|obra|orquestra|praza|premio|programa|proxecto|quinta|rexistro|reino|informe|revista|río|rúa|serra|teatro|tema|tipo|universidade|versión)">
    <!ENTITY contraccions_MS "(?:ao|d(?:o|un|el|est?e|aquel|ist?o|aquilo|outro)|n(?:o|un|el|est?e|aquel|ist?o|aquilo|outro)|algún|polo)"><!-- XXX lost 'me+o|che+o|lle+o'-->
    <!ENTITY contraccions_FS "(?:á|d(?:a|uña|ela|est?a|aquela|outra)|n(?:a|unha|ela|nest?a|aquela|outra)|algunha|pola)"><!-- XXX lost 'me+a|che+a|lle+a'-->
    <!ENTITY contraccions_MP "(?:aos|d(?:os|uns|eles|est?es|aqueles|outros)|n(?:os|uns|eles|est?es|aqueles|outros)|algúns|polos)"><!-- XXX lost 'me+o|che+o|lle+o'+s-->
    <!ENTITY contraccions_FP "(?:ás|d(?:as|uñas|elas|est?as|aquelas|outras)|n(?:as|unhas|elas|est?as|aquelas|outras)|algunhas|polas)"><!-- XXX lost 'me+a|che+a|lle+a'+s-->

    <!ENTITY verbos_auxiliares_part_pasado "(?:ser|estar|ter|haber|ficar)">

    <!ENTITY abreviaturas "(?:s(?:[eé]c)?|[Ee]tc\.|(?:m[aá]x|m[ií]n|[aA]prox)|(?:[aA]pt?do|[aA]sdo|[aA]vd?a?|[Cc]ód|[Dd]e?pto|[Ff]ac|[Ii]nst)|(?:[Aa]fm[oa]s?|Emcia|Ilt?m[ao]s?|Iltres?|MM|Exc?m[ao]s?|Magf[oa]|D(?:na)?|Sra?|Sr[ea]s|Srta|Dra?|Dr[ea]s?|Rm[ao]|Rev|Revm[ao]|Mons|Emmo|Rv?d[ao]|[Ll]icd[oa]|[Ll]ic|[Ll]d[oa]|[pP]rofs?)|(?:[Nn][úu]ms?|[fF]igs?|[Pp][aá]xs?|pp?|cc?a)|(?:[Vv]ols?|[Cc]aps?)|(?:[Aa]dmóns?|[aA]d(?:mt)?v[oa]s?)|(?:[pP]pal|[Vv]des?|[Ii]b[íi]d|[Rr]efs?|[Cc]it|[Aa]brevs?|[Aa]bl|[Aa]dx|[Aa]dv|[Aa]cr|[Cc]onx|[Ll]oc|[Pp]rep|[Ss]ubst)|(?:[vV]id|[Cc]fr?)|(?:[Cc]oord|[Ee]d)s?|(?:[Cc]t[ae]|[Tt]e?lf|[Tt]fno|[Tt]el[eé]f|[Tt]el)s|(?:[oO]p|[lL]oc)|cit|[aá]l|vs)"><!-- XXX retrieved from segment.srx, Galician section -->

    <!ENTITY MSG_ECV "Posíbel erro de concordancia verbal.">
    <!ENTITY MSG_ECX "Posíbel erro de concordancia de xénero.">
    <!ENTITY MSG_ECN "Posíbel erro de concordancia de número.">

]>

<rules lang="gl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../../../../languagetool-core/src/main/resources/org/languagetool/rules/rules.xsd">

  <unification feature="number">
    <equivalence type="singular">
          <token postag="(?:[NZ]..|[ADP]...|V....)S.+" postag_regexp="yes"/>
    </equivalence>
    <equivalence type="plural">
          <token postag="(?:[NZ]..|[ADP]...|V....)P.+" postag_regexp="yes"/>
    </equivalence>
  </unification>

  <unification feature="gender">
    <equivalence type="masc">
          <token postag="(?:[NZ].|[ADP]..|V.....)[MC].+" postag_regexp="yes"/>
    </equivalence>
    <equivalence type="fem">
          <token postag="(?:[NZ].|[ADP]..|V.....)[FC].+" postag_regexp="yes"/>
    </equivalence>
  </unification>

  <unification feature="person">
    <equivalence type="first">
          <token postag="(?:V...|PP)1.+" postag_regexp="yes"/>
    </equivalence>
    <equivalence type="second">
          <token postag="(?:V...|PP)2.+" postag_regexp="yes"/>
    </equivalence>
    <equivalence type="third">
          <token postag="(?:V...|PP)3.+" postag_regexp="yes"/>
    </equivalence>
  </unification>

 <category id="CAT0" name="Gramática::Concordancia">

  <rulegroup id='GENERAL_GENDER_AGREEMENT_ERRORS' name="Concordancia de género: Geral">
    <!--            General gender concordance errors            -->
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-10-21 -->
      <url>http://www.lingua.gal/c/document_library/get_file?file_path=/portal-lingua/celga/celga-1/material-alumno/Manual_Aula_de_Galego_1_resumo_gramatical.pdf</url>
      <antipattern case_sensitive='yes'><!-- XXX Proper names exception -->
          <unify negate='yes'>
            <feature id="gender"/><feature id="number"/>
          <token postag_regexp='yes' postag='(?:N|A).+|UNKNOWN' regexp='yes'>\p{Lu}.+</token>
          <token regexp='yes'>\p{Lu}.+</token>
          </unify>
      </antipattern>
    <rule>
      <antipattern>
          <unify>
            <feature id="gender"/><feature id="number"/>
          <token/>
          <token regexp='yes'>(?:&precede_nome_proprio;)e?s?</token>
          </unify>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)MS.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CF]S.+|V.[CSIG].+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception>ás</exception><!-- XXX Dealt by HOMOPHONE_AS_CARD -->
            <exception regexp='yes'>e|ser|son|termo|nome</exception></token>
          <token min='0' postag='(?:A..|Z.)C[SN].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[SN].+'/></token>
          <token postag='(?:[NZ].|A..)F.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CM].+|V.[CSI].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>unha|mas</exception>
          </token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)MS(.+)" postag_replace='$1FS$2' postag_regexp="yes" include_skipped='all'/> <match no='3' include_skipped='all'/> \4</suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..)F.(.+)" postag_replace='$1MS$2' postag_regexp="yes"/></suggestion>
      <example correction='Unha vaca|Un (vaca)'><marker>Un vaca</marker> está no pasto.</example>
      <example correction='unha tortilla|un (tortilla)'>Vostede pode facer <marker>un tortilla</marker> española para eu cea, por favor?</example>
      <example>O Un tórnase Dous, o Dous tórnase Tres.</example>
    <!--example>Dise que a cada día nace un trouxa, e diso o vigarista sabe.</example--><!-- XXX solved after disambiguation rules are converted -->
    <!--example correction='unha sándwich|un (sándwich)'>Están comendo <marker>un sándwich</marker>.</example-->
    <!--example correction="unha espantosa dor|un espantosa (dor)">Teño <marker>un espantosa dor</marker> na cabeza.</example--><!-- XXX make example with neutral adjective instead of espantosa>
      <example correction="unha gran erupción|un gran (erupción)">Por exemplo, <marker>un gran erupción</marker> volcánica causa maior reflexión da luz solar de vo…</example-->
      <example>O monte Fariña é unha montaña do distrito de Vila Real.</example>
    </rule>
    <rule>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_MS;
            <exception postag_regexp='yes' postag='RG|NP.+'/></token>
          <token min='0' postag='(?:A..|Z.)C[SN].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[SN].+'/></token>
          <token postag='(?:[NZ].|A..|DP.)F.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..|DP.)[CM].+|V.[CSI].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>unha|mas</exception>
          </token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..)F.(.+)" postag_replace='$1MS$2' postag_regexp="yes"/></suggestion>
      <example correction='no (hora)'>Foi resolto <marker>no hora</marker> correcta.</example>
      <example type='correct'>Foi resolto <marker>na hora</marker> correcta.</example>
    </rule>
    <rule>
      <antipattern>
          <unify>
            <feature id="gender"/><feature id="number"/>
          <token/>
          <token regexp='yes'>(?:&precede_nome_proprio;)s</token>
          </unify>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)MP.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CF]P.+|V.[CSIG].+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception regexp='yes'>as|termos|nomes</exception></token>
          <token min='0' postag='(?:A..|Z.)C[NP].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NP].+'/></token>
          <token postag='(?:[NZ].|A..)F.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CM].+|V.[CSI].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>unha|media</exception>
          </token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)MP(.+)" postag_replace='$1FP$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> \4</suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)F.(.+)" postag_replace='$1MP$2' postag_regexp="yes"/></suggestion>
      <example correction='As invasoras|Os invasores'><marker>Os invasoras</marker> holandeses decidiron ir en dirección ao Río Grande do Norte…</example>
      <example correction='As frases|Os (frases)'><marker>Os frases</marker> están erradas.</example>
      <example correction='Unhas cadelas|Uns cans'><marker>Uns cadelas</marker> están na rúa.</example>
      <example type='correct'><marker>Os bois</marker> están no pasto.</example>
    <!--example correction="unhas espantosas dores|uns espantosas (dores)">Teño <marker>uns espantosas dores</marker> na cabeza.</example--><!-- XXX adapt example with neutral adjective -->
      <example>Existe cada vez máis presión nos media para que presenten contidos de calidade.</example>
      <example>Os ríos Onda, Ave e Leça pertencen á mesma rexión hidrográfica.</example>
      <example correction="As escolas|Os (escolas)"><marker>Os escolas</marker> Álvaro de Campos, José Rodrigues dos Santos e Fernando Persoa teñen sido ben avaliadas.</example>
    </rule>
    <rule>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_MP;
            <exception postag_regexp='yes' postag='RG|NP.+'/></token>
          <token min='0' postag='(?:A..|Z.)C[NP].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NP].+'/></token>
          <token postag='(?:[NZ].|A..|DP.)F.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..|DP.)[CM].+|V.[CSI].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>unha|mas</exception>
          </token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..)F.(.+)" postag_replace='$1MP$2' postag_regexp="yes"/></suggestion>
      <example correction='Algúns (frases)'><marker>Algúns frases</marker> ten erros gramaticais.</example>
      <example type='correct'><marker>Algunhas frases</marker> ten erros gramaticais.</example>
      <example correction='Nos (mil)'><marker>Nos mil</marker> e unha noites.</example>
    </rule>
    <rule>
      <antipattern>
          <token>industria</token>
          <token>automóbil</token>
      </antipattern>
      <antipattern>
          <unify>
            <feature id="gender"/><feature id="number"/>
          <token/>
          <token regexp='yes'>(?:&precede_nome_proprio;)e?s?</token>
          </unify>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token regexp='yes'>zonas?</token>
          <token>euro</token>
      </antipattern>
      <antipattern>
          <token>alínea</token>
          <token regexp='yes'>\w|\d</token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)FS.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CM]S.+|V.[CSI].+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception regexp='yes'>e|ser|a|palabra|letra|comunidade</exception></token>
          <token min='0' postag='(?:A..|Z.)C[NS].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NS].+'/></token>
          <token postag='(?:[NZ].|A..)M.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CF].+|V.[CSIG].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>un|uns|ser|&puntos_cardeais;|números?|son</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)FS(.+)" postag_replace='$1MS$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> \4</suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)M.(.+)" postag_replace='$1FS$2' postag_regexp="yes"/></suggestion>
      <example correction='Un boi|Unha (boi)'><marker>Unha boi</marker> está no pasto.</example>
      <example>Á comunidade Mozilla (Firefox, Thunderbird e SeaMonkey).</example>
      <example>Unha vaca está no pasto.</example>
    <!--example correction="un espantosa inchazo|unha espantosa (inchazo)">Teño <marker>unha espantoso inchazo</marker> na cabeza.</example XXX enable after disambiguation improvements. Also tests 'espantoso' as neutral -->
      <example>Alemaña perdera a Primeira Guerra Mundial debido á Revolución alemá.</example>
      <example>Unha rúa Roberto Duarte Silva, tantas memorias.</example>
    </rule>
    <rule>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_FS;
            <exception postag_regexp='yes' postag='RG|NP.+'/></token>
          <token min='0' postag='(?:A..|Z.)C[NS].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NS].+'/></token>
          <token postag='(?:[NZ].|A..|DP.)M.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..|DP.)[CF].+|V.[CSIG].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>un|uns|ser|&puntos_cardeais;|números?|son</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)M.(.+)" postag_replace='$1FS$2' postag_regexp="yes"/></suggestion>
      <example correction='Algunha (boi)'><marker>Algunha boi</marker> está no pasto.</example>
    </rule>
    <rule>
      <antipattern>
          <unify>
            <feature id="gender"/><feature id="number"/>
          <token/>
          <token regexp='yes'>(?:&precede_nome_proprio;)s</token>
          </unify>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token>alíneas</token>
          <token regexp='yes'>\w|\d</token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)FP.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CM]P.+|V.[CSI].+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception regexp='yes'>e|palabras|letras|rúas|illas</exception></token>
          <token min='0' postag='(?:A..|Z.)C[NP].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NP].+'/></token>
          <token postag='(?:[NZ].|A..)M.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)[CF].+|V.[CSIG].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>un|uns|ser|&puntos_cardeais;|números?|son</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)FP(.+)" postag_replace='$1MP$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> \4</suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)M.(.+)" postag_replace='$1FP$2' postag_regexp="yes"/></suggestion>
      <example correction='Uns bois|Unhas (bois)'><marker>Unhas bois</marker> están no pasto.</example>
      <example type='correct'><marker>Unhas vacas</marker> están no pasto.</example>
    <!-- example correction="uns terríveis inchaços|unhas terríveis (inchaços)">Teño <marker>unhas espantosas inchaços</marker> na cabeza.</example XXX enable after disambiguation improvements. Also tests 'espantoso' as neutral -->
      <example correction="os millónes|as (millónes)">Vexan <marker>as millónes</marker> de mulleres.</example>
    <!--example>Isso é nas escolas Álvaro de Campos, José Rodrigues dos Santos e Fernando Pessoa.</example--><!-- TODO Tokenize conjunctions -->
      <example>Isto é, as escolas Álvaro de Campos, José Rodrigues dos Santos e Fernando Persoa.</example>
      <example correction="Os ríos|As (ríos)"><marker>As ríos</marker> Onda, Ave e Leça pertencen á mesma rexión hidrográfica.</example>
    </rule>
    <rule>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_FP;
            <exception postag_regexp='yes' postag='RG|NP.+'/></token>
          <token min='0' postag='(?:A..|Z.)C[NP].+' postag_regexp='yes'>
            <exception negate_pos='yes' postag_regexp='yes' postag='(?:[NZ].|A..)C[NP].+'/></token>
          <token postag='(?:[NZ].|A..|DP.)M.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..|DP.)[CF].+|V.[CSIG].+|(C|R).+|SPS00.*' postag_regexp='yes'/>
            <exception regexp='yes'>un|uns|ser|&puntos_cardeais;|números?|son</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)M.(.+)" postag_replace='$1FP$2' postag_regexp="yes"/></suggestion>
    <!--example correction="das grandes descubertas">A maioría <marker>das grandes descubertos</marker> científicas son nada menos que o descubrimento do ób…</example XXX add after disambiguation sync -->
      <example correction='Algunhas (bois)'><marker>Algunhas bois</marker> están no pasto.</example>
    </rule>
  </rulegroup>

    <!-- Specific gender concordance errors - A > Masculine Noun -->
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-10-24 -->
    <rule default='off' id='ERRO_DE_CONCORDNCIA_DO_GÉNERO_FEMININO_A' name="Concordancia de género: A + Masculino">
      <pattern>
        <marker>
          <token>a</token>
          <token postag='(?:[NZ].|A..)MS.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)MS.+' postag_regexp='yes' negate_pos='yes'/>
            <exception regexp='yes'>un|uns|ser|&puntos_cardeais;|números?|exemplo|fin|favor|serio|tempo|lado|uso|dereito</exception></token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>o \2</suggestion>
        <suggestion>a <match no='2' postag='(A..|N.|Z.)MS(.+)' postag_replace='$1FS$2' postag_regexp='yes'/></suggestion>
      <url>http://www.lingua.gal/c/document_library/get_file?file_path=/portal-lingua/celga/celga-1/material-alumno/Manual_Aula_de_Galego_1_resumo_gramatical.pdf</url>
      <example correction='O boi|A (boi)'><marker>A boi</marker> está no pasto.</example>
      <example type='correct'>A vaca está no pasto.</example>
    </rule>

    <rule default='off' id='A_WORD_A' name="Concordancia de género: A + palavra terminada em A">
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-10-28 -->
      <pattern>
          <token regexp='yes'>a</token>
          <token postag='(?:[NZ].|A..)M.+' postag_regexp='yes' regexp='yes'>.+a$
            <exception regexp='yes'>palabra|letra</exception></token>
      </pattern>
      <message>Posíbel erro de concordancia de xénero.</message>
        <suggestion>o \2</suggestion>
      <url>http://www.lingua.gal/c/document_library/get_file?file_path=/portal-lingua/celga/celga-1/material-alumno/Manual_Aula_de_Galego_1_resumo_gramatical.pdf</url>
      <example correction="O dogma"><marker>A dogma</marker> de quen sabe moito.</example>
    </rule>

  <rulegroup id='SER_ADJECTIVE_AGREEMENT' name="Erro de concordancia: SER + adjetivo + nome">
    <!--      Created by Tiago F. Santos, 2017-09-06      -->
    <rule>
      <pattern>
          <token inflected="yes">ser</token>
          <token postag_regexp="yes" postag="A..MS.+">
            <exception negate_pos='yes' postag_regexp="yes" postag="(?:A..|N.)MS.+"/></token>
          <token postag_regexp="yes" postag="(?:Z|D..)[CF][SN].+"/>
          <token postag_regexp="yes" postag="A..[CF][SN].+" min='0' max='2'/>
          <token postag="N.FS.+" postag_regexp='yes'>
            <exception postag_regexp="yes" postag="(?:A..|[PN].)[CM]S.+"/></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>\1 <match no='2' postag='(A..|N.|Z.)MS(.+)' postag_replace='$1FS$2' postag_regexp='yes'/> \3 <match no='4' include_skipped='all'/> <match no='5' include_skipped='all'/></suggestion>
      <example correction="É necesaria unha festa"><marker>É necesario unha festa</marker>.</example>
      <example correction="É necesaria unha gran festa"><marker>É necesario unha gran festa</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token inflected="yes">ser</token>
          <token postag_regexp="yes" postag="A..FS.+">
            <exception negate_pos='yes' postag_regexp="yes" postag="(?:A..|N.)FS.+"/></token>
          <token postag_regexp="yes" postag="(?:Z|D..)[CM][SN].+"/>
          <token postag_regexp="yes" postag="A..[CM][SN].+" min='0' max='2'/>
          <token postag="N.MS.+" postag_regexp='yes'>
            <exception postag_regexp="yes" postag="(?:A..|[PN].)[CF]S.+"/></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>\1 <match no='2' postag='(A..|N.|Z.)FS(.+)' postag_replace='$1MS$2' postag_regexp='yes'/> \3 <match no='4' include_skipped='all'/> <match no='5' include_skipped='all'/></suggestion>
      <example correction="É necesario un acordo"><marker>É necesaria un acordo</marker>.</example>
      <example correction="É necesario un gran acordo"><marker>É necesaria un gran acordo</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token inflected="yes">ser</token>
          <token postag_regexp="yes" postag="A..MP.+">
            <exception negate_pos='yes' postag_regexp="yes" postag="(?:A..|N.)MP.+"/></token>
          <token postag_regexp="yes" postag="(?:Z|D..)[CF][PN].+"/>
          <token postag_regexp="yes" postag="A..[CF][PN].+" min='0' max='2'/>
          <token postag="N.FP.+" postag_regexp='yes'>
            <exception postag_regexp="yes" postag="(?:A..|[PN].)[CM]P.+"/></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>\1 <match no='2' postag='(A..|N.|Z.)MP(.+)' postag_replace='$1FP$2' postag_regexp='yes'/> \3 <match no='4' include_skipped='all'/> <match no='5' include_skipped='all'/></suggestion>
      <example correction="Son necesarias unhas festas"><marker>Son necesarios unhas festas</marker>.</example>
      <example correction="Son necesarias unhas grandes festas"><marker>Son necesarios unhas grandes festas</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token inflected="yes">ser</token>
          <token postag_regexp="yes" postag="A..FP.+">
            <exception negate_pos='yes' postag_regexp="yes" postag="(?:A..|N.)FP.+"/></token>
          <token postag_regexp="yes" postag="(?:Z|D..)[CM][PN].+"/>
          <token postag_regexp="yes" postag="A..[CM][PN].+" min='0' max='2'/>
          <token postag="N.MP.+" postag_regexp='yes'>
            <exception postag_regexp="yes" postag="(?:A..|[PN].)[CF]P.+"/></token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>\1 <match no='2' postag='(A..|N.|Z.)FP(.+)' postag_replace='$1MP$2' postag_regexp='yes'/> \3 <match no='4' include_skipped='all'/> <match no='5' include_skipped='all'/></suggestion>
      <example correction="Son necesarios uns acordos"><marker>Son necesarias uns acordos</marker>.</example>
      <example correction="Son necesarios uns grandes acordos"><marker>Son necesarias uns grandes acordos</marker>.</example>
    </rule>
  </rulegroup>

    <!-- Specific gender concordance errors - O > Feminine Noun  -->
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-10-24 -->
    <rule id='ERRO_DE_CONCORDNCIA_DO_GÉNERO_MASCULINO_O' name="Concordancia de género: O + Feminino">
      <pattern>
        <marker>
          <token>o</token>
          <token postag='(?:[NZ].|A..)F.+' postag_regexp='yes'>
            <exception postag='(?:[NZ].|A..)F.+' postag_regexp='yes' negate_pos='yes'/>
            <exception regexp='yes'>unha|unhas|e|ser|nome|termo</exception></token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECX;</message>
        <suggestion>a \2</suggestion>
        <suggestion>o <match no='2' postag='(A..|N.|Z.)FS(.+)' postag_replace='$1MS$2' postag_regexp='yes'/></suggestion>
      <url>http://www.lingua.gal/c/document_library/get_file?file_path=/portal-lingua/celga/celga-1/material-alumno/Manual_Aula_de_Galego_1_resumo_gramatical.pdf</url>
      <example correction='A cadela|O can'><marker>O cadela</marker> está no pasto.</example>
      <example type='correct'>A cadela está no pasto.</example>
    </rule>

  <rulegroup id='GENERAL_NUMBER_AGREEMENT_ERRORS' name="Concordancia de Número: Geral">
    <!--            General number concordance errors            -->
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-10-19 -->
      <url>http://www.lingua.gal/c/document_library/get_file?file_path=/portal-lingua/celga/celga-1/material-alumno/Manual_Aula_de_Galego_1_resumo_gramatical.pdf</url>
      <antipattern case_sensitive='yes'>
          <unify negate='yes'><!-- XXX Proper names exception -->
            <feature id="gender"/><feature id="number"/>
          <token postag_regexp='yes' postag='(?:N|A).+|UNKNOWN' regexp='yes'>\p{Lu}.+</token>
          <token regexp='yes'>\p{Lu}.+</token>
          </unify>
      </antipattern>
      <antipattern>
          <unify negate='yes'>
            <feature id="number"/>
          <token postag_regexp='yes' postag='N.+'/>
          <token postag_regexp='yes' postag='Z.+'/>
          </unify>
      </antipattern>
    <rule>
      <antipattern>
          <token regexp='yes'>(?:&precede_nome_proprio;)s</token>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token>os</token>
          <token regexp='yes'>máis|menores|maiores|mellores|peores</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[MC]P.+' postag_regexp='yes'/>
      </antipattern>
      <antipattern>
          <token postag='(?:D[ADIP].|NC|A..|Z.).S.+' postag_regexp='yes'/>
          <token regexp='yes'>d[eao]s?</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[MC]P.+' postag_regexp='yes'/>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)[MC]P.+' postag_regexp='yes'>
            <exception postag='(?:D[ADIP].|NC|A..|P..|Z.)[MC]S.+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception regexp='yes'>.+[°′″]</exception></token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|Z.)[MC]S.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|Z.)[MC]P.+|P[ID].[CFM].+|(C|R).+|SPS00.*|VMG0000' postag_regexp='yes'/>
            <exception regexp="yes">hai|son|ser|deber|van|serán</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)[MC]P(.+)" postag_replace='$1[MC]S$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[MC]S(.+)" postag_replace='$1[MC]P$2' postag_regexp="yes"/></suggestion>
      <example correction='O can|Os cans'><marker>Os can</marker> está no pasto.</example>
      <example correction="pai natal|pais natais">Había <marker>pais natal</marker> na festa.</example>
      <example correction="todo litoral|todos litorais">Posúe unha extensión aproximada de 378 km, o que representa 3,8% de <marker>todos litoral</marker> do México.</example>
      <example correction="Caso máis preocupante|Casos máis preocupantes"><marker>Casos máis preocupante</marker> son estas.</example>
      <example>Conforme máis datos van sendo acumulados de persoas de todas as idades.</example>
      <example>Os rinocerontes serán anestesiados, antes de se remover o chifre.</example>
      <example>Calzas, as máis resgadas posíbel!</example>
      <example>Os montes Evereste, K2 e Kanchenjunga son os máis altos do mundo.</example>
      <example>As cores son: Ás de Copas vermello, Ás de Ouros vermello, Ás de Paus negro e Ás de Espadas negro.</example>
    </rule>
    <rule>
      <antipattern>
          <token postag_regexp='yes' regexp='yes' postag='R.+'>&contraccions_MP;
            <exception postag_regexp='yes' negate_pos='yes' postag='R.+'/></token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_MP;</token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|DP.|Z.)[MC]S.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|DP.|Z.)[MC]P.+|NPMS.+|P[ID].[CFM].+|(C|R).+|SPS00|VMG0000' postag_regexp='yes'/>
            <exception regexp="yes">[dlv]ê|hai|son|ser|deber|media|mídia</exception></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[MC]S(.+)" postag_replace='$1[MC]P$2' postag_regexp="yes"/></suggestion>
      <example correction='dos pais'>É o orgullo <marker>dos pai</marker>.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>&precede_nome_proprio;</token>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token regexp='yes'>tod[oa]</token>
          <token>ouvidos</token>
      </antipattern>
      <antipattern>
          <token>o</token>
          <token regexp='yes'>máis|menor|maior|peor|mellor</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[MC]S.+' postag_regexp='yes'/>
      </antipattern>
      <antipattern>
          <token postag='(?:D[ADIP].|NC|A..|Z.).P.+' postag_regexp='yes'/>
          <token regexp='yes'>d[eao]</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[MC]S.+' postag_regexp='yes'/>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|ou|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)[MC]S.+' postag_regexp='yes'>
            <exception postag='(?:D[ADIP].|N.|A..|Z.)[MC]P.+|(C|R).+|SPS00|VMG0000' postag_regexp='yes'/>
            <exception>ás</exception><!-- XXX Dealt by HOMOPHONE_AS_CARD -->
            <exception regexp="yes">hai|son|ser|haber|serán|van|uso|cero</exception>
            <exception regexp='yes'>.+[°′″]</exception></token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|Z.)[MC]P.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|Z.)[MC]S.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[MC]P(.+)" postag_replace='$1[MC]S$2' postag_regexp="yes"/></suggestion>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)[MC]S(.+)" postag_replace='$1[MC]P$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
      <example correction='Este gato|Estes gatos'><marker>Este gatos</marker> están no pasto.</example>
      <example>Son todo oídos</example>
      <example>Uso óculos desde os 6 anos,</example>
      <example>Calzas, o máis posíbel resgadas.</example>
      <example>O Monte Camerún é o volcán máis activo do oeste africano, tendo numerosas erupcións rexistradas.</example>
      <example>O número nove.</example>
      <example>Alí fóra están cero graos.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>tod[oa]</token>
          <token>ouvidos</token>
      </antipattern>
      <antipattern>
          <token postag_regexp='yes' regexp='yes' postag='R.+'>&contraccions_MS;
            <exception postag_regexp='yes' negate_pos='yes' postag='R.+'/></token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|ou|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_MS;</token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|DP.|Z.)[MC]P.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|DP.|Z.)[MC]S.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[MC]P(.+)" postag_replace='$1[MC]S$2' postag_regexp="yes"/></suggestion>
        <suggestion>\2s <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
      <example correction='do pai|dos pais'>É o orgullo <marker>do pais</marker>.</example>
      <example correction='polo medio|polos medios'>Conseguiron combater o fogo <marker>polo medios</marker> de todos os revezes.</example>
      <example>Polo menos nós terminamos o traballo pesado.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>&precede_nome_proprio;</token>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token>a</token> <!-- FIXME Improve disambiguator for a as SP cases -->
          <token>docentes</token>
      </antipattern>
      <antipattern>
          <token>unha</token>
          <token>vez</token>
      </antipattern>
      <antipattern>
          <token postag='(?:D[ADIP].|NC|A..|Z.).P.+' postag_regexp='yes'/>
          <token regexp='yes'>d[eao]</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[FC]S.+' postag_regexp='yes'/>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)[FC]S.+' postag_regexp='yes'>
            <exception postag='(?:D[ADIP].|N.|A..|Z.)[FC]P.+|C.|R.' postag_regexp='yes'/>
            <exception regexp='yes'>a|.+[°′″]</exception></token><!-- TODO improve 'a' as preposition disambiguation -->
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|Z.)[FC]P.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|Z.)[FC]S.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..)[FC]P(.+)" postag_replace='$1[FC]S$2' postag_regexp="yes"/></suggestion>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..)[FC]S(.+)" postag_replace='$1[FC]P$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
      <example correction='Unha vaca|Unhas vacas'><marker>Unha vacas</marker> son malladas, outras non.</example>
      <example>O programa Lendas do Futuro é bo?</example>
      <example>Unha vez acordadas as novas condicións, será feito o abastecemento eléctrico.</example>
    <!--example correction='unión empobrecida|unións empobrecidas'>As rexións na <marker>unión empobrecidas</marker> acabaron por ser culpabilizadas.</example XXX uncomment after better tagging of VMPs -->
      <example>As rexións da <marker>unión empobrecidas</marker> acabaron por ser culpabilizados.</example>
    </rule>
    <rule>
      <antipattern>
          <token postag_regexp='yes' regexp='yes' postag='R.+'>&contraccions_FS;
            <exception postag_regexp='yes' negate_pos='yes' postag='R.+'/></token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_FS;</token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|DP.|Z.)[FC]P.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|DP.|Z.)[FC]S.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token><!-- FIXME Review patterns to include passive without crippling detection -->
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[FC]P(.+)" postag_replace='$1[FC]S$2' postag_regexp="yes"/></suggestion>
        <suggestion>\2s <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
      <example correction='nunha especie|nunhas especies'>Valor contido <marker>nunha especies</marker> por descubrir.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>(?:&precede_nome_proprio;)s</token>
          <token regexp='yes' case_sensitive='yes'>\p{Lu}.+</token>
      </antipattern>
      <antipattern>
          <token postag='(?:D[ADIP].|NC|A..|Z.).S.+' postag_regexp='yes'/>
          <token regexp='yes'>d[eao]s?</token>
          <token postag='(?:D[ADIP].|NC|A..|Z.)[FC]P.+' postag_regexp='yes'/>
      </antipattern>
      <antipattern>
          <token>distribucións</token>
          <token>Linux</token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|&hifen;</token>
        <marker>
          <token postag='(?:D[ADIP].|NC|A..|P[^IDP].|Z.)[FC]P.+' postag_regexp='yes'>
            <exception postag='(?:D[ADIP].|N.|A..|Z.)[FC]S.+|(C|R).+|SPS00' postag_regexp='yes'/>
            <exception regexp='yes'>.+[°′″]</exception></token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|Z.)[FC]S.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|Z.)[FC]P.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no="2" postag="(D[ADIP].|NC|A..|P[^IDP].|Z.)[FC]P(.+)" postag_replace='$1[FC]S$2' postag_regexp="yes"/> <match no='3' include_skipped='all'/> <match no='4' include_skipped='all'/></suggestion>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[FC]S(.+)" postag_replace='$1[FC]P$2' postag_regexp="yes"/></suggestion>
      <example correction='A vaca|As vacas'><marker>As vaca</marker> son malladas.</example>
      <example>Presentou os programas Xornal do Mundo, Internacional Patati e Plus Berlin.</example>
      <example correction='fechadura grande|fechaduras grandes'>Coloca esa chave nas <marker>fechaduras grande</marker>.</example>
      <example correction="situación máis preocupante|situacións máis preocupantes">A <marker>situacións máis preocupante</marker> é esta.</example>
      <example>Conforme máis datos van sendo acumulados de persoas de todas as idades.</example>
      <example>Pega na chave das <marker>fechaduras grande</marker>.</example>
    </rule>
    <rule>
      <antipattern>
          <token postag_regexp='yes' regexp='yes' postag='R.+'>&contraccions_FP;
            <exception postag_regexp='yes' negate_pos='yes' postag='R.+'/></token>
      </antipattern>
      <pattern>
          <token negate='yes' regexp='yes'>e|de|&hifen;</token>
        <marker>
          <token regexp='yes'>&contraccions_FP;</token>
          <token regexp='yes' min='0'>&adverbios_de_intensidade;</token><!-- XXX use POS after disambiguation improvements -->
          <token postag='(?:N.|A..|DP.|Z.)[FC]S.+' postag_regexp='yes'>
            <exception postag='(?:N.|A..|DP.|Z.)[FC]P.+|P[ID].[CFM].+|(C|R).+|SPS00.*' postag_regexp='yes'/></token>
        </marker>
          <token>
            <exception postag_regexp='yes' postag='[^Z].+' regexp='yes'>e|&hifen;</exception></token>
      </pattern>
      <message>&MSG_ECN;</message>
        <suggestion><match no='2' include_skipped='all'/> <match no='3' include_skipped='all'/> <match no="4" postag="(N.|[AD]..|Z.)[FC]S(.+)" postag_replace='$1[FC]P$2' postag_regexp="yes"/></suggestion>
      <example correction='nunhas especies'>Valor contido <marker>nunhas especie</marker> por descubrir.</example>
    </rule>
  </rulegroup>

 </category>

 <category id='TYPOGRAPHY' name="Tipografia" type="typographical">

  <rulegroup id='GENERAL_NUMBER_FORMAT' name="Matemático: Formateo de números: 10 341 330">
    <!-- Created by Tiago F. Santos, 2017-03-05 -->
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/2500-2-500-ou-2500/12873</url TODO localize -->
      <short>Erro tipográfico</short>
    <rule>
      <antipattern>
          <token spacebefore='no'>,</token>
          <token regexp="yes" spacebefore='no'>\d+</token>
      </antipattern>
      <antipattern>
          <token regexp="yes">\d{4}</token>
          <token>
            <exception regexp="yes">\d+</exception></token>
      </antipattern>
      <antipattern>
          <token>
            <exception regexp="yes">\d+</exception></token>
          <token postag='SENT_END' regexp="yes">\d{4}</token>
      </antipattern>
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp="yes">\d+</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp="yes">\d+\d{3}(?:,\d+)?</token>
        </marker>
      </pattern>
      <message>Se non é un ano, os algarismos deben ser agrupados en grupos de 3.</message>
        <suggestion><match no="2" regexp_match="(\d+)(\d{3})(,\d+)?" regexp_replace="$1 $2$3"/></suggestion>
      <example correction='10 341'>En 2016, Portugal rexistrou <marker>10341</marker> miles de habitantes.</example>
      <example correction='1 034'><marker>1034</marker> 133 corresponde a un décimo dos habitantes portugueses</example>
      <example>O ano ten exactamente 365,24219858156 días.</example>
      <example>É o ano de <marker>1989</marker>.</example>
      <example>É o ano de <marker>1989</marker></example>
      <example>ISBN 0-522-85317-X.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">\d+\,\d{3}\d+</token>
      </pattern>
      <message>Os algarismos deben ser agrupados en grupos de 3.</message>
        <suggestion><match no="3" regexp_match="(\d+,\d{3})(\d+)" regexp_replace="$1 $2"/></suggestion>
      <example correction='17,103 41'>A media exacta é de <marker>17,10341</marker> valores.</example>
      <example correction='365,242 19858156'>O ano ten exactamente <marker>365,24219858156</marker> días.</example>
    </rule>
  </rulegroup>

  <rulegroup id="UNITS_OF_MEASURE_SPACING" name="Espazos en unidades de medida">
    <!-- Localized from German by Tiago F. Santos, Portuguese rule, 2017-09-29 -->
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/simbolos-de-unidades/11572</url TODO localize -->
    <rule>
      <regexp case_sensitive='yes'>(\-?[0-9]+[0-9,\.]*(°C|°F|°De?|°R[éeøa]?|(Z|E|P|T|G|M|k|h|da|d|c|m|µ|n|p|f|a|z|y)?m|(Z|E|P|T|G|M|k|h|da|d|c|m|µ|n|p|f|a|z|y)?N|[kKMGTPEZY]i?B|[kmµnp]g|[Mk]t|kWh|GWa|MWd|MWh))\b</regexp>
      <message>Debe dar un espazo entre o valor e a unidade de medida: <suggestion><match no="1" regexp_match="((\-)?[0-9]+[0-9,.]*{1,})" regexp_replace="$1 "/></suggestion></message>
    <!-- url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/simbolos-de-unidades/11572</url TODO localize -->
      <example correction="25 °C">Fan <marker>25°C</marker>.</example>
      <example correction="-25 °C">Fan <marker>-25°C</marker>.</example>
      <example correction="25,5 °F">Fan <marker>25,5°F</marker>.</example>
      <example>Fan <marker>25,5 °C</marker>.</example>
      <example>Fan <marker>25,5 °Ra</marker>.</example>
      <example>Son <marker>5 km</marker> gelaufen.</example>
      <example correction="5 km">Son <marker>5km</marker> de distancia.</example>
      <example>Son <marker>5 ZiB</marker> de datos.</example>
      <example correction="5 ZiB">Son <marker>5ZiB</marker> de datos.</example>
      <example>Son <marker>5 kB</marker> de datos.</example>
      <example correction="5 kB">Son <marker>5kB</marker> de datos.</example>
      <example correction="5 kg">Pesa <marker>5kg</marker>.</example>
      <example correction="5 Mt">Pesa <marker>5Mt</marker>.</example>
      <example>Pesa <marker>5 µg</marker>.</example>
      <example>Isótopo 241Am</example>
      <example>(AsCH3)2n</example>
      <example>Bd. 1b</example>
      <example>Primeiro lanzamento de Saturno 1B</example>
      <example correction="2.000 kWh">Foron consumidos <marker>2.000kWh</marker></example>
      <example>Os xuros son de 5 <marker>%</marker>.</example>
      <example>jbo:1901moi</example>
    </rule>
    <rule>
      <regexp>((\-)?[0-9]+[0-9.,]*{1,}) (°[^CFK])</regexp>
      <message>Non existe espaçamento a preceder o símbolo de grao. Utilice <suggestion>\1°</suggestion> ou adicione a unidade de medida térmica (p.ex. <suggestion>\1 °C</suggestion>).</message>
      <example correction="25°|25 °C">O ángulo é <marker>25 ° </marker></example>
      <example correction="-25,5°|-25,5 °C">Fan <marker>-25,5 ° </marker>de temperatura.</example>
      <example correction="-25°|-25 °C">Fan <marker>-25 ° </marker>de temperatura.</example>
      <example correction="25°|25 °C">O ángulo é <marker>25 ° </marker>de abertura.</example>
      <example correction="-25°|-25 °C">Fan <marker>-25 ° </marker>de temperatura.</example>
    </rule>
    <rule>
      <regexp>((\-)?[0-9]+[0-9.,]{1,}) (″)</regexp>
      <message>O sinal de segundos (\2) non é espaçado.</message>
        <suggestion>\1\2\3</suggestion>
      <example>3°14′ 45,54″</example>
      <example correction="45″"><marker>45 ″</marker> E</example>
      <example correction="45,54″"><marker>45,54 ″</marker> E</example>
    </rule>
  </rulegroup>

  <rulegroup id='SI_UNITS_EXPONENT' name="Matemático: Unidades do Sistema Internacional: km2/km²">
    <!-- Created by Tiago F. Santos, 2017-05-12 -->
      <url>https://gl.wikipedia.org/wiki/Funci%C3%B3n_exponencial</url>
      <short>Erro tipográfico</short>
    <!--rule> XXX disambiguate numbers Z.+ and uncomment
      <pattern case_sensitive="yes">
          <token postag_regexp='yes' postag='Z.+' skip='3'/>
        <marker>
          <token regexp="yes">(?:[khdcmnµfYZEPTGM]|da)?[gmlsJNWCVSFTH](\^)?⁻?2
            <exception regexp='yes'>(?:TV|GT)2</exception></token>
        </marker>
      </pattern>
      <message>Os expoentes deben estar en sobrescrito.</message>
        <suggestion><match no="2" regexp_match='(.+?)((\^)?)(⁻?)2' regexp_replace='$1$4²'/></suggestion>
      <example correction="km²">..estado o ano de 2010, foi de 4,68 habitantes por <marker>km2</marker>, sendo a vixésima cuarta maior do Brasil e a quin…</example>
      <example correction="km²">..estado o ano de 2010, foi de 4,68 habitantes por <marker>km^2</marker>, sendo a vixésima cuarta maior do Brasil e a quin…</example>
      <example correction="s⁻²">g = 9,8 m.<marker>s⁻2</marker></example>
    </rule>
    <rule>  XXX disambiguate numbers Z.+ and uncomment
      <pattern case_sensitive="yes">
          <token postag_regexp='yes' postag='Z.+' skip='3'/>
        <marker>
          <token regexp="yes">(?:[khdcmnµfYZEPTGM]|da)?[gmlsJNWCVSFTH](\^)?⁻?3
            <exception regexp='yes'>(?:TV|GT)3</exception></token>
        </marker>
      </pattern>
      <message>Os expoentes deben estar en sobrescrito.</message>
        <suggestion><match no="2" regexp_match='(.+?)((\^)?)(⁻?)3' regexp_replace='$1$4³'/></suggestion>
      <example correction="m³">A banheira tiña 2 <marker>m3</marker>.</example>
      <example correction="m³">A banheira tiña 2 <marker>m^3</marker>.</example>
      <example correction="s⁻³">g.t = 9,8 m.<marker>s⁻3</marker></example>
    </rule-->
    <rule>
      <pattern case_sensitive="yes">
          <token>/</token>
        <marker>
          <token regexp="yes">(?:[khdcmnµfYZEPTGM]|da)?[gmlsJNWCVSFTH](\^)?2</token>
        </marker>
      </pattern>
      <message>Os expoentes deben estar en sobrescrito.</message>
        <suggestion><match no="2" regexp_match='(.+?)((\^)?)2' regexp_replace='$1²'/></suggestion>
      <example correction="s²">g = 9,8 m/<marker>s2</marker></example>
      <example correction="s²">g = 9,8 m/<marker>s^2</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive="yes">
          <token>/</token>
        <marker>
          <token regexp="yes">(?:[khdcmnµfYZEPTGM]|da)?[gmlsJNWCVSFTH](\^)?3</token>
        </marker>
      </pattern>
      <message>Os expoentes deben estar en sobrescrito.</message>
        <suggestion><match no="2" regexp_match='(.+?)((\^)?)3' regexp_replace='$1³'/></suggestion>
      <example correction="cm³">ρ[H₂O]≈1,0 g/<marker>cm3</marker>.</example>
      <example correction="cm³">ρ[H₂O]≈1,0 g/<marker>cm^3</marker>.</example>
    </rule>
  </rulegroup>

  <rulegroup id="kWh" name="kW/h → kWh">
    <!-- Localized from French grammar.xml by Tiago F. Santos, 2017-06-28 -->
      <url>https://gl.wikipedia.org/wiki/Ordes_de_magnitude_(enerx%C3%ADa)</url>
    <rule>
      <pattern>
          <token regexp="yes">[KMGT]?W|(kilo|mega|giga|tera)?watt</token>
          <token spacebefore="no">/</token>
          <token spacebefore="no" regexp="yes">h|hora</token>
      </pattern>
      <message>Se se refire á unidade de consumo de enerxía, debe escribir <suggestion>\1\3</suggestion>.</message>
      <example correction="kWh">O aparello consome 5 <marker>kW/h</marker>.</example>
      <example>O aparello consome 5 kW.h.</example>
      <example>O aparello consome 5 kWh.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">(?-i)KW</token>
          <token spacebefore="no" regexp='yes'>[·.]</token>
          <token spacebefore="no">h</token>
      </pattern>
      <message>O prefixo kilo debe ser escrito en minúsculas.</message>
        <suggestion><match no="1" case_conversion="startlower"/>h</suggestion>
        <suggestion><match no="1" case_conversion="startlower"/>.h</suggestion>
      <example correction="kWh|kW.h">O aparello consome 5 <marker>KW.h</marker>.</example>
      <example>O aparello consome 5 kWh.</example>
    </rule>
    <rule>
      <pattern case_sensitive="yes">
          <token>KWh</token>
      </pattern>
      <message>O prefixo kilo debe ser escrito en minúsculas.</message>
        <suggestion><match no="1" case_conversion="startlower"/></suggestion>
      <example correction="kWh">O aparello consome 5 <marker>KWh</marker>.</example>
      <example>O aparello consome 5 kW·h.</example>
      <example>O aparello consome 5 kWh.</example>
    </rule>
  </rulegroup>

    <rule id="SPACES_BETWEEN_OPERATORS" name="Matemático: Espazo entre operadores">
    <!-- Localized from German grammar.xml, by Tiago F. Santos, 2017-07-09 -->
      <antipattern>    <!-- time exception: -->
          <token regexp="yes">(?:[01]?[0-9]|2[0-4])[0-9]?</token>
          <token>:</token>
          <token regexp="yes">[0-5][0-9]</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp="yes">(?:[0-9]+[a-z]*)
            <exception scope="previous" regexp="yes">escalas?</exception>
            <exception scope="previous" regexp="yes">\d\d\d\d-\d\d-\d\d</exception>
          </token>
          <token spacebefore="no" regexp="yes">[\*×∗·\+÷:=]</token>
          <token spacebefore="no" regexp="yes">((?:[0-9]+[a-z]*))+
            <exception regexp="yes">\d\dh</exception></token>
        </marker>
          <token negate="yes">h</token>
      </pattern>
      <message>Separe as fórmulas con espazos (protexidos).</message>
        <suggestion>\1 \2 \3</suggestion>
      <example correction="5 * 5"><marker>5*5</marker>.</example>
      <example correction="3a = 2"><marker>3a=2</marker>.</example>
      <example>Un mapa na escala 1:80000.</example>
      <example>Teño unha reunión ás 7:00 h.</example>
      <example>Teño unha reunión ás 7:00h.</example>
      <example>Enviado a 2014-01-23 10:32 :</example>
      <example>a = 2 · x² + 5</example>
      <example>4,5 × 2,5</example>
      <example>Entre as 9:00 e as 16:45.</example>
    </rule>

  <rulegroup id='MULTIPLICATION_SIGN' name="Matemático: Multiplicación: x - × ">
    <!-- Created by Tiago F. Santos, 2017-03-27 -->
    <rule>
      <antipattern>
          <token regexp='yes'>[,o]</token>
          <token>x</token>
          <token regexp='yes'>[,e]</token>
      </antipattern>
      <antipattern>
          <token regexp='yes'>\p{Lu}</token>
          <token spacebefore='no'>.</token>
          <token regexp='yes' spacebefore='yes'>\p{Lu}</token>
      </antipattern>
      <pattern>
          <token regexp="yes">[a-z]|[\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+?[a-z]{0,1}</token>
        <marker>
          <token regexp='yes'>[x\*]</token>
        </marker>
          <token regexp="yes">[a-z]|[\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+?[a-z]{0,1}</token>
      </pattern>
      <message>Prefira o símbolo de multiplicación.</message>
        <suggestion>×</suggestion>
        <suggestion>·</suggestion>
      <example correction="×|·">h = 6,626 <marker>x</marker> 10⁻³⁴ J.s</example>
      <example correction="×|·">h = 6.626 <marker>x</marker> 10⁻³⁴ J.s</example>
      <example correction="×|·">5 <marker>*</marker> 2 = 10</example>
      <example correction="×|·">a = 5 <marker>*</marker> x + 7</example>
      <example correction="×|·">a = 5x <marker>*</marker> 5 + 7</example>
      <example correction="×|·">a <marker>*</marker> b</example>
      <example>a = 2 · x² + 5</example>
      <example>4,5 × 2,5 = 11,25</example>
      <example>Consideremos <marker>que x é</marker> a coordenada horizontal, e y é a coordenada vertical.</example>
      <example>Regueira Fernández, X. L.</example>
    </rule>
    <rule>
      <regexp>([\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+?)[x\*]([\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+)</regexp>
      <message>Prefira o símbolo de multiplicación.</message>
        <suggestion>\1×\2</suggestion>
        <suggestion>\1·\2</suggestion>
      <example correction='2,998×10⁸|2,998·10⁸'>c=<marker>2,998x10⁸</marker> m/s</example>
      <example correction="6.626×10⁻³⁴|6.626·10⁻³⁴">h = <marker>6.626x10⁻³⁴</marker> J.s</example>
      <example correction="5×2|5·2"><marker>5*2</marker> = 10</example>
      <example>a=2·x²+5</example>
      <example>4,5×2,5=11,25</example>
    </rule>
    <rule>
      <regexp>([a-z]|[\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+?[a-z]{0,1})\*([a-z]|[\d\.,⁻¹²³⁴⁵⁶⁷⁸⁹⁰]+?[a-z]{0,1})</regexp>
      <message>Prefira o símbolo de multiplicación.</message>
        <suggestion>\1×\2</suggestion>
        <suggestion>\1·\2</suggestion>
      <example correction="5×x|5·x">a=<marker>5*x</marker>+7</example>
      <example correction="5x×5|5x·5">a=<marker>5x*5</marker>+7</example>
      <example correction="a×b|a·b"><marker>a*b</marker></example>
      <example>a=2·x²+5</example>
      <example>4,5×2,5=11,25</example>
    </rule>
  </rulegroup>

  <rulegroup id='PLUS_MINUS' name="Matemático: +- - ± ">
    <!-- Created by Tiago F. Santos, 2017-03-28 -->
    <rule>
      <pattern>
          <token>+</token>
          <token regexp='yes' spacebefore='no'>&hifen;</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>±</suggestion>
      <example correction='±'>m = 75,5 <marker>+-</marker> 0,1 g</example>
    </rule>
    <rule>
      <pattern>
          <token regexp='yes'>&hifen;</token>
          <token spacebefore='no'>+</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>±</suggestion>
      <example correction='±'>m = 75,5 <marker>-+</marker> 0,1 g</example>
    </rule>
  </rulegroup>

  <rulegroup id="EQUAL_OR_X" name="Matemático: &gt;= (≥)">
    <!-- Localized from German grammar.xml, by Tiago F. Santos, 2017-07-07 -->
    <rule>
      <regexp>&gt;=</regexp>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>≥</suggestion>
        <suggestion>≧</suggestion>
      <example>1 = 1</example>
      <example correction="≥|≧">1 <marker>&gt;=</marker> 0</example>
    </rule>
    <!--rule> FIXME &lt; sequence is not being properly escaped. Verify interpreter.
      <pattern>
          <token>&lt;</token>
          <token>=</token>
          <token negate="yes">></token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>≤</suggestion>
        <suggestion>≦</suggestion>
      <example>1 ≤ 3</example>
      <example type="incorrect">1 <marker>&gt;=</marker> 3</example>
            </rule-->
  </rulegroup>

  <rulegroup id="ARROWS" name="-&gt; (→)">
    <!-- Localized from German grammar.xml, by Tiago F. Santos, 2017-07-07 -->
    <rule>
      <pattern>
          <token negate="yes">&lt;</token>
        <marker>
          <token regexp="yes">(?:\-|=){1,2}</token>
          <token>&gt;</token>
        </marker>
      </pattern>
      <message>Pretende utilizar un frecha?</message>
        <suggestion>≥</suggestion>
        <suggestion>→</suggestion>
        <suggestion>⇾</suggestion>
        <suggestion>⇉</suggestion>
        <suggestion>⇒</suggestion>
        <suggestion>⇨</suggestion>
        <suggestion>⇛</suggestion>
      <example correction="≥|→|⇾|⇉|⇒|⇨|⇛"><marker>-&gt;</marker> Punto 1</example>
    </rule>
    <!--rule> FIXME &lt; equence is not being properly escaped. Verify interpreter.
      <pattern>
        <marker>
          <token>&lt;</token>
          <token regexp="yes">(?:\-|=){1,2}</token>
        </marker>
          <token negate="yes">&gt;</token>
      </pattern>
      <message>Pretende utilizar um seta?</message>
        <suggestion>≤</suggestion>
        <suggestion>←</suggestion>
        <suggestion>⇽</suggestion>
        <suggestion>⇇</suggestion>
        <suggestion>⇐</suggestion>
        <suggestion>⇦</suggestion>
        <suggestion>⇚</suggestion>
      <example correction="≤|←|⇽|⇇|⇐|⇦|⇚">A <marker>&lt;-</marker> B</example>
      <example >A ← B</example>
    </rule>
    <rule>
      <pattern>
          <token>&lt;</token>
          <token regexp="yes">\-|=</token>
          <token>&gt;</token>
      </pattern>
      <message>Pretende utilizar um seta?</message>
        <suggestion>↔</suggestion>
        <suggestion>⇿</suggestion>
        <suggestion>⇄</suggestion>
        <suggestion>⇆</suggestion>
        <suggestion>⇋</suggestion>
        <suggestion>⇌</suggestion>
        <suggestion>⇔</suggestion>
      <example correction="↔|⇿|⇄|⇆|⇋|⇌|⇔">A <marker>&lt;=></marker> B</example>
      <example>A ⇔ B</example>
            </rule-->
  </rulegroup>

  <rulegroup id='YEAR_NUMBER_FORMAT' name="Formateo de números: anos">
    <!-- Localized and improved by Tiago F. Santos, Portuguese rule, 2017-03-05 -->
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/2500-2-500-ou-2500/12873</url TODO localize -->
    <rule>
      <pattern>
          <token regexp="yes" skip='1'>anos?</token>
        <marker>
          <token regexp="yes">\d\.\d{3}</token>
        </marker>
      </pattern>
      <message>En anos os números non deben ser separados.</message>
        <suggestion><match no='2' regexp_match='(\d)(.)(\d{3})' regexp_replace='$1$3'/></suggestion>
      <example correction="1989">É o ano de <marker>1.989</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">&meses_ano;</token>
          <token skip="1">de</token>
        <marker>
          <token regexp="yes">\d{1,2}\.\d{3}</token>
        </marker>
      </pattern>
      <message>En anos os números non deben ser separados.</message>
        <suggestion><match no='3' regexp_match='(\d{1,2})(.)(\d{3})' regexp_replace='$1$3'/></suggestion>
      <example correction="1989">É decembro de <marker>1.989</marker>.</example>
    </rule>
    <rule>
      <pattern>
        <marker>
          <token regexp="yes">\d{1,3}\.\d{3}</token>
        </marker>
          <token regexp="yes">aC|dC</token>
      </pattern>
      <message>En anos os números non deben ser separados.</message>
        <suggestion><match no='1' regexp_match='(\d{1,3})(.)(\d{3})' regexp_replace='$1$3'/></suggestion>
      <example correction="1989">Estamos a <marker>1.989</marker> aC.</example>
    </rule>
  </rulegroup>

    <rule id='AVOID_DECIMAL_APOSTROPHE' name="Matemático: Evitar apóstrofe en decimais">
    <!--  Based on Catalan version, by Tiago F. Santos, 2017-02-27      -->
      <antipattern>
          <token regexp="yes">\d{1,2}\,\d+</token>
          <token spacebefore="no" regexp="yes">['`’‘]</token>
          <token spacebefore="no" regexp="yes">\d+(?:%|&unidades_de_medida;)?</token>
          <token spacebefore="no" regexp="yes">[”"]</token>
      </antipattern>
      <pattern>
          <token regexp="yes">\d+|\d{1,3}(?:[\. &#8239;&#160;]\d\d\d)+
            <exception regexp="yes">\d{1,2}\,\d+</exception>
            <exception scope="previous" regexp="yes">.*[º°h]</exception></token>
          <token spacebefore="no" regexp="yes">['`’‘]</token>
          <token spacebefore="no" regexp="yes">\d+(?:%|&unidades_de_medida;)?</token>
      </pattern>
      <message>Utilice antes unha vírgula para separar os decimais.</message>
        <suggestion>\1,\3</suggestion>
      <example correction="9,5"><marker>9'5</marker></example>
      <example correction="9,5%"><marker>9'5%</marker></example>
      <example correction="9.349,5"><marker>9.349'5</marker></example>
      <example correction="1.999.349,5"><marker>1.999.349'5</marker></example>
      <example correction="349,5">1 999 <marker>349'5</marker></example>
      <example>1,23'2</example>
      <example>41° 22'44.</example>
      <example>41º 12’12” N.</example>
    </rule>

    <rule id='PERCENT_WITHOUT_SPACE' name="Matemático: Remover espazo en percentagens (3%)" default="on">
    <!-- Localized and improved from Catalan, by Tiago F. Santos, 2017-02-27 -->
      <pattern>
          <token regexp="yes">[\d.,]+
            <exception regexp="yes">[.,]</exception></token>
          <token spacebefore="yes" regexp="yes">[%‰‱]</token>
      </pattern>
      <message>Escriba a porcentaxe sen espazos (estilo padrão).</message>
        <suggestion>\1\2</suggestion>
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/centigrados-porcentagem/18011</url TODO localize -->
      <example correction="23,5%">A taxa é de <marker>23,5 %</marker>.</example>
      <example correction="23,5‰">Paga <marker>23,5 ‰</marker>.</example>
      <example>Neste caso a % é de 1 a 2.</example>
      <example>Paga 25%.</example>
    </rule>

    <rule id='PERCENT_WITH_SPACE' name="Matemático: Acrescentar espazo en percentagens (3 %)" default="off">
    <!-- Localized and improved from Catalan, by Tiago F. Santos, 2017-02-27 -->
      <pattern>
          <token regexp="yes">[\d.,]+[%‰‱]</token>
      </pattern>
      <message>Escolleu a opción de inserción de espazo.</message>
        <suggestion><match no="1" regexp_match="(.+)([%‰‱])" regexp_replace="$1 $2"/></suggestion>
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/centigrados-porcentaxe/18011</url TODO localize -->
      <example correction="23,5 %">A taxa é do <marker>23,5%</marker>.</example>
      <example correction="23,5 ‰">Paga <marker>23,5‰</marker>.</example>
      <example>Paga 25 %.</example>
    </rule>

    <rule id="SPACE_INDENTATION" name="Libreoffice: Indentación con espazos" default='off'>
    <!-- Localized from German grammar.xml by Tiago F. Santos,  2017-08-19      -->
      <regexp>^ +</regexp>
      <message>No LibreOffice, a indentação é máis precisa se utilizar as ferramentas de tabulação ou indentação.</message>
        <suggestion/>
      <example correction=""><marker> </marker>El saíu de casa.</example>
    </rule>

  <rulegroup id='DASH_RULE' name='Guión, Meio-Raia e Raia'>
    <!-- Created by Tiago F. Santos, 2017-01-23 -->
      <url>https://gl.wikipedia.org/wiki/Raia_(puntuaci%C3%B3n)</url>
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
    <rule>
      <pattern>
          <token postag='SENT_START'/>
          <token min='0' regexp='yes'>["'«»“”]</token>
        <marker>
          <token regexp='yes'>-|–</token>
        </marker>
      </pattern>
      <message>En diálogos e enumerações debe utilizar trazo longo.</message>
        <suggestion>—</suggestion>
      <short>Nesta situación debe utilizar o travessão.</short>
      <example correction='—'><marker>-</marker> O que é iso, nai?</example>
      <example correction='—'>« <marker>-</marker> O que é iso, nai?</example>
      <example>— É o seu presente de aniversario, miña filla.</example>
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>2560-657 TORRES VEDRAS</example>
      <example>---------------------------------------</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>-</token>
          <token regexp='yes'>-</token>
          <token regexp='yes'>-</token>
          <token regexp='yes'>,</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp='yes' spacebefore='yes'>-|–</token>
        </marker>
          <token spacebefore="no">,</token>
      </pattern>
      <message>Termine a frase parentética cun trazo longo.</message>
        <suggestion>—</suggestion>
      <short>Nesta situación debe utilizar o travessão.</short>
      <example correction='—'>como dixen <marker>-</marker>,…</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
          <token regexp='yes'>-|–</token>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
      </antipattern>
      <pattern>
        <marker>
          <token spacebefore="yes" regexp='yes'>-|–</token>
        </marker>
          <token spacebefore="yes"/>
      </pattern>
      <message>Se non pretende unir dúas palabras, debe utilizar trazo longo.</message>
        <suggestion>—</suggestion>
      <short>Nesta situación debe utilizar trazo longo.</short>
      <example correction='—'>Neses establecementos de ensino existían matrículas <marker>-</marker> a maioría de ensino fundamental — e un total de docentes.</example>
      <example correction='—'>Instituto Ricci de Macau <marker>-</marker> Asociación de promoción cultural da Compañía de Jesus en Macau</example>
      <example>Na porción centro-oeste e noroeste presentan maiores elevacións, podendo atinxir 500 metros por enriba do nivel do mar, destacándose a Serra do Tumucumaque e a Serra Lombarda.</example>
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>2560-657 TORRES VEDRAS</example>
      <example>---------------------------------------</example>
    </rule>
    <rule>
      <antipattern>
          <token>Estrada</token>
          <token>Nacional</token>
          <token regexp="yes">\d{3}</token>
          <token regexp="yes">–|&hifen;</token>
          <token regexp="yes">\d</token>
      </antipattern>
      <antipattern><!-- XXX Postal codes -->
          <token regexp="yes">\d{4}</token>
          <token regexp="yes">–|&hifen;</token>
          <token regexp="yes">\d{3}</token>
          <token>
            <exception case_sensitive='yes'>a</exception></token>
      </antipattern>
      <antipattern><!-- XXX YYYY-XX-XX date formats and XX-XX-YYYY -->
          <token regexp="yes">\d{2}|\d{4}</token>
          <token regexp="yes" spacebefore='no'>–|&hifen;</token>
          <token regexp="yes" spacebefore='no'>\d{2}</token>
          <token regexp="yes" spacebefore='no'>–|&hifen;</token>
          <token regexp="yes" spacebefore='no'>\d{2}|\d{4}</token>
      </antipattern>
      <pattern>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
          <token regexp="yes">—|&hifen;</token>
          <token regexp='yes'>\d+%?|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
      </pattern>
      <message>Se pretende indicar unha gama temporal ou numérica, debe utilizar o medio-trazo.</message>
        <suggestion>\1 – \3</suggestion>
        <suggestion>\1–\3</suggestion>
      <short>En gamas numéricas/temporais, debe utilizar o medio-trazo.</short>
      <example correction='1901 – 1978|1901–1978'>Vitorino Nemésio (<marker>1901 - 1978</marker>) — escritor e profesor universitario.</example>
    <!--example correction='10 – 20%|10–20%'><marker>10-20%</marker></example--> <!-- XXX add half dash to tokenizer split characters and uncomment -->
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>2560-657 TORRES VEDRAS</example>
      <example>---------------------------------------</example>
      <example>10-10-10 — Data</example>
      <example>10-10-2010 — Data</example>
      <example>2010-10-10 — Data</example>
    </rule>
  </rulegroup>

  <rulegroup id='DASH_SPACE_RULES' name="Trazo longo en enumerações" default="on">
    <!-- Localized and improved from Catalan by Tiago F. Santos, 2017-05-16 -->
      <url>https://gl.wikipedia.org/wiki/Raia_(puntuaci%C3%B3n)</url>
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
    <rule>
      <pattern>
          <token postag="SENT_START"/>
          <token regexp="yes">\d+|\w</token>
          <token regexp="yes">[–‒—]|&hifen;</token>
          <token spacebefore="no">
            <exception regexp="yes">\d+</exception></token>
      </pattern>
      <message>En enumerações, debe dar un espazo despois do trazo longo.</message>
        <suggestion>\2 — \4</suggestion>
      <short>Erro tipográfico</short>
      <example correction="1 — Influencia"><marker>1—Influencia</marker> artística.</example>
    </rule>
  </rulegroup>

    <rule id='DASH_ENUMERATION_NO_SPACE_RULE' name="Trazo longo en diálogos: Sem espazo" default="off">
    <!-- Localized and improved from Catalan by Tiago F. Santos, 2017-05-16 -->
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
      <pattern>
          <token postag="SENT_START"/>
          <token regexp="yes">[–‒—]|&hifen;</token>
          <token spacebefore="yes"/>
      </pattern>
      <message>En diálogos, debe remover o espazo despois do trazo longo.</message>
        <suggestion>—\3</suggestion>
      <example correction="—Corre"><marker>— Corre</marker>! Vaia!</example>
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>—Saltar</example>
      <example>—Correr</example>
      <example>—Rastejar</example>
      <example>---------------------------------------</example>
    </rule>

    <rule id='DASH_ENUMERATION_SPACE_RULE' name="Trazo longo en diálogos: Espazo depois" default="on">
    <!-- Based on Catalan version by Tiago F. Santos, 2017-05-16 -->
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
      <pattern>
          <token postag="SENT_START"/>
          <token regexp="yes">[–‒—]|&hifen;</token>
          <token spacebefore="no"/>
      </pattern>
      <message>En diálogos, debe dar espazo despois do trazo longo.</message>
        <suggestion>— \3</suggestion>
    <!--url>https://ciberduvidas.iscte-iul.pt/consultorio/preguntas/o-uso-do-hifen-e-do-travessao/31251</url TODO localize -->
      <example correction="— Corre"><marker>—Corre</marker>! Vaia!</example>
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>— Saltar</example>
      <example>— Correr</example>
      <example>— Rastejar</example>
      <example>---------------------------------------</example>
    </rule>

  <rulegroup id='HIPHEN_SPACE_RULES' name="Espaçamento en hífens e travessões" default="on">
    <!-- Created by Tiago F. Santos, 2017-XX-XX -->
    <rule>
      <antipattern>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
          <token regexp='yes'>–|&hifen;</token>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
      </antipattern>
      <pattern>
          <token regexp='yes'>\p{L}+</token>
          <token spacebefore="yes" regexp='yes'>&tracos_de_separacao;</token>
          <token spacebefore="no" regexp='yes'>\p{L}+</token>
      </pattern>
      <message>Se pretende unir dúas palabras, non debe espaçar e debe utilizar o hífen. En caso contrario, utilice espazos e un trazo longo.</message>
        <suggestion>\1-\3</suggestion>
        <suggestion>\1 — \3</suggestion>
      <short>Erro tipográfico.</short>
      <example correction='Tras-os|Tras — os'>Alfándega da Fe fica en <marker>Tras -os</marker>-Montes.</example>
      <example>Ayer, A. J.— As Ideas de Bertrand Russel.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
          <token regexp='yes'>&hifen;</token>
      </antipattern>
      <antipattern>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
          <token regexp='yes'>–|&hifen;</token>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
      </antipattern>
      <pattern>
          <token/>
          <token spacebefore="no" regexp='yes'>&tracos_de_separacao;</token>
          <token spacebefore="yes"/>
      </pattern>
      <message>Se pretende unir dúas palabras, non debe espaçar e debe utilizar o hífen. En caso contrario, utilice espazos e un trazo longo.</message>
        <suggestion>\1-\3</suggestion>
        <suggestion>\1 — \3</suggestion>
      <short>Erro tipográfico.</short>
      <example correction='Tras-os|Tras — os'>Alfándega da Fe fica en <marker>Tras- os</marker>-Montes.</example>
    </rule>
  </rulegroup>

    <rule id='ENUMERATION_AND_DASHES' name="Enumerações com travessões: 1.2.-">
    <!-- Localized and improved from Catalan by Tiago F. Santos, 2016-10-27 -->
      <antipattern>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
          <token regexp='yes'>–|&hifen;</token>
          <token regexp='yes'>\d+|&meses_ano;|&meses_ano_abrev;|&dias_semana;|&dias_semana_abrev;</token>
      </antipattern>
      <pattern>
          <token postag='SENT_START'/>
          <token regexp="yes">\d+(?:\.\d+)?</token>
          <token>.</token>
          <token regexp="yes" min="1" max="3">[—–‒-]</token>
      </pattern>
      <message>Os trazos longos son desnecessários en enumerações.</message>
        <suggestion>\2.</suggestion>
      <example correction="1."><marker>1.-</marker> Introdución</example>
      <example correction="1."><marker>1.--</marker> Introdución</example>
      <example correction="1.3."><marker>1.3.—</marker> Introdución</example>
      <example>1139–1385 — Formación do Reino de Portugal</example>
      <example>50-30</example>
      <example>…cunha pedra…—, penso que…</example>
    </rule>

  <rulegroup id='HYPOTHESIS_TYPOGRAPHY' name='Tipografia de Hipóteses'>
    <!-- Created by Tiago F. Santos, 2017-09-01 -->
    <rule>
      <pattern case_sensitive='yes'>
          <token>H0</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₀</suggestion>
      <example correction='H₀'><marker>H0</marker>: Non existen efectos significativos.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H1</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₁</suggestion>
      <example correction='H₁'><marker>H1</marker>: Existen efectos significativos co composto A.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H2</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₂</suggestion>
      <example correction='H₂'><marker>H2</marker>: Existen efectos significativos co composto B.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H3</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₃</suggestion>
      <example correction='H₃'><marker>H3</marker>: Existen efectos significativos cos compostos A e B combinados.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H4</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₄</suggestion>
      <example correction='H₄'><marker>H4</marker>: Existen efectos significativos na ausencia do composto C.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H5</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₅</suggestion>
      <example correction='H₅'><marker>H5</marker>: Existen efectos significativos do composto C.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H6</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₆</suggestion>
      <example correction='H₆'><marker>H6</marker>: Existen efectos significativos do composto D.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H7</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₇</suggestion>
      <example correction='H₇'><marker>H7</marker>: Existen efectos significativos do composto E.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H8</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₈</suggestion>
      <example correction='H₈'><marker>H8</marker>: Existen efectos significativos do composto F.</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token>H9</token>
      </pattern>
      <message>Prefira o símbolo tipográfico.</message>
        <suggestion>H₉</suggestion>
      <example correction='H₉'><marker>H9</marker>: Existen efectos significativos do composto G.</example>
    </rule>
  </rulegroup>

  <rulegroup id='CHEMICAL_FORMULAS_TYPOGRAPHY' name='Fórmulas químicas'>
    <!-- Created by Tiago F. Santos, 2017-02-12 -->
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)(?:&tabela_periodica;)+(?:[₁₂₃₄₅₆₇₈₉]+)((&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os multiplicadores nas fórmulas químicas deben ser separados.</message>
        <suggestion><match no='1' regexp_match='(\d+)((&tabela_periodica;)+)([₁₂₃₄₅₆₇₈₉₀]+)(((&tabela_periodica;)+)?)' regexp_replace='$1 $2$4$5'/></suggestion>
      <example correction='4 H₂O'><marker>4H₂O</marker></example>
    </rule>
    <!-- Created by Tiago F. Santos, 2017-01-18 -->
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]2</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3'/></suggestion>
      <example correction='O₂'><marker>O2</marker></example>
      <example correction='4H₂O'><marker>4H2O</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+3((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]3</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)3(((&tabela_periodica;)+)?)' regexp_replace='$1₃$3'/></suggestion>
      <example correction='2S₃'><marker>2S3</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+4((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]4</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)4(((&tabela_periodica;)+)?)' regexp_replace='$1₄$3'/></suggestion>
      <example correction='CH₄'><marker>CH4</marker></example>
      <example correction='H₄Si'><marker>H4Si</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?2((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)2(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3₂$6'/></suggestion>
      <example correction='H₂O₂'><marker>H2O2</marker></example>
      <example correction='H₂NO₂Al'><marker>H2NO2Al</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?3((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)3(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3₃$6'/></suggestion>
      <example correction='K₂HPO₃'><marker>K2HPO3</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+3((?:&tabela_periodica;)+)?2((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)3(((&tabela_periodica;)+)?)2(((&tabela_periodica;)+)?)' regexp_replace='$1₃$3₂$6'/></suggestion>
      <example correction='CH₃CH₂OH'><marker>CH3CH2OH</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+3((?:&tabela_periodica;)+)?3((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)3(((&tabela_periodica;)+)?)3(((&tabela_periodica;)+)?)' regexp_replace='$1₃$3₃$6'/></suggestion>
      <example correction='CH₃CH₃'><marker>CH3CH3</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?4((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)4(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3₄$6'/></suggestion>
      <example correction='H₂SO₄'><marker>H2SO4</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?5((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)5(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3₅$6'/></suggestion>
      <example correction='C₂H₅OH'><marker>C2H5OH</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+2((?:&tabela_periodica;)+)?6((?:&tabela_periodica;)+)?</token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)2(((&tabela_periodica;)+)?)6(((&tabela_periodica;)+)?)' regexp_replace='$1₂$3₆$6'/></suggestion>
      <example correction='C₂H₆'><marker>C2H6</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+7((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]7</exception>
            <exception>V7</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)7(((&tabela_periodica;)+)?)' regexp_replace='$1₇$3'/></suggestion>
      <example correction='C₇H₁₆'><marker>C7H₁₆</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+8((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]8</exception>
            <exception>V8</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)8(((&tabela_periodica;)+)?)' regexp_replace='$1₈$3'/></suggestion>
      <example correction='C₈H₁₈'><marker>C8H₁₈</marker></example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+9((?:&tabela_periodica;)+)?
            <exception regexp='yes'>I[CP]9</exception>
            <exception>V9</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)9(((&tabela_periodica;)+)?)' regexp_replace='$1₉$3'/></suggestion>
      <example correction='C₉H₂₀'><marker>C9H₂₀</marker></example>
      <example>Lola T70 Chevy V8</example>
    </rule>
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>(?:\d+)?(?:&tabela_periodica;)+0((?:&tabela_periodica;)+)?
            <exception>V0</exception></token>
      </pattern>
      <message>Os números nas fórmulas químicas deben estar en subscrito.</message>
        <suggestion><match no='1' regexp_match='((&tabela_periodica;)+)0(((&tabela_periodica;)+)?)' regexp_replace='$1₀$3'/></suggestion>
      <example correction='C₉H₂₀'><marker>C₉H₂0</marker></example>
    </rule>
  </rulegroup>

    <rule id='DEGREE_SYMBOL' name="Matemático: Símbolo de grau (°)">
    <!--  Localized from Catalan grammar.xml, by Tiago F. Santos, 2017-02-27      -->
      <regexp>(?-i)\s?º\s?([CFNSEW])\b</regexp>
      <message>Se está a indicar graos, utilice o símbolo <suggestion>&#8239;°\1</suggestion>.</message>
      <example correction="&#8239;°C">Fai 25<marker>º C</marker> á sombra.</example>
      <example correction="&#8239;°C">Fai 25<marker>ºC</marker> á sombra.</example>
      <example correction="&#8239;°C">Fai 25<marker> º C</marker> á sombra.</example>
      <example correction="&#8239;°C">Fai 25<marker> ºC</marker> á sombra.</example>
      <example>Fai 25°.</example>
      <example>…o da Unión, conforme estabelecido nos artigos 349.º e 355.º do Tratado sobre o Funcionamento da Unión E…</example>
      <example>…que puxo fin á República Vella, depondo seu 13º e último presidente Washington Luís e impedindo a…</example>
    <!-- <example>…tua-se no nordeste do Oceano Atlântico entre os 36º e os 43º de latitude Norte e os 25º e os 31º de longitude… XXX False negative </example>-->
    </rule>

    <rule id='PLURAL_IN_UNITS_OF_MEASURE' name="Matemático: Abreviaturas de unidades de medida">
    <!--  Based on the Catalan version, by Tiago F. Santos, 2017-02-22      -->
      <pattern>
          <token regexp="yes">\d+</token>
        <marker>
          <token regexp="yes">(?:&unidades_de_medida;)s</token>
        </marker>
      </pattern>
      <message>As abreviaturas de unidades de medida padrão non ten plural.</message>
        <suggestion><match no='2' regexp_match='(&unidades_de_medida;)s' regexp_replace='$1'/></suggestion>
      <example correction="kg">Son 2 <marker>kgs</marker> de maças.</example>
    </rule>

    <rule id='KELVIN' name="Matemático: Kelvin (sem graus)">
    <!-- Localized and improved by Tiago F. Santos, Portuguese rule, 2017-02-27 -->
      <regexp>\s*[º°]\s*K\b</regexp>
      <message>Kelvin non utiliza o sinal de grao.</message>
        <suggestion>&#8239;K</suggestion>
      <url>https://gl.wikipedia.org/wiki/Kelvin</url>
      <example correction="&#8239;K">A 30<marker> ºK</marker>.</example>
      <example correction="&#8239;K">A 30<marker>ºK</marker>.</example>
      <example correction="&#8239;K">A 30<marker> º K</marker>.</example>
    </rule>

  <rulegroup id='DEGREE_MINUTES_SECONDS' name="Matemático: Tipografia de graus, minutos e segundos: 50°45′ 20″">
    <!-- Localized and improved by Tiago F. Santos, Portuguese rule, 2016-10-27 -->
    <rule>
      <regexp>\b([\d., ]*\d)\s*[º°]\s*([\d., ]*\d)\s*[”"'’′`]\s*([\d., ]*\d)\s*[”"'’′`]</regexp>
      <message>Utilice os símbolos de graos, minutos e segundos.</message>
        <suggestion>\1°&#8239;\2′&#8239;\3″</suggestion>
      <example correction="25°&#8239;29,1′&#8239;49″"><marker>25º 29,1' 49"</marker>.</example>
      <example correction="25°&#8239;29′&#8239;49″"><marker>25º 29' 49'</marker>.</example>
      <example correction="25°&#8239;29,1′&#8239;49″"><marker>25 º 29,1' 49"</marker>.</example>
      <example correction="25°&#8239;29′&#8239;49″"><marker>25 º 29' 49'</marker>.</example>
      <example correction="25°&#8239;29′&#8239;49″"><marker>25º29’49”</marker>  N.</example>
      <example>25° 29′ 34″</example>
    </rule>
    <rule>
      <regexp>\b([\d., ]*\d)\s*[º°]\s*([\d., ]*\d)\s*[”"'’`]</regexp>
      <message>Utilice os símbolos de graos e minutos.</message>
        <suggestion>\1°&#8239;\2′</suggestion>
      <example correction="25°&#8239;29,1′"><marker>25º 29,1'</marker>.</example>
      <example correction="25°&#8239;29′"><marker>25º 29 '</marker>.</example>
      <example correction="25°&#8239;29,1′"><marker>25 º 29,1'</marker>.</example>
      <example correction="25°&#8239;29′"><marker>25 º29'</marker>.</example>
      <example correction="25°&#8239;29′"><marker>25º29’</marker>  N.</example>
      <example>25° 29′</example>
    </rule>
    <rule>
      <regexp>\b([\d., ]*\d)\s*[”"'’′`]\s*([\d., ]*\d)\s*[”"'’′`]</regexp>
      <message>Utilice os símbolos de minutos e segundos.</message>
        <suggestion>\1′&#8239;\2″</suggestion>
      <example correction="29,1′&#8239;49″"><marker>29,1' 49"</marker>.</example>
      <example correction="29′&#8239;49″"><marker>29' 49 '</marker>.</example>
      <example correction="29,1′&#8239;49″"><marker>29,1' 49 "</marker>.</example>
      <example correction="29′&#8239;49″"><marker>29 ' 49'</marker>.</example>
      <example correction="29′&#8239;49″"><marker>29’49”</marker>  N.</example>
      <example>29′ 34″</example>
    </rule>
  </rulegroup>

    <rule id='LOOSE_ACCENTS' name="Acentos soltos">
    <!-- Based on Catalan grammar.xml, by Tiago F. Santos on 11-02-2017 -->
      <regexp>[`´]</regexp>
      <message>Caratere incorreto. Utilice antes o apóstrofe ou revise a acentuación.</message>
        <suggestion>’</suggestion>
        <suggestion/>
      <short>Caractere incorreto.</short>
      <example correction="’|">Non e<marker>´</marker> común encontrar erros deste tipo.</example>
    </rule>

    <rule id="DE_APOSTROPHE_SPACE" name="Tipografia: d' sem espazo">
    <!--  Created by Tiago F. Santos, 2017-10-06      -->
      <pattern>
          <token>d</token>
          <token spacebefore='no' regexp='yes'>['’]</token>
          <token spacebefore='yes'/>
      </pattern>
      <message>A contracción d' non debe ser separada por espazos.</message>
        <suggestion>\1\2\3</suggestion>
      <example correction="d'El">Aquí xace <marker>d' El</marker>-rei D.Sebastião.</example>
    </rule>

  <rulegroup id='PRIORITIZE_QUOTES' name="Prioritizar o tipo de comiñas: «“‘...’”»." default="off">
    <!--  Created by Tiago F. Santos, 2017-05-31      -->
    <rule>
      <pattern>
          <token skip='-1'>‘
            <exception scope="next">’</exception></token>
          <token regexp='yes'>[«“]</token>
      </pattern>
      <message>Utilice primeiro comiñas dobres.</message>
        <suggestion><match no='1' regexp_match='‘' regexp_replace='“' include_skipped='all'/> ‘</suggestion>
      <example correction="“Dixen que ‘"><marker>‘Dixen que “</marker>si”.</example>
      <example>“Dixen que ‘si’”.</example>
      <example>«Dixen que “si”».</example>
    </rule>
    <rule>
      <pattern>
          <token skip='-1' regexp='yes'>[”»]
            <exception regexp='yes' scope="next">[«“‘]</exception></token>
          <token>’</token>
      </pattern>
      <message>Utilice primeiro comiñas dobres.</message>
        <suggestion><match no='1' regexp_match='[”»]' regexp_replace='’' include_skipped='all'/>”</suggestion>
      <example correction="’.”">Dixen que “si<marker>”.’</marker></example>
      <example>“Dixen que ‘si’”.</example>
      <example>«Dixen que “si”».</example>
    </rule>
    <rule>
      <pattern>
          <token skip='-1'>“
            <exception scope="next">”</exception></token>
          <token>«</token>
      </pattern>
      <message>Utilice primeiro unha comiña baixa.</message>
        <suggestion><match no='1' regexp_match='“' regexp_replace='«' include_skipped='all'/> “</suggestion>
      <example correction="«Dixen que “"><marker>“Dixen que «</marker>si»”.</example>
      <example>“Dixen que ‘si’”.</example>
      <example>«Dixen que “si”».</example>
    </rule>
    <rule>
      <pattern>
          <token skip='-1'>»
            <exception regexp='yes' scope="next">[«“]</exception></token>
          <token>”</token>
      </pattern>
      <message>Utilice primeiro unha comiña baixa.</message>
        <suggestion><match no='1' regexp_match='»' regexp_replace='”' include_skipped='all'/>»</suggestion>
      <example correction="”»">“Dixen que «si<marker>»”</marker>.</example>
      <example>“Dixen que ‘si’”.</example>
      <example>«Dixen que “si”».</example>
    </rule>
  </rulegroup>

  <rulegroup id='UNPAIRED_BRACKET_SUGGESTIONS' name='Tipografia: Corrección de comiñas inteligentes repetidas'>
    <!-- Created by Tiago F. Santos, Portuguese rule, 2017-08-25 -->
    <rule>
      <pattern>
          <token skip='-1'>‘
            <exception scope="next">’</exception></token>
        <marker>
          <token>‘</token>
        </marker>
      </pattern>
      <message>Utilice unha comiña de fecho.</message>
        <suggestion>’</suggestion>
      <example correction="’">Dixen que ‘si<marker>‘</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token skip='-1'>“
            <exception scope="next">”</exception></token>
        <marker>
          <token>“</token>
        </marker>
      </pattern>
      <message>Utilice unha comiña de fecho.</message>
        <suggestion>”</suggestion>
      <example correction="”">Dixen que “si<marker>“</marker>.</example>
    </rule>
  </rulegroup>

    <!--     Typography rules from English grammar.xml      - START-->
    <!-- Localized and improved by Tiago F. Santos, Portuguese rule, 2016-10-27 -->
  <rulegroup id='TRADEMARK' name="Tipografia: Trademark - ™">
    <rule>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>\p{Lu}.*</token>
        <marker>
          <token>(</token>
          <token>TM</token>
          <token>)</token>
        </marker>
      </pattern>
      <message>Pretende dicir: <suggestion>™</suggestion>?</message>
      <short>Anotación non padronizada de ™</short>
      <example correction='™'>O novo produto é de Escolla Executiva<marker>(TM)</marker> Plus.</example>
    </rule>
    <rule id='SERVICEMARK' name="Tipografia: Servicemark - ℠">
      <pattern case_sensitive='yes'>
          <token regexp='yes'>\p{Lu}.*</token>
        <marker>
          <token>(</token>
          <token>SM</token>
          <token>)</token>
        </marker>
      </pattern>
      <message>Pretende dicir: <suggestion>℠</suggestion>?</message>
      <short>Anotación non padronizada de ℠</short>
      <example correction='℠'>O novo produto é de Escolla Executiva<marker>(SM)</marker> Plus.</example>
    </rule>
  </rulegroup>

    <rule id='R_SYMBOL' name="Tipografia: Marca Rexistrada - ®">
      <antipattern case_sensitive="yes">
        <marker>
          <token>(</token>
          <token>R</token>
          <token skip="-1">)</token>
        </marker>
          <token regexp="yes">[\p{Lu}^R]
            <exception scope="previous" negate="yes">(</exception></token>
          <token skip="-1">)</token>
      </antipattern>
      <antipattern case_sensitive="yes">
          <token>(</token>
          <token regexp="yes">[\p{Lu}^R]</token>
          <token skip="-1">)</token>
        <marker>
          <token>R
            <exception scope="previous" negate="yes">(</exception></token>
          <token skip="-1">)</token>
        </marker>
      </antipattern>
      <pattern case_sensitive='yes'>
          <token regexp='yes'>\p{Lu}.*</token>
        <marker>
          <token>(</token>
          <token>R</token>
          <token>)</token>
        </marker>
      </pattern>
      <message>Pretende dicir: <suggestion>®</suggestion>?</message>
      <short>Anotación non padronizada de ®</short>
      <example correction='®'>Windows <marker>(R)</marker></example>
      <example>Estes son Richard Burr (D) e Kay Hagan (R).</example>
    </rule>

    <rule id='COPYRIGHT' name="Tipografia: Copyright - ©" type="typographical">
      <antipattern>
          <token>(</token>
          <token>a</token>
          <token skip="-1">)</token>
          <token>b
            <exception scope="previous" negate="yes">(</exception></token>
          <token skip="-1">)</token>
        <marker>
          <token>c
            <exception scope="previous" negate="yes">(</exception></token>
          <token>)</token>
        </marker>
      </antipattern>
      <pattern>
        <marker>
          <token>(</token>
          <token>c</token>
          <token>)</token>
        </marker>
          <token regexp="yes">\d{4}|\p{Lu}\p{Ll}+</token>
      </pattern>
      <message>Esta anotación non é padronizada, utilice antes o símbolo: <suggestion>©</suggestion></message>
      <short>Anotación non padronizada de ©</short>
      <example correction="©">Copyright <marker>(C)</marker> Joanna Bator, 2012</example>
      <example correction="©">Copyright <marker>(C)</marker> 2010 O Estado da Gramática</example>
      <example>Isto é unha lista: (a) item, (b) 2 itens, (c) 2014 itens.</example>
    </rule>

  <rulegroup type="locale-violation" id='CURRENCY' name="Posición dos símbolos de moeda: '100£ (£100)">
    <rule>
      <pattern>
          <token regexp="yes">[\d\,\.]+[$£¥\u8371]</token>
      </pattern>
      <message>O símbolo desta divisa é por norma colocado antes do valor: <suggestion><match no="1" regexp_match="([\d\,\.]+)([$€£¥\u8371])" regexp_replace="$2$1"/></suggestion>.</message>
      <short>Coloque a divisa no inicio</short>
      <example correction="£100">Debe <marker>100£</marker>.</example>
      <example correction="£100.00">Debe <marker>100.00£</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">[\d\,\.]+</token>
          <token regexp="yes">[$£¥\u8371]</token>
      </pattern>
      <message>O símbolo desta divisa é por norma colocado antes do valor: <suggestion>\2\1</suggestion>.</message>
      <short>Coloque a divisa no inicio</short>
      <example correction="£100">Debe <marker>100 £</marker>.</example>
      <example correction="£100.00">Debe <marker>100.00 £</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">[€\u8371]</token>
          <token regexp="yes">\d+(?:[\,\.]\d+)?</token>
      </pattern>
      <message>O símbolos de euro é colocado despois do valor: <suggestion>\2 \1</suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Euro</url>
      <short>Coloque a divisa no fin</short>
      <example correction="100 €">Debe <marker>€ 100</marker>.</example>
      <example correction="100,00 €">Debe <marker>€ 100,00</marker>.</example>
    </rule>
  </rulegroup>

    <rule type="whitespace" id='CURRENCY_SPACE' name="Símbolos monetários sem espazo en branco: '$ 100' ($100)">
      <pattern>
          <token regexp="yes">[$£¥\u8371]</token>
          <token regexp="yes" spacebefore="yes">\d+(?:[\,\.]\d+)?</token>
      </pattern>
      <message>Os símbolos monetarios internacionais non son separados por un espazo: <suggestion>\1\2</suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Euro</url>
      <short>Remover espazo</short>
      <example correction="$100">Débese <marker>$ 100</marker>.</example>
    </rule>

    <rule type="whitespace" id='CURRENCY_SPACE_2' name="Espazo en branco antes de símbolos monetários: '100,00€' (100,00 €)">
      <pattern>
          <token regexp="yes">\d+(?:[\,\.]\d+)?[€]</token>
      </pattern>
      <message>Os símbolos monetarios do euro (€) son separados por un espazo<suggestion><match no="1" regexp_match="(\d+)([€\u8371])" regexp_replace="$1 $2"/></suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Euro</url>
      <short>Erro tipográfico</short>
      <example correction="100 €">Débese <marker>100€</marker>.</example>
    </rule>

  <rulegroup id='SMART_QUOTES' name="Comiñas inteligentes (“”)">
    <rule>
      <pattern>
          <token postag="``"/>
      </pattern>
      <message>Utilice aquí comiñas intelixentes: <suggestion>“</suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Comiñas</url>
      <short>Utilice comiñas intelixentes</short>
      <example correction="“">Isto é un (<marker>&quot;</marker>proba&quot;).</example>
      <example correction="“"><marker>&quot;</marker>Proba&quot;!</example>
      <example>“Proba”!</example>
      <example correction="“">Isto é outra proba <marker>&quot;</marker>proba&quot;.</example>
    </rule>
    <rule>
      <antipattern> <!-- não embelezar polegadas -->
          <token postag_regexp="yes" postag="''|SENT_START" skip="-1">
            <exception scope="next" postag="``"/></token>
          <token regexp="yes">\d{1,2}</token>
          <token regexp='yes' min='0' spacebefore='no'>[-\.]</token>
          <token regexp='yes' min='0' spacebefore='no'>\d{1,2}</token>
        <marker><token postag="''"/></marker>
      </antipattern>
      <pattern>
          <token postag="''"/>
      </pattern>
      <message>Utilice unha comiña de fecho aquí: <suggestion>”</suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Comiñas</url>
      <short>Utilice comiñas intelixentes</short>
      <example correction="”">Isto é unha proba (&quot;proba<marker>&quot;</marker>)</example>
      <example correction="”">Use as comiñas &quot;aquí<marker>&quot;</marker> para dicir algo.</example>
      <example correction="”">Isto é outra proba &quot;proba<marker>&quot;</marker>.</example>
      <example correction="”">Achilles falou na canción &quot;57821<marker>&quot;</marker>, de Janelle Monáe ft.</example>
      <example>“Proba”!</example>
    <!-- FIXME Clash with paired pontuation. Re-enable when fixed. -->
      <example>Os assentos da classe económica tem uma profundidade de 31-33&quot;</example>
      <example correction="”">O xogador de fútbol apelidado do &quot;Animal<marker>&quot;</marker></example>
    </rule>
    <rule>
      <pattern>
          <token>`</token>
          <token spacebefore="no">`</token>
      </pattern>
      <message>Utilice unha comiñas intelixente de abertura aquí: <suggestion>“</suggestion>.</message>
      <url>https://gl.wikipedia.org/wiki/Comiñas</url>
      <short>Utilice comiñas intelixentes</short>
      <example correction="“"><marker>``</marker>Proba”.</example>
    </rule>
    <rule>
      <pattern>
          <token>„</token>
      </pattern>
      <message>Abertura de comiñas posibelmente errada: <suggestion>“</suggestion>.</message>
      <url>https://en.wikipedia.org/wiki/„</url>
      <example correction="“"><marker>„</marker>Proba”.</example>
    </rule>
  </rulegroup>

    <rule id='ELLIPSIS' name="Reticências inteligentes (…)">
      <antipattern>
          <token>.</token>
          <token>.</token>
          <token>.</token>
          <token>.</token>
          <token>.</token>
      </antipattern>
      <pattern>
          <token>.</token>
          <token>.</token>
          <token>.</token>
      </pattern>
      <message>Utilice o caractér tipográfico de reticências en vez de: <suggestion>…</suggestion>.</message>
      <example correction="…">Isto é importante <marker>. . .</marker> tanto canto sei.</example>
      <example>Isto é importante – tanto canto sei.</example>
      <example correction="…">Isto é importante<marker>...</marker> tanto canto sei.</example>
      <example>1. Introdución .................................... 3</example>
    </rule>

  <rulegroup id='TIME_FORMAT' name="Tipografia de horas: 22.30 h -> 22:30h">
    <!-- Localized from Catalan, by Tiago F. Santos, 2017-05-15 -->
      <url>https://ciberduvidas.iscte-iul.pt/artigos/rúbricas/idioma/sóbrea-escrita-dos-numeros-das-horas-e-de-outras-representacoes/3267</url>
      <short>Preferencia tipográfica</short>
    <rule>
      <pattern>
          <token regexp="yes">[012]?\d[,\.][012345]\d[,\.][012345]\d([,.]\d+)?</token>
      </pattern>
      <message>En expresións de horas, utilice dous puntos.</message>
        <suggestion><match no='1' regexp_match='(\d+)[,\.](\d+)[,\.](.+)' regexp_replace='$1:$2:$3'/></suggestion>
        <suggestion><match no='1' regexp_match='(\d+)[,\.](\d+)[,\.](.+)' regexp_replace='$1&#160;h&#160;$2&#160;min&#160;$3&#160;s'/></suggestion>
      <example correction="10:00:43|10&#160;h&#160;00&#160;min&#160;43&#160;s">Ás <marker>10.00.43</marker>.</example>
      <example correction="10:00:43,5|10&#160;h&#160;00&#160;min&#160;43,5&#160;s">Ás <marker>10.00.43,5</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes">[012]?\d[,\.][012345]\d</token>
          <token regexp="yes">h|horas|hrs|hs|hora</token>
      </pattern>
      <message>En expresións de horas, utilice dous puntos.</message>
        <suggestion><match no='1' regexp_match='(\d+)[,\.](\d+)' regexp_replace='$1:$2'/>&#160;\4</suggestion>
      <example correction="22:50&#160;h">Ás <marker>22.50 h</marker>.</example>
      <example correction="6:05&#160;h">Ás <marker>6,05 h</marker>.</example>
      <example>Ás 22:30 h.</example>
      <example>A subida demora 8, 10 hores.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp='yes'>ás?|das?</token>
          <token regexp="yes">[012]?\d[,\.][012345]\d</token>
      </pattern>
      <message>En expresións de horas, utilice dous puntos.</message>
        <suggestion>\1 <match no='2' regexp_match='(\d+)[,\.](\d+)' regexp_replace='$1:$2'/></suggestion>
      <example correction="Ás 10:00"><marker>Ás 10.00</marker>.</example>
      <example correction="Da 01:00"><marker>Da 01.00</marker> a as… </example>
      <example correction="ás 10:50">Das 10:00 <marker>ás 10.50</marker>.</example>
    </rule>
    <rule>
      <pattern>
          <token regexp="yes" skip="2">[012]?\d[,\.][012345]\d</token>
          <token regexp="yes" inflected="yes">&partes_do_dia;</token>
      </pattern>
      <message>En expresións de horas, utilice dous puntos.</message>
        <suggestion><match no='1' include_skipped='all' regexp_match='(\d+)[,\.](\d+)' regexp_replace='$1:$2'/> <match no='2' include_skipped='all'/></suggestion>
      <example correction="5:00 da mañá">Ás <marker>5.00 da mañá</marker>.</example>
      <example correction="6:05 da tarde">Ás <marker>6.05 da tarde</marker>.</example>
      <example correction="6:05 da noite">Ás <marker>6.05 da noite</marker>.</example>
      <example>Ás 22:30 h.</example>
    </rule>
  </rulegroup>

    <rule id='APOSTROPHE_IN_DATES' name="Apóstrofe en datas">
      <pattern>
          <token spacebefore="yes" regexp='yes'>(?::?[1-2]\d)?\d0
            <exception regexp='yes'>2[1-9]\d0</exception></token>
          <token regexp="yes">['’]</token>
          <token>s</token>
      </pattern>
      <message>Apostrofes non son necesarios en décadas: <suggestion><match no="1"/><match no="3"/></suggestion>.</message>
      <url>http://@www.monash.edu/about/editorialstyle/editing/apostrophes</url>
      <short>Apóstrofe desnecessário</short>
      <example correction='1970s'>O Diácono Remedios preguntou onde estabas nos <marker>1970's</marker>.</example>
      <example correction='70s'>O Diácono Remedios preguntou onde estabas nos <marker>70's</marker>.</example>
      <example correction='1990s'>Onde estabas nos <marker>1990’s</marker>?</example>
      <example>Discos de travões da <marker>Alvis 12/70</marker> adaptados a jantes máis largas.</example>
    </rule>
    <!-- Localized by Tiago F. Santos, Portuguese rule, 2016-10-27 -->
    <!-- Localization of rules from the English grammar.xml - END  -->

  <rulegroup id='SPACE_AFTER_PUNCTUATION' name='Espazos após pontuación'>
    <!--   Created by Tiago F. Santos, Portuguese rule, 2017-01-01 -->
    <rule>
      <antipattern>
          <token regexp='yes'>[.]</token>
          <token regexp='yes'>[.]</token>
          <token regexp='yes'>[.]</token>
          <token regexp='yes'>[.]</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp='yes'>[.]</token>
          <token regexp='yes'>[.]</token>
          <token regexp='yes'>[.]</token>
        </marker>
          <token spacebefore='no'>
            <exception regexp="yes">[,;:!?…”»()\[\]&#8210;&#8211;&#8212;&#8213;\-]</exception>
            <exception postag='SENT_END'/></token>
      </pattern>
      <message>Coloque un espazo despois das reticencias</message>
        <suggestion>… </suggestion>
      <example correction='… '>Cole aquí o seu texto<marker>...</marker>ou verifique este texto.</example>
      <example correction='… '><marker>...</marker>e os votos de Bo Ano Novo.</example>
      <example>Cole aquí o seu texto<marker>...</marker></example>
    </rule>
    <rule>
      <pattern>
        <marker>
          <token regexp='yes'>…
            <exception postag='SENT_END'/></token>
        </marker>
          <token spacebefore='no'>
            <exception regexp="yes">[,;:!?…”»()\[\]&#8210;&#8211;&#8212;&#8213;\-&quot;“]</exception>
            <exception postag='SENT_END'/></token>
      </pattern>
      <message>Coloque un espazo despois das reticencias</message>
        <suggestion>… </suggestion>
      <example correction='… '>Cole aquí o seu texto<marker>…</marker>ou verifique este texto.</example>
      <example correction='… '><marker>…</marker>e os votos de Bo Ano Novo.</example>
      <example>Cole aquí o seu texto<marker>…</marker></example>
      <example>Alén diso<marker>…</marker> </example>
    </rule>
  </rulegroup>

  <rulegroup id="SPACE_BEFORE_PUNCTUATION" name="Espazos antes da pontuación">
    <!-- Based on German grammar.xml, by Tiago F. Santos, 2017-07-08 -->
    <rule>
      <regexp>\b([\p{L}\d]+) ([!?»”’,….])</regexp>
      <message>Remova o espazo antes deste sinal de puntuación.</message>
        <suggestion>\1\2</suggestion>
      <example correction="escapou!">Como isto me <marker>escapou !</marker></example>
    <!--example correction="escapou!">Como é que isto me <marker>escapou   !</marker></example-->
      <example correction="roda.">Existen dúas estratexias posíbeis: aproveitar o que existe ou reinventar a <marker>roda .</marker></example>
    </rule>
    <rule>
      <regexp>\b([\p{L}\d]+) ([:;])(?!-?[()/])</regexp>
      <message>Remova o espazo antes deste sinal de puntuación.</message>
        <suggestion>\1\2</suggestion>
      <example correction="posíbeis:">Existen dúas estratexias <marker>posíbeis :</marker> aproveitar o que existe ou reinventar a roda.</example>
      <example>Un sorriso :-)</example>
      <example>Un sorriso :)</example>
      <example>Un sorriso :(</example>
      <example>Un sorriso :-/</example>
      <example>Un sorriso :/</example>
    </rule>
  </rulegroup>

    <rule id="SEMICOLON_AND_QUOTES" name="Ponto e vírgula antes de comiñas">
    <!-- Localized from German grammar.xml by Tiago F. Santos,  2017-08-17      -->
      <antipattern>
          <token regexp="yes">„|“|»|«|"</token>
          <token>;</token>
          <token regexp="yes">»|«|"|”|‘|‹|›|'>
          </token>
      </antipattern>
      <pattern>
        <marker>
          <token>;</token>
          <token spacebefore="no" regexp="yes">“|»|«|"|”|‘|‹|›|'</token>
        </marker>
          <token spacebefore="yes"/>
      </pattern>
      <message>Xeralmente, non se coloca punto e vírgula antes de comiñas.</message>
      <example type="incorrect">“Non me incomode con súa tagarelice infantil<marker>;”</marker> dixen Maria; “eu escribo versos inmortais.”</example>
    </rule>

  <rulegroup id="PARENTESESE_AND_QUOTES_SPACING" name="Espaçamento en volta de comiñas ou paréntesis">
    <!-- Localized from German grammar.xml by Tiago F. Santos,  2017-08-17      -->
    <rule>
      <antipattern>
          <token>,</token>
          <token spacebefore="no" regexp="yes">»|«|"</token>
      </antipattern>
      <antipattern>
          <token regexp="yes">„|»|«|"|\(|\{</token>
          <token regexp="yes">:|,|;</token>
          <token regexp="yes">“|»|«|"|\)|\}</token>
      </antipattern>
      <pattern>
        <or>
          <token postag="SENT_START"/>
          <token regexp="yes">:|,|;</token>
        </or>
        <marker>
          <token regexp="yes">„|“|«|"|\(|\{</token>
          <token spacebefore="yes"/>
        </marker>
      </pattern>
      <message>Espaçamento incorreto.</message>
        <suggestion>\2\3</suggestion>
      <example correction="«O"><marker>« O</marker> xardín é verdadeiramente bonito», dixo ela.</example>
      <example correction="«O">Ela dixo: <marker>« O</marker> xardín é verdadeiramente bonito.»</example>
      <example correction="«é">«O xardín», dixo ela, <marker>« é</marker> verdadeiramente bonito.»</example>
      <example>A galiña di "Quiquiriquiqui" o porco di "Oinque, Oinque," o pato di "Quá, Quá" e di que o gato "Miau".</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>&abreviaturas;|ex</token>
          <token spacebefore='no'>.</token>
          <token regexp="yes">“|»|«|"|\)|\}</token>
      </antipattern>
      <antipattern>
          <token regexp="yes">[a-z]</token>
          <token>.</token>
          <token regexp="yes">“|»|«|"|\)|\}</token>
      </antipattern>
      <antipattern>
          <token regexp="yes">„|»|«|"|\(|\{</token>
          <token regexp="yes">\.|\?|!</token>
          <token regexp="yes">“|»|«|"|\)|\}</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp="yes">\.|\?|!</token>
          <token spacebefore="yes" regexp="yes">“|»|«|"|\)|\}</token>
        </marker>
      </pattern>
      <message>Espaçamento incorreto.</message>
        <suggestion>\1\2</suggestion>
      <example correction=".»">«O xardín é verdadeiramente bonito<marker>. »</marker></example>
      <example correction=".»">«O xardín», dixo el, «xardín é verdadeiramente bonito<marker>. »</marker></example>
      <example>Algunhas palabras inglesas teñen dúas grafias, p.ex. "gray" e "grey".</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp="yes">„|»|«|"|\(|\{</token>
          <token>,</token>
          <token regexp="yes">“|»|«|"|\)|\}</token>
      </antipattern>
      <pattern>
        <marker>
          <token/>
          <token spacebefore="yes" regexp="yes">“|»|«|"|\)|\}</token>
        </marker>
          <token>,</token>
      </pattern>
      <message>Espaçamento incorreto.</message>
        <suggestion>\1\2</suggestion>
      <example correction="bonito»">«O xardín é verdadeiramente <marker>bonito »</marker>, dixo ela.</example>
    </rule>
    <rule>
      <pattern>
          <token spacebefore="yes" regexp="yes">“|‚|\(|\{</token>
          <token spacebefore="yes"/>
      </pattern>
      <message>Espaçamento incorreto.</message>
        <suggestion>\1\2</suggestion>
      <example correction="“O">Ela dixo: <marker>“ O</marker> xardín é verdadeiramente bonito.”</example>
    </rule>
    <rule>
      <pattern>
          <token/>
          <token spacebefore="yes" regexp="yes">»|«|"|“|”|‹|›|‘|’|'</token>
          <token spacebefore="yes"/>
      </pattern>
      <message>Un dos espazos é desnecessário. Debe excluílo.</message>
        <suggestion>\1\2 \3</suggestion>
        <suggestion>\1 \2\3</suggestion>
      <example correction="é' verdadeiramente|é 'verdadeiramente">O xardín <marker>é ' verdadeiramente</marker>' bonito.</example>
    </rule>
  </rulegroup>

    <rule id="SEMICOLON_COLON_SPACING" name="Espazos en falta: ':' e ';'">
    <!-- Localized from German grammar.xml by Tiago F. Santos,  2017-08-17      -->
      <antipattern>
          <token regexp="yes">“|«|"|\(</token>
          <token regexp="yes">:|;</token>
          <token regexp="yes">”|»|"|\)</token>
      </antipattern>
      <antipattern><!-- XXX Wikipedia lists and time formats -->
          <token>:</token>
          <token spacebefore="no"/>
          <token spacebefore="no">:</token>
      </antipattern>
      <antipattern>
          <token regexp="yes">&codigos_de_pais;</token>
          <token spacebefore="no">:</token>
      </antipattern>
      <antipattern>
          <token>;</token>
          <token regexp="yes">“|»|«|"|”</token>
          <token spacebefore="yes"/>
      </antipattern>
      <antipattern>
          <token regexp="yes">.*[0-9]</token>
          <token>:</token>
          <token regexp="yes">[0-9].*</token>
      </antipattern>
      <antipattern>
    <!-- smiley -->
          <token regexp="yes">[:;]</token>
          <token spacebefore="no">-</token>
          <token spacebefore="no" regexp="yes">[()]</token>
      </antipattern>
      <pattern>
        <marker>
          <token regexp="yes">:|;</token>
          <token spacebefore="no">
            <exception postag="SENT_END"/></token>
        </marker>
      </pattern>
      <message>Deve colocar um espazo após '\1'.</message>
        <suggestion>\1 \2</suggestion>
      <example correction=": «">Ele dixo<marker>:«</marker>O xardín é verdadeiramente bonito.»</example>
      <example>A cea estará pronto ás 18:30.</example>
    </rule>

 </category>

 <category id="CAT1" name="Gramática::Verbo">

    <rule id="IR_A_INF" name="ir máis infinitivo">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">ir</token>
          <token>a</token>
          <token postag="(VMN0000|VSN0000).*" postag_regexp="yes"/>
      </pattern>
      <message>A perífrase formada polo verbo &quot;ir&quot; máis un infinitivo constrúese en galego sen preposición: <suggestion>\1 \3</suggestion></message>
      <example correction="Vou saltar"><marker>Vou a saltar</marker> con ela.</example>
    </rule>

    <!-- FIXME it offers VéN as correction when source is uppercase: VEN -->
    <!-- FIXME false positive when "ven" is imperative -->
  <rulegroup id="VEN_VEN" name="vén vs. ven">
    <rule name="vén + xerundio (vén brincando)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token regexp="yes">ven|ves</token>
        </marker>
          <token postag="VMN.*|VSN.*|VMP.*|VSP.*|VMG.*|VSG.*" postag_regexp="yes"/>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; seguida dunha forma non temporal adoita ser do verbo &quot;vir&quot; e, polo tanto, leva til diacrítico para diferenciala da forma homónima do verbo &quot;ver&quot;. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)e" regexp_replace="é"/></suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="vén">O neno <marker>ven</marker> saltando polo camiño.</example>
    </rule>

    <rule name="vén de + infinitivo (vén de adquirir)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>ven</token>
        </marker>
          <token>de</token>
          <token postag="(VMN0000|VSN0000).*" postag_regexp="yes"/>
      </pattern>
      <message>A forma &quot;<match no="1"/>&quot; seguida de infinitivo adoita ser do verbo &quot;vir&quot; e, polo tanto, leva til diacrítico para diferenciala da forma homónima do verbo &quot;ver&quot;. Quería vostede dicir <suggestion>vén</suggestion>?</message>
      <short>Cando é do verbo vir, &quot;ven&quot; leva til</short>
      <example correction="vén">A caixa <marker>ven</marker> de sanear a carteira de créditos.</example>
    </rule>
  </rulegroup>

    <!-- FIXME: cómpre + secuencia de advs + inf: cómpre ademais agora non ignorar as provocacións -->
  <rulegroup id="COMPRE" name="cómpre vs. compre">
    <!-- compre + VINF (cómpre ignorar a provocación) -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>compre</token>
        </marker>
          <token postag="(VMN0000|VSN0000).*" postag_regexp="yes"/>
      </pattern>
      <message>A forma 'compre', cando é do verbo &quot;cumprir&quot; (ser necesario), leva til para distinguila do verbo 'comprar'. Quería vostede dicir <suggestion>cómpre</suggestion>?</message>
      <example correction="cómpre">Agora <marker>compre</marker> analizar o proceso de constitución das listas.</example>
    </rule>
    <!-- compre + adverbio + VINF (cómpre agora ignorar a provocación) -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>compre</token>
        </marker>
          <token postag="RG|RN" postag_regexp="yes"/>
          <token postag="(VMN0000|VSN0000).*" postag_regexp="yes"/>
      </pattern>
      <message>A forma 'compre', cando é do verbo &quot;cumprir&quot; (ser necesario), leva til para distinguila do verbo 'comprar'. Quería vostede dicir <suggestion>cómpre</suggestion>?</message>
      <example correction="Cómpre"><marker>Compre</marker> agora analizar o proceso de constitución das listas.</example>
    </rule>
    <!-- compre + que -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>compre</token>
        </marker>
          <token>que</token>
      </pattern>
      <message>A forma 'compre', cando é do verbo &quot;cumprir&quot; (ser necesario), leva til para distinguila do verbo 'comprar'. Quería vostede dicir <suggestion>cómpre</suggestion>?</message>
      <example correction="Cómpre"><marker>Compre</marker> que a arquitectura das Nacións Unidas se axuste a ese concepto.</example>
    </rule>
  </rulegroup>

  <rulegroup id="CLITICOS" name="posición dos clíticos">
    <rule name="volo dixen (díxenvolo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SENT_START"/>
          <token postag="PP......:PP......" postag_regexp="yes"/>
          <token postag="V.*" postag_regexp="yes"/>
      </pattern>
      <message>Os pronomes clíticos non poden ir en galego no inicio da oración. Por favor, empregue o verbo seguido do pronome (por exemplo: 'díxenvolo' no canto de 'volo dixen').</message>
      <short>O pronome debe ir posposto ao verbo</short>
      <example correction=""><marker>Volo dixen</marker> e non me quixestes facer caso.</example>
      <example><marker>Díxenvolo</marker> e non me quixestes facer caso.</example>
    </rule>
  </rulegroup>

  <rulegroup id="REFLEXIVOS" name="cásome, me caso (caso)">
    <!--enclíticos-->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes" postag="V...1S.:PP1.S.*" postag_regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion><match no="1" postag="(.*):.*" postag_regexp="yes" postag_replace="$1"/></suggestion>?</message>
      <example correction="marchei">Finalmente <marker>marcheime</marker> con Alberte.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes" postag="V...2S.:PP2.S.*" postag_regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion><match no="1" postag="(.*):.*" postag_regexp="yes" postag_replace="$1"/></suggestion>?</message>
      <example correction="marchas">Finalmente <marker>márchaste</marker> con Alberte?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes" postag="V...3[SP].:PP3.N.*" postag_regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion><match no="1" postag="(.*):.*" postag_regexp="yes" postag_replace="$1"/></suggestion>?</message>
      <example correction="marchou">Finalmente <marker>marchouse</marker> con Alberte.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes" postag="V...1P.:PP1.P.*" postag_regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion><match no="1" postag="(.*):.*" postag_regexp="yes" postag_replace="$1"/></suggestion>?</message>
      <example correction="marchamos">Finalmente <marker>marchámonos</marker> con Alberte.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes" postag="V...2P.:PP2.P.*" postag_regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion><match no="1" postag="(.*):.*" postag_regexp="yes" postag_replace="$1"/></suggestion>?</message>
      <example correction="marchades">Finalmente <marker>marchádesvos</marker> con Alberte.</example>
    </rule>
    <!--proclíticos-->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <unify>
            <feature id="person">
                            <type id="first"/>
                            <type id="second"/>
                            <type id="third"/>
            </feature>
            <feature id="number">
                            <type id="singular"/>
                            <type id="plural"/>
            </feature>
          <token regexp="yes">me|te|se|nos|vos</token>
          <token inflected="yes" regexp="yes">casar|morrer|acougar|adormecer|agrelar|acedar|murchar|merar|espertar|quedar|marchar|calar|caer</token>
          </unify>
      </pattern>
      <message>Algúns verbos en galego non admiten nunca construcións reflexivas. Quería vostede dicir <suggestion>\2</suggestion>?</message>
      <example correction="caso">Finalmente non <marker>me caso</marker> con Alberte.</example>
      <example>Finalmente non <marker>caso</marker> con Alberte.</example>
    </rule>
  </rulegroup>

    <rule id="PRON_NOS" name="nos cantamos (nós cantamos)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token postag="SENT_START"/>
          <token>nos</token>
        </marker>
          <token postag="V...1P.*" postag_regexp="yes">
            <exception negate_pos="yes" postag="V.*" postag_regexp="yes"/>
          </token>
      </pattern>
      <message>A forma 'nos' ao comezo da oración e seguida por un verbo adoita ser un pronome suxeito e leva til. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)o" regexp_replace="ó"/></suggestion>?</message>
      <short>Acentuación de pronomes suxeito</short>
      <example correction="Nós"><marker>Nos</marker> cremos que a lingua é un tesouro.</example>
    </rule>
    <rule id="PRON_VOS" name="vos cantades (vós cantades)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token postag="SENT_START"/>
          <token>vos</token>
        </marker>
          <token postag="V...2P.*" postag_regexp="yes">
            <exception negate_pos="yes" postag="V...2P.*" postag_regexp="yes"/>
          </token>
      </pattern>
      <message>A forma 'vos' ao comezo da oración e seguida por un verbo adoita ser un pronome suxeito e leva til. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)o" regexp_replace="ó"/></suggestion>?</message>
      <short>Acentuación de pronomes suxeito</short>
      <example correction="Vós"><marker>Vos</marker> sabedes o que come?</example>
    </rule>

  <rulegroup id="REXIME_VERBAL" name="construción verbal">
    <!-- Verbs with pattern: SUBJanim Verb PP(que).
               SUBJ must be animate/human, otherwise the subordinate could act as subject (and
               it would be a false positive:
               Ex. 'o asunto influíu en que un poida mudar de opinión'
                   'inflúe que ti esteas presente'
            -->
    <!-- V + de + que: informar -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">
            <exception negate_pos="yes" postag="V.*" postag_regexp="yes"/>informar</token>
          <token>que</token>
      </pattern>
      <message>O verbo '\1' constrúese normalmente coa preposición 'de'. Quería vostede dicir <suggestion>\1 de \2</suggestion>?</message>
      <example correction="informaron de que">Os servizos de emerxencia <marker>informaron que</marker> habería fortes ventos na costa.</example>
    </rule>
    <!-- V + en + que: insistir, confiar -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes" regexp="yes">insistir|confiar</token>
          <token>que</token>
      </pattern>
      <message>O verbo '\1' constrúese normalmente coa preposición 'en'. Quería vostede dicir <suggestion>\1 en \2</suggestion>?</message>
      <example correction="insistiron en que">Os servizos de emerxencia <marker>insistiron que</marker> habería fortes ventos na costa.</example>
      <example correction="Confío en que"><marker>Confío que</marker> actuarán de xeito consecuente.</example>
    </rule>
  </rulegroup>

 </category>


 <category id="CAT2" name="Gramática::Outros">

  <rulegroup id="FORA_FORA" name="fóra vs. fora">
    <rule name="preposición + fóra (de fóra)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SPS00"/>
        <marker>
          <token>fora</token>
        </marker>
      </pattern>
      <message>A palabra '\2' semella corresponderse neste contexto co adverbio 'fóra', que leva til para diferenciarse das formas dos verbos 'ser' ou 'ir'. Quería vostede dicir <suggestion>fóra</suggestion>?</message>
      <example correction="fóra">O novo profesor é de <marker>fora</marker>.</example>
    </rule>
    <!-- cando os deixaran fora terrible
    <rule>
    < Created by Susana Sotelo Docío >
      <pattern mark_from="1">
          <token postag="V[SM][SMI]...." postag_regexp="yes">
            <exception postag="V[SM][SMI]...." postag_regexp="yes" negate_pos="yes"/></token>
          <token>fora</token>
      </pattern>
      <example type="incorrect">Deixaron <marker>fora</marker> aos do segundo curso.</example>
      <example>Deixaron <marker>fóra</marker> aos do segundo curso.</example>
    </rule>
            -->
  </rulegroup>

    <rule id="QUENES" name="quenes (quen)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>quenes</token>
      </pattern>
      <message>En galego o pronome 'quen' carece de plural. Empregue mellor <suggestion>quen</suggestion> ou <suggestion>os que</suggestion> segundo o contexto.</message>
      <example correction="quen|os que">Non saben <marker>quenes</marker> son os encargados.</example>
      <example>Non saben <marker>quen</marker> son os encargados.</example>
      <example correction="quen|os que">Seguramente <marker>quenes</marker> máis protestan serán os que máis se beneficien.</example>
      <example>Seguramente <marker>os que</marker> máis protestan serán os que máis se beneficien.</example>
    </rule>

  <rulegroup id="GRAN" name="gran día" default="off">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>grande</token>
        </marker>
          <token postag="NC.S000" postag_regexp="yes">
            <exception regexp="yes">[aeiouáéíóú].*</exception>
          </token>
      </pattern>
      <message>O adxectivo &quot;grande&quot; vai apocopado cando precede a un substantivo (agás cando este comeza por vogal). Quería vostede dicir <suggestion>gran</suggestion>?</message>
      <example correction="gran">Resultou ser un <marker>grande</marker> curso.</example>
      <example>Resultou ser un <marker>gran</marker> curso.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>gran</token>
        </marker>
          <token postag="NC.S000" postag_regexp="yes" regexp="yes">^[aeiouáéíóú].*</token>
      </pattern>
      <message>O adxectivo &quot;grande&quot; non vai nunca apocopado cando precede a un substantivo que comeza por vogal. Quería vostede dicir <suggestion>grande</suggestion>?</message>
      <example correction="grande">Resultou ser un <marker>gran</marker> amigo.</example>
      <example>Resultou ser un <marker>grande</marker> amigo.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>malo</token>
        </marker>
          <token postag="NCMS000"/>
      </pattern>
      <message>O adxectivo &quot;malo&quot; vai apocopado cando precede a un substantivo masculino singular. Quería vostede dicir <suggestion>mal</suggestion>?</message>
      <example correction="mal">Resultou ser un <marker>malo</marker> ano.</example>
      <example>Resultou ser un <marker>mal</marker> ano.</example>
    </rule>
    <!-- FIXME: que pasa se comeza por h- // FIXME: santo cristo/san cristo -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>san</token>
        </marker>
          <token regexp="yes">^[aeiouáéíóú].*</token>
      </pattern>
      <message>O adxectivo &quot;santo&quot; non vai apocopado cando precede a palabras que comezan por vogal. Quería vostede dicir <suggestion>santo</suggestion>?</message>
      <example correction="santo">Foi á romaría de <marker>san</marker> Andrés.</example>
      <example>Foi á romaría de <marker>santo</marker> Andrés.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>santo</token>
        </marker>
          <token regexp="yes" negate="yes">^[aeiouáéíóú].*</token>
      </pattern>
      <message>O adxectivo &quot;santo&quot; vai apocopado cando precede a palabras que comezan por consoante. Quería vostede dicir <suggestion>san</suggestion>?</message>
      <example correction="san">Foi á romaría de <marker>santo</marker> Domingo.</example>
      <example>Foi á romaría de <marker>san</marker> Domingo.</example>
    </rule>
  </rulegroup>

  <rulegroup id="CARA" name="cara a">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern case_sensitive="yes">
        <marker>
          <token>cara
            <exception scope="previous" postag="D.*" postag_regexp="yes"/></token>
        </marker>
          <token regexp="yes">[A-ZÁÉÍÓÚ][a-záéíóúüñ].*</token>
      </pattern>
      <message>A preposición 'cara' vai seguida de 'a' en galego diante dun nome propio. Quería vostede dicir <suggestion><match no="1"/> a</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="cara a">A estrada <marker>cara</marker> Noia.</example>
    </rule>

    <!-- *cara un/algún/ningún/... -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>cara
            <exception scope="previous" postag="D.*" postag_regexp="yes"/></token>
        </marker>
          <token postag="D[ID].*" postag_regexp="yes"/>
      </pattern>
      <message>A preposición 'cara' vai seguida de 'a' en galego. Quería vostede dicir <suggestion><match no="1"/> a</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="Cara a"> <marker>Cara</marker> un novo modelo.</example>
    </rule>

    <!-- *cara + adxectivo/substantivo plural -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>cara
            <exception scope="previous" postag="D.*" postag_regexp="yes"/></token>
        </marker>
          <token postag="A...P.|NC.P..." postag_regexp="yes"/>
      </pattern>
      <message>A preposición 'cara' vai seguida de 'a' en galego. Quería vostede dicir <suggestion><match no="1"/> a</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="Cara a"> <marker>Cara</marker> novos retos.</example>
    </rule>

    <!-- *cara a/as ... -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>cara
            <exception scope="previous" postag="D.*" postag_regexp="yes"/>
            <exception scope="previous">de</exception></token>
        </marker>
          <token regexp="yes">a|as</token>
          <token postag="A...S.|NC.S..." postag_regexp="yes"/>
      </pattern>
      <message>A preposición 'cara' vai seguida de 'a' en galego. Quería vostede dicir <suggestion><match no="1"/> <match no="2" regexp_match="[aA]" regexp_replace="á"/></suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="Cara á"> <marker>Cara</marker> a nova fase.</example>
      <example> <marker>Cara á</marker> nova fase.</example>
    </rule>

    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token>cara
            <exception scope="previous" postag="D.*" postag_regexp="yes"/></token>
        </marker>
          <token regexp="yes">o|os</token>
          <token postag="A.....|NC....." postag_regexp="yes"/>
      </pattern>
      <message>A preposición 'cara' vai seguida de 'a' en galego. Quería vostede dicir <suggestion>\1 a\2</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="cara aos">Os independentistas escoceses miran <marker>cara</marker> os liberais para formar goberno.</example>
      <example>Os independentistas escoceses miran <marker>cara aos</marker> liberais para formar goberno.</example>
    </rule>
  </rulegroup>

  <rulegroup id="ATA_ATE" name="ata á (ata a)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">até|ata</token>
          <token regexp="yes">aos?|ós?|ás?</token>
      </pattern>
      <message>A preposición '\1' non vai seguida da preposición 'a'. Quería vostede dicir <suggestion>\1 <match no="2" postag="SPS00:(.*)" postag_replace="$1">o</match></suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="até a">Xogaron tamén un papel importante <marker>até á</marker> conquista romana.</example>
    </rule>
  </rulegroup>

    <!-- IMPROVE: se non hai un verbo precedendo aos interrogativos o máis probable é que sexa interr. directa
                      aínda que non vaia en SENT_START ou precedida de ¿.

                      *Pero, logo, cándo comeza o curso?
                      Sabes cando comeza o curso?
        -->
  <rulegroup id="INTERROG" name="qué,cál,cómo (que,cal,como)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SENT_START"/>
        <marker>
          <token regexp="yes" skip="-1">cál|cándo|cánto</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)á" regexp_replace="a"/></suggestion>?</message>
      <example correction="Cando"><marker>Cándo</marker> chegan teus pais?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">\¿|\¡</token>
        <marker>
          <token regexp="yes" skip="-1">cál|cándo|cánto</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)á" regexp_replace="a"/></suggestion>?</message>
      <example correction="Cando">¿<marker>Cándo</marker> chegan teus pais?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SENT_START"/>
        <marker>
          <token regexp="yes" skip="-1">cómo|ónde</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)ó" regexp_replace="o"/></suggestion>?</message>
      <example correction="Onde"><marker>Ónde</marker> está Bretoña?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">\¿|\¡</token>
        <marker>
          <token regexp="yes" skip="-1">cómo|ónde</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)ó" regexp_replace="o"/></suggestion>?</message>
      <example correction="Onde">¿<marker>Ónde</marker> está Bretoña?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SENT_START"/>
        <marker>
          <token regexp="yes" skip="-1">qué|quén</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)é" regexp_replace="e"/></suggestion>?</message>
      <example correction="Que"><marker>Qué</marker> día chegan teus pais?</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">\¿|\¡</token>
        <marker>
          <token regexp="yes" skip="-1">qué|quén</token>
        </marker>
          <token regexp="yes">\!|\?</token>
      </pattern>
      <message>En galego non é preciso acentuar as interrogativas directas. Quería vostede dicir <suggestion><match no="2" regexp_match="(?iu)é" regexp_replace="e"/></suggestion>?</message>
      <example correction="Que">¿<marker>Qué</marker> día chegan teus pais?</example>
    </rule>
  </rulegroup>

    <!-- FIXED: 'demais' can function without article: "versionado en galego, catalán e demais linguas" -->
  <rulegroup id="DEMAIS" name="demais e de mais">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
    <!-- Exceptions: o, mailo + o, por + o, de + o, en + o, todos + o, con + o, ca + o, a + o    //   e, ou -->
          <token>demais
            <exception regexp="yes" scope="previous">(mail|pol|d|n)?[ao]s?</exception>
            <exception regexp="yes" scope="previous">tódolos|tódalas|coa?s?|c?[óá]s?|aos?|e|ou</exception></token>
      </pattern>
      <message>En galego 'demais' escríbese xunto só cando é pronome, e nese caso vai precedido por un artigo. Polo contexto semella estar vostede empregándoo como adverbio, que indica exceso dunha cantidade, e neste caso vai separado. Quería vostede dicir <suggestion>de máis</suggestion>?</message>
      <example correction="de máis">Sempre fala <marker>demais</marker>.</example>
      <example>Xaquín e mailos <marker>demais</marker> rapaces.</example>
      <example>Foi cos <marker>demais</marker> rapaces a xogar.</example>
    </rule>

    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>de</token>
          <token>mais</token>
      </pattern>
      <message>En galego a locución adverbial 'de máis' leva til. Quería vostede dicir <suggestion>de máis</suggestion>?</message>
      <example correction="de máis">Sempre fala <marker>de mais</marker>.</example>
    </rule>
  </rulegroup>

    <!-- NOTAS:
          * Senón en inicio de oración é erro de estilo: "como xa piden algúns. Senón mediante o diálogo"
          * Cando vai seguido de pronome, verbo ou coma é erro con certeza, confundido con 'se non': "Senón existe esa singularidade"; "Senón o sabes pregunta"; "senón, pregunta". Isto vale seguramente tamén para a posición interna na oración. [comprobar]
        -->
  <rulegroup id="SENON" name="se non, senón">
    <rule id="SE_SENON_QUE" name="se non que (senón que)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token skip="-1">non
            <exception scope="next">non</exception></token>
          <token skip="-1">se</token>
        <marker>
          <token>se</token>
          <token>non</token>
          <token>que</token>
        </marker>
      </pattern>
      <message>Despois dunha partícula negativa, a secuencia 'se non que' é normalmente unha conxunción adversativa e escríbese 'senón que'. Quería vostede dicir <suggestion>senón que</suggestion>?</message>
      <example correction="senón que">A economía da guerra non se baseaba na empresa libre, <marker>se non que</marker> era o resultado da sectorización do gasto do goberno</example>
    </rule>
    <rule id="SENON_QUE" name="se non que (senón que)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token skip="-1">non</token>
        <marker>
          <token>se</token>
          <token>non</token>
          <token>que</token>
        </marker>
      </pattern>
      <message>Despois dunha partícula negativa, a secuencia 'se non que' é normalmente unha conxunción adversativa e escríbese 'senón que'. Quería vostede dicir <suggestion>senón que</suggestion>?</message>
      <example correction="senón que">O osíxeno non é unha proba de vida, <marker>se non que</marker> é producido polo xeo de auga da superficie de Ganímedes.</example>
    </rule>
  </rulegroup>

  <rulegroup id="AMBOS_TODOS" name="ambos, ambas, todos, todas e substantivo">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(entr)?amb[oa]s</token>
          <token postag="NC.P000" postag_regexp="yes">
            <exception negate_pos="yes" postag="NC.P000" postag_regexp="yes"/>
            <exception regexp="yes">[oa]s</exception>
          </token>
      </pattern>
      <message>A forma &quot;<match no="1"/>&quot; require do artigo determinado cando vai diante dun substantivo. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)amb([ao])s" regexp_replace="amb$1s $1s"/> \2</suggestion> ou <suggestion><match no="1" regexp_match="(?iu)amb([ao])s" regexp_replace="ámb$1l$1s"/> \2</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="ambas as cidades|ámbalas cidades">Visitou <marker>ambas cidades</marker> este ano.</example>
      <example>Visitou <marker>ámbalas cidades</marker> este ano.</example>
      <example>Visitou <marker>ambas as cidades</marker> este ano.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">tod[oa]s</token>
          <token postag="NC.P000" postag_regexp="yes">
            <exception negate_pos="yes" postag="NC.P000" postag_regexp="yes"/>
            <exception regexp="yes">[oa]s</exception>
          </token>
      </pattern>
      <message>A forma &quot;<match no="1"/>&quot; require do artigo determinado cando vai diante dun substantivo. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)tod([ao])s" regexp_replace="tod$1s $1s"/></suggestion> ou <suggestion><match no="1" regexp_match="(?iu)tod([ao])s" regexp_replace="tód$1l$1s"/></suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="todos os|tódolos">De <marker>todos xeitos</marker> non importa moito.</example>
      <example>De <marker>todos os xeitos</marker> non importa moito.</example>
      <example>De <marker>tódolos xeitos</marker> non importa moito.</example>
    </rule>
  </rulegroup>

  <rulegroup id="CONTRACCIONS" name="contraccións">

    <!-- fuzzy -->
    <rule id="POR_O" name="por o (polo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>por</token>
          <token regexp="yes">[oa]s?</token>
      </pattern>
      <message>A preposición 'por' e o artigo '<match no="2"/>' contraen. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)r$" regexp_replace="l"/>\2</suggestion>?</message>
      <example correction="Polo"><marker>Por o</marker> mar abaixo vai unha troita de pé.</example>
    </rule>

    <rule id="E_MAIS_O" name="e mais o (e mailo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>e</token>
          <token regexp="yes">m[aá]is</token>
          <token regexp="yes">[oa]s?</token>
      </pattern>
      <message>A conxunción 'e mais' e o artigo '<match no="3"/>' contraen. Quería vostede dicir <suggestion>e mail\3</suggestion>?</message>
      <example correction="e maila">Foron ao cine ela <marker>e mais a</marker> súa irmá.</example>
    </rule>

    <!-- FIXME suggest 'e Maila' when 'mailo/a' is the first token in the sentence -->
    <rule id="MAILO" name="mailo (e mailo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token negate="yes">e</token>
        <marker>
          <token regexp="yes">mail[oa]s?</token>
        </marker>
      </pattern>
      <message>O uso correcto é 'e mais'. Quería vostede dicir <suggestion>e \2</suggestion>?</message>
      <example correction="e maila">Foron ao cine ela <marker>maila</marker> súa irmá.</example>
    </rule>
  </rulegroup>

    <rule id="AMBO_TRA_ENTRAMBO_PO_TODO_LOS" name="tódo-los (tódolos)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(ámbo|tra|entrámbo|mai|po|tód[ao])</token>
          <token>-</token>
          <token regexp='yes'>l[oa]s?</token>
      </pattern>
      <message>As formas 'e mais', 'ambos', 'entrambos', 'por', 'tras' e 'todos' non marcan a segunda forma do artigo mediante un trazo. Quería vostede dicir <suggestion>\1\3</suggestion>?</message>
      <example correction="Tódolos"><marker>Tódo-los</marker> días vou mercar á praza.</example>
    </rule>

    <!-- Rule set to off by default, since is difficult to express by means of
             the XML formalism some important constraints, such as the presence of a
             previous verb (that could be head of the PP instead of the NP, etc
             TODO: Java rule to check this error.
        -->
    <!-- Created by Susana Sotelo Docío
    <rule id="SUBST_A_INF" name="substantivo + a + inf">
      <pattern>
          <token postag="NC.*" postag_regexp="yes">
            <exception postag="NC.*" postag_regexp="yes" negate_pos="yes"/></token>
          <token>a</token>
          <token postag="VMN0000|VSN0000" postag_regexp="yes"/>
      </pattern>
      <message>A construción con valor de futuro formada por un substantivo seguido da preposición 'a' e un verbo en infinitivo é incorrecta en galego. Por favor, empregue outra expresión alternativa. Por exemplo, no sitio de 'proba a desenvolver', pode usar 'proba que se desenvolverá' ou 'proba que se vai desenvolver'; no sitio de 'os obxectivos a conseguir' empregue 'os obxectivos para conseguir'. Neste caso unha posibilidade podería ser: <suggestion>\1 que se vai \3</suggestion></message>
      <example type="incorrect">O <marker>exame a desenvolver</marker> consta de tres exames.</example>
      <example>O <marker>exame que se desenvolverá</marker> consta de tres exames.</example>
    </rule>
        -->

    <rule id="NON_OU" name="non... ou (nin...nin)" default="off">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token skip="-1">non
            <exception scope="next">,</exception></token>
        <marker>
          <token regexp="yes">ou|e</token>
        </marker>
      </pattern>
      <message>Posíbel incorrección: non se debe usar '\2' despois dunha negación. Empregue mellor <suggestion>nin</suggestion>.</message>
      <example correction="nin">Non se pode presentar máis dunha solicitude por persoa <marker>e</marker> grupo.</example>
      <example>Non se pode presentar máis dunha solicitude por persoa <marker>nin</marker> grupo.</example>
    </rule>

    <rule id="SE_BEN" name="se ben (malia que, aínda que)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>se</token>
          <token>ben</token>
      </pattern>
      <message>A partícula 'se ben' é un calco do castelán. Empregue mellor <suggestion>aínda que</suggestion>, <suggestion>a pesar de que</suggestion>, <suggestion>pese a que</suggestion> ou <suggestion>malia que</suggestion>.</message>
      <example correction="Aínda que|A pesar de que|Pese a que|Malia que"><marker>Se ben</marker> os resultados poden parecer similares, non teñen moito que ver os experimentos.</example>
      <example><marker>Aínda que</marker> os resultados poden parecer similares, non teñen moito que ver os experimentos.</example>
    </rule>

  <rulegroup id="ELO" name="elo como pronome (iso)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token postag="SPS00">
            <exception>do</exception>
          </token>
        <marker>
          <token>elo</token>
        </marker>
      </pattern>
      <message>'Elo' é en galego un substantivo masculino que significa 'aro ou anel dunha cadea'. Quería vostede dicir <suggestion>isto</suggestion> ou <suggestion>iso</suggestion>?</message>
      <example correction="isto|iso">Con <marker>elo</marker> conseguimos mellorar o rendemento do proceso.</example>
      <example>Con <marker>iso</marker> conseguimos mellorar o rendemento do proceso.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>todo</token>
        <marker>
          <token>elo</token>
        </marker>
      </pattern>
      <message>'Elo' é en galego un substantivo masculino que significa 'aro ou anel dunha cadea'. Quería vostede dicir <suggestion>isto</suggestion> ou <suggestion>iso</suggestion>?</message>
      <example correction="isto|iso">No centro de todo <marker>elo</marker> sitúase o escudo da vila.</example>
      <example>No centro de todo <marker>isto</marker> sitúase o escudo da vila.</example>
    </rule>
  </rulegroup>


  <rulegroup id="ADV_POSESIVO" name="detrás miña, túa, nosa… (detrás de min, ti, nós…)">
    <rule id="DETRAS_MINHA" name="detrás miña (detrás de min)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">adiante|arredor|arriba|atrás|baixo|cerca|debaixo|dediante|derredor|derriba|detrás|diante|embaixo|encima|enriba|riba</token>
          <token>miña</token>
      </pattern>
      <message>A expresión '\1 miña' é incorrecta. Empregue mellor <suggestion>\1 de min</suggestion> no seu lugar.</message>
      <short>Un posesivo non pode complementar un adverbio.</short>
      <example correction="detrás de min">Vén xusto <marker>detrás miña</marker>.</example>
    </rule>
    <rule id="DETRAS_TUA" name="detrás túa (detrás de ti)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">adiante|arredor|arriba|atrás|baixo|cerca|debaixo|dediante|derredor|derriba|detrás|diante|embaixo|encima|enriba|riba</token>
          <token>túa</token>
      </pattern>
      <message>A expresión '\1 túa' é incorrecta. Empregue mellor <suggestion>\1 de ti</suggestion> no seu lugar.</message>
      <short>Un posesivo non pode complementar un adverbio.</short>
      <example correction="detrás de ti">Mira <marker>detrás túa</marker>, un mono con tres cabezas!</example>
    </rule>
    <rule id="DETRAS_NOSA_VOSA" name="detrás nosa (detrás de nós)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">adiante|arredor|arriba|atrás|baixo|cerca|debaixo|dediante|derredor|derriba|detrás|diante|embaixo|encima|enriba|riba</token>
          <token regexp="yes">nosa|vosa</token>
      </pattern>
      <message>A expresión '\1 \2' é incorrecta. Empregue mellor <suggestion>\1 de <match no="2" regexp_match="([vn])osa" regexp_replace="$1ós"/></suggestion> no seu lugar.</message>
      <short>Un posesivo non pode complementar un adverbio.</short>
      <example correction="detrás de vós">Mirade <marker>detrás vosa</marker>, un mono con tres cabezas!</example>
    </rule>
    <rule id="DETRAS_SUA" name="detrás súa (detrás del/dela/deles/delas)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">adiante|arredor|arriba|atrás|baixo|cerca|debaixo|dediante|derredor|derriba|detrás|diante|embaixo|encima|enriba|riba</token>
          <token>súa</token>
      </pattern>
      <message>A expresión '\1 súa' é incorrecta. Empregue mellor, dependendo do referente, <suggestion>\1 del</suggestion>, <suggestion>\1 dela</suggestion>, <suggestion>\1 deles</suggestion>, <suggestion>\1 delas</suggestion>, <suggestion>\1 de vostede</suggestion> ou <suggestion>\1 de vostedes</suggestion> no seu lugar.</message>
      <short>Un posesivo non pode complementar un adverbio.</short>
      <example correction="detrás del|detrás dela|detrás deles|detrás delas|detrás de vostede|detrás de vostedes">Ese Presidente da Xunta que leva <marker>detrás súa</marker> a todo o séquito de acólitos coma avésporas chuchonas.</example>
      <example>Ese Presidente da Xunta que leva <marker>detrás del</marker> a todo o séquito de acólitos coma avésporas chuchonas.</example>
    </rule>
  </rulegroup>

 </category>

    <!-- ############################ LEXICAL RULES ############################ -->

 <category id="CAT3" name="Léxico::Estranxeirismos (agás castelanismos)">
    <rule id="BAFFLE" name="baffle (pantalla acústica)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">baf?fles?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>pantalla acústica</suggestion>.</message>
      <example>O aparato ten as <marker>pantallas acústicas</marker> avariadas.</example>
      <example correction="pantalla acústica">O aparato ten os <marker>baffles</marker> avariados.</example>
    </rule>

    <rule id="COMPACTDISK" name="compact disk (disco compacto)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>compact</token>
          <token>disk</token>
      </pattern>
      <message>A palabra '\1 \2' é un anglicismo. Empregue mellor <suggestion>disco compacto</suggestion>.</message>
      <example correction="disco compacto">Un <marker>compact disk</marker> mercado fóra de España non leva canon da SGAE.</example>
    </rule>

    <rule id="CHEF" name="chef (xefe de cociña)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">chefs?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un galicismo. Empregue mellor <suggestion>xefe de cociña</suggestion> ou <suggestion>xefa de cociña</suggestion>.</message>
      <example correction="xefe de cociña|xefa de cociña">Van contratar un novo <marker>chef</marker> no restaurante.</example>
      <example>Van contratar un novo <marker>xefe de cociña</marker> no restaurante.</example>
    </rule>

    <rule id="CONTAINER" name="container (colector)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">cont[áa]iner(es)?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>colector</suggestion>.</message>
      <example correction="colector">O <marker>container</marker> do lixo apareceu queimado.</example>
    </rule>

    <rule id="WATER" name="water (váter)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">w[aá]ter(es)?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>váter</suggestion>.</message>
      <example correction="váter">O <marker>wáter</marker> estaba limpo.</example>
    </rule>

    <rule id="PLAYBACK" name="playback (son pregravado)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">playbacks?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>son pregravado</suggestion> ou <suggestion>son de estudio</suggestion>.</message>
      <example correction="son pregravado|son de estudio">É un <marker>playback</marker>.</example>
      <example>É un <marker>son pregravado</marker>.</example>
    </rule>

    <rule id="OFFTHERECORD" name="off the record (en privado)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>off</token>
          <token>the</token>
          <token regexp="yes">r[eé]cord</token>
      </pattern>
      <message>A construción '\1 \2 \3' é un anglicismo. Empregue mellor <suggestion>en privado</suggestion>.</message>
      <example correction="en privado">Comunicou a nova <marker>off the record</marker> aos xornalistas.</example>
    </rule>

    <rule id="DOPING" name="doping (dopaxe)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(anti)?d[oó]pings?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion><match no="1" regexp_match="[oó]pings?" regexp_replace="opaxe"/></suggestion> (feminino).</message>
      <example correction="dopaxe">O <marker>dóping</marker> é un problema grave no deporte profesional.</example>
      <example>A <marker>dopaxe</marker> é un problema grave no deporte profesional.</example>
    </rule>

    <rule id="STRESS" name="stress (tensión)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">e?str[eé]ss?</token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>tensión</suggestion>.</message>
      <example correction="tensión">O seu é un traballo de moito <marker>stres</marker>.</example>
      <example>O seu é un traballo de moita <marker>tensión</marker>.</example>
    </rule>

    <rule id="RECORD" name="record (marca)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">r[eé]cords?
            <exception scope="previous">the</exception></token>
      </pattern>
      <message>A palabra '<match no="1"/>' é un anglicismo. Empregue mellor <suggestion>marca</suggestion> (feminino).</message>
      <example correction="marca">O atleta non conseguíu bater o <marker>record</marker>.</example>
      <example>O atleta non conseguíu bater a <marker>marca</marker>.</example>
    </rule>
 </category>

 <category id="CAT4" name="Léxico::Falsos homónimos">

    <rule id="RACHA" name="racha (refacho)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">rachas?</token>
      </pattern>
      <message>Unha racha en galego é unha fenda ou ben un anaco de pedra ou madeira. A forma correcta en galego para facer referencia a un golpe forte de vento é <suggestion>refacho</suggestion> (masculino).</message>
      <short>Posíbel confusión con homónima.</short>
      <example correction="refacho">Había <marker>rachas</marker> de vento na costa.</example>
      <example>Había <marker>refachos</marker> de vento na costa.</example>
    </rule>

    <rule id="LORO" name="loro (papagaio)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">loros?</token>
      </pattern>
      <message>Un loro en galego é unha peza do carro. A forma correcta en galego para facer referencia ao paxaro é <suggestion>papagaio</suggestion>.</message>
      <short>Posíbel castelanismo</short>
      <example correction="papagaio">Ten un <marker>loro</marker> na súa casa.</example>
    </rule>

    <rule id="PILDORA" name="píldora (pílula)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">píldora</token>
      </pattern>
      <message>Unha píldora en galego é unha ave tamén coñecida como &quot;píllara&quot;. A forma correcta en galego para facer referencia ao medicamento é <suggestion>pílula</suggestion>.</message>
      <short>Posíbel castelanismo</short>
      <example correction="pílula">O médico recetoume unhas <marker>píldoras</marker> para a acidez estomacal.</example>
      <example>O médico recetoume unhas <marker>pílulas</marker> para a acidez estomacal.</example>
    </rule>

    <rule id="APORTAR" name="aportar (achegar)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">aportar</token>
      </pattern>
      <message>O verbo &quot;aportar&quot; significa en galego &quot;chegar a porto&quot;. A forma correcta en galego para o sentido de &quot;proporcionar&quot; ou &quot;presentar&quot; é <suggestion><match no="1" postag="(.*)" postag_replace="$1">achegar</match></suggestion> ou <suggestion><match no="1" postag="(.*)" postag_replace="$1">facer</match> unha achega</suggestion>.</message>
      <short>Posíbel castelanismo</short>
      <example correction="achegar|facer unha achega">Eu tamén quero <marker>aportar</marker> algo ao proxecto.</example>
      <example>Eu tamén quero <marker>achegar</marker> algo ao proxecto.</example>
    </rule>

    <rule id="BECA" name="beca (bolsa)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">beca</token>
      </pattern>
      <message>A palabra 'beca' significa en galego &quot;vestidura talar de cor negra&quot;. A forma correcta en galego para o sentido de &quot;axuda económica á formación&quot; é <suggestion>bolsa</suggestion>.</message>
      <short>Posíbel castelanismo</short>
      <example correction="bolsa">Obtivo unha <marker>beca</marker> para o Trinity College.</example>
    </rule>

    <rule id="ABONO" name="abono (fertilizante, pagamento)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">abono</token>
      </pattern>
      <message>Posíbel castelanismo: &quot;abono&quot; significa en galego &quot;subscrición&quot;. Se vostede alude ás substancias químicas ou orgánicas que aumentan a fertilidade do solo, debe empregar <suggestion>fertilizante</suggestion>; pola contra, se falaba da acción de pagar por un obxecto ou servizo, use <suggestion>pagamento</suggestion> ou <suggestion>pago</suggestion>.</message>
      <short>Posíbel castelanismo</short>
      <example correction="fertilizante|pagamento|pago">O estudo analiza o papel dos <marker>abonos</marker> na contaminación das augas subterráneas.</example>
      <example>O estudo analiza o papel dos <marker>fertilizantes</marker> na contaminación das augas subterráneas.</example>
      <example correction="fertilizante|pagamento|pago">Xa fixo o <marker>abono</marker> das taxas de matrícula.</example>
      <example>Xa fixo o <marker>pagamento</marker> das taxas de matrícula.</example>
    </rule>

    <rule id="GRUA" name="grua (guindastre)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">grúa</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;grúa&quot; fai referencia a un paxaro. Para denominar ao aparato empregado para mover ou remolcar grandes pesos emprégase preferibelmente <suggestion>guindastre</suggestion> (masculino).</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="guindastre">A <marker>grúa</marker> levoulle o automóbil.</example>
      <example>O <marker>guindastre</marker> levoulle o automóbil.</example>
    </rule>

    <rule id="FECHA" name="fecha (data)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">fecha</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;fecha&quot; significa en galego &quot;grolo&quot;, &quot;sorbo&quot;. A forma correcta en galego para a indicación de tempo é <suggestion>data</suggestion>.</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="data">Xa publicaron a <marker>fecha</marker> do exame de Álxebra.</example>
    </rule>

    <rule id="ASCO" name="asco (noxo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">asco</token>
      </pattern>
      <message>Posíbel castelanismo: &quot;asco&quot; é en galego unha estrutura utricular propia dun tipo de fungo. A forma correcta en galego para indicar repugnancia é <suggestion>noxo</suggestion>.</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="noxo">Esa actitude da xente dá <marker>asco</marker>.</example>
    </rule>

    <rule id="RAPE" name="rape (peixe sapo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">rape</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;\1&quot; significa en galego &quot;acción ou efecto de rapar&quot;. A forma correcta en galego para o peixe é <suggestion>rabada</suggestion> (feminino) ou <suggestion>peixe sapo</suggestion>.</message>
      <example correction="rabada|peixe sapo">Merquei un par de <marker>rapes</marker> na praza.</example>
      <example>Merquei un par de <marker>rabadas</marker> na praza.</example>
    </rule>

 </category>

 <category id="CAT5" name="Léxico::Castelanismos léxicos">

    <rule id="MARTINPESCADOR" name="martín pescador (picapeixe)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">martín|martiño</token>
          <token regexp="yes">pescador(es)?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1 \2&quot; non existe en galego. Quería vostede dicir <suggestion>picapeixe</suggestion>?</message>
      <example correction="picapeixe">O <marker>martín pescador</marker> non é un paxaro fácil de fotografar.</example>
    </rule>

    <rule id="ALOMELLOR" name="alomellor (se cadra)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>alomellor</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>se cadra</suggestion>?</message>
      <example correction="Se cadra"><marker>Alomellor</marker> non é importante.</example>
    </rule>

    <rule id="CONCELLAL" name="concellal, concexal (concelleiro)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">conce(ll|x)a(l|is|es)</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>concelleiro</suggestion>?</message>
      <example correction="concelleiro">Mañá será oficial o seu cesamento no cargo de <marker>concellal</marker>.</example>
    </rule>

    <rule id="DETERIORO" name="deterioro (deterioración)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">deterioros?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>deterioración</suggestion> (feminino)?</message>
      <example correction="deterioración">Denunciamos o <marker>deterioro</marker> da diversificación na oferta educativa.</example>
      <example>Denunciamos a <marker>deterioración</marker> da diversificación na oferta educativa.</example>
    </rule>

    <rule id="BASURA" name="basura (lixo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">basuras?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>lixo</suggestion> (masculino)?</message>
      <example correction="lixo">Hoxe teño que sacar eu a <marker>basura</marker>.</example>
      <example>Hoxe teño que sacar eu o <marker>lixo</marker>.</example>
    </rule>

    <rule id="ASIGNATURA" name="asignatura (materia, disciplina)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">asignaturas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>materia</suggestion> ou <suggestion>disciplina</suggestion>?</message>
      <example correction="materia|disciplina">Este ano teño só tres <marker>asignaturas</marker>.</example>
      <example>Este ano teño só tres <marker>materias</marker>.</example>
    </rule>

    <rule id="VELETA" name="veleta (catavento)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">veletas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>catavento</suggestion> (masculino)?</message>
      <example correction="catavento">Ten unha <marker>veleta</marker> no pincho da casa.</example>
      <example>Ten un <marker>catavento</marker> no pincho da casa.</example>
    </rule>

    <rule id="VENTANILLA" name="ventanilla (portelo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">ventanillas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>portelo</suggestion> (masculino)?</message>
      <example correction="portelo">Abre a <marker>ventanilla</marker> do coche.</example>
      <example>Abre o <marker>portelo</marker> do coche.</example>
    </rule>

    <rule id="BOTIQUIN" name="botiquín (caixa de urxencias)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">botiquíns?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>caixa de urxencias</suggestion> (feminino)?</message>
      <example correction="caixa de urxencias">Hai pílulas para a dor de cabeza no <marker>botiquín</marker>?</example>
      <example>Hai pílulas para a dor de cabeza na <marker>caixa de urxencias</marker>?</example>
    </rule>

    <rule id="AFORO" name="aforo (capacidade)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">aforos?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>capacidade</suggestion> (feminino)?</message>
      <example correction="capacidade">No concerto sobrepasouse o <marker>aforo</marker> do recinto.</example>
      <example>No concerto sobrepasouse a <marker>capacidade</marker> do recinto.</example>
    </rule>

    <rule id="PROMEDIO" name="promedio (termo medio)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">promedios?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>media</suggestion> (feminino) ou <suggestion>termo medio</suggestion>?</message>
      <example correction="media|termo medio">Precisa pescudar o <marker>promedio</marker> de litros caídos en Santiago durante o ano 2000.</example>
      <example>Precisa pescudar a <marker>media</marker> de litros caídos en Santiago durante o ano 2000.</example>
    </rule>

    <rule id="PREVENIDO" name="prevenido (prevido)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(des)?prevenid[oa]s?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion><match no="1" regexp_match="en" regexp_replace=""/></suggestion>?</message>
      <example correction="prevido">Home <marker>prevenido</marker> vale por dous.</example>
    </rule>

    <rule id="SERVILLETA" name="servilleta (pano de mesa)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">servilletas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>pano de mesa</suggestion> (masculino)?</message>
      <example correction="pano de mesa">Tes que mercar unhas <marker>servilletas</marker> novas.</example>
      <example>Tes que mercar uns <marker>panos de mesa</marker> novos.</example>
    </rule>

    <rule id="CUPO" name="cupo (cota)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">cupos?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>cota</suggestion> (feminino)?</message>
      <example correction="cota">Non chegaron ao <marker>cupo</marker> de matriculados.</example>
      <example>Non chegaron á <marker>cota</marker> de matriculados.</example>
    </rule>

    <rule id="CALLEXON" name="callexón, calexón (canella)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(callexón|calei?xón)s?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>canella</suggestion> (feminino)?</message>
      <example correction="canella">A discusión acabou nun <marker>calexón</marker> sen saída.</example>
      <example>A discusión acabou nunha <marker>canella</marker> sen saída.</example>
    </rule>

    <rule id="SABANHON" name="sabañón (frieira)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">sabañóns?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>frieira</suggestion> (feminino)?</message>
      <example correction="frieira">Teño un <marker>sabañón</marker> nunha man.</example>
      <example>Teño unha <marker>frieira</marker> nunha man.</example>
    </rule>

    <rule id="RINCON" name="rincón (recuncho)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">rincóns?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>recuncho</suggestion> ou <suggestion>cornello</suggestion>?</message>
      <example correction="recuncho|cornello">Puxo ao neno nun <marker>rincón</marker>.</example>
      <example>Puxo ao neno nun <marker>recuncho</marker>.</example>
    </rule>

    <rule id="CARCOMA" name="carcoma (caruncho)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">carcomas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>caruncho</suggestion> (masculino) ou <suggestion>couza</suggestion>?</message>
      <example correction="caruncho|couza">O mastro do barco ten <marker>carcoma</marker>.</example>
      <example>O mastro do barco ten <marker>caruncho</marker>.</example>
    </rule>

    <rule id="RASGO" name="rasgo (trazo, risco)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">rasgos?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;\1&quot; non existe en galego. Quería vostede dicir <suggestion>trazo</suggestion> (liña trazada ou característica dunha persoa ou cousa) ou <suggestion>risco</suggestion> (liña longa)?</message>
      <example correction="trazo|risco">A ausencia de melanina é un <marker>rasgo</marker> característico do albinismo.</example>
      <example>A ausencia de melanina é un <marker>trazo</marker> característico do albinismo.</example>
    </rule>

    <rule id="BUZON" name="buzón (caixa de correos)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">buzóns?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion><match no="1" regexp_match="buzón(s)?$" regexp_replace="caixa$1 de correos"/></suggestion> (feminino)?</message>
      <example correction="caixa de correos">Tiña dúas cartas no <marker>buzón</marker>.</example>
      <example>Tiña dúas cartas na <marker>caixa de correos</marker>.</example>
    </rule>

    <rule id="CALAMAR" name="calamar (lura)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">calamar(es)?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion><match no="1" regexp_match="calamare?(s)?$" regexp_replace="lura$1"/></suggestion> (feminino)?</message>
      <example correction="luras">Traían uns <marker>calamares</marker> do mercado.</example>
      <example>Traían unhas <marker>luras</marker> do mercado.</example>
    </rule>

    <rule id="BRUXULA" name="brúxula (compás)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">brúxulas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>compás</suggestion> (masculino)?</message>
      <example correction="compás">Unha <marker>brúxula</marker> sinala sempre ao norte.</example>
      <example>Un <marker>compás</marker> sinala sempre ao norte.</example>
    </rule>

    <rule id="CORBATA" name="corbata (gravata, garavata)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">corbata?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>garavata</suggestion> ou <suggestion>gravata</suggestion>?</message>
      <example correction="garavata|gravata">Vai traballar tódolos días vestido de <marker>corbata</marker>.</example>
      <example>Vai traballar tódolos días vestido de <marker>gravata</marker>.</example>
    </rule>

    <rule id="CONTRASEÑA" name="contraseña (contrasinal)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">contraseñas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>contrasinal</suggestion> (masculino)?</message>
      <example correction="contrasinal">Tivo que cambiar a súa <marker>contraseña</marker> de entrada.</example>
      <example>Tivo que cambiar o seu <marker>contrasinal</marker> de entrada.</example>
    </rule>

    <rule id="GRULLA" name="grulla (grou, grúa)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">grullas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>grou</suggestion> (masculino) ou <suggestion>grúa</suggestion>?</message>
      <example correction="grou|grúa">En novembro é cando as <marker>grullas</marker> inician a súa migración.</example>
      <example>En novembro é cando as <marker>grúas</marker> inician a súa migración.</example>
    </rule>

    <rule id="LIBRETA" name="libreta (caderno)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">libretas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>caderno</suggestion> (masculino)?</message>
      <example correction="caderno">Andrés foi mercar unha <marker>libreta</marker> para a escola.</example>
      <example>Andrés foi mercar un <marker>caderno</marker> para a escola.</example>
    </rule>

    <rule id="TIZA" name="tiza (xiz)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">tizas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>xiz</suggestion> (masculino)?</message>
      <example correction="xiz">Na aula do segundo curso non hai <marker>tiza</marker>.</example>
    </rule>

    <!--fuzzy-->
    <rule id="TRAGALUZ" name="tragaluz (bufarda)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">tragalu(z|ces)</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>bufarda</suggestion> (feminino)?</message>
      <example correction="bufarda">Puxo un <marker>tragaluz</marker> na casa.</example>
      <example>Puxo unha <marker>bufarda</marker> na casa.</example>
    </rule>

    <!--fuzzy-->
    <rule id="XOROBA" name="xoroba (chepa, carrumba)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">xorobas?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>chepa</suggestion> ou <suggestion>carrumba</suggestion>?</message>
      <example correction="chepa|carrumba">O dromedario ten unha única <marker>xoroba</marker>.</example>
      <example>O dromedario ten unha única <marker>chepa</marker>.</example>
    </rule>

    <!--fuzzy-->
    <rule id="XARRON" name="xarrón (floreiro, vaso)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">xarróns?</token>
      </pattern>
      <message>Palabra incorrecta: a forma &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>floreiro</suggestion> ou <suggestion>vaso</suggestion>?</message>
      <example correction="floreiro|vaso">Rompín o <marker>xarrón</marker> que lle mercara á túa nai.</example>
      <example>Rompín o <marker>floreiro</marker> que lle mercara á túa nai.</example>
    </rule>

    <rule id="APORTACION" name="aportación, aporte (achega, contribución)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">aport(e|ación)s?</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>achega</suggestion> ou <suggestion>contribución</suggestion>?</message>
      <short>Castelanismo léxico</short>
      <example correction="achega|contribución">Fixo importantes <marker>aportacións</marker> ao proxecto.</example>
      <example>Fixo importantes <marker>achegas</marker> ao proxecto.</example>
    </rule>

    <rule id="TIBURON" name="tiburón (quenlla)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">tiburóns?</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>quenlla</suggestion> (feminino)?</message>
      <short>Castelanismo léxico</short>
      <example correction="quenlla">Miraron un <marker>tiburón</marker> dende o barco.</example>
      <example>Miraron unha <marker>quenlla</marker> dende o barco.</example>
    </rule>

    <rule id="CHEQUEO" name="chequeo (revisión, recoñecemento)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">chequeos?</token>
      </pattern>
      <message>Posíbel castelanismo: o substantivo &quot;<match no="1"/>&quot; non existe en galego. Quería vostede dicir <suggestion>revisión</suggestion> ou <suggestion>recoñecemento</suggestion>?</message>
      <short>Castelanismo léxico</short>
      <example correction="revisión|recoñecemento">Onte foi facer un <marker>chequeo</marker> médico.</example>
      <example>Onte foi facer un <marker>recoñecemento</marker> médico.</example>
    </rule>

    <rule id="TURNO_TANDA" name="turno, tanda (quenda, vez)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">turnos?|tandas?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>quenda</suggestion> ou <suggestion>vez</suggestion> tendo en conta as diferenzas de xénero.</message>
      <short>Castelanismo léxico</short>
      <example correction="quenda|vez">Perdín o meu <marker>turno</marker> na lista de agarda.</example>
      <example>Perdín a miña <marker>vez</marker> na lista de agarda.</example>
      <example correction="quenda|vez">No colexio non hai <marker>turno</marker> de tarde.</example>
      <example>No colexio non hai <marker>quenda</marker> de tarde..</example>
    </rule>

    <rule id="TRINEO" name="trineo (zorra)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">trineos?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>zorra</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="zorra">Rebentaban os renos e atuaban o <marker>trineo</marker> na nevada co peso dos seus bandullos.</example>
      <example>Rebentaban os renos e atuaban a <marker>zorra</marker> na nevada co peso dos seus bandullos.</example>
    </rule>

    <rule id="GRIFO" name="grifo (billa)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">grifos?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>billa</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="billa">Non saía auga do <marker>grifo</marker>.</example>
      <example>Non saía auga da <marker>billa</marker>.</example>
    </rule>

    <rule id="MORDISCO" name="mordisco (dentada)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">mordiscos?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>dentada</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="dentada">Levoulle media orella dun <marker>mordisco</marker>.</example>
      <example>Levoulle media orella dunha <marker>dentada</marker>.</example>
    </rule>

    <rule id="ANDAMIO" name="andamio (estada)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">andamios?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>estada</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="estada">Un albanel vai vir montar o <marker>andamio</marker> mañá.</example>
      <example>Un albanel vai vir montar a <marker>estada</marker> mañá.</example>
    </rule>

    <rule id="ANDEN" name="andén (plataforma)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">andéns?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>plataforma</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="plataforma">O tren chegará ao <marker>andén</marker> número tres.</example>
      <example>O tren chegará á <marker>plataforma</marker> número tres.</example>
    </rule>

    <rule id="ARCEN" name="arcén (beiravía)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">arcéns?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>beiravía</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="beiravía">Na bicicleta procuro sempre circular polo <marker>arcén</marker>.</example>
      <example>Na bicicleta procuro sempre circular pola <marker>beiravía</marker>.</example>
    </rule>

  <rulegroup id="ASEQUIBEL" name="alcanzábel, accesíbel">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">asequibles?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>alcanzable</suggestion> ou <suggestion>accesible</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="alcanzable|accesible">O prezo actual da vivenda non é <marker>asequible</marker> para moita xente no pais.</example>
      <example>O prezo actual da vivenda non é <marker>accesible</marker> para moita xente no pais.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">inasequibles?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>inalcanzable</suggestion> ou <suggestion>inaccesible</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="inalcanzable|inaccesible">O prezo actual da vivenda é <marker>inasequible</marker> para moita xente no pais.</example>
      <example>O prezo actual da vivenda é <marker>inaccesible</marker> para moita xente no pais.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">asequíbe(l|is)</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>alcanzábel</suggestion> ou <suggestion>accesíbel</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="alcanzábel|accesíbel">O prezo actual da vivenda non é <marker>asequíbel</marker> para moita xente no pais.</example>
      <example>O prezo actual da vivenda non é <marker>accesíbel</marker> para moita xente no pais.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">inasequíbe(l|is)</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>inalcanzábel</suggestion> ou <suggestion>inaccesíbel</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="inalcanzábel|inaccesíbel">O prezo actual da vivenda é <marker>inasequíbel</marker> para moita xente no pais.</example>
      <example>O prezo actual da vivenda é <marker>inaccesíbel</marker> para moita xente no pais.</example>
    </rule>
  </rulegroup>

  <rulegroup id="NORABOA" name="noraboa (parabén)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">noraboas?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>parabén</suggestion> ou <suggestion>parabéns</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="parabén|parabéns">Moi bo traballo, <marker>noraboa</marker>!</example>
      <example>Moi bo traballo, <marker>parabéns</marker>!</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">dar</token>
          <token>a</token>
          <token>noraboa</token>
      </pattern>
      <message>A expresión &quot;<match no="1"/> a noraboa&quot; é un castelanismo. Empregue no seu sitio <suggestion>felicitar</suggestion> ou <suggestion>parabenizar</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="felicitar|parabenizar">Quero <marker>dar a noraboa</marker> á miña sobriña Noelia.</example>
      <example>Quero <marker>felicitar</marker> á miña sobriña Noelia.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">dar</token>
          <token>a</token>
          <token postag_regexp="yes" postag="DP.FS."/>
          <token>noraboa</token>
      </pattern>
      <message>A expresión &quot;\1 a \3 noraboa&quot; é un castelanismo. Empregue no seu sitio <suggestion>felicitar</suggestion> ou <suggestion>parabenizar</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="felicitar|parabenizar">Quero <marker>dar a miña noraboa</marker> á miña sobriña Noelia.</example>
      <example>Quero <marker>felicitar</marker> á miña sobriña Noelia.</example>
    </rule>
  </rulegroup>

    <rule id="ADOQUIN" name="adoquín (lastra)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">adoquíns?</token>
      </pattern>
      <message>A palabra &quot;<match no="1"/>&quot; é un castelanismo. Empregue no seu sitio <suggestion>lastra</suggestion> (feminino).</message>
      <short>Castelanismo léxico</short>
      <example correction="lastra">Usaron <marker>adoquíns</marker> para pavimentar a rúa.</example>
      <example>Usaron <marker>lastras</marker> para pavimentar a rúa.</example>
    </rule>

  <rulegroup id="SEN_EMBARGO" name="sen embargo, nembargantes (porén, mais, no entanto)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>sen</token>
          <token>embargo</token>
      </pattern>
      <message>A conxunción 'sen embargo' é un castelanismo. Empregue no seu sitio <suggestion>porén</suggestion>, <suggestion>mais</suggestion> ou <suggestion>no entanto</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="Porén|Mais|No entanto"><marker>Sen embargo</marker>, a súa importancia débese a outros factores.</example>
      <example><marker>Porén</marker>, a súa importancia débese a outros factores.</example>
    </rule>
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>nembargantes</token>
      </pattern>
      <message>A palabra '\1' non existe en galego. Empregue no seu sitio <suggestion>porén</suggestion>, <suggestion>mais</suggestion> ou <suggestion>no entanto</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="porén|mais|no entanto">A súa importancia débese <marker>nembargantes</marker> a outros factores.</example>
      <example>A súa importancia débese <marker>porén</marker> a outros factores.</example>
    </rule>
  </rulegroup>

  <rulegroup id="CORTEZA" name="corteza (codia, córtex cerebral)">
    <rule id="CORTEZA_NON_CEREBRAL" name="corteza (codia)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
        <marker>
          <token regexp="yes">(corteza|cortiza)s?</token>
        </marker>
          <token regexp="yes" negate="yes">cerebra(l|is|les)</token>
      </pattern>
      <message>A palabra '\1' non existe en galego. Empregue no seu sitio <suggestion>codia</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="codia">Do pan prefiro comer a <marker>corteza</marker>.</example>
    </rule>
    <rule id="CORTEZA_CEREBRAL" name="corteza cerebral (córtex cerebral)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">(corteza|cortiza|codia)s?</token>
          <token regexp="yes">cerebra(l|is|les)</token>
      </pattern>
      <message>O termo '\1 \2' non é correcto en galego. Empregue no seu sitio <suggestion>córtex \2</suggestion>.</message>
      <short>Castelanismo léxico</short>
      <example correction="córtex cerebral">O relator presentou un traballo sobre o comportamento da <marker>corteza cerebral</marker>.</example>
      <example>O relator presentou un traballo sobre o comportamento do <marker>córtex cerebral</marker>.</example>
    </rule>
  </rulegroup>

 </category>

 <category id="CAT6" name="Léxico::Barbarismos">
    <rule id="ADICAR" name="adicar (dedicar)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">adicar</token>
      </pattern>
      <message>A palabra '\1' non é aconsellábel en galego. Empregue mellor <suggestion><match no="1" postag="(.*)" postag_replace="$1">dedicar</match></suggestion>.</message>
      <short>Barbarismo</short>
      <example correction="dedicar">Acordaron <marker>adicar</marker> máis tempo ás tarefas pendentes.</example>
    </rule>
 </category>


    <!--
    <rule id="PUNTUAL" name="puntual (concreto)">
    <! Created by Susana Sotelo Docío >
      <pattern>
          <token inflected="yes">puntual</token>
      </pattern>
      <message>Posíbel castelanismo: o adxectivo "puntual" significa en galego "que fai algo no seu tempo". A forma correcta en galego para o sentido de "preciso" ou "determinado" é "concreto".</message>
      <short>Posíbel forma incorrecta</short>
      <example type="incorrect"> <marker>aportar</marker> algo ao proxecto.</example>
      <example>Eu tamén quero <marker>achegar</marker> algo ao proxecto.</example>
    </rule>
    -->


    <!-- ############################ SPELLING RULES ############################ -->

 <category id="CAT7" name="Ortografía">

  <rulegroup id="ACCESIT" name="accésits (accésit)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">acc[eé]sits</token>
      </pattern>
      <message>A palabra 'accésit' non varía no plural. Empregue mellor <suggestion>accésit</suggestion>.</message>
      <example correction="accésit">Como narrador gaña dous <marker>accésits</marker> do Pedrón de Ouro.</example>
    </rule>
  </rulegroup>

  <rulegroup id="VEN_BEN" name="ven vs. ben">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>tan</token>
          <token>ven</token>
          <token regexp="yes">com[oa]</token>
      </pattern>
      <message>A forma 'ben' é probabelmente un adverbio e, por tanto, debe escribirse con 'b'. Quería vostede dicir <suggestion>\1 ben \2</suggestion>?</message>
      <example correction="tan ben ven">Xoga <marker>tan ven coma</marker> o pai.</example>
      <example>Xoga <marker>tan ben coma</marker> o pai.</example>
    </rule>
    <!-- falso positivo: cando o amoso ven sempre un rapaz -->
    <!-- Created by Susana Sotelo Docío >
    <rule>
      <pattern mark_from="1">
          <token postag="V[SM][SMI]...." postag_regexp="yes">
            <exception postag="V[SM][SMI]...." postag_regexp="yes" negate_pos="yes"/></token>
          <token>ven</token>
      </pattern>
      <message>A forma 'ben' é probabelmente un adverbio e, por tanto, debe escribirse con 'b'. Quería vostede dicir <suggestion>\1 ben</suggestion>?</message>
      <example type="incorrect">Vexo <marker>ven</marker> o esquema proposto.</example>
      <example>Vexo <marker>ben</marker> o esquema proposto.</example>
    </rule>
            -->
  </rulegroup>

    <rule id="EN_DE_SEGUIDA" name="enseguida, deseguida">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">en|de</token>
          <token>seguida</token>
      </pattern>
      <message>As formas &quot;<match no="1"/>&quot; e &quot;seguida&quot; forman en galego unha locución que se escribe unida. Quería vostede dicir <suggestion>\1\2</suggestion>?</message>
      <example correction="enseguida">Deuse conta <marker>en seguida</marker>.</example>
      <example correction="Deseguida"><marker>De seguida</marker> nos percatamos das notas que a constitúen.</example>
    </rule>

    <rule id="DE_SEGUIDO_CONTADO_CONTINO" name="deseguido, decontado, decontino">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>de</token>
          <token regexp="yes">seguido|contado|contino</token>
      </pattern>
      <message>As formas &quot;de&quot; e &quot;<match no="2"/>&quot; forman en galego unha locución que se escribe unida. Quería vostede dicir <suggestion>\1\2</suggestion>?</message>
      <example correction="deseguido">A masa mestúrase e <marker>de seguido</marker> envásase en recipientes.</example>
      <example correction="decontado">Recoñecera <marker>de contado</marker> os axentes da Stasi.</example>
    </rule>

    <rule id="TAL_VEZ" name="talvez">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>tal</token>
          <token>vez</token>
      </pattern>
      <message>As formas &quot;tal&quot; e &quot;vez&quot; escrébense unidas cando forman unha locución. Quería vostede dicir <suggestion>\1\2</suggestion>?</message>
      <example correction="Talvez"><marker>Tal vez</marker> a maneira máis profusa de ser europeo.</example>
    </rule>

    <rule id="DACORDO" name="dacordo (de acordo)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>dacordo</token>
      </pattern>
      <message>A locución &quot;de acordo&quot; escríbese en galego separada. Quería vostede dicir <suggestion>de acordo</suggestion>?</message>
      <example correction="De acordo"><marker>Dacordo</marker> con iso, será preciso aumentar as inversións.</example>
    </rule>

    <rule id="A_REO" name="arreo">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>a</token>
          <token>reo</token>
      </pattern>
      <message>As formas 'a' e 'reo' normalmente forman en galego unha locución que se escribe preferibelmente unida. Quería vostede dicir <suggestion>\1r\2</suggestion>?</message>
      <example correction="arreo">Traballaron <marker>a reo</marker> no proxecto.</example>
    </rule>

  <rulegroup id="A_DE_EN_CON_O" name="preposición (a, de, en, con) e artigo de topónimo">
    <!-- Preposicións: a + a,as -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern case_sensitive="yes">
          <token regexp="yes">a|A</token>
          <token regexp="yes">A|As</token>
          <token regexp="yes">[A-ZÁÉÍÓÚ][a-záéíóúüñ]+</token>
      </pattern>
      <message>Algunhas preposicións seguidas de topónimos con artigo determinado contraen con estes. Quería vostede dicir <suggestion><match no="2" regexp_match="A" regexp_replace="á"/> \3</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="á Ramallosa">Vai tódolos días de Vigo <marker>a A Ramallosa</marker>.</example>
    </rule>

    <!-- Preposicións: a + o,os -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern case_sensitive="yes">
          <token regexp="yes">a|A</token>
          <token regexp="yes">O|Os</token>
          <token regexp="yes">[A-ZÁÉÍÓÚ][a-záéíóúüñ]+</token>
      </pattern>
      <message>Algunhas preposicións seguidas de topónimos con artigo determinado contraen con este. Quería vostede dicir <suggestion>\1<match case_conversion="startlower" no="2"/> \3</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="ao Carballiño">Foi mercalo <marker>a O Carballiño</marker>.</example>
    </rule>

    <!-- Preposicións: de, en, con, a + o,os -->
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern case_sensitive="yes">
          <token regexp="yes">(?iu)de|con|en</token>
          <token regexp="yes">O|A|Os|As</token>
          <token regexp="yes">[A-ZÁÉÍÓÚ][a-záéíóúüñ]+</token>
      </pattern>
      <message>Algunhas preposicións seguidas de topónimos con artigo determinado contraen con este. Quería vostede dicir <suggestion><match no="1" regexp_match=".?([dDcCnN]).*" regexp_replace="$1"/><match case_conversion="startlower" no="2"/> \3</suggestion>?</message>
      <short>Forma incorrecta</short>
      <example correction="do Morrazo">As praias <marker>de O Morrazo</marker>.</example>
      <example correction="na Ramallosa">Casou <marker>en A Ramallosa</marker>.</example>
    </rule>

  </rulegroup>

    <rule id="A_DE_COTIO" name="acotío, decotío">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">de|a</token>
          <token>cotío</token>
      </pattern>
      <message>Posíbel erro: a locución adverbial &quot;<match no="1"/> cotío&quot; escrébese en galego todo xunto. Quería vostede dicir <suggestion><match no="1"/>cotío</suggestion>?</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="acotío">Viaxa a Alemaña <marker>a cotío</marker> por razóns de traballo.</example>
    </rule>

    <rule id="DE_VAGAR_COTE" name="devagar, decote">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>de</token>
          <token regexp="yes">vagar|cote</token>
      </pattern>
      <message>Posíbel erro: a locución adverbial &quot;de <match no="2"/>&quot; escrébese en galego todo xunto. Quería vostede dicir <suggestion>\1\2</suggestion>?</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="devagar">Foi andando <marker>de vagar</marker> pola braña.</example>
      <example correction="decote">Vai <marker>de cote</marker> ao parque.</example>
    </rule>

    <rule id="A_MODO_PENAS" name="a modo, a penas (amodo, apenas)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>a</token>
          <token regexp="yes">modo|modiño|penas</token>
      </pattern>
      <message>Posíbel erro: a locución adverbial &quot;a <match no="2"/>&quot; escrébese en galego todo xunto. Quería vostede dicir <suggestion>\1\2</suggestion>?</message>
      <short>Posíbel forma incorrecta</short>
      <example correction="amodo">Vai <marker>a modo</marker> para non caer.</example>
    </rule>

  <rulegroup id="UN_AVE" name="un ave (unha ave)" default="off">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">[ndc]?un|[nd]?algún|ningún</token>
          <token regexp="yes" postag="NCFS000">h?[aá].*</token>
      </pattern>
      <message>Posíbel erro: en galego os substantivos femininos que comezan por 'a-' inicial tónico non implican modificacións no determinante que os precede. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)(.*)[úu]n" regexp_replace="$1unha"/> \2</suggestion>?</message>
      <example correction="dunha ave">É unha cría <marker>dun ave</marker> rapaz.</example>
      <example>É unha cría <marker>dunha ave</marker> rapaz.</example>
    </rule>

    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">[nd]?o</token>
          <token regexp="yes" postag="NCFS000">h?[aá].*</token>
      </pattern>
      <message>Posíbel erro: en galego os substantivos femininos que comezan por 'a-' inicial tónico non implican modificacións no determinante que os precede. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)([nd])?o" regexp_replace="$1a"/> \2</suggestion>?</message>
      <example correction="na alma">Sentíu unha profunda ferida <marker>no alma</marker>.</example>
      <example>Sentíu unha profunda ferida <marker>na alma</marker>.</example>
    </rule>

    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>co</token>
          <token regexp="yes" postag="NCFS000">h?[aá].*</token>
      </pattern>
      <message>Posíbel erro: en galego os substantivos femininos que comezan por 'a-' inicial tónico non implican modificacións no determinante que os precede. Quería vostede dicir <suggestion>coa \2</suggestion>?</message>
      <example correction="coa arma">Fíxolle unha profunda ferida <marker>co arma</marker>.</example>
      <example>Fíxolle unha profunda ferida <marker>coa arma</marker>.</example>
    </rule>
  </rulegroup>

  <rulegroup id="ESTE_ESTA" name="éste (este)">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">ést?[ea]s?</token>
      </pattern>
      <message>Posíbel erro: en galego os pronomes demostrativos (este, ese, aquel) non levan til. Quería vostede dicir <suggestion><match no="1" regexp_match="(?iu)é(.*)" regexp_replace="e$1"/></suggestion>?</message>
      <example correction="esta">Eles consideran que se lle das confianza á xente <marker>ésta</marker> responderá correctamente.</example>
    </rule>
  </rulegroup>
 </category>

 <category id="CAT8" name="Fraseoloxía">
  <rulegroup id="LOCUCIÓNS" name="locucións e frases feitas">
    <rule id="DE_REOLLO" name="de reollo (de esguello)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>de</token>
          <token>reollo</token>
      </pattern>
      <message>A locución &quot;de reollo&quot; é un castelanismo. Empregue no seu sitio <suggestion>de esguello</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="de esguello">Observeina <marker>de reollo</marker>.</example>
    </rule>

    <rule id="VISTO_BO" name="visto bo (visto e prace)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>visto</token>
          <token>bo</token>
      </pattern>
      <message>A locución &quot;visto bo&quot; non é propia do galego. Empregue mellor <suggestion>visto e prace</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="visto e prace">Patrimonio apraza o seu <marker>visto bo</marker> á recuperación das mámoas de Castiñeiras.</example>
    </rule>

    <rule id="DANOS_E_PREXUIZOS" name="danos e prexuízos (danos e perdas)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>danos</token>
          <token>e</token>
          <token regexp="yes">p(re|er)xu[íi](ci|z)os</token>
      </pattern>
      <message>A expresión &quot;danos e \3&quot; non é correcta en galego. Empregue mellor <suggestion>danos e perdas</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="danos e perdas">Tivo que pagarlle <marker>danos e perxuízos</marker> polo incidente.</example>
    </rule>

    <rule id="PASAR_POLO_ARO" name="pasar polo aro (vir ao rego)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">pasar</token>
          <token>polo</token>
          <token>aro</token>
      </pattern>
      <message>A expresión &quot;\1 polo aro&quot; non é correcta en galego. Empregue mellor <suggestion><match no="1" postag="(.*)" postag_replace="$1">vir</match> ao rego</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="veu ao rego">O alumnado non <marker>pasou polo aro</marker> cando o responsable presentou as súas propostas.</example>
    </rule>

    <rule id="ACUSE_DE_RECIBO" name="acuse de recibo (xustificante de recepción)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">acuses?</token>
          <token>de</token>
          <token>recibo</token>
      </pattern>
      <message>A expresión &quot;\1 de recibo&quot; non é correcta en galego. Empregue mellor <suggestion>xustificante de recepción</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="xustificante de recepción">Deberá presentar o <marker>acuse de recibo</marker> cuberto e selado.</example>
    </rule>

    <rule id="ESTIMAR_UNHA_DEMANDA" name="estimar unha demanda (admitir unha demanda)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">estimar</token>
          <token regexp="yes">a|unha</token>
          <token>demanda</token>
      </pattern>
      <message>A expresión &quot;\1 \2 demanda&quot; non é aconsellábel en galego. Empregue mellor <suggestion>admitir \2 demanda</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="admitir a demanda">O xuíz <marker>estimou a demanda</marker> das traballadoras.</example>
      <example>O xuíz <marker>admitiu a demanda</marker> das traballadoras.</example>
    </rule>

    <rule id="BALANZA_DE_PAGOS" name="balanza de pagos (balanza de pagamentos)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token inflected="yes">balanza</token>
          <token>de</token>
          <token>pagos</token>
      </pattern>
      <message>A expresión &quot;\1 de pagos&quot; non é aconsellábel en galego. Empregue mellor <suggestion>\1 de pagamentos</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="balanza de pagamentos">A situación actual é de déficit na <marker>balanza de pagos</marker>.</example>
    </rule>

    <rule id="BUZON_DE_SUXERENCIAS" name="buzón de suxerencias (caixa de suxestións)">
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token regexp="yes">buzóns?</token>
          <token>de</token>
          <token>suxerencias</token>
      </pattern>
      <message>A expresión &quot;\1 de suxerencias&quot; non é correcta en galego. Empregue mellor <suggestion>caixa de suxestións</suggestion>.</message>
      <short>Locución incorrecta.</short>
      <example correction="caixa de suxestións">O cliente ten á súa disposición un <marker>buzón de suxerencias</marker>.</example>
      <example>O cliente ten á súa disposición unha <marker>caixa de suxestións</marker>.</example>
    </rule>
  </rulegroup>

 </category>

 <category id='REPETITIONS' name='Repetições' type='duplication'>

    <rule id='CONJUNCTION_REPETITION' name="Repetición de conxunción">
    <!-- Created by Tiago F. Santos, Portuguese rule, 2016-12-03	-->
      <pattern>
          <token regexp="yes" skip='6'>ademais|aínda|alén|conforme|entanto|mais|obstante|porén|pronto|senón|sexa|tamén
            <exception scope='next' postag_regexp='yes' postag="_PUNCT|''"/></token>
        <marker>
          <token><match no="0"/></token>
        </marker>
      </pattern>
      <message>Repetición estilisticamente incorrecta.</message>
    <!-- url>https://pt.wikiversity.org/wiki/Norma_padrão_da_língua_portuguesa/Repetições_e_elipses</url XXX localize URL -->
      <example correction="">Tamén escribiu <marker>tamén</marker> para un xornal nacional.</example>
      <example correction="">Aínda que non é <marker>aínda</marker> que definitivo.</example>
      <example>Sexa por vergoña, sexa por timidez.</example>
    </rule>

  <rulegroup id="WORD_REPETITION" name="Palabra repetida">
    <rule>
    <!-- Created by Susana Sotelo Docío -->
      <pattern>
          <token>
            <exception postag="SENT_START"/></token>
          <token><match no="0"/>
            <exception regexp="yes">\p{Lu}\p{Ll}+|\.|\p{Lu}\.|se|moi|son|sapiens</exception></token>
      </pattern>
      <message>Posíbel erro tipográfico: repetíu unha palabra.</message>
        <suggestion>\1</suggestion>
      <example correction="linguas">Como acontece coa maior parte das <marker>linguas linguas</marker> romances.</example>
      <example>Como acontece coa maior parte das <marker>linguas</marker> romances.</example>
    </rule>
  </rulegroup>

  <rulegroup id='PHRASE_REPETITION' name="Duplicación de palabras (por alí por alí)">
    <!--    Localized and improved by Tiago F. Santos, from english grammar.xml, 2016-11-30    -->
      <short>Segmento duplicado</short>
    <rule>
      <antipattern>
          <token regexp='yes'>un(?:ha)?</token>
          <token regexp='yes'>amig[ao]</token>
          <token>de</token>
      </antipattern>
      <pattern>
          <token negate_pos="yes" postag="SENT_START" regexp="yes">
            <exception/>\p{L}+</token>
          <token regexp="yes">
            <exception>e</exception>\p{L}+</token>
          <token regexp="yes">
            <exception>e</exception>\p{L}+</token>
          <token><match no="0"/></token>
          <token><match no="1"/></token>
          <token><match no="2"/></token>
      </pattern>
      <message>Este segmento está duplicado. Talvez queira, só, dicir <suggestion>\1 \2 \3</suggestion>.</message>
      <example correction="do final de">Hepatologia <marker>do final de do final de</marker> século.</example>
      <example>Un amigo dun amigo de seu pai non é necesariamente un amigo.</example>
    </rule>
    <rule>
      <antipattern>
          <token regexp='yes'>cara|día|face|lado|paso|pouco|terra</token>
          <token>a </token>
          <token><match no="0"/></token>
      </antipattern>
      <pattern>
          <token negate_pos="yes" postag="SENT_START" regexp="yes">
            <exception>e</exception>\p{L}+</token>
          <token regexp="yes">
            <exception>e</exception>\p{L}+</token>
          <token><match no="0"/></token>
          <token><match no="1"/></token>
      </pattern>
      <message>Este segmento está duplicado. Talvez queira, só, dicir <suggestion>\1 \2</suggestion>.</message>
      <example correction="do final">Hepatologia <marker>do final do final</marker> de século.</example>
      <example correction="colocou o">El volveu novamente ao estudo, e <marker>colocou o colocou o</marker> candeeiro em cima da mesa.</example>
      <example correction="vén da">A carruaje con accesibilidade para deficientes motores <marker>vén da vén da</marker> Universidade do Porto.</example>
      <example>Todo o que eles querían era ficar tranquilos, e ollar e ollar e ollar.</example>
      <example>As instrucións son executadas paso a paso a partir do comezo da lista.</example>
      <example>…integrar o día a día a partir de o…</example>
      <example>Imos pensar en solucións terra-a-terra.</example>
    </rule>
  </rulegroup>

    <rule id='REPEATED_WORDS' name="Palavras repetidas (2x)" default='on' type='style'>
    <!-- Created by Tiago F. Santos , Portuguese rule, 2016-12-03 		-->
    <!-- XXX If the user finds this rule too intrusive, they will disable it and use REPEATED_WORDS_3X as a fallback		 	-->
      <antipattern>
          <token regexp='yes'>cara|día|face|fronte|paso|porta|tempos?|terra|t[éê]te</token>
          <token min='0' regexp='yes' spacebefore='no'>&hifen;</token>
          <token regexp='yes'>[àa]o?</token>
          <token min='0' regexp='yes' spacebefore='no'>&hifen;</token>
          <token regexp='yes'>cara|día|face|fronte|paso|porta|tempos?|terra|t[*éê]te</token>
      </antipattern>
      <antipattern>
          <token/>
          <token regexp='yes'>é|son</token>
          <token><match no="0"/></token>
          <token>&quot;</token>
      </antipattern>
      <antipattern>
          <token/>
          <token regexp='yes'>é|son</token>
          <token><match no="0"/></token>
          <token postag_regexp='yes' postag="_PUNCT|''"/>
      </antipattern>
      <antipattern>
          <token>de</token>
          <token/>
          <token regexp='yes'>en|para</token>
          <token><match no="1"/></token>
      </antipattern>
      <antipattern>
          <token/>
          <token regexp='yes'>a|e|tras</token>
          <token><match no="0"/></token>
      </antipattern>
      <pattern>
          <token>
            <exception regexp='yes'>&hifen;</exception></token>
          <token skip='-1'/>
        <marker>
          <token><match no="1"/>
            <exception postag='(?:C|D|NP|P|SP|Z).+|R[GN].*|_PUNCT|_GN_|UNKNOWN' postag_regexp='yes'/>
            <exception inflected='yes' regexp='yes'>&verbos_auxiliares_part_pasado;</exception>
            <exception regexp='yes'>son|&divisas;|&unidades_de_medida_por_extenso;|&expressoes_de_tempo;</exception>
            <exception regexp='yes'>[\d,. ]*['"/\|%º°′″‴]*(&unidades_de_medida;){0,1}</exception>
          </token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>Para mellorar o texto, procure variar máis os termos utilizados.</message>
      <!-- url>https://pt.wikiversity.org/wiki/Norma_padrão_de a_lingua_portuguesa/Repeticións_e_elipses</url-->
      <short>Problema de estilo. Palabra repetida.</short>
      <example correction="">Saíu de coche, logo despois de pegar nas chaves do <marker>coche</marker>.</example>
      <!-- example correction="">Principalmente migrantes teñen procurado residencia en Alagoas, estabelecéndose <marker>principalmente</marker> na costa.</example -->
      <example type='incorrect'>As repeticións empobrecem o texto, porque as <marker>repeticións</marker> son aborrecidas de ler.</example>
      <example>Non virá máis.</example>
      <example>Descoñezo o significado da palabra "imposíbel".</example>
      <example>Proteínas son biopolímeros cuxas unidades monoméricas son os aminoácidos.</example>
      <example>…pola posesión do diploma fornecido pola autoridade educacional e…</example>
      <example>Club de Choro do Río de Xaneiro</example>
      <example>Grupos indíxenas Pataxó, Pataxó-hã-hã-hãe, Quiriri e o extinguido Camacã.</example>
      <example>Isto son exemplos do día a día.</example>
      <example>É preciso dar tempo ao tempo.</example>
      <example>371 575 m³ para Gas Natural Comprimido, 243 024 m³ para usuarios comerciais, 120 119 m³ para</example>
      <example>99,6% con iluminación pública, 99,3% con recada de residuos e 89,7% dos lares ten</example>
      <example>Andou de estación en estación á procura dela.</example>
      <example correction="">Andou de estación si en <marker>estación</marker> non á procura dela.</example>
      <example>Cerca de 42% de todos os xudeus residen en Israel e cerca de 42% nos Estados Unidos e Canadá, coa maioría restante na Europa.</example>
      <example>Non estou totalmente satisfeito coa situación, mais regras son regras", dixen Bolt.</example>
      <example>Hectáreas e hectáreas de terra ardida.</example>
      <example>Bateu a marca na proba dos cen metros, moi antes de considerar competir nos catrocentos metros barreiras.</example>
      <example>Traballo é traballo, aguardiente é aguardiente.</example>
    </rule>

    <rule id='REPEATED_WORDS_3X' name="Palabras repetidas (3x)" default='on' type='style'>
    <!-- Created by Tiago F. Santos , Portuguese rule, 2016-12-03 	-->
      <antipattern>
          <token>de</token>
          <token/>
          <token regexp='yes'>en|para</token>
          <token><match no="2"/></token>
      </antipattern>
      <pattern>
          <token>
            <exception regexp='yes'>&hifen;</exception></token>
          <token skip='-1'/>
          <token><match no="1"/></token>
          <token skip='-1'/>
        <marker>
          <token><match no="1"/>
            <exception postag='(?:C|D|NP|P|SP|Z).+|R[GN].*|_PUNCT|_GN_' postag_regexp='yes'/>
            <exception inflected='yes' regexp='yes'>&verbos_auxiliares_part_pasado;</exception>
            <exception regexp='yes'>son|&divisas;|&unidades_de_medida_por_extenso;</exception>
            <exception regexp='yes'>[\d,. ]*['"/\|%º°′″‴]*(&unidades_de_medida;){0,1}</exception>
          </token>
        </marker>
          <token negate='yes' regexp='yes'>&hifen;</token>
      </pattern>
      <message>Para mellorar o texto, procure variar máis os termos utilizados.</message>
      <url>https://gl.wikipedia.org/wiki/Figura_estil%C3%ADstica</url>
      <short>Problema de estilo. Palabra repetida.</short>
      <example type='incorrect'>A astronomía profesional foi dividido en dous ramos: a astronomía 'observacional' e a <marker>astronomía</marker> teórica.</example>
      <example type='incorrect'>Repeticións... as repeticións empobrecen o texto, porque as <marker>repeticións</marker> son aborrecidas de ler.</example>
      <example>Saíu de coche, logo despois de pegar nas chaves do <marker>coche</marker>.</example>
      <example>Non virá máis.</example>
      <example>Descoñezo o significado da palabra "imposíbel".</example>
      <example>Proteínas son biopolímeros cuxas unidades 'monoméricas' son os aminoácidos.</example>
      <example>…pola posesión do diploma fornecido pola autoridade educacional e…</example>
      <example>Club de Choro do Río de Xaneiro</example>
      <example>Grupos indíxenas Pataxó, Pataxó-hã-hã-hãe, Quiriri e o extinguido Camacã.</example>
      <example>371 575 m³ para Gas Natural Comprimido, 243 024 m³ para usuarios comerciais, 120 119 m³ para</example>
      <example>99,6% con iluminación pública, 99,3% con recada de residuos e 99,7% dos lares ten</example>
      <!--example correction="">Principalmente migrantes teñen procurado residencia principalmente en Alagoas, estabelecéndose <marker>principalmente</marker> na costa.</example-->
      <example>Principalmente migrantes teñen procurado residencia en Alagoas, estabelecéndose <marker>principalmente</marker> na costa.</example>
    </rule>

 </category>

 <category id="PUNCTUATION" name="Pontuación" default="off">

    <rule id="FINAL_PUNCTUATION" name="Puntuación final en falta">
    <!-- Localized from German grammar.xml by Tiago F. Santos,  2017-08-19      -->
      <antipattern>
          <token postag="SENT_START"/>
          <token skip="-1">
            <exception postag="V.+" postag_regexp="yes"/>
            <exception scope="next" postag="V.+" postag_regexp="yes"/></token>
          <token postag="SENT_END">
            <exception postag="V.+" postag_regexp="yes"/></token>
      </antipattern>
      <antipattern>
          <token postag="SENT_START"/>
          <token max="3"/>
          <token postag="SENT_END"/>
      </antipattern>
      <pattern>
          <token postag="SENT_START"/>
          <token min="0" max="1" regexp="yes">«|“|"</token>
          <token skip="-1" case_sensitive="yes" regexp="yes">[A-ZÁÀÂÉÊÍÓÔÚ].+</token>
        <marker>
          <token postag="SENT_END" regexp="yes">[a-záàâéêíóú][a-záàâéêíóú]+</token>
        </marker>
      </pattern>
      <message>Puntuación final en falta.</message>
        <suggestion>\4.</suggestion>
        <suggestion>\4?</suggestion>
        <suggestion>\4!</suggestion>
        <suggestion>\4:</suggestion>
      <example correction="casa.|casa?|casa!|casa:">Vou en dirección a <marker>casa</marker></example>
    </rule>

 </category>

 <category id="CREATIVE_WRITING" name="Escrita Criativa" type="style" default='off'>

    <!-- ====================================================================== -->
    <!--         E-Prime        https://en.wikipedia.org/wiki/E-Prime           -->
    <!-- ====================================================================== -->
    <rule id="E_PRIME_STRIT" name="Escrita Creativa: E-Prime: todas as formas do verbo 'ser' e 'estar'" default='off'>
    <!-- Created by Tiago F. Santos, 2018-07-09 -->
      <pattern>
          <token inflected="yes" regexp='yes'>ser|estar</token>
      </pattern>
      <message>De acordo coa versión inglesa do E-Prime, evitar formas verbais do verbo 'ser' e 'estar' torna a comunicación máis clara, precisa, e menos dogmática. Tente utilizar un verbo alternativo ou refacer a frase.</message>
      <url>https://litemind.com/e-prime/</url>
      <short>De acordo coa lóxica do E-Prime, debe evitar os verbos 'ser' e 'estar'.</short>
      <example type="incorrect" correction="">Isto <marker>é</marker> errado…</example>
      <example>Isto non se <marker>conforma</marker> com o meu coñecemento actual…</example>
      <example>Os dados non <marker>confirman</marker> esa afirmación…</example>
    </rule>

    <!--rule id="E_PRIME_LOOSE" name="E-Prime: 'ser' e 'estar' como verbos princiais" default='off'>
        <Created by Tiago F. Santos, 2018-07-09>
      <antipattern>
          <token inflected="yes">be</token>
          <token min='0' max='2' postag_regexp='yes' postag='R.+'/>
          <token postag_regexp='yes' postag='V.+'>
            <exception postag_regexp='yes' postag='N.+'/></token>
      </antipattern>
      <pattern>
          <token inflected="yes">be</token>
      </pattern>
      <message>De acordo coa versión inglesa do E-Prime, evitar formas verbais do verbo 'ser' e 'estar' torna a comunicación máis clara, precisa, e menos *dogmática. Tente utilizar un verbo alternativo ou refacer a frase.</message>
      <url>https://www.youtube.com/watch?v=y4h2tJuy62U</url>
      <url>https://rationalwiki.org/wiki/E-Prime</url>
      <url>https://www.youtube.com/watch?v=sl4UZDLFNT0</url>
      <short>De acordo coa lóxica do E-Prime, debe evitar os verbos 'ser' e 'estar'.</short>
      <example type="incorrect" correction="">This <marker>is</marker> right…</example>
      <example>This <marker>is</marker> conforming with my knowledge…</example>
      <example>This <marker>conforms</marker> with my current knowledge…</example>
    </rule -->

 </category>

 <category id='DEVELOPMENT' name="Desenvolvemento" type="grammar" default='off'>

    <rule id="UNKNOWN_WORD" name="Desenvolvemento: palabra sen POS">
    <!-- Created by Tiago F. Santos, Portuguese rule, 2017-07-24 -->
      <pattern>
          <token postag='UNKNOWN'/>
      </pattern>
      <message>Palabra non identificada.</message>
      <example correction=''>De acordo co teorema central do límite, a distribución normal aborda o comportamento <marker>assentótico</marker> de varias distribucións de probabilidade.</example>
      <example>Xuros do 0,2% ao ano.</example>
    </rule>

 </category>
</rules>
