diff --git a/lib/resource-1.0/abstract/Basic.gf b/lib/resource-1.0/abstract/Basic.gf index a14f40899..547b9cbe5 100644 --- a/lib/resource-1.0/abstract/Basic.gf +++ b/lib/resource-1.0/abstract/Basic.gf @@ -1,6 +1,8 @@ abstract Basic = Cat ** { fun + add_V3 : V3 ; airplane_N : N ; + already_Adv : Adv ; answer_V2S : V2 ; apartment_N : N ; apple_N : N ; @@ -54,6 +56,7 @@ abstract Basic = Cat ** { die_V : V ; dirty_A : A ; distance_N3 : N3 ; + do_V2 : V2 ; doctor_N : N ; dog_N : N ; door_N : N ; @@ -93,6 +96,7 @@ abstract Basic = Cat ** { important_A : A ; industry_N : N ; iron_N : N ; + jump_V : V ; king_N : N ; know_V2 : V2 ; lake_N : N ; @@ -118,6 +122,8 @@ abstract Basic = Cat ** { narrow_A : A ; new_A : A ; newspaper_N : N ; + now_Adv : Adv ; + number_N : N ; oil_N : N ; old_A : A ; open_V2 : V2 ; @@ -131,6 +137,7 @@ abstract Basic = Cat ** { policeman_N : N ; priest_N : N ; probable_AS : A ; + put_V2 : V2 ; queen_N : N ; radio_N : N ; rain_V0 : V ; @@ -163,10 +170,12 @@ abstract Basic = Cat ** { small_A : A ; snake_N : N ; sock_N : N ; + song_N : N ; speak_V2 : V2 ; star_N : N ; steel_N : N ; stone_N : N ; + stop_V : V ; stove_N : N ; student_N : N ; stupid_A : A ; @@ -183,7 +192,7 @@ abstract Basic = Cat ** { train_N : N ; travel_V : V ; tree_N : N ; ----- trousers_N : N ; + ---- trousers_N : N ; ugly_A : A ; understand_V2 : V2 ; university_N : N ; @@ -205,14 +214,4 @@ abstract Basic = Cat ** { yellow_A : A ; young_A : A ; - do_V2 : V2 ; - now_Adv : Adv ; - already_Adv : Adv ; - song_N : N ; - add_V3 : V3 ; - number_N : N ; - put_V2 : V2 ; - stop_V : V ; - jump_V : V ; - } diff --git a/lib/resource-1.0/abstract/Conjunction.gf b/lib/resource-1.0/abstract/Conjunction.gf index cb817559b..d92c733d5 100644 --- a/lib/resource-1.0/abstract/Conjunction.gf +++ b/lib/resource-1.0/abstract/Conjunction.gf @@ -1,18 +1,31 @@ +--1 Coordination + +-- Coordination is defined for many different categories; here is +-- a sample. The rules apply to *lists* of two or more elements, +-- and define two general patterns: +-- - ordinary conjunction: X,...X and X +-- - distributed conjunction: both X,...,X and X +-- +-- + abstract Conjunction = Cat ** { +--2 Rules + fun + ConjS : Conj -> [S] -> S ; -- "John walks and Mary runs" + ConjAP : Conj -> [AP] -> AP ; -- "even and prime" + ConjNP : Conj -> [NP] -> NP ; -- "John or Mary" + ConjAdv : Conj -> [Adv] -> Adv ; -- "quickly or slowly" - ConjS : Conj -> [S] -> S ; -- "John walks and Mary runs" - ConjAP : Conj -> [AP] -> AP ; -- "even and prime" - ConjNP : Conj -> [NP] -> NP ; -- "John or Mary" - ConjAdv : Conj -> [Adv] -> Adv ; -- "quickly or slowly" + DConjS : DConj -> [S] -> S ; -- "either John walks or Mary runs" + DConjAP : DConj -> [AP] -> AP ; -- "both even and prime" + DConjNP : DConj -> [NP] -> NP ; -- "either John or Mary" + DConjAdv : DConj -> [Adv] -> Adv; -- "both badly and slowly" - DConjS : DConj -> [S] -> S ; -- "either John walks or Mary runs" - DConjAP : DConj -> [AP] -> AP ; -- "both even and prime" - DConjNP : DConj -> [NP] -> NP ; -- "either John or Mary" - DConjAdv : DConj -> [Adv] -> Adv ; -- "both badly and slowly" +--2 Categories --- These categories are internal to this module. +-- These categories are only used in this module. cat [S]{2} ; @@ -20,4 +33,11 @@ abstract Conjunction = Cat ** { [NP]{2} ; [AP]{2} ; +--2 List constructors + +-- The list constructors are derived from the list notation and therefore +-- not given explicitly. But here are their type signatures: + + -- BaseC : C -> C -> [C] ; -- for C = S, AP, NP, Adv + -- ConsC : C -> [C] -> [C] ; } diff --git a/lib/resource-1.0/abstract/Relative.gf b/lib/resource-1.0/abstract/Relative.gf index 50afaaeb9..fca58dba7 100644 --- a/lib/resource-1.0/abstract/Relative.gf +++ b/lib/resource-1.0/abstract/Relative.gf @@ -1,13 +1,25 @@ +--1 Relative clauses and pronouns + abstract Relative = Cat ** { fun - RelCl : Cl -> RCl ; - RelVP : RP -> VP -> RCl ; - RelSlash : RP -> Slash -> RCl ; +-- The simplest way to form a relative clause is from a clause by +-- a pronoun similar to "such that". - FunRP : Prep -> NP -> RP -> RP ; - IdRP : RP ; + RelCl : Cl -> RCl ; -- such that John loves her + +-- The more proper ways are from a verb phrase (formed in [Verb Verb.html]) +-- or a sentence with a missing noun phrase (formed in [Sentence Sentence.html]). + + RelVP : RP -> VP -> RCl ; -- who loves John + RelSlash : RP -> Slash -> RCl ; -- whom John loves + +-- Relative pronouns are formed from an 'identity element' by prefixing +-- or suffixing (depending on language) prepositional phrases. + + IdRP : RP ; -- which + FunRP : Prep -> NP -> RP -> RP ; -- all the roots of which } diff --git a/lib/resource-1.0/abstract/Structural.gf b/lib/resource-1.0/abstract/Structural.gf index d5d3984c4..ddc46f1e1 100644 --- a/lib/resource-1.0/abstract/Structural.gf +++ b/lib/resource-1.0/abstract/Structural.gf @@ -15,103 +15,99 @@ abstract Structural = Cat ** { above_Prep : Prep ; after_Prep : Prep ; --- all8mass_Det : Det ; --- all_NDet : NDet ; - all_Predet : Predet ; -- - almost_AdA : AdA ; -- Adv - almost_AdN : AdN ; -- + all_Predet : Predet ; + almost_AdA : AdA ; + almost_AdN : AdN ; although_Subj : Subj ; - always_AdV : AdV ; -- + always_AdV : AdV ; and_Conj : Conj ; because_Subj : Subj ; before_Prep : Prep ; behind_Prep : Prep ; between_Prep : Prep ; - both7and_DConj : DConj ; -- ConjD - but_PConj : PConj ; -- + both7and_DConj : DConj ; + but_PConj : PConj ; by8agent_Prep : Prep ; by8means_Prep : Prep ; can8know_VV : VV ; can_VV : VV ; during_Prep : Prep ; - either7or_DConj : DConj ; -- ConjD + either7or_DConj : DConj ; every_Det : Det ; everybody_NP : NP ; everything_NP : NP ; everywhere_Adv : Adv ; first_Ord : Ord ; from_Prep : Prep ; - he_Pron : Pron ; -- NP - here_Adv : Adv ; -- + he_Pron : Pron ; + here_Adv : Adv ; here7to_Adv : Adv ; here7from_Adv : Adv ; how_IAdv : IAdv ; how8many_IDet : IDet ; - i_Pron : Pron ; -- NP + i_Pron : Pron ; if_Subj : Subj ; in8front_Prep : Prep ; in_Prep : Prep ; it_Pron : Pron ; - less_CAdv : CAdv ; -- + less_CAdv : CAdv ; many_Det : Det ; - more_CAdv : CAdv ; -- - most_Predet : Predet ; -- Det --- most8many_Det : Det ; + more_CAdv : CAdv ; + most_Predet : Predet ; much_Det : Det ; must_VV : VV ; no_Phr : Phr ; on_Prep : Prep ; one_Quant : QuantSg ; - only_Predet : Predet ; -- + only_Predet : Predet ; or_Conj : Conj ; - otherwise_PConj : PConj ; -- AdC + otherwise_PConj : PConj ; part_Prep : Prep ; please_Voc : Voc ; possess_Prep : Prep ; quite_Adv : AdA ; she_Pron : Pron ; - so_AdA : AdA ; -- Adv - someSg_Det : Det ; -- some_Det - somePl_Det : Det ; -- NDet + so_AdA : AdA ; + someSg_Det : Det ; + somePl_Det : Det ; somebody_NP : NP ; something_NP : NP ; somewhere_Adv : Adv ; - that_Quant : QuantSg ; -- Det + that_Quant : QuantSg ; that_NP : NP ; - there_Adv : Adv ; -- - there7to_Adv : Adv ; -- - there7from_Adv : Adv ; -- - therefore_PConj : PConj ; -- AdC - these_NP : NP ; -- - these_Quant : QuantPl ; -- NDet --- they8fem_NP : NP ; - they_Pron : Pron ; -- NP - this_Quant : QuantSg ; -- NDet + there_Adv : Adv ; + there7to_Adv : Adv ; + there7from_Adv : Adv ; + therefore_PConj : PConj ; + these_NP : NP ; + these_Quant : QuantPl ; + they_Pron : Pron ; + this_Quant : QuantSg ; this_NP : NP ; - those_NP : NP ; -- - those_Quant : QuantPl ; -- NDet - thou_Pron : Pron ; -- NP + those_NP : NP ; + those_Quant : QuantPl ; + thou_Pron : Pron ; through_Prep : Prep ; to_Prep : Prep ; - too_AdA : AdA ; -- Adv + too_AdA : AdA ; under_Prep : Prep ; - very_AdA : AdA ; -- Adv + very_AdA : AdA ; want_VV : VV ; - we_Pron : Pron ; -- NP - whatPl_IP : IP ; -- many - whatSg_IP : IP ; -- one + we_Pron : Pron ; + whatPl_IP : IP ; + whatSg_IP : IP ; when_IAdv : IAdv ; when_Subj : Subj ; where_IAdv : IAdv ; - whichPl_IDet : IDet ; -- many - whichSg_IDet : IDet ; -- one - whoPl_IP : IP ; -- many - whoSg_IP : IP ; -- one + whichPl_IDet : IDet ; + whichSg_IDet : IDet ; + whoPl_IP : IP ; + whoSg_IP : IP ; why_IAdv : IAdv ; with_Prep : Prep ; without_Prep : Prep ; - ye_Pron : Pron ; -- NP + ye_Pron : Pron ; yes_Phr : Phr ; - you_Pron : Pron ; -- NP + you_Pron : Pron ; } diff --git a/lib/resource-1.0/doc/gfdoc/Adjective.html b/lib/resource-1.0/doc/gfdoc/Adjective.html index d8c01c62c..281863509 100644 --- a/lib/resource-1.0/doc/gfdoc/Adjective.html +++ b/lib/resource-1.0/doc/gfdoc/Adjective.html @@ -6,13 +6,17 @@
abstract Adjective = Cat ** {
@@ -65,6 +71,6 @@ by Adverb.
-
+