big DictionaryDut from Wiktionary - very noisy for common words, but works

This commit is contained in:
aarne
2014-04-11 16:04:32 +00:00
parent 9f3235c29f
commit 971f450c6d
6 changed files with 17107 additions and 480 deletions

View File

@@ -1,7 +1,6 @@
concrete ChunkDut of Chunk = CatDut concrete ChunkDut of Chunk = CatDut, ExtensionsDut [VPS,VPI]
---- , ExtensionsDut
** **
ChunkFunctor - [UseVC, VPS_Chunk, emptyNP, VPI_Chunk] ChunkFunctor - [emptyNP]
with (Syntax = SyntaxDut), (Extensions = ExtensionsDut) with (Syntax = SyntaxDut), (Extensions = ExtensionsDut)
** **
open open
@@ -11,9 +10,9 @@ concrete ChunkDut of Chunk = CatDut
oper oper
emptyNP = SyntaxDut.mkNP (P.mkPN []) ; emptyNP = SyntaxDut.mkNP (P.mkPN []) ;
----lin lin
---- NP_Acc_Chunk np = ss (np.s ! NPC Acc) ; NP_Acc_Chunk np = ss (np.s ! NPAcc) ;
---- NP_Gen_Chunk np = ss (np.s ! NPC Gen) ; NP_Gen_Chunk np = ss ("van" ++ np.s ! NPAcc) ; ----
---- VPI_Chunk vpi = {s = vpi.s ! (True | False)} ; ---- VPI_Chunk vpi = {s = vpi.s ! (True | False)} ;

View File

@@ -1,17 +1,17 @@
--# -coding=latin1 --# -coding=latin1
concrete ExtraDut of ExtraDutAbs = CatDut ** concrete ExtraDut of ExtraDutAbs = CatDut **
open ResDut, MorphoDut, Coordination, Prelude, IrregDut in open ResDut, MorphoDut, Coordination, Prelude, IrregDut, (P = ParadigmsDut) in
{ {
--{
--
-- lincat lincat
-- VPI = {s : Bool => Str} ; VPI = {s : Bool => Str} ;
-- [VPI] = {s1,s2 : Bool => Str} ; [VPI] = {s1,s2 : Bool => Str} ;
-- lin lin
-- BaseVPI = twoTable Bool ; BaseVPI = twoTable Bool ;
-- ConsVPI = consrTable Bool comma ; ConsVPI = consrTable Bool comma ;
--
-- MkVPI vp = {s = \\b => useInfVP b vp} ; MkVPI vp = {s = \\b => useInfVP b vp} ;
-- ConjVPI = conjunctDistrTable Bool ; -- ConjVPI = conjunctDistrTable Bool ;
-- --
-- ComplVPIVV v vpi = -- ComplVPIVV v vpi =
@@ -114,6 +114,11 @@ lin
ConjVPS = conjunctDistrTable2 Order Agr ; ConjVPS = conjunctDistrTable2 Order Agr ;
PassVPSlash vps =
insertInf (vps.s.s ! VPerf) (predV ResDut.worden_V) ;
PassAgentVPSlash vps np =
insertAdv (appPrep "door" np.s) (insertInf (vps.s.s ! VPerf) (predV ResDut.worden_V)) ;
lin lin
NominalizeVPSlashNP vpslash np = NominalizeVPSlashNP vpslash np =
let vp : ResDut.VP = insertObjNP np.isPron (\\_ => appPrep vpslash.c2 np.s) vpslash ; let vp : ResDut.VP = insertObjNP np.isPron (\\_ => appPrep vpslash.c2 np.s) vpslash ;

View File

@@ -3,7 +3,8 @@ abstract ExtraDutAbs = Extra [
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS, VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,
Temp,Pol,S,NP, Temp,Pol,S,NP,
VV,VP,Conj,IComp,ICompAP,IAdvAdv,Adv,AP,IAdv, VV,VP,Conj,IComp,ICompAP,IAdvAdv,Adv,AP,IAdv,
VPSlash, NominalizeVPSlashNP] ** VPSlash, NominalizeVPSlashNP,
PassVPSlash, PassAgentVPSlash] **
{ {
flags coding=utf8; flags coding=utf8;
--{ --{

View File

@@ -164,13 +164,27 @@ oper
mkV0 : V -> V0 ; --% mkV0 : V -> V0 ; --%
mkVS : V -> VS ; mkVS : V -> VS ;
mkV2S : V -> Prep -> V2S ;
mkVV : V -> VV ; mkVV : V -> VV ;
mkV2V : V -> Prep -> V2V ;
mkV2V : overload {
mkV2V : V -> Prep -> V2V ;
mkV2V : V -> V2V ;
} ;
mkV2S : overload {
mkV2S : V -> Prep -> V2S ;
mkV2S : V -> V2S ;
} ;
mkV2A : overload {
mkV2A : V -> Prep -> V2A ;
mkV2A : V -> V2A ;
} ;
mkV2Q : overload {
mkV2Q : V -> Prep -> V2Q ;
mkV2Q : V -> V2Q ;
} ;
mkVA : V -> VA ; mkVA : V -> VA ;
mkV2A : V -> Prep -> V2A ;
mkVQ : V -> VQ ; mkVQ : V -> VQ ;
mkV2Q : V -> Prep -> V2Q ;
-- --
-- mkAS : A -> AS ; -- mkAS : A -> AS ;
@@ -197,6 +211,8 @@ oper
= \a -> lin N (regNoun a) ; = \a -> lin N (regNoun a) ;
mkN : (bit : Str) -> Gender -> N mkN : (bit : Str) -> Gender -> N
= \a,b -> lin N (regNounG a b) ; = \a,b -> lin N (regNounG a b) ;
mkN : (bit : Str) -> Gender -> Gender -> N
= \a,g1,g2 -> lin N (regNounG a g1) | lin N (regNounG a g2) ; -- there are many nouns with variant genders
mkN : (gat,gaten : Str) -> Gender -> N mkN : (gat,gaten : Str) -> Gender -> N
= \a,b,c -> lin N (mkNoun a b c) ; = \a,b,c -> lin N (mkNoun a b c) ;
mkN : (huis,boot : N) -> N mkN : (huis,boot : N) -> N
@@ -245,6 +261,7 @@ oper
mkV : (aai,aait,aaien,aaide,aaiden,geaaid : Str) -> V = mkV : (aai,aait,aaien,aaide,aaiden,geaaid : Str) -> V =
\a,b,c,d,f,g -> lin V (v2vv (mkVerb a b c d d f g)) ; \a,b,c,d,f,g -> lin V (v2vv (mkVerb a b c d d f g)) ;
mkV : Str -> V -> V = \v,s ->lin V (prefixV v s) ; mkV : Str -> V -> V = \v,s ->lin V (prefixV v s) ;
mkV : V -> Str -> V = \s,v ->lin V (prefixV v s) ; ---- the same, in order matching Wiktionary-generated lexicon
} ; } ;
zijnV v = lin V (v2vvAux v VZijn) ; zijnV v = lin V (v2vvAux v VZijn) ;
reflV v = lin V {s = v.s ; aux = v.aux ; prefix = v.prefix ; vtype = VRefl} ; reflV v = lin V {s = v.s ; aux = v.aux ; prefix = v.prefix ; vtype = VRefl} ;
@@ -467,11 +484,26 @@ oper
-- A2V : Type = A2 ; -- A2V : Type = A2 ;
mkV0 v = v ; mkV0 v = v ;
mkV2S v p = lin V2S (prepV2 v p) ;
mkV2V v p = lin V2V (prepV2 v p ** {isAux = False}) ; mkV2V = overload {
mkV2V : V -> Prep -> V2V = \v,p -> lin V2V (prepV2 v p ** {isAux = False}) ;
mkV2V : V -> V2V = \v -> lin V2V (prepV2 v (mkPrep []) ** {isAux = False}) ;
} ;
mkV2S = overload {
mkV2S : V -> Prep -> V2S = \v,p -> lin V2S (prepV2 v p) ;
mkV2S : V -> V2S = \v -> lin V2S (prepV2 v (mkPrep [])) ;
} ;
mkV2A = overload {
mkV2A : V -> Prep -> V2A = \v,p -> lin V2A (prepV2 v p) ;
mkV2A : V -> V2A = \v -> lin V2A (prepV2 v (mkPrep [])) ;
} ;
mkV2Q = overload {
mkV2Q : V -> Prep -> V2Q = \v,p -> lin V2Q (prepV2 v p) ;
mkV2Q : V -> V2Q = \v -> lin V2Q (prepV2 v (mkPrep [])) ;
} ;
mkVA v = lin VA v ; mkVA v = lin VA v ;
mkV2A v p = lin V2A (prepV2 v p) ;
mkV2Q v p = lin V2Q (prepV2 v p) ;
-- --
-- mkAS v = v ** {lock_A = <>} ; -- mkAS v = v ** {lock_A = <>} ;
-- mkA2S v p = mkA2 v p ** {lock_A = <>} ; -- mkA2S v p = mkA2 v p ** {lock_A = <>} ;

File diff suppressed because it is too large Load Diff

View File

@@ -5,20 +5,20 @@ concrete ExtensionsDut of Extensions =
flags literal=Symb ; coding = utf8 ; flags literal=Symb ; coding = utf8 ;
----lincat lincat
---- VPI = E.VPI ; VPI = E.VPI ;
---- ListVPI = E.ListVPI ; ListVPI = E.ListVPI ;
---- VPS = E.VPS ; VPS = E.VPS ;
---- ListVPS = E.ListVPS ; ListVPS = E.ListVPS ;
--- lin lin
---- MkVPI = E.MkVPI ; MkVPI = E.MkVPI ;
---- ConjVPI = E.ConjVPI ; ---- ConjVPI = E.ConjVPI ;
---- ComplVPIVV = E.ComplVPIVV ; ---- ComplVPIVV = E.ComplVPIVV ;
---- MkVPS = E.MkVPS ; MkVPS = E.MkVPS ;
---- ConjVPS = E.ConjVPS ; ---- ConjVPS = E.ConjVPS ;
---- PredVPS = E.PredVPS ; PredVPS = E.PredVPS ;
---- BaseVPI = E.BaseVPI ; ---- BaseVPI = E.BaseVPI ;
---- ConsVPI = E.ConsVPI ; ---- ConsVPI = E.ConsVPI ;
@@ -29,8 +29,8 @@ flags literal=Symb ; coding = utf8 ;
---- GenIP = E.GenIP ; ---- GenIP = E.GenIP ;
---- GenRP = E.GenRP ; ---- GenRP = E.GenRP ;
---- PassVPSlash = E.PassVPSlash ; PassVPSlash = E.PassVPSlash ;
---- PassAgentVPSlash = E.PassAgentVPSlash ; PassAgentVPSlash = E.PassAgentVPSlash ;
---- EmptyRelSlash = E.EmptyRelSlash ; ---- EmptyRelSlash = E.EmptyRelSlash ;