Indeed mtengo<n><cl3><cl12><sg> produces the desired effect, thanks!
On Wed, Aug 26, 2026 at 5:28 PM Jonathan Washington <[email protected]> wrote: > > Hi Zanga, > > Two things come to mind: > > 1. If your analysis yields > ^kamtengo/mtengo<n><cl3><cl12><sg>$ > > then to generate "kamtengo" it should basically look like exactly the reverse > of that: > ^mtengo<n><cl3><cl12><sg>/kamtengo$ > > So you'd want to provide as input mtengo<n><cl3><cl12><sg>, not > mtengo<n><sg><cl12>. > > But: > > 2. In Bantu languages (on which I'm not am expert, so feel free correct me if > I get anything wrong) class is a lexical property of a noun and an > inflectional property of an adjective. If correct, that means that the tags > are subcategory tags for nouns and grammatical tags for adjectives. See > https://wikis.swarthmore.edu/ling073/Grammar_documentation#Morphological_analyses > and the included diagram for more details on this. > > Whether or not this is the case, it doesn't really make sense to have two > class tags on a given noun or adjective. It would be like, if you derive > verbs into nouns (as in "I took a long _run_") or inflect verbs into nouns > (as in "_Running_ is part of my morning routine"), you wouldn't want both a > verb tag and a noun tag, because then all your downstream tools would be > confused about whether the word is a verb or a noun. There are a couple > reasonable alternatives here: > a. use derivational and inflectional tags: run<v><iv><nmlz><sg>/run and > run<v><iv><vn>/running. (<nmlz> for "nominalised" and <vn> for "verbal > noun", but these aren't tags currently used by apertium-eng, and you could > use anything that makes sense here.) > b. relexicalise the new words: run<n><sg>/run, running<n><sg>/running. Here > you treat the new form as a new word. Note that the lemma changes here too > (but wouldn't change further as those forms inflect). > c. a good balance in this case might be to lexicalise the derived forms and > treat the inflected forms as inflected: run<n><sg>/run, > run<v><iv><vn>/running. > > In your case, I think you have a couple options too: > a. Treat the derived forms as lexicalised (which come with new POS and > subcategory tags), so you'd have both mtengo<n><cl12> and mtengo<n><cl3> in > your lexicon, and both could take the full range of inflection. This looks > like it's in line with what Kevin suggests (and then disambiguate using CG or > similar if the forms are ambiguous). If all class 12 nouns do this, then you > might want to automate the derivation within your transducer so you only have > to enter each of these once. > b. Treat the derived forms as inflection, for which you'd need a new tag, > like mtengo<n><cl12><dim> or mtengo<n><cl12><→cl3> or similar. > c. Treat the inflection (locatives sound like they could be?) differently > than derivation (diminutives could probably be considered either inflection > or derivation) in this regard. > > > I'll also add two things: > > - Languages with prefixational morphology are a lot easier to deal with in > lexd than lexc. > > - Usually matching the order of tags in adjectives (where noun subcategory > tags and noun grammatical tags are both grammatical tags) to tags in nouns > makes sense. So it'd be kakakulu/kulu<adj><cl12><sg>. > > -- > Jonathan > > > On Wed, Aug 26, 2026, 04:33 Kevin Brubeck Unhammer <[email protected]> wrote: >> >> > There are certain classes of nouns in ciBantu which are derived from >> > other nouns. Namely, dimunitives (classes 12 and 13) as well as >> > locatives - on, at and in - (16, 17 and 18). I believe I have set up >> > the noun morphotactics adequately >> > https://github.com/apertium/apertium-nya/blob/main/apertium-nya.nya.lexc >> > and indeed it seems to analyze correctly: >> > echo kamtengo kakakulu | lt-proc nya.automorf.bin >> > ^kamtengo/mtengo<n><cl3><cl12><sg>$ ^kakakulu/kulu<adj><sg><cl12>$ >> >> Your analysis mtengo<n><cl3><cl12><sg> suggests that kamtengo is both >> class 3 and class 12 at the same time. But then you say cl3 is dropped – >> is there actually an ambiguity between cl3 and cl12? In that case, the >> correct analysis should be >> >> $ echo kamtengo kakakulu | lt-proc nya.automorf.bin >> ^kamtengo/mtengo<n><cl3><sg>/mtengo<n><cl12><sg>$ >> ^kakakulu/kulu<adj><sg><cl12>$ >> >> If you have both mtengo<n><cl3><sg> and mtengo<n><cl12><sg> in your >> lexc, then you should be able to generate mtengo<n><sg><cl12> as well. >> >> >> >> >> _______________________________________________ >> Apertium-stuff mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/apertium-stuff > > _______________________________________________ > Apertium-stuff mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/apertium-stuff _______________________________________________ Apertium-stuff mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/apertium-stuff
