8.1.10. cltk.morphology package¶
8.1.10.1. Submodules¶
8.1.10.2. cltk.morphology.akk module¶
Functions and classes for Akkadian morphology.
- cltk.morphology.akk.get_bound_form(noun, gender)[source]¶
Return bound form of nound, given its gender.
>>> get_bound_form("awīlum", "m") 'awīl'
- Return type:
str
- cltk.morphology.akk.decline_noun(noun, gender, mimation=True)[source]¶
- Return a list of all possible Akkadiandeclined forms given any form
of a noun and its gender.
>>> decline_noun('iltum', 'f') [('iltum', {'case': 'nominative', 'number': 'singular'}), ('iltam', {'case': 'accusative', 'number': 'singular'}), ('iltim', {'case': 'genitive', 'number': 'singular'}), ('iltān', {'case': 'nominative', 'number': 'dual'}), ('iltīn', {'case': 'oblique', 'number': 'dual'}), ('ilātum', {'case': 'nominative', 'number': 'plural'}), ('ilātim', {'case': 'oblique', 'number': 'plural'})]
- Return type:
List
[Tuple
[str
,Dict
[str
,str
]]]
8.1.10.3. cltk.morphology.lat module¶
This modules provides Decliner for Latin. Given a lemma, the Decliner will provide each grammatically valid forms
This work is based on the lexical and linguistic data built for and by the Collatinus Team ( https://github.com/biblissima/collatinus ). This module hence inherit the license from the original project. The objective of this module is to port part of Collatinus to CLTK.
- class cltk.morphology.lat.CollatinusDecliner[source]¶
Bases:
object
Latin Decliner based on Collatinus data and approach to declining words for Latin
# Ensure you have downloaded the corpus latin_models_cltk before running this from cltk.stem.lat.declension import CollatinusDecliner decliner = CollatinusDecliner() print(decliner.decline("via")) [ ('via', '--s----n-'), ('via', '--s----v-'), ('viam', '--s----a-'), ('viae', '--s----g-'), ('viae', '--s----d-'), ('via', '--s----b-'), ('viae', '--p----n-'), ('viae', '--p----v-'), ('vias', '--p----a-'), ('viarum', '--p----g-'), ('viis', '--p----d-'), ('viis', '--p----b-') ]
- _remove_disambiguation(root)[source]¶
Remove disambiguation index from lemma root
- Parameters:
root – Root in Collatinus
- Returns:
Cleaned root
- _getRoots(lemma, model)[source]¶
Retrieve the known roots of a lemma
- Parameters:
lemma (str) – Canonical form of the word (lemma)
model (dict) – Model data from the loaded self.__data__. Can be passed by decline()
- Returns:
Dictionary of roots with their root identifier as key
- Return type:
dict
- decline(lemma, flatten=False, collatinus_dict=False)[source]¶
Decline a lemma
Warning
POS are incomplete as we do not detect the type outside of verbs, participle and adjective.
- Raises:
CLTKException – When the lemma is unknown to our data
- Parameters:
lemma (str) – Lemma (Canonical form) to decline
flatten (bool) – If set to True, returns a list of forms without natural language information about them
collatinus_dict (bool) – If sets to True, Dictionary of grammatically valid forms, including variants, with keys corresponding to morpho informations.
- Returns:
List of tuple where first value is the form and second the pos, ie [(“sum”, “v1ppip—“)]
- Return type:
list or dict
- property lemmas: Dict[str, Dict[str, str]]¶
- Return type:
Dict
[str
,Dict
[str
,str
]]
8.1.10.4. cltk.morphology.morphosyntax module¶
A module for representing universal morphosyntactic feature bundles.
- class cltk.morphology.morphosyntax.MorphosyntacticFeatureBundle(*features)[source]¶
Bases:
object
A representation of a set of features, usually associated with a word form.
- all()[source]¶
- Return type:
List
[Tuple
[Type
[MorphosyntacticFeature
],List
[MorphosyntacticFeature
]]]
- underspecify(feature_name)[source]¶
Underspecify the given feature in the bundle. >>> f1 = f(F.pos, N.pos, V.neg) >>> f1.underspecify(F) >>> f1[F] is Underspecified True
- Return type:
None
- matches(other)[source]¶
This feature bundle matches other if other contains all the features of this bundle, i.e. if this bundle is an improper subset of other. Underspecified features will match.
>>> f1 = f(F, N.pos, V.neg) >>> f2 = f(F.neg, N.pos, V.neg) >>> f3 = f(F.pos, N.neg, V.pos) >>> f1.matches(f2) True >>> f1.matches(f3) False
- Return type:
bool
- cltk.morphology.morphosyntax.f¶
alias of
MorphosyntacticFeatureBundle
- cltk.morphology.morphosyntax.to_categorial(pos)[source]¶
Maps UD parts of speech to binary categorial feature bundles. In some cases these are underspecified, including empty bundles for interjections. >>> to_categorial(POS.adjective) {F: [neg], N: [pos], V: [pos]} >>> to_categorial(POS.particle) {F: [pos]} >>> to_categorial(POS.interjection) {}
- Return type:
- cltk.morphology.morphosyntax.from_ud(feature_name, feature_value)[source]¶
For a given Universal Dependencies feature name and value, return the appropriate feature class/value. >>> from_ud(‘Case’, ‘Abl’) ablative >>> from_ud(‘Abbr’, ‘Yes’) pos >>> from_ud(‘PronType’, ‘Ind’) indefinite
- Return type:
Optional
[MorphosyntacticFeature
]
8.1.10.5. cltk.morphology.universal_dependencies_features module¶
Data types for each morphological category and features annotated by the Universal Dependencies (UD) project (<https://universaldependencies.org/guidelines.html>_).
These are from v2 of UD, except for Strength
which is from v1
and was (as of 12/2020) still in the Gothic treebank.
- class cltk.morphology.universal_dependencies_features.MorphosyntacticFeature(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
CLTKEnum
A generic multivalued morphosyntactic feature.
- class cltk.morphology.universal_dependencies_features.N(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
A `nominal word <https://en.wikipedia.org/wiki/Nominal_(linguistics)>_, “a category used to group together nouns and adjectives based on shared properties. The motivation for nominal grouping is that in many languages nouns and adjectives share a number of morphological and syntactic properties.”
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.V(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
A verbal word, which “typically signal events and actions, can constitute a minimal predicate in a clause, and govern the number and types of other constituents which may occur in the clause.” See notes that verb-like forms may be better classed as eg, nouns, adjectives, etc..
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.F(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
A function word. These “have little lexical meaning or have ambiguous meaning and express grammatical relationships among other words within a sentence, or specify the attitude or mood of the speaker”.
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.POS(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The POS “feature” represents the list of syntactic categories published by the UD project. See https://universaldependencies.org/u/pos/index.html
- adjective = 1¶
- adposition = 2¶
- adverb = 3¶
- auxiliary = 4¶
- coordinating_conjunction = 5¶
- determiner = 6¶
- interjection = 7¶
- noun = 8¶
- numeral = 9¶
- particle = 10¶
- possessors_number = 11¶
- pronoun = 12¶
- proper_noun = 13¶
- punctuation = 14¶
- subordinating_conjunction = 15¶
- symbol = 16¶
- verb = 17¶
- other = 18¶
- class cltk.morphology.universal_dependencies_features.VerbForm(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The inlectional type of the verb. Possibly this confuses tense, aspect, and other more primitive morphosyntactic information. see https://universaldependencies.org/u/feat/VerbForm.html
- converb = 1¶
- finite = 2¶
- gerund = 3¶
- gerundive = 4¶
- infinitive = 5¶
- participle = 6¶
- supine = 7¶
- masdar = 8¶
- class cltk.morphology.universal_dependencies_features.Mood(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The mood of a verb. see https://universaldependencies.org/u/feat/Mood.html
- admirative = 1¶
- conditional = 2¶
- desiderative = 3¶
- imperative = 4¶
- indicative = 5¶
- jussive = 6¶
- necessitative = 7¶
- optative = 8¶
- potential = 9¶
- purposive = 10¶
- quotative = 11¶
- subjunctive = 12¶
- class cltk.morphology.universal_dependencies_features.Tense(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The tense of a verb, i.e. the time of the eventuality in relation to a reference point in time. see https://universaldependencies.org/u/feat/Tense.html
- future = 1¶
- imperfect = 2¶
- past = 3¶
- pluperfect = 4¶
- present = 5¶
- class cltk.morphology.universal_dependencies_features.Aspect(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The aspect of the verb, i.e. the temporal structure of the eventuality. see https://universaldependencies.org/u/feat/Aspect.html
- habitual = 1¶
- imperfective = 2¶
- iterative = 3¶
- perfective = 4¶
- progressive = 5¶
- prospective = 6¶
- class cltk.morphology.universal_dependencies_features.Voice(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The voice of the verb, i.e. the relation of the participants to the eventuality. see https://universaldependencies.org/u/feat/Voice.html
- active = 1¶
- antipassive = 2¶
- beneficiary_focus = 3¶
- location_focus = 4¶
- causative = 5¶
- direct = 6¶
- inverse = 7¶
- middle = 8¶
- passive = 9¶
- reciprocal = 10¶
- class cltk.morphology.universal_dependencies_features.Evidentiality(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
What evidence is there for the assertion of the eventuality described by the verb? Is it based on the speaker’s knowledge, or indirect? see https://universaldependencies.org/u/feat/Evident.html
- first_hand = 1¶
- non_first_hand = 2¶
- class cltk.morphology.universal_dependencies_features.Polarity(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is the proposition negative or positive? see https://universaldependencies.org/u/feat/Polarity.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Person(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The grammatical person of the verb, i.e. the participant indicated by the subject. # see https://universaldependencies.org/u/feat/Person.html
- zeroth = 1¶
- first = 2¶
- second = 3¶
- third = 4¶
- fourth = 5¶
- psor = 6¶
- subj = 7¶
- class cltk.morphology.universal_dependencies_features.Politeness(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The morphological reflex of the formal register with which participants are addressed in the sentence, affecting verbs and pronouns. see https://universaldependencies.org/u/feat/Polite.html
- elevated = 1¶
- formal = 2¶
- humble = 3¶
- informal = 4¶
- class cltk.morphology.universal_dependencies_features.Clusivity(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Does a first person plural subject include the addressee? see https://universaldependencies.org/u/feat/Clusivity.html
- exclusive = 1¶
- inclusive = 2¶
- class cltk.morphology.universal_dependencies_features.Strength(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is this a strong or weak verb or adjective? UDv1 feature, specific to Gothic. see http://universaldependencies.org/docsv1/got/feat/Strength.html
- strong = 1¶
- weak = 2¶
- class cltk.morphology.universal_dependencies_features.Case(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The case of a noun phrase. see https://universaldependencies.org/u/feat/Case.html
- nominative = 1¶
- accusative = 2¶
- ergative = 3¶
- absolutive = 4¶
- abessive = 5¶
- befefactive = 6¶
- causative = 7¶
- comparative = 8¶
- considerative = 9¶
- comitative = 10¶
- dative = 11¶
- distributive = 12¶
- equative = 13¶
- genitive = 14¶
- instrumental = 15¶
- partitive = 16¶
- vocative = 17¶
- ablative = 18¶
- additive = 19¶
- adessive = 20¶
- allative = 21¶
- delative = 22¶
- elative = 23¶
- essive = 24¶
- illative = 25¶
- inessive = 26¶
- lative = 27¶
- locative = 28¶
- perlative = 29¶
- sublative = 30¶
- superessive = 31¶
- terminative = 32¶
- temporal = 33¶
- translative = 34¶
- class cltk.morphology.universal_dependencies_features.Gender(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The grammatical gender of a nominal. see https://universaldependencies.org/u/feat/Gender.html
- masculine = 1¶
- feminine = 2¶
- neuter = 3¶
- common = 4¶
- psor = 5¶
- class cltk.morphology.universal_dependencies_features.Animacy(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The soul-type of an entity (as it were.) see https://universaldependencies.org/u/feat/Animacy.html
- animate = 1¶
- human = 2¶
- inanimate = 3¶
- non_human = 4¶
- class cltk.morphology.universal_dependencies_features.Number(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The count type of an entity. see https://universaldependencies.org/u/feat/Number.html
- collective = 1¶
- count_plural = 2¶
- dual = 3¶
- greater_paucal = 4¶
- greater_plural = 5¶
- inverse_number = 6¶
- paucal = 7¶
- plural = 8¶
- plurale_tantum = 9¶
- singular = 10¶
- trial = 11¶
- psor = 12¶
- class cltk.morphology.universal_dependencies_features.NumForm(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Feature of cardinal and ordinal numbers. Is the number expressed by digits or as a word? See https://universaldependencies.org/cs/feat/NumForm.html.
- word = 1¶
- digit = 2¶
- roman = 3¶
- reference = 4¶
- class cltk.morphology.universal_dependencies_features.Definiteness(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The relationship between noun phrases and entities in or not in the discoursive context. see https://universaldependencies.org/u/feat/Definiteness.html
- complex = 1¶
- construct_state = 2¶
- definite = 3¶
- indefinite = 4¶
- specific_indefinite = 5¶
- class cltk.morphology.universal_dependencies_features.Degree(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The degree of adjectives. see https://universaldependencies.org/u/feat/Degree.html
- absolute_superlative = 1¶
- comparative = 2¶
- equative = 3¶
- positive = 4¶
- superlative = 5¶
- class cltk.morphology.universal_dependencies_features.NameType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
The type of named entity, mostly applying to proper nouns. see https://universaldependencies.org/u/feat/NameType.html
- place = 1¶
- person = 2¶
- person_given_name = 3¶
- person_surname = 4¶
- nationality = 5¶
- company = 6¶
- product = 7¶
- other = 8¶
- class cltk.morphology.universal_dependencies_features.PronominalType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
A subclassification of pronouns. see https://universaldependencies.org/u/feat/PronType.html
- article = 1¶
- contrastive = 2¶
- demonstrative = 3¶
- emphatic = 4¶
- exclamative = 5¶
- indefinite = 6¶
- interrogative = 7¶
- negative = 8¶
- personal = 9¶
- reciprocal = 10¶
- relative = 11¶
- total = 12¶
- class cltk.morphology.universal_dependencies_features.AdpositionalType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Defines the position of an adposition. see https://universaldependencies.org/u/feat/AdpType.html
- preposition = 1¶
- postposition = 2¶
- circumposition = 3¶
- vocalized_adposition = 4¶
- class cltk.morphology.universal_dependencies_features.AdverbialType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
What type of adverb is this? see https://universaldependencies.org/u/feat/AdvType.html
- manner = 1¶
- location = 2¶
- time = 3¶
- degree = 4¶
- cause = 5¶
- modality = 6¶
- class cltk.morphology.universal_dependencies_features.VerbType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
If this is a functional verb, what kind is it? see https://universaldependencies.org/u/feat/VerbType.html
- auxiliary = 1¶
- copula = 2¶
- modal = 3¶
- light = 4¶
- class cltk.morphology.universal_dependencies_features.Possessive(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is this nominal form marked as a possessive? see https://universaldependencies.org/u/feat/Poss.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Numeral(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
A subclassification of numeric types. see https://universaldependencies.org/u/feat/NumType.html
- cardinal = 1¶
- distributive = 2¶
- fractional = 3¶
- multiplicative = 4¶
- ordinal = 5¶
- range = 6¶
- sets = 7¶
- class cltk.morphology.universal_dependencies_features.Reflexive(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is the pronoun reflexive? see https://universaldependencies.org/u/feat/Reflex.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Foreign(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is this a foreign word, relative to the language of the sentences? see https://universaldependencies.org/u/feat/Foreign.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Abbreviation(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Is this word an abbreviation? see https://universaldependencies.org/u/feat/Abbr.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Typo(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Does this word contain a typo? see https://universaldependencies.org/u/feat/Typo.html
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.InflClass(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
- ind_eur_a = 1¶
- ind_eur_e = 2¶
- ind_eur_i = 3¶
- ind_eur_o = 4¶
- ind_eur_u = 5¶
- ind_eur_x = 6¶
- lat_a = 7¶
- lat_anom = 8¶
- lat_e = 9¶
- lat_i = 10¶
- lat_i2 = 11¶
- lat_pron = 12¶
- lat_x = 13¶
- nominal = 14¶
- class cltk.morphology.universal_dependencies_features.NumValue(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
- pos = 1¶
- neg = 2¶
- class cltk.morphology.universal_dependencies_features.Proper(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
Added October 2023.
- yes = 1¶
- class cltk.morphology.universal_dependencies_features.Form(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
MorphosyntacticFeature
- pos = 1¶
- neg = 2¶
8.1.10.6. cltk.morphology.utils module¶
Misc helper functions for extracting morphological info from CLTK data structures.