Characteristics of the Bulgarian language in AX Semantics


In Bulgarian, you need to know the gender of a noun to form (together with number and case) the accompanying adjectives, determiners, numerals, and pronouns correctly.

Bulgarian has three genders for nouns: masculine, feminine, and neuter. There are two numbers: singular and plural. Additionally, Bulgarian has two cases (nominative and vocative) for nouns, but personal pronouns have accusative and dative additionally.

grammatical namevaluesexamples
gendermasculineстарият лекар
(the old doctor)
feminineстарата жена
(the old woman)
neuterстарото село
(the old village)
numbersingularстарият автомобил
(the old car)
pluralстарите автомобили
(the old cars)
cases (noun)nominativeпрофе́сор
(a professor)
vocativeКак сте, професоре?
(How are you, professor?)
cases (pronoun)nominativeТой ми помага.
(He helps me.)
accusativeРодителите му водеха него и негов приятел на кино. Те го харесват.
(His parents took him and a friend to the movies. They like him.)
dativeНепознатият му дава подарък.
(The stranger gave him a gift.)
adjectives (noun)before nounчервена къща
(red house)
verb tensespresentтой работи
(he works)
past (aorist)той работи
(he worked)
past participleтой е работил
(he has worked)
futureтой ще работи
(he will work)

The standard order of a noun phrase in Bulgarian is the following: preposition + determiner + numeral + adjective + noun. See for example:

за     тези   три    популярни  книги
about  these  three  popular    book
PREP   DET    NUM    ADJ        NOUN
"about these three popular books"



Bulgarian nouns are inflected for number (singular/plural), case (nominative/vocative), and definiteness (indefinite/definite). When the lexicon entry is missing, the NLG platform will first try to find the most probable gender based on heuristics. However, nouns should be added to the lexicon with their grammatical gender if they do not inflect regularly.

Lexicon entries for nouns may also be necessary for inflecting determiners, adjectives and pronouns correctly. They are omitted, if a lexicon entry is required, but missing.


The basic lexicon entry for се́ло (village) contains:

  • gender: neuter
  • inflection table for case and number:

Definiteness is expressed by a definite article that is suffixed to the noun. Take стол (student) for example:

стол (chair)
столът (the chair [subject])
стола (the chair [object])


If you need lexicon entries for countries, write to the support about that and you will get them for Bulgarian with automatic handling of prepositions.


In the lexicon, the inflection table encodes gender, case, number, and definiteness. For adjective position, the default is "before noun".

The definite article is postfixed to the first adjective if there is one, otherwise it is added to the noun. For example:

добър ученик (a good student)
добрият ученик (the good student)


Bulgarian verbs inflect for person, number, tense, and in some cases gender. The most common verbs are encoded in our software. If a verb inflects incorrectly, you should add it to the lexicon.

The future tense in Bulgarian can be formed via the auxiliary verb ще + the present form of the main verb. Thus, to express the future tense, you can put ще as plain text and then use a verb container with present tense for the main verb. Take the verb играя (to play [inf.]) for example:

Те ще играят.
(They will play. [future])
Аз ще играя.
(I will play. [future])

Past participles in Bulgarian can be used for present and past perfect tense. The present perfect tense is formed via the present tense of съм + the past participle of the main verb. Additionally, the past perfect tense is composed of the imperfect tense of съм + the past participle of the main verb. You need to configure two verb containers for both perfect tenses. See the examples with the verb питам (impf, to ask) below:

той е питал [present perfect]
(He has asked.)
той беше поискал питал [past perfect]
(He had asked.)

Container settings


The AX NLG platform supports the following determiners for Bulgarian: definite, demonstrative, distal, relative, and possessive.

In Bulgarian, definiteness (definite/indefinite) is expressed by a definite article (e.g., то in the below example) which is suffixed to the noun, adjective, or numeral. Note that the definite article is suffixed to the first adjective/numeral if there is one, otherwise it is added to the noun.

село (village[indef.])
селото (the village[def.])
старото село (the old[def.] village)
старото красиво село(the old[def.] beautiful village)
първото красиво село (the first[def.] beautiful village)


The noun will automatically agree with the numeral number when a numeral variable is used. Four types of numerals are possible on the AX NLG platform: cardinal, cardinal as digit, ordinal, and ordinal as digit.

textдевет дни
(nine days)
деветия ден
(the ninth day)
digit9 дни
(9 days)
9. ден
(the 9th day)

For Bulgarian, ordinal numerals are written out until 20, otherwise (above 20) the output is in digit form. Cardinal numerals are written out for 1-20, 30, 40, …, and 100, otherwise the output is in digit form. Take cardinal numerals for example:

деветдесет автомобила
(ninety cars)
101 автомобила
(101 cars)

Additionally, cardinal numerals take the special ending -ма, when referring to men, see два (two) for example:

два стола
(2 chairs)
двама братя
(2 brothers)


If users configure prepositions in the container, they are automatically adapted, if needed (ввъв / ссъс). As the below example shows, в becomes във when the next word starts with a similar consonant (e.g., в or ф).

пристигам в хотела
(arrive at the hotel)
във Франция
(in France)

Preposition switch

On the AX NLG platform, the settings for the container Германия (Germany) are: preposition="в" and case="nom".

в Германия
(in Germany)

For the below sentence with a different place (i.e. Филипините (the Philippines)), the platform settings are the same as above (preposition="в", case="nom"), but the lexical information changes the preposition and shows a switch from в to на:

на Филипините
(in the Philippines)