GF Resource Grammar Library: Synopsis

B. Bringert and A. Ranta



Introduction

This document contains the most important parts of the GF Resource Grammar API. It has been machine-generated from the source files; each chapter gives a link to the relevant source files, which give more information. Some of the files have not yet been prepared so that the machine generated documentation has the right format.

Since the character encoding is UTF-8 for Russian and Latin-1 for other languages, you may have to change the encoding preference of your browser when reading different parts of the document.

The second-last chapter gives instructions on how to "browse" the library by loading the grammars into the gf command editor.

New: Browsing by syntax editor directly on the web.

The last chapter contains a brief example of how application grammars can import resource modules. At the same time, it illustrates a "design pattern" for using the resource API to build functor-based applications

Categories

Source 1: http://www.grammaticalframework.org/lib/resource/src/abstract/Common.gf

Source 2: http://www.grammaticalframework.org/lib/resource/src/abstract/Cat.gf

A hierarchic view

The chart below shows the categories in a hierarchical top-down order. The edges do not define the complete dependency structure; if they did, the graph would have many many more edges, and also many cycles. The precise meaning of a directed edge from C to D is: there is a constructor of C that takes D as an argument. What the constructors exactly are, and what other arguments they take, is described by separate tables for each category.

The rectangular boxes mark open lexical categories, which have constructors also in the Paradigms modules.

Explanations

Category Explanation Example
A one-place adjective warm
A2 two-place adjective divisible
AP adjectival phrase very warm
AdA adjective-modifying adverb very
AdN numeral-modifying adverb more than
AdV adverb directly attached to verb always
Adv verb-phrase-modifying adverb in the house
Ant anteriority simultaneous, anterior
CAdv comparative adverb more
CN common noun (without determiner) red house
Card cardinal number seven
Cl declarative clause, with all tenses she looks at this
Comp complement of copula, such as AP very warm
Conj conjunction and
Det determiner phrase those seven
Digits cardinal or ordinal in digits 1,000/1,000th
IAdv interrogative adverb why
IComp interrogative complement of copula where
IDet interrogative determiner how many
IP interrogative pronoun who
Imp imperative look at this
N common noun house
N2 relational noun son
N3 three-place relational noun connection
NP noun phrase (subject or object) the red house
Num number determining element seven
Numeral cardinal or ordinal in words five/fifth
Ord ordinal number (used in Det) seventh
PConj phrase-beginning conjunction therefore
PN proper name Paris
Phr phrase in a text but be quiet please
Pol polarity positive, negative
Predet predeterminer (prefixed Quant) all
Prep preposition, or just case in
Pron personal pronoun she
QCl question clause, with all tenses why does she walk
QS question where did she live
Quant quantifier ('nucleus' of Det) this/these
RCl relative clause, with all tenses in which she lives
RP relative pronoun in which
RS relative in which she lived
S declarative sentence she lived here
SC embedded sentence or question that it rains
Subj subjunction if
Temp temporal and aspectual features past anterior
Tense tense present, past, future
Text text consisting of several phrases He is here. Why?
Utt sentence, question, word... be quiet
V one-place verb sleep
V2 two-place verb love
V2A verb with NP and AP complement paint
V2Q verb with NP and Q complement ask
V2S verb with NP and S complement tell
V2V verb with NP and V complement cause
V3 three-place verb show
VA adjective-complement verb look
VP verb phrase is very warm
VPSlash verb phrase missing complement give to John
VQ question-complement verb wonder
VS sentence-complement verb claim
VV verb-phrase-complement verb want
Voc vocative or "please" my darling

Syntax Rules and Structural Words

Source 1: http://www.grammaticalframework.org/lib/resource/src/api/Constructors.gf

Source 2: http://www.grammaticalframework.org/lib/resource/src/abstract/Structural.gf

A - one-place adjective

Lexical category, constructors given in lexical paradigms.

A2 - two-place adjective

Lexical category, constructors given in lexical paradigms.

AP - adjectival phrase

Function Type Example
comparAP A -> AP warmer
mkAP A -> AP old
mkAP A -> NP -> AP older than John
mkAP A2 -> NP -> AP married to her
mkAP A2 -> AP married
mkAP AP -> S -> AP probable that John walks
mkAP AP -> QS -> AP uncertain if John walks
mkAP AP -> VP -> AP ready to go
mkAP AdA -> A -> AP very old
mkAP AdA -> AP -> AP very very old
mkAP Conj -> AP -> AP -> AP old and big
mkAP Conj -> ListAP -> AP old, big and warm
mkAP Ord -> AP oldest
mkAP CAdv -> AP -> NP -> AP as old as John
reflAP A2 -> AP married to himself

AdA - adjective-modifying adverb

Function Type Example
almost_AdA AdA almost
quite_Adv AdA quite
so_AdA AdA so
too_AdA AdA too
very_AdA AdA very

AdN - numeral-modifying adverb

Function Type Example
almost_AdN AdN almost
at_least_AdN AdN at
at_most_AdN AdN at
mkAdN CAdv -> AdN more than

AdV - adverb directly attached to verb

Function Type Example
always_AdV AdV always

Adv - verb-phrase-modifying adverb

Function Type Example
everywhere_Adv Adv everywhere
here7from_Adv Adv from here
here7to_Adv Adv to here
here_Adv Adv here
mkAdv A -> Adv warmly
mkAdv Prep -> NP -> Adv with John
mkAdv Subj -> S -> Adv when John walks
mkAdv CAdv -> A -> NP -> Adv more warmly than John
mkAdv CAdv -> A -> S -> Adv more warmly than John walks
mkAdv AdA -> Adv -> Adv very warmly
mkAdv Conj -> Adv -> Adv -> Adv here and now
mkAdv Conj -> ListAdv -> Adv with John, here and now
somewhere_Adv Adv somewhere
there7from_Adv Adv from there
there7to_Adv Adv to there
there_Adv Adv there

Ant - anteriority

Function Type Example
anteriorAnt Ant (John has walked)
simultaneousAnt Ant (John walks) [default]

CAdv - comparative adverb

Function Type Example
as_CAdv CAdv as
less_CAdv CAdv less
more_CAdv CAdv more

CN - common noun (without determiner)

Function Type Example
mkCN N -> CN house
mkCN N2 -> NP -> CN mother of John
mkCN N3 -> NP -> NP -> CN distance from this city to Paris
mkCN N2 -> CN son
mkCN N3 -> CN flight
mkCN A -> N -> CN big house
mkCN A -> CN -> CN big blue house
mkCN AP -> N -> CN very big house
mkCN AP -> CN -> CN very big blue house
mkCN N -> RS -> CN house that John loves
mkCN CN -> RS -> CN big house that John loves
mkCN N -> Adv -> CN house in the city
mkCN CN -> Adv -> CN big house in the city
mkCN CN -> S -> CN rule that John walks
mkCN CN -> QS -> CN question if John walks
mkCN CN -> VP -> CN reason to walk
mkCN N -> NP -> CN king John
mkCN CN -> NP -> CN old king John

Card - cardinal number

Function Type Example
mkCard Str -> Card thirty-five (given by "35")
mkCard Numeral -> Card thirty-five (given in any way)
mkCard Digits -> Card 51
mkCard AdN -> Card -> Card mkCard

Cl - declarative clause, with all tenses

Function Type Example
genericCl VP -> Cl one walks
mkCl NP -> V -> Cl John walks
mkCl NP -> V2 -> NP -> Cl John loves her
mkCl NP -> V3 -> NP -> NP -> Cl John sends it to her
mkCl NP -> VV -> VP -> Cl John wants to walk
mkCl NP -> VS -> S -> Cl John says that it is good
mkCl NP -> VQ -> QS -> Cl John wonders if it is good
mkCl NP -> VA -> AP -> Cl John becomes old
mkCl NP -> V2A -> NP -> AP -> Cl John paints it red
mkCl NP -> V2S -> NP -> S -> Cl John tells her that we are here
mkCl NP -> V2Q -> NP -> QS -> Cl John asks her who is here
mkCl NP -> V2V -> NP -> VP -> Cl John forces us to sleep
mkCl NP -> A -> Cl John is old
mkCl NP -> A -> NP -> Cl John is older than her
mkCl NP -> A2 -> NP -> Cl John is married to her
mkCl NP -> AP -> Cl John is very old
mkCl NP -> N -> Cl John is a man
mkCl NP -> CN -> Cl John is an old man
mkCl NP -> NP -> Cl John is the man
mkCl NP -> Adv -> Cl John is here
mkCl NP -> VP -> Cl John walks here
mkCl V -> Cl it rains
mkCl VP -> Cl it is raining
mkCl N -> Cl there is a house
mkCl CN -> Cl there is an old houses
mkCl NP -> Cl there are five houses
mkCl NP -> RS -> Cl it is John that walks
mkCl Adv -> S -> Cl it is here John walks

ClSlash

Function Type Example
mkClSlash NP -> V2 -> ClSlash (whom) John loves
mkClSlash NP -> VV -> V2 -> ClSlash (whom) John wants to see
mkClSlash Cl -> Prep -> ClSlash (with whom) John walks
mkClSlash ClSlash -> Adv -> ClSlash (whom) John loves today

Comp - complement of copula, such as AP

Lexical category, constructors given in lexical paradigms.

Conj - conjunction

Function Type Example
and_Conj Conj and
both7and_DConj Conj both...and
either7or_DConj Conj either...or
if_then_Conj Conj if
or_Conj Conj or

Det - determiner phrase

Function Type Example
aPl_Det Det (houses)
aSg_Det Det a (house)
a_Det Det a (house)
every_Det Det every
few_Det Det few
many_Det Det many
mkDet Quant -> Det this
mkDet Quant -> (Ord) -> Det this first
mkDet Quant -> Num -> Det these
mkDet Quant -> Num -> (Ord) -> Det these five best
mkDet Quant -> Det this
mkDet Quant -> Num -> Det these five
mkDet Card -> Det almost twenty
mkDet Numeral -> Det five
mkDet Digits -> Det 51
mkDet Pron -> Det my (house)
mkDet Pron -> Num -> Det my (houses)
much_Det Det much
somePl_Det Det somePl
someSg_Det Det someSg
thePl_Det Det the (houses)
the_Det Det the (house)

Dig

Function Type Example
n0_Dig Dig 0
n1_Dig Dig 1
n2_Dig Dig 2
n3_Dig Dig 3
n4_Dig Dig 4
n5_Dig Dig 5
n6_Dig Dig 6
n7_Dig Dig 7
n8_Dig Dig 8
n9_Dig Dig 9

Digits - cardinal or ordinal in digits

Function Type Example
mkDigits Dig -> Digits 8
mkDigits Dig -> Digits -> Digits 876
n1000_Digits Digits 1,000
n100_Digits Digits 100
n10_Digits Digits 10
n1_Digits Digits 1
n20_Digits Digits 20
n2_Digits Digits 2
n3_Digits Digits 3
n4_Digits Digits 4
n5_Digits Digits 5
n6_Digits Digits 6
n7_Digits Digits 7
n8_Digits Digits 8
n9_Digits Digits 9

IAdv - interrogative adverb

Function Type Example
how8much_IAdv IAdv how8much
how_IAdv IAdv how
mkIAdv Prep -> IP -> IAdv in which city
when_IAdv IAdv when
where_IAdv IAdv where
why_IAdv IAdv why

IComp - interrogative complement of copula

Lexical category, constructors given in lexical paradigms.

IDet - interrogative determiner

Function Type Example
how8many_IDet IDet how8many

IP - interrogative pronoun

Function Type Example
mkIP IQuant -> N -> IP which city
mkIP IQuant -> (Num) -> CN -> IP which five big cities
mkIP IP -> Adv -> IP who in Paris
whatPl_IP IP what (plural)
whatSg_IP IP what (singular)
whoPl_IP IP who (plural)
whoSg_IP IP who (singular)

IQuant

Function Type Example
which_IQuant IQuant which

Imp - imperative

Function Type Example
mkImp V -> Imp go
mkImp V2 -> NP -> Imp take it
mkImp VP -> Imp go there now

ImpForm

Function Type Example
pluralImpForm ImpForm (help yourselves)
politeImpForm ImpForm (help yourself) (polite singular)
singularImpForm ImpForm (help yourself) [default]

ListAP

Function Type Example
mkListAP AP -> AP -> ListAP old, big
mkListAP AP -> ListAP -> ListAP old, big, warm

ListAdv

Function Type Example
mkListAdv Adv -> Adv -> ListAdv here, now
mkListAdv Adv -> ListAdv -> ListAdv to me, here, now

ListNP

Function Type Example
mkListNP NP -> NP -> ListNP John, I
mkListNP NP -> ListNP -> ListNP John, I, that

ListRS

Function Type Example
mkListRS RS -> RS -> ListRS who walks, who runs
mkListRS RS -> ListRS -> ListRS who walks, who runs, who sleeps

ListS

Function Type Example
mkListS S -> S -> ListS he walks, I run
mkListS S -> ListS -> ListS John walks, I run, you sleep

N - common noun

Lexical category, constructors given in lexical paradigms.

N2 - relational noun

Lexical category, constructors given in lexical paradigms.

N3 - three-place relational noun

Lexical category, constructors given in lexical paradigms.

NP - noun phrase (subject or object)

Function Type Example
everybody_NP NP everybody
everything_NP NP everything
mkNP Quant -> N -> NP this men
mkNP Quant -> (Num) -> CN -> NP these five old men
mkNP Det -> N -> NP the first man
mkNP Det -> CN -> NP the first old man
mkNP Numeral -> N -> NP twenty men
mkNP Numeral -> CN -> NP twenty old men
mkNP Digits -> N -> NP 45 men
mkNP Digits -> CN -> NP 45 old men
mkNP Card -> N -> NP almost twenty men
mkNP Card -> CN -> NP almost twenty old men
mkNP Pron -> N -> NP my man
mkNP Pron -> CN -> NP my old man
mkNP PN -> NP John
mkNP Pron -> NP he
mkNP Quant -> NP this
mkNP Det -> NP these five
mkNP N -> NP beer
mkNP CN -> NP beer
mkNP Predet -> NP -> NP only John
mkNP NP -> V2 -> NP John killed
mkNP NP -> Adv -> NP John in Paris
mkNP NP -> RS -> NP John, who lives in Paris
mkNP Conj -> NP -> NP -> NP John and I
mkNP Conj -> ListNP -> NP John, I, and that
nobody_NP NP nobody
nothing_NP NP nothing
somebody_NP NP somebody
something_NP NP something

Num - number determining element

Function Type Example
mkNum Str -> Num thirty-five (given by "35")
mkNum Numeral -> Num twenty
mkNum Digits -> Num 51
mkNum Card -> Num almost ten
mkNum AdN -> Card -> Num almost ten
plNum Num plural
sgNum Num singular

Numeral - cardinal or ordinal in words

Function Type Example
mkNumeral Str -> Numeral thirty-five (given by "35")
n1000_Numeral Numeral thousand
n100_Numeral Numeral hundred
n10_Numeral Numeral ten
n1_Numeral Numeral one
n20_Numeral Numeral twenty
n2_Numeral Numeral two
n3_Numeral Numeral three
n4_Numeral Numeral four
n5_Numeral Numeral five
n6_Numeral Numeral six
n7_Numeral Numeral seven
n8_Numeral Numeral eight
n9_Numeral Numeral nine

Ord - ordinal number (used in Det)

Function Type Example
mkOrd Numeral -> Ord twentieth
mkOrd Digits -> Ord 51st
mkOrd A -> Ord best

PConj - phrase-beginning conjunction

Function Type Example
but_PConj PConj but
mkPConj Conj -> PConj and
otherwise_PConj PConj otherwise
therefore_PConj PConj therefore

PN - proper name

Lexical category, constructors given in lexical paradigms.

Phr - phrase in a text

Function Type Example
mkPhr Utt -> Phr why
mkPhr (PConj) -> Utt -> (Voc) -> Phr but why John
mkPhr S -> Phr John walked
mkPhr Cl -> Phr John walks
mkPhr QS -> Phr did John walk
mkPhr Imp -> Phr walk

Pol - polarity

Function Type Example
negativePol Pol (John doesn't walk)
positivePol Pol (John walks) [default]

Predet - predeterminer (prefixed Quant)

Function Type Example
all_Predet Predet all
most_Predet Predet most
not_Predet Predet not
only_Predet Predet only

Prep - preposition, or just case

Function Type Example
above_Prep Prep above
after_Prep Prep after
before_Prep Prep before
behind_Prep Prep behind
between_Prep Prep between
by8agent_Prep Prep by (agent)
by8means_Prep Prep by (means of)
during_Prep Prep during
except_Prep Prep except
for_Prep Prep for
from_Prep Prep from
in8front_Prep Prep in front of
in_Prep Prep in
on_Prep Prep on
part_Prep Prep part
possess_Prep Prep of (possessive)
through_Prep Prep through
to_Prep Prep to
under_Prep Prep under
with_Prep Prep with
without_Prep Prep without

Pron - personal pronoun

Function Type Example
he_Pron Pron he
i_Pron Pron i
it_Pron Pron it
she_Pron Pron she
they_Pron Pron they
we_Pron Pron we
youPl_Pron Pron you (plural)
youPol_Pron Pron you (polite)
youSg_Pron Pron you (singular)

Punct

Function Type Example
exclMarkPunct Punct !
fullStopPunct Punct .
questMarkPunct Punct ?

QCl - question clause, with all tenses

Function Type Example
mkQCl Cl -> QCl does John walk
mkQCl IP -> VP -> QCl who walks
mkQCl IP -> NP -> V2 -> QCl whom does John love
mkQCl IP -> ClSlash -> QCl whom does John love today
mkQCl IAdv -> Cl -> QCl why does John walk
mkQCl Prep -> IP -> Cl -> QCl with who does John walk
mkQCl IAdv -> NP -> QCl where is John
mkQCl IP -> QCl what is there
mkQCl IComp -> NP -> QCl who is John

QS - question

Function Type Example
mkQS QCl -> QS who walks
mkQS (Tense) -> (Ant) -> (Pol) -> QCl -> QS who wouldn't have walked
mkQS Cl -> QS does John walk

Quant - quantifier ('nucleus' of Det)

Function Type Example
a_Quant Quant a
mkQuant Pron -> Quant my
no_Quant Quant no
that_Quant Quant that
the_Quant Quant the
this_Quant Quant this

RCl - relative clause, with all tenses

Function Type Example
mkRCl RP -> VP -> RCl that walk
mkRCl RP -> NP -> V2 -> RCl which John loves
mkRCl RP -> ClSlash -> RCl which John loves today
mkRCl Cl -> RCl such that John loves her

RP - relative pronoun

Function Type Example
mkRP Prep -> NP -> RP -> RP all the houses in which
which_RP RP which

RS - relative

Function Type Example
mkRS RCl -> RS that walk
mkRS (Tense) -> (Ant) -> (Pol) -> RCl -> RS that wouldn't have walked
mkRS Conj -> RS -> RS -> RS who walks and whom I know
mkRS Conj -> ListRS -> RS who walks, whose son runs, and whom I know

S - declarative sentence

Function Type Example
mkS Cl -> S John walks
mkS (Tense) -> (Ant) -> (Pol) -> Cl -> S John wouldn't have walked
mkS Conj -> S -> S -> S John walks and I run
mkS Conj -> ListS -> S John walks, I run and you sleep
mkS Adv -> S -> S today, John walks

SC - embedded sentence or question

Lexical category, constructors given in lexical paradigms.

Subj - subjunction

Function Type Example
although_Subj Subj although
because_Subj Subj because
if_Subj Subj if
that_Subj Subj that
when_Subj Subj when

Temp - temporal and aspectual features

Lexical category, constructors given in lexical paradigms.

Tense - tense

Function Type Example
conditionalTense Tense (John would walk)
futureTense Tense (John will walk)
pastTense Tense (John walked)
presentTense Tense (John walks) [default]

Text - text consisting of several phrases

Function Type Example
emptyText Text (empty text)
mkText Phr -> Text But John walks.
mkText Phr -> (Punct) -> (Text) -> Text John walks? Yes.
mkText Utt -> Text John.
mkText S -> Text John walked.
mkText Cl -> Text John walks.
mkText QS -> Text Did John walk?
mkText Imp -> Text Walk!
mkText Text -> Text -> Text Where? When? Here. Now!

Utt - sentence, question, word...

Function Type Example
lets_Utt VP -> Utt let's walk
mkUtt S -> Utt John walked
mkUtt Cl -> Utt John walks
mkUtt QS -> Utt did John walk
mkUtt QCl -> Utt does John walk
mkUtt Imp -> Utt love yourself
mkUtt (ImpForm) -> (Pol) -> Imp -> Utt don't love yourselves
mkUtt IP -> Utt who
mkUtt IAdv -> Utt why
mkUtt NP -> Utt John
mkUtt Adv -> Utt here
mkUtt VP -> Utt to walk
mkUtt CN -> Utt beer
mkUtt AP -> Utt fine
mkUtt Card -> Utt five
no_Utt Utt no
yes_Utt Utt yes

V - one-place verb

Lexical category, constructors given in lexical paradigms.

V2 - two-place verb

Function Type Example
have_V2 V2 have

V2A - verb with NP and AP complement

Lexical category, constructors given in lexical paradigms.

V2Q - verb with NP and Q complement

Lexical category, constructors given in lexical paradigms.

V2S - verb with NP and S complement

Lexical category, constructors given in lexical paradigms.

V2V - verb with NP and V complement

Lexical category, constructors given in lexical paradigms.

V3 - three-place verb

Lexical category, constructors given in lexical paradigms.

VA - adjective-complement verb

Lexical category, constructors given in lexical paradigms.

VP - verb phrase

Function Type Example
mkVP V -> VP walk
mkVP V2 -> NP -> VP love her
mkVP V3 -> NP -> NP -> VP send it to her
mkVP VV -> VP -> VP want to walk
mkVP VS -> S -> VP know that she walks
mkVP VQ -> QS -> VP ask if she walks
mkVP VA -> AP -> VP become old
mkVP V2A -> NP -> AP -> VP paint it red
mkVP A -> VP be warm
mkVP AP -> VP be very warm
mkVP A -> NP -> VP be older than her
mkVP A2 -> NP -> VP be married to her
mkVP N -> VP be a man
mkVP CN -> VP be an old man
mkVP NP -> VP be the man
mkVP Adv -> VP be here
mkVP VP -> Adv -> VP sleep here
mkVP AdV -> VP -> VP always sleep
mkVP VPSlash -> NP -> VP paint it black
mkVP VPSlash -> VP paint itself black
passiveVP V2 -> VP be loved
passiveVP V2 -> NP -> VP be loved by her
progressiveVP VP -> VP be sleeping
reflexiveVP V2 -> VP love itself

VPSlash - verb phrase missing complement

Function Type Example
mkVPSlash V2 -> VPSlash (whom) (John) loves
mkVPSlash V3 -> NP -> VPSlash (whom) (John) gives an apple
mkVPSlash V2A -> AP -> VPSlash (whom) (John) paints red
mkVPSlash V2Q -> QS -> VPSlash (whom) (John) asks who sleeps
mkVPSlash V2S -> S -> VPSlash (whom) (John) tells that we sleep
mkVPSlash V2V -> VP -> VPSlash (whom) (John) forces to sleep

VQ - question-complement verb

Lexical category, constructors given in lexical paradigms.

VS - sentence-complement verb

Lexical category, constructors given in lexical paradigms.

VV - verb-phrase-complement verb

Function Type Example
can8know_VV VV can (capacity)
can_VV VV can (possibility)
must_VV VV must
want_VV VV want

Voc - vocative or "please"

Function Type Example
mkVoc NP -> Voc John
please_Voc Voc please

Lexical Paradigms

Paradigms for Bulgarian

source http://www.grammaticalframework.org/lib/resource/src/bulgarian/ParadigmsBul.gf

Function Type
mkN001 Str -> N
mkN002 Str -> N
mkN002a Str -> N
mkN003 Str -> N
mkN004 Str -> N
mkN005 Str -> N
mkN006 Str -> N
mkN007 Str -> N
mkN007b Str -> N
mkN007a Str -> N
mkN008 Str -> N
mkN008b Str -> N
mkN008c Str -> N
mkN008a Str -> N
mkN009 Str -> N
mkN009a Str -> N
mkN010 Str -> N
mkN011 Str -> N
mkN012 Str -> N
mkN013 Str -> N
mkN014 Str -> N
mkN014a Str -> N
mkN015 Str -> N
mkN015a Str -> N
mkN016 Str -> N
mkN016a Str -> N
mkN017 Str -> N
mkN018 Str -> N
mkN018a Str -> N
mkN019 Str -> N
mkN019a Str -> N
mkN020 Str -> N
mkN021 Str -> N
mkN022 Str -> N
mkN023 Str -> N
mkN024a Str -> N
mkN024 Str -> N
mkN025 Str -> N
mkN026 Str -> N
mkN027 Str -> N
mkN028 Str -> N
mkN028a Str -> N
mkN029 Str -> N
mkN030 Str -> N
mkN031 Str -> N
mkN031a Str -> N
mkN032 Str -> N
mkN032a Str -> N
mkN033 Str -> N
mkN034 Str -> N
mkN035 Str -> N
mkN035a Str -> N
mkN036 Str -> N
mkN037 Str -> N
mkN038 Str -> N
mkN039 Str -> N
mkN040 Str -> N
mkN040a Str -> N
mkN041 Str -> N
mkN041a Str -> N
mkN041b Str -> N
mkN042 Str -> N
mkN043 Str -> N
mkN043a Str -> N
mkN044 Str -> N
mkN045 Str -> N
mkN046 Str -> N
mkN047 Str -> N
mkN048 Str -> N
mkN049 Str -> N
mkN050 Str -> N
mkN051 Str -> N
mkN052 Str -> N
mkN052a Str -> N
mkN053 Str -> N
mkN054 Str -> N
mkN055 Str -> N
mkN056 Str -> N
mkN057 Str -> N
mkN057a Str -> N
mkN058 Str -> N
mkN059 Str -> N
mkN060 Str -> N
mkN061 Str -> N
mkN062 Str -> N
mkN063 Str -> N
mkN064 Str -> N
mkN065 Str -> N
mkN066 Str -> N
mkN067 Str -> N
mkN068 Str -> N
mkN069 Str -> N
mkN070 Str -> N
mkN071 Str -> N
mkN072 Str -> N
mkN073 Str -> N
mkN074 Str -> N
mkN075 Str -> N
mkA076 Str -> A
mkA077 Str -> A
mkA078 Str -> A
mkA079 Str -> A
mkA080 Str -> A
mkA081 Str -> A
mkA082 Str -> A
mkA082a Str -> A
mkA083 Str -> A
mkA084 Str -> A
mkA084a Str -> A
mkA085 Str -> A
mkA086 Str -> A
mkA087 Str -> A
mkA088 Str -> A
mkA089a Str -> A
mkV142 Str -> VTable
mkV143 Str -> VTable
mkV144 Str -> VTable
mkV145 Str -> VTable
mkV145a Str -> VTable
mkV145b Str -> VTable
mkV146 Str -> VTable
mkV146a Str -> VTable
mkV147 Str -> VTable
mkV148 Str -> VTable
mkV149 Str -> VTable
mkV150 Str -> VTable
mkV150a Str -> VTable
mkV151 Str -> VTable
mkV152 Str -> VTable
mkV152a Str -> VTable
mkV153 Str -> VTable
mkV154 Str -> VTable
mkV155 Str -> VTable
mkV156 Str -> VTable
mkV157 Str -> VTable
mkV158 Str -> VTable
mkV159 Str -> VTable
mkV160 Str -> VTable
mkV160a Str -> VTable
mkV161 Str -> VTable
mkV161a Str -> VTable
mkV162 Str -> VTable
mkV163 Str -> VTable
mkV164 Str -> VTable
mkV165 Str -> VTable
mkV166 Str -> VTable
mkV167 Str -> VTable
mkV168 Str -> VTable
mkV169 Str -> VTable
mkV170 Str -> VTable
mkV171 Str -> VTable
mkV172 Str -> VTable
mkV173 Str -> VTable
mkV174 Str -> VTable
mkV175 Str -> VTable
mkV176 Str -> VTable
mkV177 Str -> VTable
mkV178 Str -> VTable
mkV179 Str -> VTable
mkV180 Str -> VTable
mkV181 Str -> VTable
mkV182 Str -> VTable
mkV183 Str -> VTable
mkV184 Str -> VTable
mkV185 Str -> VTable
mkV186 Str -> VTable
mkV187 Str -> VTable
adjAdv A -> Str -> A =

Paradigms for Catalan

source http://www.grammaticalframework.org/lib/resource/src/catalan/ParadigmsCat.gf

Function Type
Gender Type
masculine Gender
feminine Gender
Number Type
singular Number
plural Number
accusative Prep
genitive Prep
dative Prep
mkPrep Str -> Prep
mkN (llum : Str) -> N
mkN Str -> Gender -> N
mkN (disc,discos : Str) -> Gender -> N
compN N -> Str -> N
mkN2 N -> Prep -> N2
deN2 N -> N2
aN2 N -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN (Anna : Str) -> PN
mkPN (Pilar : Str) -> Gender -> PN
mkA (sol : Str) -> A
mkA (fort,forta,forts,fortes,fortament : Str) -> A
mkA (bo : A) -> (millor : A) -> A
prefixA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (cantar : Str) -> V
mkV Verbum -> V
reflV V -> V
special_ppV V -> Str -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
v2V V2 -> V
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
deVV V -> VV
aVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> Prep -> AV
mkA2V A -> Prep -> Prep -> A2V
V0 Type

Paradigms for Danish

source http://www.grammaticalframework.org/lib/resource/src/danish/ParadigmsDan.gf

Function Type
Gender Type
utrum Gender
neutrum Gender
Number Type
singular Number
plural Number
Case Type
nominative Case
genitive Case
mkPrep Str -> Prep
noPrep Prep
mkN (bil : Str) -> N
mkN (hus : Str) -> Gender -> N
mkN (bil,bilen : Str) -> N
mkN (bil,bilen,biler : Str) -> N
mkN (dreng,drengen,drenge,drengene : Str) -> N
mkN2 N -> Prep -> N2
regN2 Str -> Gender -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN Str -> Gender -> PN
mkPN N -> PN
mkA (fin : Str) -> A
mkA (fin,fint : Str) -> A
mkA (galen,galet,galne : Str) -> A
mkA (stor,stort,store,storre,storst : Str) -> A
mkA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (snakke : Str) -> V
mkV (leve,levde : Str) -> V
mkV (drikke, drakk, drukket : Str) -> V
mkV (spise,spiser,spises,spiste,spist,spis : Str) -> V
mkV V -> Str -> V
vaereV V -> V
depV V -> V
reflV V -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type

Paradigms for English

source http://www.grammaticalframework.org/lib/resource/src/english/ParadigmsEng.gf

Function Type
Gender Type
human Gender
nonhuman Gender
masculine Gender
feminine Gender
Number Type
singular Number
plural Number
Case Type
nominative Case
genitive Case
mkN (flash : Str) -> N
mkN (man,men : Str) -> N
mkN (man,men,man's,men's : Str) -> N
mkN Gender -> N -> N
mkN Str -> N -> N
mkN2 N -> Prep -> N2
mkN2 N -> Str -> N2
mkN2 Str -> Str -> N2
mkN2 N -> N2
mkN2 Str -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN N -> PN
mkQuant (this, these : Str) -> Quant
mkQuant (no_sg, no_pl, none_sg, non_pl : Str) -> Quant
mkOrd Str -> Ord
mkA (happy : Str) -> A
mkA (fat,fatter : Str) -> A
mkA (good,better,best,well : Str) -> A
compoundA A -> A
simpleA A -> A
mkA2 A -> Prep -> A2
mkA2 A -> Str -> A2
mkA2 Str -> Prep -> A2
mkA2 Str -> Str -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkAdN Str -> AdN
mkPrep Str -> Prep
noPrep Prep
mkConj Str -> Conj
mkConj Str -> Number -> Conj
mkConj Str -> Str -> Conj
mkConj Str -> Str -> Number -> Conj
mkV (cry : Str) -> V
mkV (stop, stopped : Str) -> V
mkV (drink, drank, drunk : Str) -> V
mkV (run, ran, run, running : Str) -> V
mkV (go, goes, went, gone, going : Str) -> V
mkV Str -> V -> V
partV V -> Str -> V
reflV V -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
mkV2 V -> Str -> V2
mkV2 Str -> Prep -> V2
mkV2 Str -> Str -> V2
mkV3 V -> Prep -> Prep -> V3
mkV3 V -> Prep -> V3
mkV3 V -> Str -> V3
mkV3 Str -> Str -> V3
mkV3 V -> V3
mkV3 Str -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type
mkSubj Str -> Subj = \s -> lin Subj {s = s}

Paradigms for Finnish

source http://www.grammaticalframework.org/lib/resource/src/finnish/ParadigmsFin.gf

Function Type
Number Type
singular Number
plural Number
Case Type
nominative Case
genitive Case
partitive Case
essive Case
translative Case
inessive Case
elative Case
illative Case
adessive Case
ablative Case
allative Case
prePrep Case -> Str -> Prep
postPrep Case -> Str -> Prep
postGenPrep Str -> Prep
casePrep Case -> Prep
mkN (talo : Str) -> N
mkN (savi,savia : Str) -> N
mkN (vesi,veden,vesiä : Str) -> N
mkN (vesi,veden,vesiä,vettä : Str) -> N
mkN (olo,olon,olona,oloa,oloon,olojen,oloja,oloina,oloissa,oloihin : Str) -> N
mkN (pika : Str) -> (juna : N) -> N
mkN (oma : N) -> (tunto : N) -> N
mkN2 N -> N2
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN N -> PN
mkA Str -> A
mkA N -> A
mkA N -> (kivempaa,kivinta : Str) -> A
mkA (hyva,parempi,paras : N) -> (hyvin,paremmin,parhaiten : Str) -> A
mkA2 A -> Prep -> A2 = \a,p -> a ** {c2 = p lock_A2 = <>};
mkV (huutaa : Str) -> V
mkV (huutaa,huusi : Str) -> V
mkV (huutaa,huudan,huusi : Str) -> V
mkV (
huusin,huusi,huusisi,huutanut,huudettu,huutanee Str) -> V
caseV Case -> V -> V
vOlla V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Case -> V2
mkV2 V -> Prep -> V2
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Case -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkVVf V -> InfForm -> VV
mkV2V V -> Prep -> V2V
mkV2Vf V -> Prep -> InfForm -> V2V
mkVA V -> Prep -> VA
mkV2A V -> Prep -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type

Paradigms for French

source http://www.grammaticalframework.org/lib/resource/src/french/ParadigmsFre.gf

Function Type
Gender Type
masculine Gender
feminine Gender
Number Type
singular Number
plural Number
accusative Prep
genitive Prep
dative Prep
mkPrep Str -> Prep
mkN (cheval : Str) -> N
mkN (foie : Str) -> Gender -> N
mkN (oeil,yeux : Str) -> Gender -> N
mkN N -> Str -> N
mkN2 N -> Prep -> N2
deN2 N -> N2
aN2 N -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN Str -> Gender -> PN
mkA (cher : Str) -> A
mkA (sec,seche : Str) -> A
mkA (banal,banale,banaux,banalement : Str) -> A
mkA A -> A -> A
prefixA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (finir : Str) -> V
mkV (jeter,jette,jettera : Str) -> V
mkV V2 -> V
etreV V -> V
reflV V -> V
mkV2 Str -> V2 = \s -> dirV2 (regV s)
mkV2 V -> V2 = dirV2
mkV2 V -> Prep -> V2 = mmkV2
mkV3 V -> V3
mkV3 V -> Prep -> V3
mkV3 V -> Prep -> Prep -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
deVV V -> VV
aVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> Prep -> AV
mkA2V A -> Prep -> Prep -> A2V
V0 Type

Paradigms for German

source http://www.grammaticalframework.org/lib/resource/src/german/ParadigmsGer.gf

Function Type
Gender Type
masculine Gender
feminine Gender
neuter Gender
Case Type
nominative Case
accusative Case
dative Case
genitive Case
Number Type
singular Number
plural Number
mkN (Stufe : Str) -> N
mkN (Bild,Bilder : Str) -> Gender -> N
mkN (x1,_,_,_,_,x6 : Str) -> Gender -> N
mkN2 Str -> N2
mkN2 N -> N2
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN (nom,gen : Str) -> PN
mkPN (nom,acc,dat,gen : Str) -> PN
mkA Str -> A
mkA (gut,besser,beste : Str) -> A
mkA (gut,gute,besser,beste : Str) -> A
invarA Str -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkPrep Str -> Case -> Prep
accPrep Prep
datPrep Prep
genPrep Prep
von_Prep Prep
zu_Prep Prep
mkV (führen : Str) -> V
mkV (sehen,sieht,sah,sähe,gesehen : Str) -> V
mkV (geben, gibt, gib, gab, gäbe, gegeben : Str) -> V
mkV Str -> V -> V
no_geV V -> V
fixprefixV Str -> V -> V
seinV V -> V
habenV V -> V
reflV V -> Case -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
mkV2 V -> Case -> V2
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
accdatV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkV2V V -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type

Paradigms for Italian

source http://www.grammaticalframework.org/lib/resource/src/italian/ParadigmsIta.gf

Function Type
Gender Type
masculine Gender
feminine Gender
Number Type
singular Number
plural Number
--Prep Type
accusative Prep
genitive Prep
dative Prep
mkPrep Str -> Prep
mkN (cane : Str) -> N
mkN (carne : Str) -> Gender -> N
mkN (uomo,uomini : Str) -> Gender -> N
mkN N -> Str -> N
mkN2 Str -> N2
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN Str -> Gender -> PN
mkA (bianco : Str) -> A
mkA (solo,sola,soli,sole,solamente : Str) -> A
mkA A -> A -> A
prefixA A -> A = prefA
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV Str -> V
mkV Verbo -> V
mkV (udire,odo,ode,udiamo,udiro,udii,udisti,udi,udirono,odi,udito : Str) -> V
essereV V -> V
reflV V -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
v2V V2 -> V
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
deVV V -> VV
aVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> Prep -> AV
mkA2V A -> Prep -> Prep -> A2V
V0 Type

Paradigms for Norwegian

source http://www.grammaticalframework.org/lib/resource/src/norwegian/ParadigmsNor.gf

Function Type
Gender Type
masculine Gender
feminine Gender
neutrum Gender
Number Type
singular Number
plural Number
Case Type
nominative Case
genitive Case
mkPrep Str -> Prep
noPrep Prep
mkN Str -> N
mkN Str -> Gender -> N
mkN (bil,bilen : Str) -> N
mkN (dreng,drengen,drenger,drengene : Str) -> N
mkN2 N -> Prep -> N2
regN2 Str -> Gender -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN Str -> Gender -> PN
mkPN N -> PN
mkA (fin : Str) -> A
mkA (fin,fint : Str) -> A
mkA (galen,galet,galne : Str) -> A
mkA (stor,stort,store,storre,storst : Str) -> A
mkA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (snakke : Str) -> V
mkV (leve,levde : Str) -> V
mkV (drikke, drakk, drukket : Str) -> V
mkV (spise,spiser,spises,spiste,spist,spis : Str) -> V
mkV V -> Str -> V
vaereV V -> V
depV V -> V
reflV V -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type

Paradigms for Polish

source http://www.grammaticalframework.org/lib/resource/src/polish/ParadigmsPol.gf

Function Type
Gender Type
masculineP Gender
masculineA Gender
masculineI Gender
feminine Gender
neuter Gender
personal Animacy
Case Type
nominative Case
genitive Case
dative Case
accusative Case
instrumental Case
locative Case
vocative Case
Number Type
singular Number
plural Number
nKapiel Str -> N
nLodz Str -> N
nSul Str -> N
nKonew Str -> N
nWies Str -> N
nDlon Str -> N
nSiec Str -> N
nDrzwi Str -> N
nKosc Str -> N
nNoc Str -> N
nWesz Str -> N
nKrolowa Str -> N
nReka Str -> N
nApteka Str -> N
nDroga Str -> N
nMatka Str -> N
nZiemia Str -> N
nFala Str -> N
nLilia Str -> N
nKobieta Str -> N
nLiczba Str -> N
nSila Str -> N
nDoba Str -> N
nWoda Str -> N
nSzkola Str -> N
nWojna Str -> N
nWiosna Str -> N
nMgla Str -> N
nGwiazda Str -> N
nUlica Str -> N
nOwca Str -> N
nDanie Str -> N
nSerce Str -> N
nNasienie Str -> N
nMorze Str -> N
nImie Str -> N
nCiele Str -> N
nUdo Str -> N
nPiwo Str -> N
nZero Str -> N
nNiebo Str -> N
nTlo Str -> N
nZebro Str -> N
nOkno Str -> N
nGniazdo Str -> N
nWojsko Str -> N
nJajo Str -> N
nJablko Str -> N
nStudio Str -> N
nDziecko Str -> N
nUcho Str -> N
nOko Str -> N
nFacet Str -> N
nArab Str -> N
nPrzyjaciel Str -> N
nKowal Str -> N
nLekarz Str -> N
nKrol Str -> N
nMaz Str -> N
nWrog Str -> N
nKsiadz Str -> N
nOjciec Str -> N
nBrat Str -> N
nBog Str -> N
nChlopiec Str -> N
nMezczyzna Str -> N
nKon Str -> N
nWaz Str -> N
nPtak Str -> N
nKot Str -> N
nPies Str -> N
nBat Str -> N
nChleb Str -> N
nSer Str -> N
nZab Str -> N
nKosciol Str -> N
nCien Str -> N
nPien Str -> N
nLisc Str -> N
nKoc Str -> N
nWiersz Str -> N
nDzien Str -> N
nKajak Str -> N
nMlotek Str -> N
nMiech Str -> N
nSad Str -> N
nDym Str -> N
nWal Str -> N
nDol Str -> N
nOgrod Str -> N
nKwiat Str -> N
nLas Str -> N
nWiatr Str -> N
nPopiol Str -> N
nPokoj Str -> N
nGaj Str -> N
nBrzeg Str -> N
nRok Str -> Str -> N
nProg Str -> N
nStatek Str -> N
nDom Str -> N
mkN (nomSg, genSg, datSg, accSg, instrSg, locSg, vocSg,
mkN2 N -> N2
mkFun N -> Prep -> N2
nullPrep Prep = {s = [] c= GenNoPrep lock_Prep=<>}
mkN3 N -> Prep -> Prep -> N3
mkPrep Str -> Case -> Prep
genPrep Prep
datPrep Prep
accPrep Prep
instrPrep Prep
bez_Prep Prep --without
dla_Prep Prep --for
do_Prep Prep --to
dookola_Prep Prep --(a)round
kolo_Prep Prep --near
obok_Prep Prep --beside, next to
od_Prep Prep --from
oprocz_Prep Prep --out of
podczas_Prep Prep --during
mimo_Prep Prep
spod_Prep Prep --under
u_Prep Prep --by, with (I was by Peter last sunday.)
wzdluz_Prep Prep --along
z_Prep Prep --from (I come from Italy.), of/ from (The ring is made of silver.)
zamiast_Prep Prep --instead of
znad_Prep Prep --over, above
zza_Prep Prep --behind
dzieki_Prep Prep
przeciw_Prep Prep

Paradigms for Romanian

source http://www.grammaticalframework.org/lib/resource/src/romanian/ParadigmsRon.gf

Function Type
NGender Type
masculine NGender
feminine NGender
neuter NGender
Gender Type
Masculine Gender
Feminine Gender
Anim Type
animate Anim
inanimate Anim;
Number Type
singular Number
plural Number
Preposition Type
NCase Type
Acc NCase
Dat NCase
Gen NCase
mkPrep Str -> NCase-> Bool -> Prep
mkPrep Str -> NCase -> Prep;
noPrep NCase -> Prep
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN = mkPropN
mkPN Str -> Str -> Gender -> Number -> PN = mkPropNI
mkPN Str -> Gender -> PN = mkPropNoun
mkPN Str -> Gender -> Number -> PN = mkProperNoun;
mkInAn PN -> PN = \romania ->
mkPropNI Str -> Str -> Gender -> Number -> PN =
mkPropN Str -> PN = \Ion ->
mkPropNoun Str -> Gender -> PN = \Ion, gen ->
mkProperNoun Str -> Gender -> Number -> PN = \Ion, gen, num ->
mkA2 A -> Prep -> A2

Paradigms for Russian

source http://www.grammaticalframework.org/lib/resource/src/russian/ParadigmsRus.gf

Function Type
Gender Type
masculine Gender
feminine Gender
neuter Gender
Case Type
nominative Case
genitive Case
dative Case
accusative Case
instructive Case
prepositional Case
Number Type
singular Number
plural Number
mkN (karta : Str) -> N
mkN (tigr : Str) -> Animacy -> N
mkN (nomSg, genSg, datSg, accSg, instSg, preposSg, prepos2Sg, nomPl, genPl, datPl, accPl, instPl, preposPl : Str) -> Gender -> Animacy -> N
mkN2 N -> N2
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> Gender -> Animacy -> PN
nounPN N -> PN
mkA (positive : Str) -> A
mkA (positive, comparative : Str) -> A
mkA2 A -> Str -> Case -> A2
mkAdv Str -> Adv
mkV Aspect -> (presentSgP1,presentSgP2,presentSgP3,
pastSgP1,imperative,infinitive Str) -> V
mkV2 V -> Str -> Case -> V2
mkV3 V -> Str -> Str -> Case -> Case -> V3
dirV2 V -> V2
tvDirDir V -> V3

Paradigms for Spanish

source http://www.grammaticalframework.org/lib/resource/src/spanish/ParadigmsSpa.gf

Function Type
Gender Type
masculine Gender
feminine Gender
Number Type
singular Number
plural Number
accusative Prep
genitive Prep
dative Prep
mkPrep Str -> Prep
mkN (luz : Str) -> N
mkN Str -> Gender -> N
mkN (baston,bastones : Str) -> Gender -> N
compN N -> Str -> N
mkN2 N -> Prep -> N2
deN2 N -> N2
aN2 N -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN (Anna : Str) -> PN
mkPN (Pilar : Str) -> Gender -> PN
mkA (util : Str) -> A
mkA (solo,sola,solos,solas,solamente : Str) -> A
mkA (bueno : A) -> (mejor : A) -> A
prefixA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (pagar : Str) -> V
mkV (mostrar,muestro : Str) -> V
mkV Verbum -> V
reflV V -> V
special_ppV V -> Str -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
v2V V2 -> V
mkV3 V -> Prep -> Prep -> V3
dirV3 V -> Prep -> V3
dirdirV3 V -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
deVV V -> VV
aVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> Prep -> AV
mkA2V A -> Prep -> Prep -> A2V
V0 Type

Paradigms for Swedish

source http://www.grammaticalframework.org/lib/resource/src/swedish/ParadigmsSwe.gf

Function Type
Gender Type
utrum Gender
neutrum Gender
Number Type
singular Number
plural Number
Case Type
nominative Case
genitive Case
mkPrep Str -> Prep
noPrep Prep
mkN (apa : Str) -> N
mkN (lik : Str) -> Gender -> N
mkN (nyckel,nycklar : Str) -> N
mkN (museum,museet,museer,museerna : Str) -> N
mkN2 Str -> N2
mkN2 N -> Prep -> N2
mkN3 N -> Prep -> Prep -> N3
mkPN Str -> PN
mkPN Str -> Gender -> PN
mkPN (jesus,jesu : Str) -> Gender -> PN
mkA (billig : Str) -> A
mkA (bred,brett : Str) -> A
mkA (tung,tyngre,tyngst : Str) -> A
mkA (god,gott,goda,battre,bast : Str) -> A
mkA (liten,litet,lilla,sma,mindre,minst,minsta : Str) -> A
compoundA A -> A
mkA2 A -> Prep -> A2
mkAdv Str -> Adv
mkAdV Str -> AdV
mkAdA Str -> AdA
mkV (stämmer : Str) -> V
mkV (dricka,drack,druckit : Str) -> V
mkV (gå,går,gå,gick,gått,gången : Str) -> V
mkV V -> Str -> V
depV V -> V
reflV V -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Prep -> V2
mkV3 Str -> V3
mkV3 V -> V3
mkV3 V -> Prep -> V3
mkV3 V -> Prep -> Prep -> V3
mkV0 V -> V0
mkVS V -> VS
mkV2S V -> Prep -> V2S
mkVV V -> VV
mkV2V V -> Prep -> Prep -> V2V
mkVA V -> VA
mkV2A V -> Prep -> V2A
mkVQ V -> VQ
mkV2Q V -> Prep -> V2Q
mkAS A -> AS
mkA2S A -> Prep -> A2S
mkAV A -> AV
mkA2V A -> Prep -> A2V
V0 Type

Paradigms for Urdu

source http://www.grammaticalframework.org/lib/resource/src/urdu/ParadigmsUrd.gf

Function Type
masculine Gender
feminine Gender
singular Number;
plural Number;
mkN Str -> N
mkN Str -> Gender -> N
mkN (x1,_,_,_,_,x6 : Str) -> Gender -> N
mkN2 N -> Prep -> Str -> N2;
mkN3 N -> Prep -> Str -> Str-> N3
mkCmpdNoun Str -> N -> N
mkPN Str -> PN = \s -> let n = regNoun s in {s = n.s ! Sg g = n.g lock_PN = <>}
personalPN Str -> Str -> Str -> Str -> Number -> Gender -> UPerson -> Pron = \s1,s2,s3,sp,nn,g,p -> let n = mkPron s1 s2 s3 in {s = n.s a = toAgr nn p g ps = sp lock_Pron = <>};
demoPN Str -> Str -> Str -> Quant = \s1,s2,s3 -> let n = makeDemonPronForm s1 s2 s3 in {s = n.s a = defaultAgr lock_Quant = <>};
mkDet Str -> Str -> Str -> Str -> Number -> Det = \s1,s2,s3,s4,nb -> let dt = makeDet s1 s2 s3 s4 nb in {s = dt.s n = nb lock_Det = <>};
mkIP (x1,x2,x3:Str) -> Number -> Gender -> IP = \s1,s2,s3,n,g -> let p = mkIntPronForm s1 s2 s3 in { s = p.s n = n g = g lock_IP = <>};
mkA Str-> A
mkA Str -> Str -> A2
mkV Str -> V
mkV2 Str -> V2
mkV2 V -> V2
mkV2 V -> Str -> V2
mkV3 V -> Str -> Str -> V3;
mkV2V V -> Str -> Str -> Bool -> V2V
compoundV Str -> V -> V = \s,v -> {s = \\vf => s ++ v.s ! vf lock_V = <>}
compoundV Str -> V2 -> V = \s,v -> {s = \\vf => s ++ v.s ! vf lock_V = <>}
mkAdv Str -> Adv = \str -> {s = str lock_Adv = <>};
mkPrep Str -> Prep
mkConj Str -> Conj
mkConj Str -> Number -> Conj
mkConj Str -> Str -> Conj
mkConj Str -> Str -> Number -> Conj
mkConj Str -> Conj = \y -> mk2Conj [] y plural
mkConj Str -> Number -> Conj = \y,n -> mk2Conj [] y n
mkConj Str -> Str -> Conj = \x,y -> mk2Conj x y plural
mkConj Str -> Str -> Number -> Conj = mk2Conj
mk2Conj Str -> Str -> Number -> Conj = \x,y,n ->
mkVV V -> VV = \v -> lin VV (v ** {isAux = False});

Browsing the libraries with GF commands

New: Browsing by syntax editor directly on the web.

All of the following assume

    cd $GF_LIB_PATH

To try out inflection paradigms:

    > i -path=alltenses -retain alltenses/ParadigmsGer.gfo
    > cc mkN "Farbe"

To try out overloaded syntax, test lexicon, and inflection paradigms:

    > i -path=alltenses -retain alltenses/TryGer.gfo
    > cc mkCl (mkNP this_Quant (mkN "Farbe")) (mkA "dunkel")

An Example of Usage

The standard way of building an application has the following modules.

An abstract syntax:

    abstract Music = {    
    cat 
      Kind, 
      Property ;
    fun 
      PropKind : Kind -> Property -> Kind ; 
      Song : Kind ;
      American : Property ;
    }

A domain lexicon interface:

    interface LexMusic = open Cat in {
    oper
      song_N : N ;
      american_A : A ;
    }

A functor on Syntax and the domain lexicon interface:

    incomplete concrete MusicI of Music = open Syntax, MusicLex in {
    lincat 
      Kind = CN ;
      Property = AP ;
    lin
      PropKind k p = mkCN p k ;
      Song = mkCN song_N ;
      American = mkAP american_A ;
    }

For each language, an instance of the domain lexicon:

    instance LexMusicGer of LexMusic = CatGer ** open ParadigmsGer in {    
    oper
      song_N = mkN "Lied" "Lieder" neuter ;
      american_A = mkA "amerikanisch" ;
    }

For each language, an instantiation of the functor:

    --# -path=.:present:prelude
  
    concrete MusicGer of Music = MusicI with
      (Syntax = SyntaxGer),
      (LexMusic = LexMusicGer) ;