Twol rules in lttoolbox

From Apertium
Revision as of 06:09, 20 May 2018 by Techievena (talk | contribs) (Add tag meanings)
Jump to navigation Jump to search

Current Status: In Progress
Project: Extend lttoolbox to have the power of HFST

Guidelines

  • Every rule in the dictionary file must be properly compatible with the the HFST twolc engine and must not result in any ambiguities.
  • The xml tags must be well defined for archiphonemes and rules and must be distinct from the other existing tags in lttoolbox.
  • Every rule should have a comment giving the input from the morphotactics no exceptions

Design

Tag/Symbol Meaning
ar archiphoneme
alpha alphabet
set set
m morphotactic side
s surface side
l_c left context
r_c right context

Archiphonemes

<archiphoneme>
  <ar n="A" alpha="ae"/>
  <ar n="B" alpha="bcd"/>
</archiphoneme>

Sets

<sets>
  <set n="Vowels" alpha="aeiou"/>
  <set n="BackVow" alpha="bcdfg"/>
</sets>

Twol Rules

<rules>
  <rule c="Back vowel harmony for archiphoneme A">
    <m><ar n="A"></m><s>a</s>
    <context constraint="e"><l_c><set n="BackVow"></l_c><r_c></r_c></context>
  </rule>
  <rule c="Only hyphen in vowel boundaries and caps">
    <m><ar n="hyph?"></m><s>-</s>
    <context constraint="f"><l_c><set n="Vowels"></l_c><r_c></r_c></context>
  </rule>
  <rule c="Back vowel harmony for archiphoneme A">
    <m><ar n="A"></m><s>a</s>
    <context constraint="b"><l_c><set n="BackVow"></l_c><r_c></r_c></context>
  </rule>
  <rule c="Back vowel harmony for archiphoneme A">
    <m><ar n="A"></m><s>a</s>
    <context constraint="n"><l_c><set n="BackVow"></l_c><r_c></r_c></context>
  </rule>
</rules>