concrete PmcfgDiffCnc of PmcfgDiff = { param Number = Sg | Pl ; Person = P1 | P2 ; Case = Nom | Acc | Poss Number Person ; lincat S = {s : Str} ; NP = {s : Case => Str ; n : Number ; p : Person} ; lin Use np = {s = np.s ! Poss np.n np.p} ; Pair x y = {s = x.s ! Nom ++ y.s ! Acc} ; One = { s = table { Nom => "one" ; Acc => "one-acc" ; Poss Sg P1 => "one-sg-p1" ; Poss Sg P2 => "one-sg-p2" ; Poss Pl P1 => "one-pl-p1" ; Poss Pl P2 => "one-pl-p2" } ; n = Sg ; p = P1 } ; Two = { s = table { Nom => "two" ; Acc => "two-acc" ; Poss Sg P1 => "two-sg-p1" ; Poss Sg P2 => "two-sg-p2" ; Poss Pl P1 => "two-pl-p1" ; Poss Pl P2 => "two-pl-p2" } ; n = Pl ; p = P2 } ; }