Difference between revisions of "Malayalam and English/sandh in malayalam"

From Apertium
Jump to navigation Jump to search
(Undo revision 49156 by Tachyons (talk))
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
Various sandhi rules are defined in Malayalam for joining two words to form a new one. On applying these rules, the original appearance of the words taking part in this
Various sandhi rules are defined in Malayalam for joining two words to form a new one. On applying these rules, the original appearance of the words taking part in this
process is altered. Rules are applied by observing the ‘sounds’ of the end syllable of the first word and the start syllable of the second word. In Malayalam grammar, a classification of sandhi rules is done based on various parameters
process is altered. Rules are applied by observing the ‘sounds’ of the end syllable of the first word and the start syllable of the second word. In Malayalam grammar, a classification of sandhi rules is done based on various parameters
===Classification===
=Classification=

==Classification Based on position==
==Classification Based on position==
*Internal
*Internal
Line 69: Line 70:
***** കൈ + അക്ഷരം = കൈയക്ഷരം
***** കൈ + അക്ഷരം = കൈയക്ഷരം
***** തീ + ആട്ട് = തീയാട്ട്
***** തീ + ആട്ട് = തീയാട്ട്
***Rule2
***Rule3
**** If first word ends with 'thalavya' vowel and second(inflection lexicon) starts with ക്ക , then യ is introduced
****തല+ ക്ക് -> തലയ്ക്ക്
****ചിരി + ക്കുന്നു -> ചിരിക്കുന്നു
****തല+ക്കല്‍ -> തലയ്ക്കല്‍
*dithwa sandhi
*dithwa sandhi
**one of the varanam doubled
**consonent second varanam is doubled
**Rules
***Rule1
***
*adeasha sandhi
*adeasha sandhi
** new varanam is formed from existing varanams
** new varanam is formed from existing varanams

=Implementation=
In Apertium Malayalam pair, sandhi rules are implemented using [https://kitwiki.csc.fi/twiki/bin/view/KitWiki/HfstTwolC Two-Level Rule Compiler]
<pre>
Alphabet

അ ആ ഇ ഈ ഉ ഊ ഋ ഌ എ ഏ ഐ ഒ ഓ ഔ ക ഖ ഗ ഘ ങ ച ഛ ജ ഝ ഞ ട
ഠ ഡ ഢ ണ ത ഥ ദ ധ ന ഩ പ ഫ ബ ഭ മ യ ര റ ല ള ഴ വ ശ ഷ സ ഹ

ാ ി ീ ു ൂ ൃ ൄ െ േ ൈ ൊ ോ ൌ ് ൎ ം ഃ ൗ
</pre>
<pre>
%{യ%}:0 %{A%}:0
</pre>
<pre>
%>:0 %»:0
</pre>
Sets

<pre>
Sets

FullVowel = എ ഇ ഉ ആ ഓ ;
DepVowel = െ ി ു ;
ThalSwara = ാ ി ീ െ േ ൈ ;
OshtSwara =ു ൂ ൊ ോ ൌ ൗ ;
Kharam = ക ച ട ത പ ;
AthiKharam =ഖ ഛ ഠ ഥ ഫ ;
Mrithu = ഗ ജ ഡ ദ ബ ;
Khosham = ഘ ഝ ഢ ധ ഭ;
Anunasiaka =ങ ഞ ണ ന മ ;
Dridam= ക ച ട ത പ ഖ ഛ ഠ ഥ ഫ ഗ ജ ഡ ദ ബ ഘ ഝ ഢ ധ ഭ ശ ഷ സ ;
</pre>

'''Implementation of the sandi rule'''

Eg :- Implementation of first lopasandhi
<pre>
"Surfacing of {യ} as യ and വ"
%{യ%}:Cx <=> Cy: %»: _ FullVowel: ;
where Cy in ( ാ ി ീ െ േ ൈ ു ൂ ൊ ോ ൌ ൗ )
Cx in ( യ യ യ യ യ യ വ വ വ വ വ വ ) matched ;
</pre>

=References=
* [http://en.wikipedia.org/wiki/Malayalam_script Malayalam Script]
* [http://thottingal.in/documents/MalayalamComputingChallenges.pdf Malayalam Computing Challenges]
* [https://kitwiki.csc.fi/twiki/bin/view/KitWiki/HfstTwolC twolc documentation]

Latest revision as of 20:14, 19 August 2014

Various sandhi rules are defined in Malayalam for joining two words to form a new one. On applying these rules, the original appearance of the words taking part in this process is altered. Rules are applied by observing the ‘sounds’ of the end syllable of the first word and the start syllable of the second word. In Malayalam grammar, a classification of sandhi rules is done based on various parameters

Classification[edit]

Classification Based on position[edit]

  • Internal
    • usually inflections
  • External

Classification based on varanams[edit]

  1. vowel sandhi
    1. Eg:തിരു + ഓണം = തിരുവോണം
  2. consonent sandhi
    1. Eg :ഈട്ടി+പെട്ടി=ഈട്ടിപ്പെട്ടി
  3. vowel consonent sandhi
    1. കണ്‍ + ഇല്ല = കണ്ണില്ല
  4. consonent vowel sandhi
    1. നല്+നിലം‌ = നന്നിലം

Classification based change at sandhi[edit]

  • lopa sandhi
    • one of the varanam removed
    • Eg:കേട്ട്+ഇല്ല = കേട്ടില്ല
    • Rules
      • Rule1
        • Remove viramaa at the end of first word if one vowel is "പരം" #FIXME
        • Eg : കസവ് + ഒളി = കസവൊളി
        • തണുപ്പ് ‌ ഇല്ല = തണുപ്പില്ല
        • കാറ്റ് + അടിക്കുന്നു = കാറ്റടിക്കുന്നു
      • Rule2
        • Remove ു at the end of first word if one vowel is "പരം" #FIXME
        • നിന്നു + ഇല്ല = നിന്നില്ല
        • കേട്ടു + ആല്‍ = കേട്ടാല്‍
        • കണ്ടു+ഓ =കണ്ടോ / കണ്ടുവോ
        • പോകുന്നു +എങ്കില്‍ = പോകുന്നെങ്കില്‍
      • Rule3
        • if the second word start with vowel for the words അല്ല , ഇല്ല ,ആയി,പോയി
        • അല്ല+എങ്കില്‍ = അല്ലെങ്കില്‍
        • ഇല്ല + എന്ന് = ഇല്ലെന്ന്
        • ആയി+എങ്കില്‍ = ആയെങ്കില്‍
        • പോയി ‌+ ഇല്ല =പോയില്ല
      • Rule4
        • അ after "നടുവിനയെച്ചം" will be removed when second word starts with a vowel
        • Eg വരിക + എടോ = വരികെടോ
        • നില്‍ക്ക + അവൈടെ = നില്‍ക്കവിടെ
        • അറിക+അമരേശ്വര= അറികമരേശര!
      • Rule5
        • അ after some adjectives and some other words will be removed when second word starts with a vowel
        • Eg പച്ച +അരി =പച്ചരി
        • പച്ച + ഇല = പച്ചില
        • പല+എടം = പലെടം
        • ചില + എടം = ചിലെടം
      • Rule6
        • final vowel will be removed for ആട്ടെ , ആതെ , ഉടെ , ഊടെ when second word starts with a vowel
        • Eg പോട്ടെ + വന്‍ = പോട്ടവന്‍
        • വരാതെ + ഇരിക്കാം = വരാതിരിക്കാം
        • ലളിതയുടെ+അച്ചന്‍ = ലളിതയുടച്ചന്‍
        • ഗുഹയിലൂടെ + ഇറങ്ങി = ഗുഹയിലൂടിറങ്ങി


  • Aagama sandhi
    • new varanam added
    • eg : തിരു + ഓണം = തിരുവോണം
    • തല + ക്ക് = തലയ്ക്ക്
    • Rules
      • Rule1
        • If the first word ends with thalavya vowel ( അ,ആ,ഇ ,ഈ,എ,ഏ ,ഐ )യ is introduced
          • Eg : വഴി + അമ്പലം = വഴിയമ്പലം
          • മഴ + ഇല്ല = മഴയില്ല
          • കൈ + അക്ഷരം = കൈയക്ഷരം
          • തീ + ആട്ട് = തീയാട്ട്
      • Rule2
      • Rule3
        • If first word ends with 'thalavya' vowel and second(inflection lexicon) starts with ക്ക , then യ is introduced
        • തല+ ക്ക് -> തലയ്ക്ക്
        • ചിരി + ക്കുന്നു -> ചിരിക്കുന്നു
        • തല+ക്കല്‍ -> തലയ്ക്കല്‍
  • dithwa sandhi
    • consonent second varanam is doubled
    • Rules
      • Rule1
  • adeasha sandhi
    • new varanam is formed from existing varanams

Implementation[edit]

In Apertium Malayalam pair, sandhi rules are implemented using Two-Level Rule Compiler

Alphabet

 അ ആ ഇ ഈ ഉ ഊ ഋ ഌ എ ഏ ഐ ഒ ഓ ഔ ക ഖ ഗ ഘ ങ ച ഛ ജ ഝ ഞ ട 
 ഠ ഡ ഢ ണ ത ഥ ദ ധ ന ഩ പ ഫ ബ ഭ മ യ ര റ ല ള ഴ വ  ശ ഷ സ ഹ  

 ാ ി ീ  ു ൂ ൃ ൄ െ േ ൈ ൊ ോ ൌ ് ൎ ം ഃ  ൗ
%{യ%}:0 %{A%}:0
%>:0 %»:0 

Sets

Sets 

FullVowel = എ  ഇ  ഉ  ആ ഓ ;
DepVowel = െ ി  ു  ; 
ThalSwara = ാ ി ീ  െ േ ൈ ;
OshtSwara =ു ൂ ൊ ോ ൌ ൗ ;
Kharam = ക ച ട ത പ  ;
AthiKharam =ഖ ഛ ഠ ഥ ഫ ;
Mrithu = ഗ ജ ഡ ദ ബ ;
Khosham = ഘ ഝ ഢ ധ ഭ;
Anunasiaka =ങ ഞ ണ ന മ ;
Dridam= ക ച ട ത പ  ഖ ഛ ഠ ഥ ഫ ഗ ജ ഡ ദ ബ ഘ ഝ ഢ ധ ഭ ശ ഷ സ ;

Implementation of the sandi rule

Eg :- Implementation of first lopasandhi

"Surfacing of {യ} as യ and വ"
%{യ%}:Cx <=> Cy: %»: _ FullVowel: ; 
         where Cy in ( ാ  ി  ീ  െ  േ  ൈ  ു  ൂ  ൊ  ോ  ൌ  ൗ ) 
               Cx in ( യ   യ  യ   യ    യ     യ    വ   വ     വ       വ      വ      വ   ) matched ; 

References[edit]