diff --git a/examples/phrasebook/Implementation.html b/examples/phrasebook/Implementation.html index 870150d1c..328ff07de 100644 --- a/examples/phrasebook/Implementation.html +++ b/examples/phrasebook/Implementation.html @@ -26,6 +26,7 @@ gfdoc - a rudimentary GF document generator. Quality = AP ; Property = A ; Object = NP ; + PrimObject = NP ; Place = NPPlace ; -- {name : NP ; at : Adv ; to : Adv} ; PlaceKind = CNPlace ; -- {name : CN ; at : Prep ; to : Prep} ; Currency = CN ; @@ -76,6 +77,8 @@ gfdoc - a rudimentary GF document generator. ObjItem i = i ; ObjNumber n k = mkNP n k ; ObjIndef k = mkNP a_Quant k ; + ObjAndObj = mkNP and_Conj ; + OneObj o = o ; This kind = mkNP this_Quant kind ; That kind = mkNP that_Quant kind ; @@ -111,6 +114,7 @@ gfdoc - a rudimentary GF document generator. {name = n ; isPron = False ; poss = mkQuant he_Pron} ; -- poss not used +-- NameString s = symb s ; --%
NameNN = symb "NN" ;
diff --git a/examples/phrasebook/Ontology.html b/examples/phrasebook/Ontology.html
index 12ccd65cc..28b72fe63 100644
--- a/examples/phrasebook/Ontology.html
+++ b/examples/phrasebook/Ontology.html
@@ -25,7 +25,8 @@ are defined in other modules.
Question ; -- question, either yes/no or wh e.g. "where are you"
-- Greeting ; -- idiomatic phrase, not inflected, e.g. "hello"
Proposition ; -- can be turned into sentence or question e.g. "this pizza is good"
- Object ; -- the object of wanting, ordering, etc e.g. "three pizzas"
+ Object ; -- the object of wanting, ordering, etc e.g. "three pizzas and a beer"
+ PrimObject ; -- single object of wanting, ordering, etc e.g. "three pizzas"
Item ; -- a single entity e.g. "this pizza"
Kind ; -- a type of an item e.g. "pizza"
Quality ; -- qualification of an item, can be complex e.g. "very good"
@@ -90,9 +91,11 @@ This is the way to build propositions about persons.
Here are some general syntactic constructions.
- ObjItem : Item -> Object ; -- this pizza
- ObjNumber : Number -> Kind -> Object ; -- five pizzas
- ObjIndef : Kind -> Object ; -- a pizza
+ ObjItem : Item -> PrimObject ; -- this pizza
+ ObjNumber : Number -> Kind -> PrimObject ; -- five pizzas
+ ObjIndef : Kind -> PrimObject ; -- a pizza
+ ObjAndObj : PrimObject -> Object -> Object ; -- this pizza and a beer
+ OneObj : PrimObject -> Object ; -- this pizza
SuchKind : Quality -> Kind -> Kind ; -- Italian pizza
Very : Property -> Quality ; -- very Italian
@@ -125,6 +128,7 @@ Determiners.
NameNN : Name ; -- the name "NN"
+-- NameString : String -> Name ; ---- creates ambiguities with all words --%
NNumeral : Numeral -> Number ; -- numeral in words, e.g. "twenty"
@@ -140,6 +144,7 @@ structurally. However, these ones are mostly functorial.
abstract Words = Sentences ** {
@@ -224,7 +229,7 @@ Notice that also negations and questions can be formed from these.
AHasAge : Person -> Number -> Action ; -- I am seventy years
AHasChildren: Person -> Number -> Action ; -- I have six children
- AHasName : Person -> Name -> Action ; -- my name is Bond
+ AHasName : Person -> Name -> Action ; -- my name is Bond
AHasRoom : Person -> Number -> Action ; -- you have a room for five persons
AHasTable : Person -> Number -> Action ; -- you have a table for five persons
AHungry : Person -> Action ; -- I am hungry
@@ -247,7 +252,7 @@ Notice that also negations and questions can be formed from these.
Miscellaneous phrases. Notice that also negations and questions can be formed from
propositions.
- QWhatAge : Person -> Question ; -- how many years are you
+ QWhatAge : Person -> Question ; -- how old are you
QWhatName : Person -> Question ; -- what is your name
HowMuchCost : Item -> Question ; -- how much does the pizza cost
ItCost : Item -> Price -> Proposition ; -- the pizza costs five euros
diff --git a/examples/phrasebook/Sentences.gf b/examples/phrasebook/Sentences.gf
index 89ada1095..b08c2fe0d 100644
--- a/examples/phrasebook/Sentences.gf
+++ b/examples/phrasebook/Sentences.gf
@@ -18,7 +18,8 @@ abstract Sentences = Numeral ** {
Question ; -- question, either yes/no or wh e.g. "where are you"
-- Greeting ; -- idiomatic phrase, not inflected, e.g. "hello"
Proposition ; -- can be turned into sentence or question e.g. "this pizza is good"
- Object ; -- the object of wanting, ordering, etc e.g. "three pizzas"
+ Object ; -- the object of wanting, ordering, etc e.g. "three pizzas and a beer"
+ PrimObject ; -- single object of wanting, ordering, etc e.g. "three pizzas"
Item ; -- a single entity e.g. "this pizza"
Kind ; -- a type of an item e.g. "pizza"
Quality ; -- qualification of an item, can be complex e.g. "very good"
@@ -78,9 +79,11 @@ abstract Sentences = Numeral ** {
-- Here are some general syntactic constructions.
- ObjItem : Item -> Object ; -- this pizza
- ObjNumber : Number -> Kind -> Object ; -- five pizzas
- ObjIndef : Kind -> Object ; -- a pizza
+ ObjItem : Item -> PrimObject ; -- this pizza
+ ObjNumber : Number -> Kind -> PrimObject ; -- five pizzas
+ ObjIndef : Kind -> PrimObject ; -- a pizza
+ ObjAndObj : PrimObject -> Object -> Object ; -- this pizza and a beer
+ OneObj : PrimObject -> Object ; -- this pizza
SuchKind : Quality -> Kind -> Kind ; -- Italian pizza
Very : Property -> Quality ; -- very Italian
diff --git a/examples/phrasebook/SentencesI.gf b/examples/phrasebook/SentencesI.gf
index af9548bc1..0d56bc3d5 100644
--- a/examples/phrasebook/SentencesI.gf
+++ b/examples/phrasebook/SentencesI.gf
@@ -19,6 +19,7 @@ incomplete concrete SentencesI of Sentences = Numeral **
Quality = AP ;
Property = A ;
Object = NP ;
+ PrimObject = NP ;
Place = NPPlace ; -- {name : NP ; at : Adv ; to : Adv} ;
PlaceKind = CNPlace ; -- {name : CN ; at : Prep ; to : Prep} ;
Currency = CN ;
@@ -69,6 +70,8 @@ incomplete concrete SentencesI of Sentences = Numeral **
ObjItem i = i ;
ObjNumber n k = mkNP n k ;
ObjIndef k = mkNP a_Quant k ;
+ ObjAndObj = mkNP and_Conj ;
+ OneObj o = o ;
This kind = mkNP this_Quant kind ;
That kind = mkNP that_Quant kind ;
diff --git a/examples/phrasebook/Words.gf b/examples/phrasebook/Words.gf
index f595eac84..755a91c53 100644
--- a/examples/phrasebook/Words.gf
+++ b/examples/phrasebook/Words.gf
@@ -80,7 +80,7 @@ abstract Words = Sentences ** {
AHasAge : Person -> Number -> Action ; -- I am seventy years
AHasChildren: Person -> Number -> Action ; -- I have six children
- AHasName : Person -> Name -> Action ; -- my name is Bond
+ AHasName : Person -> Name -> Action ; -- my name is Bond
AHasRoom : Person -> Number -> Action ; -- you have a room for five persons
AHasTable : Person -> Number -> Action ; -- you have a table for five persons
AHungry : Person -> Action ; -- I am hungry
@@ -102,7 +102,7 @@ abstract Words = Sentences ** {
-- Miscellaneous phrases. Notice that also negations and questions can be formed from
-- propositions.
- QWhatAge : Person -> Question ; -- how many years are you
+ QWhatAge : Person -> Question ; -- how old are you
QWhatName : Person -> Question ; -- what is your name
HowMuchCost : Item -> Question ; -- how much does the pizza cost
ItCost : Item -> Price -> Proposition ; -- the pizza costs five euros