diff --git a/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTests.cs b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTests.cs index 274eb2d33d..d2cc0de2bd 100644 --- a/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTests.cs +++ b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTests.cs @@ -40,6 +40,7 @@ public class M3ToXAmpleTransformerTests string m_sM3FXTIrregularlyInflectedFormsDump; string m_sM3FXTQuechuaMYLDump; string m_sM3FXTEmiFLExDump; + string m_sM3FXTStemFreeFluctuationFLExDump; string m_sM3FXTCompundRulesWithExceptionFeaturesFLExDump; private string m_sAbazaOrderClassPlayDump; readonly Dictionary m_mapXmlDocs = new Dictionary(); @@ -88,6 +89,7 @@ private void SetUpM3FXTDump() m_sAbazaOrderClassPlayDump = Path.Combine(m_sTestPath, "Abaza-OrderclassPlay.xml"); m_sM3FXTQuechuaMYLDump = Path.Combine(m_sTestPath, "QuechuaMYLFxtResult.xml"); m_sM3FXTEmiFLExDump = Path.Combine(m_sTestPath, "emi-flexFxtResult.xml"); + m_sM3FXTStemFreeFluctuationFLExDump = Path.Combine(m_sTestPath, "StemFreeFluctuationFLExDump.xml"); m_sM3FXTCompundRulesWithExceptionFeaturesFLExDump = Path.Combine(m_sTestPath, "CompundRulesWithExceptionFeatures.xml"); SetupXmlDocument(m_sM3FXTDump); @@ -107,6 +109,7 @@ private void SetUpM3FXTDump() SetupXmlDocument(m_sAbazaOrderClassPlayDump); SetupXmlDocument(m_sM3FXTQuechuaMYLDump); SetupXmlDocument(m_sM3FXTEmiFLExDump); + SetupXmlDocument(m_sM3FXTStemFreeFluctuationFLExDump); SetupXmlDocument(m_sM3FXTCompundRulesWithExceptionFeaturesFLExDump); } @@ -168,6 +171,7 @@ public void CreateXAmpleLexiconFile() ApplyTransform(m_sAbazaOrderClassPlayDump, m_lexTransform, "Abaza-OrderclassPlaylex.txt"); ApplyTransform(m_sM3FXTQuechuaMYLDump, m_lexTransform, "QuechuaMYLlex.txt"); ApplyTransform(m_sM3FXTEmiFLExDump, m_lexTransform, "emi-flexlex.txt"); + ApplyTransform(m_sM3FXTStemFreeFluctuationFLExDump, m_lexTransform, "stemFreeFluctuationlex.txt"); } /// /// Test creating the word grammar file diff --git a/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/StemFreeFluctuationFLExDump.xml b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/StemFreeFluctuationFLExDump.xml new file mode 100644 index 0000000000..51526b4be2 --- /dev/null +++ b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/StemFreeFluctuationFLExDump.xml @@ -0,0 +1,666 @@ + + + + + Adverb + An adverb, narrowly defined, is a part of speech whose members modify verbs for such categories as time, manner, place, or direction. An adverb, broadly defined, is a part of speech whose members modify any constituent class of words other than nouns, such as verbs, adjectives, adverbs, phrases, clauses, or sentences. Under this definition, the possible type of modification depends on the class of the constituent being modified. + adv + 0 + + + + + + + + + Noun + A noun is a broad classification of parts of speech which include substantives and nominals. + n + 1 + + + Number + *** + + SP1 + SP1 + + + + + + nominal + *** + + + + + + + + + + Pro-form + A pro-form is a part of speech whose members usually substitute for other constituents, including phrases, clauses, or sentences, and whose meaning is recoverable from the linguistic or extralinguistic context. + pro-form + 0 + + + + + + + + + + Pronoun + A pronoun is a pro-form which functions like a noun and substitutes for a noun or noun phrase. + pro + 0 + + + + + + + + + Verb + A verb is a part of speech whose members typically signal events and actions; constitute, singly or in a phrase, a minimal predicate in a clause; govern the number and types of other constituents which may occur in the clause; and, in inflectional languages, may be inflected for tense, aspect, voice, modality, or agreement with other constituents in person, number, or grammatical gender. + v + 1 + + + + + + + + + + + + *** + *** + + + *** + *** + + + + + Consonants + Consonants + C + + + + + + + + + + + + + + + + + + + + + Vowels + Vowels + V + + + + + + + + + + + Main phoneme set + Main phoneme set + + + h + voiceless glottal fricative + + + h + + + + + + + a + low central unrounded vowel + + + a + + + + + + + b + voiced bilabial stop + + + b + + + + + + + d + voiced alveolar stop + + + d + + + + + + + e + mid front unrounded vowel + + + e + + + + + + + f + voiceless labiodental fricative + + + f + + + + + + + g + voiced velar stop + + + g + + + + + + + i + high front unrounded vowel + + + i + + + + + + + j + palatal approximant + + + j + + + + + + + k + voiceless velar stop + + + k + + + + + + + l + alveolar lateral + + + l + + + + + + + m + bilabial nasal + + + m + + + + + + + n + alveolar nasal + + + n + + + + + + + o + mid back rounded vowel + + + o + + + + + + + p + voiceless bilabial stop + + + p + + + + + + + r + alveolar flap + + + r + + + + + + + s + voiceless alveolar fricative + + + s + + + + + + + t + voiceless alveolar stop + + + t + + + + + + + u + high back rounded vowel + + + u + + + + + + + v + voiced labiodental fricative + + + v + + + + + + + w + labiovelar approximant + + + w + + + + + + + x + voiceless velar fricative + + + x + + + + + + + z + voiced alveolar fricative + + + z + + + + + + + ŋ + velar nasal + + + ŋ + + + + + + + + + + + + + + + + + + + # + + + # + + + + + + + + + + + + + + + + + + + + 5 + 1 + 5 + 0 + 1 + 10 + + XAmple + + + + + + + + discontiguous phrase + dis phr + A discontiguous phrase has discontiguous constituents which (a) are separated from each other by one or more intervening constituents, and (b) are considered either (i) syntactically contiguous and unitary, or (ii) realizing the same, single meaning. An example is French ne...pas. + 0 + + + infixing interfix + ifxnfx + An infixing interfix is an infix that can occur between two roots or stems. + 0 + + + suffixing interfix + sfxnfx + A suffixing interfix is a suffix that can occur between two roots or stems. + 0 + + + particle + part + A particle is a word that does not belong to one of the main classes of words, is invariable in form, and typically has grammatical or pragmatic meaning. + 0 + + + phrase + phr + A phrase is a syntactic structure that consists of more than one word but lacks the subject-predicate organization of a clause. + 0 + + + prefixing interfix + pfxnfx + A prefixing interfix is a prefix that can occur between two roots or stems. + 0 + + + clitic + clit + A clitic is a morpheme that has syntactic characteristics of a word, but shows evidence of being phonologically bound to another word. Orthographically, it stands alone. + 0 + + + infix + ifx + An infix is an affix that is inserted within a root or stem. + 0 + + + prefix + pfx + A prefix is an affix that is joined before a root or stem. + 0 + + + simulfix + smfx + A simulfix is a change or replacement of vowels or consonants (usually vowels) which changes the meaning of a word. (Note: the parser does not currently handle simulfixes.) + 0 + + + suffix + sfx + A suffix is an affix that is attached to the end of a root or stem. + 1 + + + suprafix + spfx + A suprafix is a kind of affix in which a suprasegmental is superimposed on one or more syllables of the root or stem, signalling a particular morphosyntactic operation. (Note: the parser does not currently handle suprafixes.) + 0 + + + circumfix + cfx + A circumfix is an affix made up of two separate parts which surround and attach to a root or stem. + 0 + + + enclitic + enclit + An enclitic is a clitic that is phonologically joined at the end of a preceding word to form a single unit. Orthographically, it may attach to the preceding word. + 0 + + + proclitic + proclit + A proclitic is a clitic that precedes the word to which it is phonologically joined. Orthographically, it may attach to the following word. + 0 + + + bound root + bd root + A bound root is a root which cannot occur as a separate word apart from any other morpheme. + 0 + + + root + ubd root + A root is the portion of a word that (i) is common to a set of derived or inflected forms, if any, when all affixes are removed, (ii) is not further analyzable into meaningful elements, being morphologically simple, and, (iii) carries the principal portion of meaning of the words in which it functions. + 0 + + + bound stem + bd stem + A bound stem is a stem which cannot occur as a separate word apart from any other morpheme. + 0 + + + stem + ubd stem + "A stem is the root or roots of a word, together with any derivational affixes, to which inflectional affixes are added." (LinguaLinks Library). A stem "may consist solely of a single root morpheme (i.e. a 'simple' stem as in man), or of two root morphemes (e.g. a 'compound' stem, as in blackbird), or of a root morpheme plus a derivational affix (i.e. a 'complex' stem, as in manly, unmanly, manliness). All have in common the notion that it is to the stem that inflectional affixes are attached." (Crystal, 1997:362) + 2 + + + + + Irregularly Inflected Form + irreg. infl. + An Irregularly Inflected Form is an inflected form of the lexeme that is different from what you would expect from the normal rules of the grammar. + *** + .irr.infl + + + + Past + pst. + The past tense form of a verb that does not take the regular inflectional affix for past tense. + *** + .pst + + + + Plural + pl. + The plural form of a noun that does not take the regular inflectional affix for plural. + *** + .pl + + + + + + + + + + + + + + + paph + + + + + + + + + + + + + + + + + + + + + + + + + + + + give + *** + + + pot + *** + + + PL + *** + + + + +
paf
+
+ +
feel
+
+ +
fe
+ +
+ +
fee
+ +
+ +
s
+ +
+
+
+ + + + + + + + +
\ No newline at end of file diff --git a/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/stemFreeFluctuationlex.txt b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/stemFreeFluctuationlex.txt new file mode 100644 index 0000000000..3dffd7b9eb --- /dev/null +++ b/Src/LexText/ParserCore/ParserCoreTests/M3ToXAmpleTransformerTestsDataFiles/stemFreeFluctuationlex.txt @@ -0,0 +1,33 @@ + +\lx 3529 +\g give +\c W +\wc root +\mp RootPOS5293 +\a fee {8609} /_# | /_# + +\a fe {6564} /_# | /_# + +\a feel {6129} + + ~/_# | ~/_# + + + ~/_# | ~/_# + + +\lx 5262 +\g pot +\c W +\wc root +\mp RootPOS6563 +\a paf {1874} + +\lx 9419 +\g PL +\c W/W +\o 2 2 +\wc 9837 +\a s {5090} +\eType suffix + diff --git a/Src/Transforms/Application/FxtM3ParserToXAmpleLex.xsl b/Src/Transforms/Application/FxtM3ParserToXAmpleLex.xsl index 8192f9ed5d..f60944a9f5 100644 --- a/Src/Transforms/Application/FxtM3ParserToXAmpleLex.xsl +++ b/Src/Transforms/Application/FxtM3ParserToXAmpleLex.xsl @@ -1591,7 +1591,7 @@ DoInflAffixMsaStemName - +