#ADD more unambiguous case and verbal endings *SYMMETRIC =compounded with 1:[word="[[:upper:]]+"][word="-..?"] [word="@"] 2:[word="[[:upper:]]+"] *SYMMETRIC =compounded with (Head) 2:[word="[[:upper:]]+"][word="-..?"] [word="@"] 1:[word="[[:upper:]]+"] *SYMMETRIC =listed with (verbs) 1:[word="[[:upper:]]+"][word="-.*[ao]nt[iy]|-.*ante"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"][word!=="@"]([]{0,10})?2:[word="[[:upper:]]+"][word="-.*[ao]nt[iy]|-.*ante"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*[ao]t[iy]|-.*ate|ast[iy]|nāst[iy]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?2:[word="[[:upper:]]+"][word!=="@" & word="-.*[ao]t[iy]|-.*ate|ast[iy]|nāst[iy]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*[ao]m[iy]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})?2:[word="[[:upper:]]+"][word="-.*[ao]m[iy]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*[ao][sṣ][iy]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?2:[word="[[:upper:]]+"][word="-.*[ao][sṣ][iy]"][word!=="@"] #ADD all other verbal ending that are morphologically unambiguous *SYMMETRIC =is object of (MASC.) 1:[word="[[:upper:]]+"][word="-.*a[mṃ]|-.*ā[nñ]|mā[ṃm]|tvā[mṃ]|a?smān|yuṣmān" & !word="KATHA|EVA|naiva|AIVA"&!word="-.*tavya[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[āa]-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|-.*īyāt|syā[dt]|-.*yur|-.*īrann?"][word!=="@"] *SYMMETRIC =is subject of (-a MASC. BHS) 1:[word="[[:upper:]]+"][word="-a[ḥś]|-a|-ā|-.*o|-ā[ḥś]|-[aā]s" & word!="-e[ṇn]a|-asya"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[āa]-si|-.*o[tm]i|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|-.*īyāt|syā[td]|-.*yur|-.*īrann?" & !word= "cet[iy]|vet[iy]|net[iy]"][word!=="@"][word!=="@"] *SYMMETRIC =is object of (-i/ī Fem.) 1:[word="[[:upper:]]+"][word="-.*[iī][mṃ]|-.*ī[ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[aā]-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|-.*īyāt|syā[td]|-.*yur|-.*īran"][word!=="@"] *SYMMETRIC =is subject of (-i/ī Fem.) 1:[word="[[:upper:]]+"][word="-.*i[ḥr]|-.*ī|-.*i" & !word="-.*[iī]ti|-.*bhi[ḥr]|-.*bhi"&!word="-.*tavya[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[aā]-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yur|-.*īrann?|-.*yet|-.*īyāt|syā[td]" & !word= "cet[iy]|vet[iy]|net[iy]"][word!=="@"] *SYMMETRIC =is object of (-ā Fem.) 1:[word="[[:upper:]]+"][word="-.*ā[ṃm]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word=1:[word="[[:upper:]]+"][word!=="@" \& word=""[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[aā]-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|-.*īyāt|syā[td]|-.*yur|-.*īran"][word!=="@"] *SYMMETRIC =is subject of (-ā Fem.) 1:[word="[[:upper:]]+"][word="-.*ā|-.*āḥ" & !word="tadā|sadā|yadā|mā|vā|-.*inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā|-.*ayā|yāyā"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*[aā]-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yur|-.*īrann?|-.*yet|-.*īyāt|syā[td]" & !word= "cet[iy]|vet[iy]|net[iy]"][word!=="@"] *SYMMETRIC =takes as object 2:[word="[[:upper:]]+"][word="-.*a[mṃ]|-.*ā[nñ]|-.*āni|-.*ā[ṃm]|-.*ī[mṃ]|-.*i[mṃ]|-.*u[ṃm]|ūn[iyī]|mā[ṃm]|mā|tvā[mṃ]|tvā|a?smān|n[ao]ḥ?|yuṣmān|v[ao]|vaḥ"& !word="-.*ānā[mṃ]|-.*āyā[mṃ]|-.*eva[ṃm]|na|-.*apara[mṃ]|naiva[mṃ]|[ai]ya[mṃ]|katha[mṃ]|apara[mṃ]|ki[ṃm]|tva[ṃm]|-.*katha[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 1:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*as[iy] |-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|syā[dt]|-.*yur|-.*īrann?" & !word= "cet[iy]|vet[iy]|net[iy]"][word!=="@"] #NEUTER nominatives will also appear in this column, beware! #to avoid too many false positives, **this rule excludes from accusatives words ending in-ānām and -āyām**. You can remove this exception if needed for your lemma. *SYMMETRIC =takes as subject 2:[word="[[:upper:]]+"][word="-.*a[ḥś]|-.*a|-.*o|ā[ḥś]|-.*ā|-.*[iī][ḥr]|u[ḥr]|aha[mṃ]|tva[mṃ]|vaya[ṃm]|yūya[mṃ]|e?tad|-.*ida[mṃ]|[ai]ya[ṃm]|sarve|ime|te|ye|anye|bhagavān|manas"& !word="vā|puna[ḥr]|bho|-.*tvā|na|t?atra|ca|tata[śḥ]|-.*ena|-.*eṇa|-.*asya|-.*ai[ḥr]|-.*bhi[ḥr]|-.*aiva|eva|prāgeva|-.*yaduta|uta|-.*āha|uvāca|sma|bahir|-.*yathā|iha|iva|eva|-.*aiva|tato|śrutvā|babhūva|sadā|atha|kila|mama|tava|-.*bhya[ḥś]|[st]adā|-.*inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā|veti|hi|mayā|nāsti|asti|api|-.*āpi|asmi|-.*nti|mā|-.*ato|-.*[ei]va|yāyā|[yt]atra|-.*āya"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?1:[word="[[:upper:]]+"][word="-.*an?t[iye]|-.*ām[iy]|-.*a-si|-.*o[tm][iy]|-.*[āa]st[iy]|-.*[īe]te|-.*itva|-.*padye|-.*patsye|-.*erann?|-.*yet|syā[td]|-.*yur|-.*īrann?"][word!=="@"] #This gramrel **does not capture NEUTER nominative**! They will be mixed in the "takes as object" column #to avoid too many false positives, **this rule excludes from accusatives words ending in-asya**. You can remove this exception if needed for your lemma. *SYMMETRIC =takes as agent 2:[word="[[:upper:]]+"][word="-.*ena|-.*eṇa|-.*ayā|-.*bhyā[mṃ]|-.*bhi[ḥr]|-.*bhi|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*inā|-.*tmanā|-.*ai[ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?1:[word="[[:upper:]]+"][word="-.*ya[ts]e|-.*y[ea]thāḥ|-.*y[ae]ta|-.*yeya|-.*yerann?|-.*tavya[mṃ]|-.*īrann?"][word!=="@"] *SYMMETRIC =is the agent of (NO -i/ī nouns) 1:[word="[[:upper:]]+"][word="-.*ena|-.*eṇa|-.*ayā|-.*bhyā[mṃ]|-.*bhi[ḥr]|-.*bhi|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*inā|-.*tmanā"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?2:[word="[[:upper:]]+"][word="-.*ya[ts]e|-.*y[ea]thāḥ|-.*y[ae]ta|-.*yeya|-.*yerann?|-.*tavya[mṃ]|-.*īrann?"][word!=="@"] *SYMMETRIC =is the agent of (-i/ī nouns) 1:[word="[[:upper:]]+"][word="-.*yā|-.*inā|-.*bhyā[mṃ]|-.*bhi[ḥr]|-.*bhi"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})?2:[word="[[:upper:]]+"][word="-.*ya[ts]e|-.*y[ea]thāḥ|-.*y[ae]ta|-.*yeya|-.*yerann?|-.*tavya[mṃ]|-.*īrann?"][word!=="@"] *SYMMETRIC =modified-modifies (or listed with) MASC #Nominatives 1:[word="[[:upper:]]+"][word="-.*a|-.*o|-.*a[ḥś]|aya[mṃ]|-.*vān|-.*ī|-.*[iu][ḥr]"& !word="punaḥ|bho|na|t?atra|ca|tata[śḥ]|-.*ena|-.*eṇa|-.*asya|-.*ai[ḥr]|-.*bhi[ḥr]|t?atraiva|-.*yaduta|uta|-.*āha|uvāca|sma|bahir|iha|iva|eva|prāgeva|-.*aiva|babhūva|atha|tato|kila|mama|tava|-.*bhya[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*a|-.*o|-.*a[ḥś]|-.*vān|-.*ī|-.*[iu][ḥr]"& !word="punaḥ|bho|na|t?atra|ca|tata[śḥ]|-.*ena|-.*asya|-.*ai[ḥr]|-.*bhi[ḥr]|t?atraiva|-.*yaduta|uta|-.*āha|uvāca|sma|bahir|iha|iva|eva|-.*aiva|babhūva|atha|tato|kila|mama|tava|-.*bhya[ḥś]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*ā|-.*ā[ḥś]|sarve|ye|te|-.*aya[ḥś]|-.*ava[śḥ]|-.*anta[ḥś]"& !word="vā|-.*yathā|-.*itvā|śrutvā|[st]adā|-.*inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā|-.*ā[ḥś]|sarve|ye|te|-.*aya[ḥś]|-.*ava[śḥ]|-.*anta[ḥś]"& !word="vā|-.*yathā|-.*itvā|śrutvā|sadā"][word!=="@"] #Accusatives 1:[word="[[:upper:]]+"][word="-.*a[mṃ]|-.*[ui][mṃ]"& !word="-.*ānā[mṃ]|-.*āyā[mṃ]|eva[ṃm]|naiva[mṃ]|[ai]ya[mṃ]|katha[mṃ]|ki[ṃm]|tva[ṃm]|-.*tu[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*a[mṃ]|-.*[ui][mṃ]"& !word="-.*ānā[mṃ]|-.*āyā[mṃ]|eva[ṃm]|naiva[mṃ]|[ai]ya[mṃ]|katha[mṃ]|ki[ṃm]|tva[ṃm]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*ā[nñ]|-.*[īū][nñ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*a[mṃ]|-.*[ui][mṃ]" & !word="-.*ānā[mṃ]|-.*āyā[mṃ]|eva[ṃm]|naiva[mṃ]|[ai]ya[mṃ]|katha[mṃ]|ki[ṃm]|tva[ṃm]|-.*tu[mṃ]"][word!=="@"] #Instrumentals 1:[word="[[:upper:]]+"][word="-.*ena|inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ena|inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*bhi[ḥr]|-.*bhi|-.*ai[ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*bhi[ḥr]|-.*bhi|-.*ai[ḥr]"][word!=="@"] #Datives #singular datives omitted: they would generate too many false positives 1:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"] #genitives 1:[word="[[:upper:]]+"][word="-.*asya|-.*[eo][ḥr]|-.*[iu][nṇ]a[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*asya|-.*[eo][ḥr]|-.*[iu][nṇ]a[ḥś]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*[iā][nṇ]ā[mṃ]|t?eṣā[mṃ]|-.*[ūī][nṇ]ā[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*[iā][nṇ]ā[mṃ]|t?eṣā[mṃ]|-.*[ūī][nṇ]ā[mṃ]"][word!=="@"] #remove -.*[eo][ḥr]|-.*[iu][nṇ]a[ḥś] if you get too many false positives #Ablatives 1:[word=".ā[td]" & !word="kāsma[td]|tasmā[td]|syā[td]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā[td]" & !word="kāsma[td]|tasmā[td]|syā[td]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"] #Locatives 1:[word="[[:upper:]]+"][word="-.*e|-.*a[uv]|-.*in[iy]|manas[iy]|cakṣuṣ[iy]|-.*tmāni|-.*mni" & !word="-.*ye|sarve|te|ime|-.*[aī]te|me|te|manase"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*e|-.*a[uv]|-.*in[iy]|manas[iy]|cakṣuṣ[iy]|-.*tmāni|-.*mni" & !word="-.*ye|sarve|te|ime|-.*[aī]te|me|te|manase"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*eṣ[uv]|-.*at?su"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*eṣ[uv]|-.*at?su"][word!=="@"] *SYMMETRIC =modified-modifies (or listed with) FEM #Nominatives 1:[word="[[:upper:]]+"][word="-.*[iī][ḥr]|-.*[īi]|-.*ā|-.*[uū][ḥr]"& !word="-.*[iu][nṇ]i|-.*bhi|-.*bhi[rḥ]|vai|-.*ai[ḥr]|-.*yathā|tathā|vā|[st]adā|-.*inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā|śrutvā|-.*itvā|hi|veti|asti|nāsti|iti|mayā|api|-.*āpi|asmi|-.*nti"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*[iī][ḥr]|-.*[īi]|-.*ā|-.*[uū][ḥr]"& !word="-.*[iu][nṇ]i|-.*bhi|-.*bhi[rḥ]|vai|-.*ai[ḥr]|-.*yathā|tathā|vā|[st]adā|-.*inā|-.*manasā|-.*cakṣusā|-.*bhagavatā|-.*tmanā|śrutvā|-.*itvā|hi|veti|asti|nāsti|iti|mayā|api|-.*āpi|asmi|-.*nti"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*ā[ḥś]|-.*ya[ḥś]|-.*ava[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā[ḥś]|-.*ya[ḥś]|-.*ava[ḥś]"][word!=="@"] #accusatives 1:[word="[[:upper:]]+"][word="-.*ā[ṃm]|-.*[iī][mṃ]|-.*[uū][mṃ]" &!word="-.*ānā[mṃ]|āṇā[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā[ṃm]|-.*[iī][mṃ]|-.*[uū][mṃ]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*ā[ḥś]|-.*[iī][ḥr]|-.*[uū][ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā[ḥś]|-.*[iī][ḥr]|-.*[uū][ḥr]" & !word="-.*bhi[rḥ]|-.*ai[ḥr]"][word!=="@"] #Ablatives 1:[word="[[:upper:]]+"][word="-.*e[ḥr]|-.*o[ḥr]" & !word="d?heto[ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*e[ḥr]|-.*o[ḥr]" & !word="d?heto[ḥr]"][word!=="@"] 1:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"][word!=="." & word!=="/"& word!=="|"& word!=="?"& word!=="!"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*bhya[ḥś]"][word!=="@"] #genitives 1:[word="[[:upper:]]+"][word="-.*e[ḥr]|-.*o[ḥr]" & !word="d?heto[ḥr]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*e[ḥr]|-.*o[ḥr]" & !word="d?heto[ḥr]"][word!=="@"] #gen&abl in-.*yā[ḥś] omitted to avoid too many false positives 1:[word="[[:upper:]]+"][word="-.*ā[nṇ]ā[ṃm]|-.*[īū][nṇ]ā[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*ā[nṇ]ā[ṃm]|-.*[īū][nṇ]ā[mṃ]"][word!=="@"] #Locatives 1:[word="[[:upper:]]+"][word="-.*a[uv]|-.*āyā[mṃ]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*a[uv]|-.*āyā[mṃ]"][word!=="@"] #remove -.*āyā[mṃ] if it generates too many false positives ###### GENERAL COTEXT divert(-1) define('WORD','[word="[^[:digit:][:punct:]].*"]') divert *FIXORDER ;words before "%w";words just before "%w";words just after "%w";words after "%w" *STRUCTLIMIT s *DUAL =words before "%w"/words after "%w" 2:WORD ([]{0,10})? 1:WORD *DUAL =words just before "%w"/words just after "%w" 2:WORD 1:WORD 1:[word="[[:upper:]]+"][word="-.*as[uv]|-.*[iī]ṣ[uv]|-.*[uū]ṣ[uv]"][word!=="@"][word!=="." & word!=="/"& word!=="|"]([]{0,10})? 2:[word="[[:upper:]]+"][word="-.*as[uv]|-.*[iī]ṣ[uv]|-.*[uū]ṣ[uv]"][word!=="@"]