Revision: 6218 http://languagetool.svn.sourceforge.net/languagetool/?rev=6218&view=rev Author: janschreiber Date: 2012-01-10 23:06:12 +0000 (Tue, 10 Jan 2012) Log Message: ----------- [de] detect a few more cases with SUBSTANTIVE_KLEIN rule.
Modified Paths: -------------- trunk/JLanguageTool/src/rules/de/grammar.xml Modified: trunk/JLanguageTool/src/rules/de/grammar.xml =================================================================== --- trunk/JLanguageTool/src/rules/de/grammar.xml 2012-01-10 23:03:06 UTC (rev 6217) +++ trunk/JLanguageTool/src/rules/de/grammar.xml 2012-01-10 23:06:12 UTC (rev 6218) @@ -15,7 +15,9 @@ <!ENTITY advende " hier als Adverb gebraucht wird und daher kleingeschrieben werden muss."> <!ENTITY inwend "In der Wendung "> <!ENTITY getrennt "Bitte prüfen Sie die Getrenntschreibung: "> -<!ENTITY umgangsspr " ist eine umgangssprachliche Bezeichnung."> +<!ENTITY umgangsspr " ist eine umgangssprachliche Ausdrucksweise."> +<!ENTITY femsubklein "abfahrt|abgeordnete|absage|absteige|alternative|angst|ansage|antike|ausfuhr|aussage|blase|breite|bremse|bürde|burleske|bürste|dichte|düse|ebbe|ecke|ehe|ehre|eiche|eile|einreise|erde|fahrt|falle|falte|feile|ferne|fliege|fliese|flotte|flucht|folge|frage|fremde|fresse|geige|grenze|großtat|hacke|härte|hecke|heimfahrt|herfahrt|hinfahrt|höhle|kappe|klammer|klappe|klaue|klinge|klingel|kommode|kontroverse|kraft|krähe|kralle|kürze|kutsche|leere|lehre|leiste|leuchte|liebe|liege|liste|lüge|macht|marine|matte|messe|mühe|nachfrage|naht|nähe|offensive|pauke|pauschale|pause|perle|pfeife|platte|pleite|post|predigt|presse|probe|puste|quelle|rast|ratsche|rede|reihe|reise|reue|robbe|rolle|rückfrage|rüge|ruhe|runde|sahne|säure|schau|scheide|scheiße|schere|schiene|schippe|schlampe|schleuse|schlinge|schmelze|schmiede|schnalle|schneide|spritze|schuld|schürze|schwebe|schwelle|sorge|speise|spitze|stärke|stelle|stimme|strafe|strecke|strippe|stufe|stunde|stütze|suche|sucht|taste|tat|variable|wache|wand|wärme|weide|weihe|weile|weise|welle|werft|wiege|wiese|wolle|würde|würze|wüste|zahl|zeche|zeit|zentrale|zier|zufuhr|zwinge"> +<!ENTITY subkleinplural "abgeordneten|abstiege|ahnen|angriffe|anrufe|ansagen|anstiege|arabesken|arme|armen|äste|ausdrücke|ausgaben|auslagen|aussagen|ausschnitte|bahnen|bände|banden|bäume|bauten|bedenken|befehle|beilagen|belange|berge|berufe|bescheide|betten|blasen|blicke|bremsen|brüste|bündel|bürden|bürsten|delinquenten|dichter|dinge|drucke|düsen|ecken|eingaben|einschnitte|erlöse|falten|feinde|fiedeln|filme|fische|flauten|fliegen|fliesen|flöße|folgen|forscher|fragen|fransen|freunde|gebrechen|gefahren|gefreiten|geigen|gläubiger|greise|grenzen|großtaten|gruben|gründe|grüße|hacken|haken|härten|herzen|herzöge|hexen|hiebe|höhlen|illustrierten|initialen|intriganten|jungen|jünger|kappen|kehlen|klammern|klauen|klingen|knöpfe|knospen|knoten|köpfe|kosten|krähen|krallen|krebse|kreuze|kriege|kugeln|kuppeln|kutschen|lappen|laute|legenden|leisten|leuchten|lichter|liegen|listen|löcher|lügen|lumpen|matten|morde|mühen|münzen|nachfragen|nachkommen|nähte|pauschalen|pausen|perlen|pfeifen|pfiffe|platten|predigten|preise|quellen|ränge|räume|regeln|reichen|reifen|reisen|rentiere|robben|rollen|rückfragen|rüden|rümpfe|runden|sahne|säume|schächte|schäume|scheine|scheren|scherze|schienen|schippen|schleusen|schlingen|schnallen|schnitte|schotten|schritte|schufte|schulden|schürzen|schützen|schwächen|schwänze|siebe|siege|sitze|sorgen|speisen|spitzen|spritzen|stacheln|stände|stärken|stellen|steuern|stimmen|strafen|strippen|stufen|stunden|stützen|tage|tasten|taten|texte|träger|träume|türken|unterlagen|unterschiede|variablen|verbände|vermerke|virtuosen|vokale|vorbehalte|vorgaben|vorlagen|vorwürfe|wachen|wagen|waren|weichen|werte|wiesen|wünsche|wünschen|wüsten|zelte|zettel|zeugen|ziele|zimmer|zügel|zugriffe|zweifel"> <!ENTITY sprachadj1 "afrikanisch|altarabisch|altchinesisch|altgriechisch|altpersisch|amerikanisch|arabisch|chinesisch|dänisch|deutsch|englisch|finnisch|französisch|frühneuhochdeutsch|germanisch|griechisch|hocharabisch|hochchinesisch|hochdeutsch|holländisch|italienisch|japanisch|jiddisch|jugoslawisch|koreanisch|kroatisch|lateinisch|luxemburgisch|mittelhochdeutsch|neuhochdeutsch|niederländisch|norwegisch|persisch|polnisch|portugiesisch|russisch|schwedisch|schweizerisch|semitisch|serbisch|serbokroatisch|slawisch|spanisch|tschechisch|türkisch|ukrainisch|ungarisch|weißrussisch"> <!ENTITY sprachadj2 "agglutinierend|algorithmisch|asiatisch|ausgestorben|bilderreich|bildlich|deutlich|dichterisch|europäisch|extensional|flektierend|formal|gesprochen|indogermanisch|intensional|klangvoll|konsonantenreich|maschinenorientiert|metaphorisch|poetisch|prosaisch|romanisch|schön|selten|vokalreich|wunderschön"> <!ENTITY bundesstaaten "Alabama|Alaska|Arizona|Arkansas|Colorado|Connecticut|Delaware|Florida|Georgia|Hawaii|Idaho|Illinois|Indiana|Iowa|Kalifornien|Kansas|Kentucky|Louisiana|Maine|Maryland|Massachusetts|Michigan|Minnesota|Mississippi|Missouri|Montana|Nebraska|Nevada|New|North|Ohio|Oklahoma|Oregon|Pennsylvania|Rhode|South|Tennessee|Texas|Utah|Vermont|Virginia|Washington|West|Wisconsin|Wyoming"> @@ -42,12 +44,12 @@ 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 License along with this library; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA $Id: grammar.xml,v 1.47 2011-01-22 12:29:46 dnaber Exp $ @@ -1772,7 +1774,7 @@ <example type="incorrect">Da würde ich auch <marker>Bescheide</marker> sagen.</example> <example type="incorrect">Da würde ich auch <marker>Bescheids</marker> geben.</example> </rule> - <!-- Jan: Shouldn't this one be covered by a Java rule by now? --> + <!-- Jan: Shouldn't this one be covered by a Java rule by now? --> <rule id="WIEDER_WILLEN" name="Möglicher Tippfehler: 'wieder (wider) Willen/Erwarten'"> <pattern mark_to="-1" case_sensitive="yes"> <token regexp="yes">[wW]ieder</token> @@ -2184,7 +2186,7 @@ <example type="correct"><marker>unterzugehen</marker></example> <example type="incorrect"><marker>aus zu geben</marker></example> <example type="incorrect"><marker>unter zu gehen</marker></example> -<!-- <example type="correct">Sie können versuchen, es von der CD <marker>aus zu installieren</marker></example> TODO --> +<!-- <example type="correct">Sie können versuchen, es von der CD <marker>aus zu installieren</marker></example> TODO --> </rule> <!-- Now try to catch some errors our first rule missed, mostly because of the exceptions defined above --> <rule> @@ -2332,8 +2334,8 @@ </category> <category name="Redundanz"> - <!-- Jan: TODO – Add more stuff like "Haarfrisur, Fußpedal, Altveteran, langsam kriechen, schnell rasen ..." --> - <!-- Jan: TODO – organize this into smaller rulegroups --> + <!-- Jan: TODO – Add more stuff like "Haarfrisur, Fußpedal, Altveteran, langsam kriechen, schnell rasen ..." --> + <!-- Jan: TODO – organize this into smaller rulegroups --> <rulegroup id="VERDOPPELUNG" name="Verdoppelung: 'meistens immer', 'schon bereits' ..."> <rule> <pattern> @@ -2892,7 +2894,7 @@ <token postag="SENT_END"/> </pattern> <message>Meinten Sie <suggestion>Kilometer pro Stunde</suggestion> oder <suggestion><match regexp_match="Kilometer" regexp_replace="km/h" case_conversion="startlower" no="3"/></suggestion> (Maßeinheit der Geschwindigkeit)? 'Kilometer' ist eine Längenmaßeinheit.</message> -<!-- <example type="incorrect">Er ist schneller als 5,3 <marker>Kilometer</marker>.</example>--><!--TODO--> +<!-- <example type="incorrect">Er ist schneller als 5,3 <marker>Kilometer</marker>.</example>--><!--TODO--> <example type="incorrect">Er ist schneller als 5 <marker>Kilometer</marker>.</example> <example type="correct">Er ist schneller die 5 <marker>Kilometer</marker> gelaufen.</example> <example type="correct">Er ist schneller als 5 <marker>Kilometer</marker> pro Stunde.</example> @@ -2916,7 +2918,7 @@ <token postag="SENT_END"/> </pattern> <message>Meinten Sie <suggestion>Kilometer pro Stunde</suggestion> oder <suggestion><match regexp_match="Kilometer" regexp_replace="km/h" case_conversion="startlower" no="3"/></suggestion> (Maßeinheit der Geschwindigkeit)? 'Kilometer' ist eine Längenmaßeinheit.</message> -<!-- <example type="incorrect">Er ist schneller als 5,3 <marker>Kilometer</marker>.</example>--><!--TODO--> +<!-- <example type="incorrect">Er ist schneller als 5,3 <marker>Kilometer</marker>.</example>--><!--TODO--> <example type="incorrect">Er ist schneller als fünf <marker>Kilometer</marker>.</example> <example type="correct">Er ist schneller die fünf <marker>Kilometer</marker> gelaufen.</example> <example type="correct">Er ist schneller als fünf <marker>Kilometer</marker> pro Stunde.</example> @@ -3190,7 +3192,7 @@ </rulegroup> </category> - <!-- Rules about upper/lowercase: --> + <!-- Rules about upper/lowercase: --> <category name="Groß-/Kleinschreibung"> <!-- Jan: TODO – distinguish legit uses of 'zu Recht', 'zu recht', and 'zurecht' (all three exist) <rule id="ZU_RECHT" name="Groß-/Kleinschreibung: 'zu recht (Recht)'"> @@ -3204,29 +3206,72 @@ <example type="incorrect">Da regt er sich zu <marker>recht</marker> auf.</example> </rule> --> - <rule id="SUBSTANTIVE_FEM_SG" name="Groß-/Kleinschreibung: Substantive, die auch Verben oder Adjektive sein können" > - <!-- Quite surprisingly, this rule didn't cause ANY alarms when tested on ~ 3000 Wikipedia articles. --> - <pattern mark_from="2" mark_to="-1" case_sensitive="yes"> - <token postag="SENT_START"/> - <token regexp="yes">Die|Diese|Seine|Ihre|Meine|Deine|Eure|Unsere</token> - <token regexp="yes">abfahrt|abgeordnete|absage|absteige|angst|ansage|antike|ausfuhr|aussage|blase|breite|bremse|bürde|burleske|bürste|dichte|düse|ebbe|ecke|ehe|ehre|eiche|eile|einreise|erde|fahrt|falle|falte|feile|ferne|fliege|fliese|flotte|flucht|folge|frage|fremde|fresse|geige|grenze|großtat|hacke|härte|hecke|heimfahrt|herfahrt|hinfahrt|höhle|kappe|klammer|klappe|klaue|klinge|klingel|kommode|kontroverse|kraft|krähe|kralle|kürze|kutsche|leere|lehre|leiste|leuchte|liebe|liege|liste|lüge|macht|marine|matte|messe|mühe|nachfrage|naht|nähe|offensive|pauke|pauschale|pause|perle|pfeife|platte|pleite|post|predigt|presse|probe|puste|quelle|rast|ratsche|rede|reihe|reise|reue|robbe|rolle|rückfrage|rüge|ruhe|runde|sahne|säure|schau|scheide|scheiße|schere|schiene|schippe|schlampe|schleuse|schlinge|schmelze|schmiede|schnalle|schneide|spritze|schuld|schürze|schwebe|schwelle|sorge|speise|spitze|stärke|stelle|stimme|strafe|strecke|strippe|stufe|stunde|stütze|suche|taste|tat|variable|wache|wand|wärme|weide|weihe|weile|weise|welle|werft|wiege|wiese|wolle|würde|würze|wüste|zahl|zeche|zeit|zentrale|zier|zufuhr|zwinge</token> - <token postag="VER:3:SIN:.*" postag_regexp="yes"/> - </pattern> - <message>&subanfang;<suggestion><match no="3" case_conversion="startupper"/></suggestion>&subende;</message> - <example type="incorrect" correction="Aussage">Diese <marker>aussage</marker> ist falsch.</example> - <example type="incorrect" correction="Flucht">Seine <marker>flucht</marker> belastet ihn zusätzlich.</example> - <example type="incorrect" correction="Abfahrt">Unsere <marker>abfahrt</marker> verzögert sich etwas.</example> - <example type="incorrect" correction="Angst">Die <marker>angst</marker> geht um.</example> - <example type="incorrect" correction="Scheide">Ihre <marker>scheide</marker> wurde feucht.</example> - <example type="incorrect" correction="Schneide">Die <marker>schneide</marker> wurde stumpf.</example> - <example type="incorrect" correction="Spitze">Die <marker>spitze</marker> ist stumpf.</example> - <example type="incorrect" correction="Klinge">Die <marker>klinge</marker> ist schartig.</example> - <example type="incorrect" correction="Blase">Die <marker>blase</marker> platzte am Mittwoch.</example> - <example type="incorrect" correction="Kontroverse">Die <marker>kontroverse</marker> ist noch unentschieden.</example> - <example type="incorrect" correction="Wüste">Die <marker>wüste</marker> lebt.</example> - <example type="correct">Die <marker>Zentrale</marker> war ahnungslos.</example> - <example type="correct">Die <marker>Fahrt</marker> war schnell vorbei.</example> - </rule> + <rulegroup id="SUBSTANTIVE_KLEIN" name="Groß-/Kleinschreibung: Substantive, die auch Verben oder Adjektive sein können" > + <rule> + <pattern mark_from="2" mark_to="-1" case_sensitive="yes"> + <token postag="SENT_START"/> + <token regexp="yes">Die|Diese|Seine|Ihre|Meine|Deine|Eure|Unsere</token> + <token regexp="yes">&subkleinplural;</token> + <token postag="VER:3:PLU:.*" postag_regexp="yes"> + <exception regexp="yes" scope="current">einen|deutschen|langen|längen</exception> + </token> + </pattern> + <message>&subanfang;<suggestion><match no="3" case_conversion="startupper"/></suggestion>&subende;</message> + <example type="incorrect" correction="Aussagen">Ihre <marker>aussagen</marker> sind falsch.</example> + <example type="incorrect" correction="Anrufe">Ihre <marker>anrufe</marker> waren mir bald lästig.</example> + <example type="incorrect" correction="Klingen">Die <marker>klingen</marker> waren schartig.</example> + <example type="incorrect" correction="Fliesen">Die <marker>fliesen</marker> sind kaputt.</example> + <example type="incorrect" correction="Blasen">Diese <marker>blasen</marker> platzen bald auf.</example> + <example type="incorrect" correction="Brüste">Deine <marker>brüste</marker> sind nicht zu klein, dein BH ist bloß zu groß.</example> + <example type="incorrect" correction="Taten">Seine <marker>taten</marker> sind legendär.</example> + <example type="incorrect" correction="Lügen">Deine <marker>lügen</marker> waren auch mal einfallsreicher.</example> + <example type="correct">Unsere <marker>Feinde</marker> waren hoffnungslos unterlegen.</example> + <example type="correct">Die <marker>jungen</marker> deutschen Regisseure.</example> + <example type="correct">Diese <marker>stellen</marker> einen großen Teil der Auswanderer.</example> + </rule> + <rule> + <pattern mark_from="2" mark_to="-1" case_sensitive="yes"> + <token postag="SENT_START"/> + <token regexp="yes">Die|Diese|Seine|Ihre|Meine|Deine|Eure|Unsere</token> + <token regexp="yes">&femsubklein;</token> + <token postag="VER:3:SIN:.*" postag_regexp="yes"/> + </pattern> + <message>&subanfang;<suggestion><match no="3" case_conversion="startupper"/></suggestion>&subende;</message> + <example type="incorrect" correction="Aussage">Diese <marker>aussage</marker> ist falsch.</example> + <example type="incorrect" correction="Flucht">Seine <marker>flucht</marker> belastet ihn zusätzlich.</example> + <example type="incorrect" correction="Abfahrt">Unsere <marker>abfahrt</marker> verzögert sich leider etwas.</example> + <example type="incorrect" correction="Angst">Die <marker>angst</marker> geht um.</example> + <example type="incorrect" correction="Scheide">Ihre <marker>scheide</marker> wurde feucht.</example> + <example type="incorrect" correction="Schneide">Die <marker>schneide</marker> wurde stumpf.</example> + <example type="incorrect" correction="Spitze">Die <marker>spitze</marker> ist stumpf.</example> + <example type="incorrect" correction="Klinge">Die <marker>klinge</marker> ist schartig.</example> + <example type="incorrect" correction="Blase">Die <marker>blase</marker> platzte am Mittwoch.</example> + <example type="incorrect" correction="Kontroverse">Die <marker>kontroverse</marker> ist noch unentschieden.</example> + <example type="incorrect" correction="Wüste">Die <marker>wüste</marker> lebt.</example> + <example type="correct">Die <marker>Zentrale</marker> war völlig unvorbereitet.</example> + <example type="correct">Die <marker>Fahrt</marker> war schnell vorbei.</example> + </rule> + <rule> + <pattern mark_from="3" mark_to="-1" case_sensitive="yes"> + <token postag="SENT_START"/> + <token regexp="yes">Die|Diese|Seine|Ihre|Meine|Deine|Eure|Unsere</token> + <token postag="ADJ:NOM:SIN:FEM:.*" postag_regexp="yes"/> + <token regexp="yes">&femsubklein;</token> + <token postag="VER:3:SIN:.*" postag_regexp="yes"/> + </pattern> + <message>&subanfang;<suggestion><match no="4" case_conversion="startupper"/></suggestion>&subende;</message> + <example type="incorrect" correction="Aussage">Diese unverschämte <marker>aussage</marker> ist falsch.</example> + <example type="incorrect" correction="Flucht">Seine eilige <marker>flucht</marker> belastet ihn zusätzlich.</example> + <example type="incorrect" correction="Angst">Die große <marker>angst</marker> geht um.</example> + <example type="incorrect" correction="Schneide">Die rostige <marker>schneide</marker> wurde stumpf.</example> + <example type="incorrect" correction="Eiche">Die deutsche <marker>eiche</marker> ist stark.</example> + <example type="incorrect" correction="Klinge">Die alte <marker>klinge</marker> ist schartig.</example> + <example type="incorrect" correction="Blase">Die riesige <marker>blase</marker> platzte am Mittwoch.</example> + <example type="incorrect" correction="Wüste">Die scheinbare <marker>wüste</marker> lebt.</example> + <example type="correct">Die neue <marker>Zentrale</marker> war noch nicht einsatzbereit.</example> + <example type="correct">Die rasante <marker>Fahrt</marker> war schnell vorbei.</example> + </rule> + </rulegroup> <rule id="NAMENS" name="Groß-/Kleinschreibung: 'Namens (namens)'"> <pattern case_sensitive="yes" mark_from="1" mark_to="-1"> <token postag="UNKNOWN|SUB:.*" postag_regexp="yes"/> @@ -4323,7 +4368,7 @@ <example type="incorrect" correction="Sprachen">Satz und Layout in asiatischen <marker>sprachen</marker>.</example> <example type="correct">Wir <marker>sprachen</marker> wenig miteinander.</example> </rule> - <rule id="GRUENDE_SUBST" name="Groß-/Kleinschreibung: 'mit guten gründen (Gründen)'"> + <rule id="GRUENDE_SUBST" name="Groß-/Kleinschreibung: 'mit guten gründen (Gründen)' etc."> <pattern case_sensitive="yes" mark_from="2"> <token regexp="yes">[aA]us|[mM]it</token> <token regexp="yes">(zwingend|zureichend|welch|irgendwelch|gut|triftig|plausibl|stichhaltig|verständlich|taktisch|politisch|bestimmt|ersichtlich|begreiflich|gesundheitlich|nachvollziehbar|einleuchtend|wichtig)en</token> @@ -7021,7 +7066,7 @@ <token regexp="yes">[Aa]n|[Zz]u|[Ff]ür|[Dd]es|[Vv]on</token> <token>Herr</token> <token regexp="yes">[A-Z].*</token> - <!-- don't match: "die Rechte an Herr der Ringe" --> + <!-- don't match: "die Rechte an Herr der Ringe" --> </pattern> <message>Meinten Sie <suggestion>Herrn</suggestion>?</message> <example type="correct">Mein Brief an <marker>Herrn</marker> Schmidt.</example> @@ -7276,7 +7321,7 @@ <token regexp="yes">(\-|=)</token> <token>></token> </pattern> - <message>Wollen Sie einen Pfeil verwenden? Vorschläge: <suggestion>↔</suggestion>, <suggestion>⇿</suggestion>, <suggestion>⇄</suggestion>, <suggestion>⇆</suggestion>, <suggestion>⇋</suggestion>, <suggestion>⇌</suggestion>, <suggestion>⇔</suggestion> (&tippformel;)</message> + <message>Wollen Sie einen Pfeil verwenden? Vorschläge: <suggestion>↔</suggestion>, <suggestion>⇿</suggestion>, <suggestion>⇄</suggestion>, <suggestion>⇆</suggestion>, <suggestion>⇋</suggestion>, <suggestion>⇌</suggestion>, <suggestion>⇔</suggestion> (&tippformel;)</message> <example type="correct">A ⇔ B</example> <example type="incorrect">A <marker><=></marker> B</example> </rule>--> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev _______________________________________________ Languagetool-cvs mailing list Languagetool-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/languagetool-cvs