Revision: 8192
          
http://languagetool.svn.sourceforge.net/languagetool/?rev=8192&view=rev
Author:   arysin
Date:     2012-10-09 02:04:05 +0000 (Tue, 09 Oct 2012)
Log Message:
-----------
Some initial work based on new Ukrainian pos tagger dictionary

Modified Paths:
--------------
    
trunk/JLanguageTool/src/main/java/org/languagetool/tagging/uk/UkrainianTagger.java
    trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/README
    
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/ukrainian.dict
    trunk/JLanguageTool/src/main/resources/org/languagetool/rules/uk/grammar.xml

Added Paths:
-----------
    
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/tagset.txt

Modified: 
trunk/JLanguageTool/src/main/java/org/languagetool/tagging/uk/UkrainianTagger.java
===================================================================
--- 
trunk/JLanguageTool/src/main/java/org/languagetool/tagging/uk/UkrainianTagger.java
  2012-10-08 19:12:24 UTC (rev 8191)
+++ 
trunk/JLanguageTool/src/main/java/org/languagetool/tagging/uk/UkrainianTagger.java
  2012-10-09 02:04:05 UTC (rev 8192)
@@ -1,5 +1,5 @@
 /* LanguageTool, a natural language style checker 
- * Copyright (C) 2007 Daniel Naber (http://www.danielnaber.de)
+ * Copyright (C) 2006 Daniel Naber (http://www.danielnaber.de)
  * 
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -16,11 +16,28 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
  * USA
  */
-
 package org.languagetool.tagging.uk;
 
-import org.languagetool.tagging.Tagger;
+import java.util.Locale;
 
-public class UkrainianTagger extends UkrainianMyspellTagger implements Tagger {
+import org.languagetool.tagging.BaseTagger;
 
+/** 
+ * Ukrainian part-of-speech tagger.
+ * See README for details, the POS tagset is
+ * described in tagset.txt
+ * 
+ * @author Andriy Rysin
+ */
+public class UkrainianTagger extends BaseTagger {
+
+  @Override
+  public final String getFileName() {
+    return "/uk/ukrainian.dict";    
+  }
+  
+  public UkrainianTagger() {
+    super();
+    setLocale(new Locale("uk", "UA"));
+  }
 }

Modified: 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/README
===================================================================
--- trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/README  
2012-10-08 19:12:24 UTC (rev 8191)
+++ trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/README  
2012-10-09 02:04:05 UTC (rev 8192)
@@ -1,40 +1,7 @@
 In this directory initial fsa files for Ukrainian dictionary will reside.
 
-Currently the only tagger available is based on myspell uk_UA.dic dictionary.
-It provides three POS tags "noun", "verb" and "adj" but only for lemmas (no 
inflection engine yet).
-It also provides "plural" tag for nouns which can be only plural.
+Currently the only POS tag dictionary is under development, it's based on 
spell-uk
+project and includes some words that start with А. Also there are some words 
added
+for the grammar rule tests.
 
-Download dictionary from from http://dict.linux.org.ua/other/uk_UA.dic.bz2 
-and unpack it in this directory.
-
-
-Список теґів (pos tags):
-
-1. підтримуються:
-noun   іменник
-verb   дієслово
-adj            прикметник
-
-2. Плануються:
-plural множина (підтримується зараз для іменників тільки множини)
-single однина
-
-musc   чоловічий
-fem            жіночий
-neut   середній
-
-  відмінки:
-v_naz
-v_rod
-v_dav
-v_zna
-v_oru
-v_mis
-v_kly
-
-future майбутній час
-past   минулий час
-present        теперішній час
-
-refl   зворотня форма (дієслова)
-
+See tagset.txt for description of the tags. 
\ No newline at end of file

Added: 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/tagset.txt
===================================================================
--- 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/tagset.txt  
                            (rev 0)
+++ 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/tagset.txt  
    2012-10-09 02:04:05 UTC (rev 8192)
@@ -0,0 +1,38 @@
+Список теґів (pos tags):
+
+1. підтримуються:
+noun   іменник
+verb   дієслово
+adj            прикметник
+pryim  прийменник
+
+p      множина
+s      однина
+
+m      чоловічий
+f      жіночий
+n      середній
+
+відмінки:
+v_naz
+v_rod
+v_dav
+v_zna
+v_oru
+v_mis
+v_kly
+
+потребує відмінку:
+rv_naz
+rv_rod
+rv_dav
+rv_zna
+rv_oru
+rv_mis
+rv_kly
+
+future майбутній час
+past   минулий час
+present        теперішній час
+
+refl   зворотня форма (дієслова)


Property changes on: 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/tagset.txt
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Modified: 
trunk/JLanguageTool/src/main/resources/org/languagetool/resource/uk/ukrainian.dict
===================================================================
(Binary files differ)

Modified: 
trunk/JLanguageTool/src/main/resources/org/languagetool/rules/uk/grammar.xml
===================================================================
--- 
trunk/JLanguageTool/src/main/resources/org/languagetool/rules/uk/grammar.xml    
    2012-10-08 19:12:24 UTC (rev 8191)
+++ 
trunk/JLanguageTool/src/main/resources/org/languagetool/rules/uk/grammar.xml    
    2012-10-09 02:04:05 UTC (rev 8192)
@@ -12,7 +12,7 @@
 
 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
+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
@@ -111,11 +111,11 @@
         <!-- TODO:
                 додати підтримку POS та словоформ
         -->
-        <rulegroup name="Узгодженість" id="CONISTENCY1">
+        <rulegroup name="Узгодженість частин речення" 
id="CONISTENCY_SENTENSE_PARTS_1">
             <rule>
                 <pattern>
-                    <token regexp="yes">в|у</token>
-                    <token postag="verb"></token>
+                    <token postag_regexp="yes" postag="pryim.*"></token>
+                    <token postag_regexp="yes" postag="verb.*"></token>
                 </pattern>
                 <message>Прийменник перед дієсловом 
<suggestion>\2</suggestion></message>
                 <example type="correct">Їм треба їхати.</example>
@@ -124,19 +124,30 @@
             </rule>
         </rulegroup>
 
-        <!-- нереальне правило - лише для тестування теґу "refl"
-        <rulegroup name="Узгодженість 2" id="CONISTENCY2">
+        <rulegroup name="Узгодженість відмінку" id="CONISTENCY_VIDM_1">
+            <rule>
+                <pattern>
+                    <token postag_regexp="yes" postag="pryim:rv_rod.*"></token>
+                    <token postag_regexp="yes" postag=".*:v_[^r].*"></token>
+                </pattern>
+                <message>Прийменник вимагає родового відмінку 
<suggestion>\2</suggestion></message>
+                <example type="correct">Для відтінку.</example>
+                <example type="correct">Для синього відтінку.</example>
+                <example type="incorrect"><marker>Для 
відтінок</marker>.</example>
+            </rule>
+        </rulegroup>
+
+        <rulegroup name="Узгодженість роду" id="CONISTENCY_GENDER">
                 <rule>
                     <pattern>
-                        <token regexp="yes" negate="yes">мусиш|хочеш</token>
-                        <token postag="refl"/>
+                        <token postag_regexp="yes" postag=".*:m:.*"/>
+                        <token postag_regexp="yes" postag=".*:n:.*"/>
                     </pattern>
-                    <message>Невірне використання зворотного дієслова 
<suggestion>Хочеш \2</suggestion></message>
-                    <example type="correct">Хочеш дивитися?</example>
-                    <example type="incorrect">Велике <marker>дерево 
дивитися</marker>.</example>
+                    <message>Неузгодженість роду</message>
+                    <example type="correct">абонентське абонування</example>
+                    <example type="incorrect"><marker>абонентський 
абонування</marker>.</example>
                 </rule>
         </rulegroup>
-         -->
     </category>
 
     <category name="Стиль">

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Languagetool-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/languagetool-commits

Reply via email to