mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-01 15:22:50 -06:00
scandinavian topological sentence model
This commit is contained in:
73
lib/resource/abstract/SimpleI.gf
Normal file
73
lib/resource/abstract/SimpleI.gf
Normal file
@@ -0,0 +1,73 @@
|
||||
incomplete concrete SimpleI of Simple =
|
||||
open Predef, Prelude, SimpleAux, Categories, Rules, Structural, Verbphrase in {
|
||||
|
||||
lincat
|
||||
|
||||
Sentence = {s : SentenceForm => Str} ;
|
||||
|
||||
lin
|
||||
PAffirm sent = ss (sent.s ! SAffirm) ** {lock_Phr = <>} ;
|
||||
PNegate sent = ss (sent.s ! SNegate) ** {lock_Phr = <>} ;
|
||||
PQuestion sent = ss (sent.s ! SQuestion) ** {lock_Phr = <>} ;
|
||||
PCommand = ImperOne ;
|
||||
|
||||
SVerb np v = {s = table {
|
||||
SAffirm => toStr S (UseCl (PosTP TPresent ASimul) (PredVP np (UseV v))) ;
|
||||
SNegate => toStr S (UseCl (NegTP TPresent ASimul) (PredVP np (UseV v))) ;
|
||||
SQuestion => toStr QS (UseQCl (PosTP TPresent ASimul) (QuestCl (PredVP np
|
||||
(UseV v))))
|
||||
}
|
||||
} ;
|
||||
|
||||
STransVerb np tv obj = {s = table {
|
||||
SAffirm => toStr S (UseCl (PosTP TPresent ASimul) (PredVP np (ComplV2 tv obj))) ;
|
||||
SNegate => toStr S (UseCl (PosTP TPresent ASimul) (PredVP np (ComplV2 tv obj))) ;
|
||||
SQuestion =>
|
||||
toStr QS (UseQCl (PosTP TPresent ASimul) (QuestCl (PredVP np (ComplV2 tv obj))))
|
||||
}
|
||||
} ;
|
||||
|
||||
SAdjective np ap = {s = table {
|
||||
SAffirm => toStr S (UseCl (PosTP TPresent ASimul) (PredVP np (PredAP ap))) ;
|
||||
SNegate => toStr S (UseCl (NegTP TPresent ASimul) (PredVP np (PredAP ap))) ;
|
||||
SQuestion => toStr QS (UseQCl (PosTP TPresent ASimul) (QuestCl (PredVP np
|
||||
(PredAP ap))))
|
||||
}
|
||||
} ;
|
||||
|
||||
SAdverb np ap = {s = table {
|
||||
SAffirm => toStr S (UseCl (PosTP TPresent ASimul) (PredVP np (PredAdv ap))) ;
|
||||
SNegate => toStr S (UseCl (NegTP TPresent ASimul) (PredVP np (PredAdv ap))) ;
|
||||
SQuestion => toStr QS (UseQCl (PosTP TPresent ASimul) (QuestCl (PredVP np
|
||||
(PredAdv ap))))
|
||||
}
|
||||
} ;
|
||||
|
||||
SModified s a = {s = \\f => s.s ! f ++ a.s ; lock_S = <>} ; ---
|
||||
|
||||
PIntV ip v =
|
||||
QuestPhrase (UseQCl (PosTP TPresent ASimul) (IntVP ip (UseV v))) ;
|
||||
PIntSubjV2 ip v np =
|
||||
QuestPhrase (UseQCl (PosTP TPresent ASimul) (IntVP ip (ComplV2 v np))) ;
|
||||
PIntObjV2 ip np v =
|
||||
QuestPhrase (UseQCl (PosTP TPresent ASimul) (IntSlash ip (SlashV2 np v))) ;
|
||||
PIntAP ip v =
|
||||
QuestPhrase (UseQCl (PosTP TPresent ASimul) (IntVP ip (PredAP v))) ;
|
||||
PIntAdv ip v =
|
||||
QuestPhrase (UseQCl (PosTP TPresent ASimul) (IntVP ip (PredAdv v))) ;
|
||||
|
||||
NPDef = DefOneNP ;
|
||||
NPIndef = IndefOneNP ;
|
||||
NPGroup = IndefNumNP NoNum ;
|
||||
NPMass = MassNP ;
|
||||
NPName = UsePN ;
|
||||
|
||||
NSimple = UseN ;
|
||||
NModified = ModAP ;
|
||||
|
||||
ASimple = PositADeg ;
|
||||
AVery a = AdvAP very_Adv (PositADeg a) ;
|
||||
|
||||
AdvPrep p np = AdvPP (PrepNP p np) ;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user