summaryrefslogtreecommitdiff
path: root/grammars/health/HealthResourceIta.gf
blob: b125aac4d77441b45df453f7c7e33b04b6d33365 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
-- use this path to read the grammar from the same directory
--# -path=.:../newresource/abstract:../prelude:../newresource/italian:../newresource/romance

concrete HealthIta of Health = open ResourceIta, Prelude, SyntaxIta, ExtraIta, MorphoIta, ParadigmsIta, ResourceExtIta, PredicationIta in {

flags 
  startcat=Phr ; lexer=text ; parser=chart ; unlexer=text ;
lincat 
  Patient = NP ;
  BodyPart = CN ;
  Symptom = NP ;
  SymptomDegree = AP ;
  Prop = S ;
  Illness = CN ; 
  Condition = VP ;
  Specialization = CN ;
  Medicine  = CN ;
             
lin
  ShePatient = SheNP ;
  TheyPatient = TheyNP ;
  IPatientHe = INP ;

  Influenza = mkCN (nRana "influenza") ;
  Malaria =  mkCN (nRana "malaria") ;
  HaveIllness patient illness = predV2 (tvDir vAvere) patient (DefOneNP
illness) ;

  BeInCondition = PredVP ;
  CatchCold = PosTV (tvDir vAvere) (IndefOneNP (mkCN (nSale "raffreddore" masculine))) ;
  Pregnant = PosA (apSolo "gravido" postpos) ;
  Complain = predV2 (tvDir vAvere) ;

  PainIn pat loc =
    PredVP pat (AdvVP (PosV (averCosa "male")) (datAdv (DefOneNP loc))) ;

  Fever = partitNP (mkCN (nSale "febbre" feminine)) ;
  Head = mkCN (nRana "testa") ;
  Leg = mkCN (nRana "gamba") ;

  Dentist  = mkCN (mkN "dentista" "dentisti" masculine)  ;
  PainKiller = mkCN (nSale "calmante" masculine) ;
  NeedDoctor pat doc = PredVP pat (averBisogno doc) ;
  NeedMedicine pat med = PredVP pat (averBisogno med) ;
  TakeMedicine pat med = predV2 (tvDir (vCorrere "prendere" "")) pat (IndefOneNP med) ;

  Injured = injuredBody (apSolo "ferito" prepos) ;
  Broken = injuredBody (apSolo "rotto" prepos) ;

  And = conjS ;

--  FeverMod deg = partitNP (ModAdj deg (mkCN (nSale "febbre" feminine)));
--  High = apSolo "alto" postpos ;
--  Terrible = apTale "terribile" postpos ;
--  PainInMod pat loc deg =
--    PredVP pat
--      (AdvVP (PosTV (tvDir vAvere)
--        (IndefOneNP (ModAdj deg (mkCN (nSale "dolore" masculine)))))
--             (datAdv (DefOneNP loc))) ;


};