Atd

Hi Daniel,
Today, I transformed some ATDs’ rules like below, I would like to know whether those rules are in LT already. Since those rules hasn’t example, I can’t check them by ruleEditer. Also, Auto-generated some disambig.xml.

Thanks
Regards
Mility

<rule name="Auto-generated rules your">    
<!-- your .*ing/VBG::word=you're \1::pivots=your,you're -->
  
    <rule id="YOUR_INGVBG" name="your ingVBG">    
        <pattern>
          <token>your</token>
          <token regexp="yes" postag="VBG">.*ing</token>
        </pattern>
        <message> Did you mean <suggestion>you're <match no="2"/></suggestion>?</message>
      </rule>

<!-- if your .*/DT::word=if you're \2::pivots=your,you're -->
  
    <rule id="IF_YOUR_DT" name="if your DT">    
        <pattern>
          <token>if</token>
          <token>your</token>
          <token postag="DT"></token>
        </pattern>
        <message> Did you mean <suggestion>if you're <match no="3"/></suggestion>?</message>
      </rule>

<!-- your the|a|an::word=you're \1::filter=none -->
  
    <rule id="YOUR_THE|A|AN" name="your the|a|an">    
        <pattern>
          <token>your</token>
          <token regexp="yes">the|a|an</token>
        </pattern>
        <message> Did you mean <suggestion>you're <match no="2"/></suggestion>?</message>
      </rule>

<!-- Your .*ing/VBG::word=You're \1::pivots=Your,You're -->
  
    <rule id="YOUR_INGVBG" name="Your ingVBG">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token regexp="yes" postag="VBG">.*ing</token>
        </pattern>
        <message> Did you mean <suggestion>You're <match no="2"/></suggestion>?</message>
      </rule>

<!-- If your .*/DT::word=If you're \2::pivots=your,you're -->
  
    <rule id="IF_YOUR_DT" name="If your DT">    
        <pattern case_sensitive="yes">
          <token>If</token>
          <token>your</token>
          <token postag="DT"></token>
        </pattern>
        <message> Did you mean <suggestion>If you're <match no="3"/></suggestion>?</message>
      </rule>

<!-- Your the|a|an::word=You're \1::filter=none -->
  
    <rule id="YOUR_THE|A|AN" name="Your the|a|an">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token regexp="yes">the|a|an</token>
        </pattern>
        <message> Did you mean <suggestion>You're <match no="2"/></suggestion>?</message>
      </rule>

<!-- about|around|at|by|for|from|in|near|of|on|over|through|to|towards|under|with|without you're::word=\0 your::pivots=you're,your -->
  
    <rule id="ABOUT|AROUND|AT_YOU'RE" name="about|around|at you're">    
        <pattern>
          <token regexp="yes">about|around|at|by|for|from|in|near|of|on|over|through|to|towards|under|with|without</token>
          <token>you</token>
          <token>'</token>
          <token>re</token>
        </pattern>
        <message> Did you mean <suggestion><match no="1"/> your</suggestion>?</message>
      </rule>

<!-- you're [a-z].*/NN|NNS are|is::word=your \1 \2::pivots=you're,your -->
  
    <rule id="YOU'RE_NN|NNS_ARE|IS" name="you're NN|NNS are|is">    
        <pattern>
          <token>you</token>
          <token>'</token>
          <token>re</token>
          <token regexp="yes" postag="NN|NN:UN?|NNS" postag_regexp="yes">[a-z].*</token>
          <token regexp="yes">are|is</token>
        </pattern>
        <message> Did you mean <suggestion>your <match no="2"/> <match no="3"/></suggestion>?</message>
      </rule>

<!-- to .*/VB you're .*/NN::word=\0 \1 your \3::pivots=you're,your -->
  
    <rule id="TO_VB_YOU'RE_NN" name="to VB you're NN">    
        <pattern>
          <token>to</token>
          <token postag="VB"></token>
          <token>you</token>
          <token>'</token>
          <token>re</token>
          <token postag="NN|NN:UN?" postag_regexp="yes"></token>
        </pattern>
        <message> Did you mean <suggestion><match no="1"/> <match no="2"/> your <match no="4"/></suggestion>?</message>
      </rule>

<!-- Your right::word=You're right::pivots=Your,You're::options=your,you're -->
  
    <rule id="YOUR_RIGHT" name="Your right">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token>right</token>
        </pattern>
        <message> Did you mean <suggestion>You're right</suggestion>?</message>
      </rule>

<!-- you're .* could|would|should|did|may|will|has|have|can|couldn't|wouldn't|shouldn't|didn't|won't|hasn't|haven't|can't::word=your \1 \2::pivots=you're,your -->

    <rulegroup id="YOU'RE__COULD|WOULD|SHOULD" name="you're  could|would|should">    
      <rule>
        <pattern>
          <token>you</token>
          <token>'</token>
          <token>re</token>
          <token></token>
          <token regexp="yes">couldn|wouldn|shouldn|didn|won|hasn|haven|can</token>
          <token>'</token>
          <token>t</token>
        </pattern>
        <message> Did you mean <suggestion>your <match no="2"/> <match no="3"/></suggestion>?</message>
      </rule>

  
    <rule>    
        <pattern>
          <token>you</token>
          <token>'</token>
          <token>re</token>
          <token></token>
          <token regexp="yes">could|would|should|did|may|will|has|have|can</token>
        </pattern>
        <message> Did you mean <suggestion>your <match no="2"/> <match no="3"/></suggestion>?</message>
      </rule>

</rulegroup>
<!-- to you're::word=to your::pivots=you're, your -->
  
    <rule id="TO_YOU'RE" name="to you're">    
        <pattern>
          <token>to</token>
          <token>you</token>
          <token>'</token>
          <token>re</token>
        </pattern>
        <message> Did you mean <suggestion>to your</suggestion>?</message>
      </rule>

<!-- your welcome::word=you're welcome::pivots=your,you're -->
  
    <rule id="YOUR_WELCOME" name="your welcome">    
        <pattern>
          <token>your</token>
          <token>welcome</token>
        </pattern>
        <message> Did you mean <suggestion>you're welcome</suggestion>?</message>
      </rule>

<!-- Your welcome::word=You're welcome::pivots=Your,You're::options=your,you're -->
  
    <rule id="YOUR_WELCOME" name="Your welcome">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token>welcome</token>
        </pattern>
        <message> Did you mean <suggestion>You're welcome</suggestion>?</message>
      </rule>

<!-- Your welcome 0END.0::word=You're welcome::filter=none -->
  
    <rule id="YOUR_WELCOME_0END0" name="Your welcome 0END0">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token>welcome</token>
          <token postag="SENT_END"></token>
        </pattern>
        <message> Did you mean <suggestion>You're welcome</suggestion>?</message>
      </rule>

<!-- you're are::word=you are::filter=none -->
  
    <rule id="YOU'RE_ARE" name="you're are">    
        <pattern>
          <token>you</token>
          <token>'</token>
          <token>re</token>
          <token>are</token>
        </pattern>
        <message> Did you mean <suggestion>you are</suggestion>?</message>
      </rule>

<!-- your are::word=you're::filter=none -->
  
    <rule id="YOUR_ARE" name="your are">    
        <pattern>
          <token>your</token>
          <token>are</token>
        </pattern>
        <message> Did you mean <suggestion>you're</suggestion>?</message>
      </rule>

<!-- your are .*ing::word=you are \2::filter=none -->
  
    <rule id="YOUR_ARE_ING" name="your are ing">    
        <pattern>
          <token>your</token>
          <token>are</token>
          <token regexp="yes">.*ing</token>
        </pattern>
        <message> Did you mean <suggestion>you are <match no="3"/></suggestion>?</message>
      </rule>

<!-- Your not::word=You're not::pivots=Your,You're -->
  
    <rule id="YOUR_NOT" name="Your not">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token>not</token>
        </pattern>
        <message> Did you mean <suggestion>You're not</suggestion>?</message>
      </rule>

<!-- your not::word=you're not::pivots=your,you're -->
  
    <rule id="YOUR_NOT" name="your not">    
        <pattern>
          <token>your</token>
          <token>not</token>
        </pattern>
        <message> Did you mean <suggestion>you're not</suggestion>?</message>
      </rule>

<!-- your in|at::word=you're \1::filter=none -->
  
    <rule id="YOUR_IN|AT" name="your in|at">    
        <pattern>
          <token>your</token>
          <token regexp="yes">in|at</token>
        </pattern>
        <message> Did you mean <suggestion>you're <match no="2"/></suggestion>?</message>
      </rule>

<!-- Your in|at::word=You're \1::filter=none -->
  
    <rule id="YOUR_IN|AT" name="Your in|at">    
        <pattern case_sensitive="yes">
          <token>Your</token>
          <token regexp="yes">in|at</token>
        </pattern>
        <message> Did you mean <suggestion>You're <match no="2"/></suggestion>?</message>
      </rule>

</category>

I suggest you create example sentences for each rule and test it on languagetool.org. If the error is found, we have the rule or a similar one already. For rules we’re going to add we need the example sentences anyway.

yes, those rules transformed from After The Deadline, Did we added rules from ATD before?

Yes, see comments like this in grammar.xml:

<!-- on going::word=ongoing -->

I think a comment with “::” indicates the rule has been ported from AtD.

yeah, thanks, I think I understand.