File: apertium-hbs-mkd.mkd-hbs.rlx

package info (click to toggle)
apertium-hbs-mkd 0.1.0~r76450-2.1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 8,116 kB
  • sloc: xml: 358; makefile: 280; sh: 113
file content (310 lines) | stat: -rw-r--r-- 12,281 bytes parent folder | download | duplicates (4)
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
DELIMITERS = "<.>" "<!>" "<?>" "<...>" "<¶>";
 
SETS

LIST N = (n) ;
LIST Num = (num) ;
LIST Prop = (np) ;
LIST A = (adj) ;
LIST CS = (cnjsub) ;
LIST CC = (cnjcoo) ;
LIST Adv = (adv) ;
LIST Abbr = (abbr) ;
LIST V = (vblex) (vbmod) (vbhaver);
LIST PREP = (pr) ;
LIST Interj = (ij) ;
LIST Pron = (prn) ;
LIST Pcle = (part) ;
LIST Copula = (vbser) ;
LIST L-part = (lp) ;
LIST P-part = (pp) ;
LIST Ord = (ord) ;

LIST Pers = (pers) ;
LIST Dem = (dem) ;
LIST Itg = (prn itg) ;
LIST Rel = (prn rel) ;
LIST Poss = (prn pos) ;
LIST Clt = (clt) ;

LIST TV = (tv) ;
LIST IV = (iv) ;

LIST Imprt = (imp) ;
LIST Pii = (pii) ;
LIST Aor = (aor) ;
LIST Prs = (pres) ;

LIST Sg = (sg) ;
LIST Pl = (pl) ;
LIST Count = (ct) ;

LIST Masc = (m) ;
LIST Fem = (f) ;
LIST Neu = (nt) ;


LIST Sg1 = (p1 sg) ;
LIST Sg2 = (p2 sg) ;
LIST Sg3 = (p3 sg) ;
LIST Pl1 = (p1 pl) ;
LIST Pl2 = (p2 pl) ;
LIST Pl3 = (p3 pl) ;

LIST Nom = (nom) ;
LIST Acc = (acc) ;
LIST Gen = (gen) ;
LIST Dat = (dat) ;
LIST Voc = (voc) ;

LIST NUMBER = sg pl ;
LIST GENDER = m f nt mfn ;
LIST PERSON = (p1 sg) (p2 sg) (p3 sg) (p1 pl) (p2 pl) (p3 pl) ;
LIST NAGDV = nom acc dat gen voc ;
LIST LOWERCASE-WORD = ("[абвгдѓежзѕијклљмнњопрстќуфхцчџшЭѐѝю]+"ri);
LIST BOS = (>>>) (sent);
LIST EOS = (<<<) (sent);

SET V-IND-FIN = Prs OR Aor OR Pii ;
SET V-COP = Copula ;
SET SG2-OR-SG3 = Sg2 OR Sg3 ;
SET REL-OR-ITG = (prn rel) OR (prn itg) ;
SET N-OR-PROP = N OR Prop ;
SET S-BOUNDARY  = (prn itg) OR (prn rel) OR ("\;") OR (":") OR ("-") OR ("–") OR CS OR ("\.") OR ("\!") OR ("\?");
SET STRICT-S-BOUNDARY  = ("\;") OR (":") OR ("\.") OR ("\!") OR ("\?");
###############################################################################
#  Morphological disambiguation
#

SECTION

REMOVE:r1 Interj IF ((1 V) OR (1 Pron LINK 1 V)) ;
	## Корисниците на бесплатен софтвер ќе мора да плаќаат.
	## Даниел, студент од Бања Лука, вели дека нема намера да ја напушти БиХ.
		##	remove interjection if there is a verb to the right
		##or a pronoun to the right and after that a verb

REMOVE:r2 Pron IF (0 ("не")) (-1 REL-OR-ITG) ;

REMOVE:r3 N IF (0 N) (0 V-IND-FIN) (-1C ("не") + Adv) ;
	##remove a noun if the current word could be a noun or a finite verb and the previous word is only 'ne' as an adverb

REMOVE:r5 TV IF (1C PREP) ;
##??

SELECT:r6 Sg3 IF (0C V-IND-FIN + SG2-OR-SG3) (NOT -1* Pron + Sg2 BARRIER S-BOUNDARY) ;

SELECT:r7 $$NUMBER IF (0 A) (1 N + $$NUMBER) ;
##??

SELECT:r8 V-IND-FIN (0 V-IND-FIN) (0 Pron) (NOT -1* V-IND-FIN BARRIER S-BOUNDARY) (NOT 1* V-IND-FIN BARRIER S-BOUNDARY) ;
	## Ти си тука.

REMOVE:r9 Pron IF (0 Pron) (0 A + $$NUMBER) (1C N + $$NUMBER) ;
	## На сите места добивав ист одговор Не.



REMOVE:r4 Imprt IF (-1* REL-OR-ITG BARRIER S-BOUNDARY) ;

REMOVE:r10 Imprt IF (0 N) (0 Imprt) (-1C A);
	## Тешката економска во Босна и Херцеговина принуди голем број студенти и неодамна дипломирани студенти да ја напуштат земјата.

REMOVE:r11 Imprt IF (0 Imprt) (0 Prs + Sg3) ((-1 ("ќе")) OR (-1 Pron LINK -1 ("ќе")));
	## Грција објави дека ќе изврши притисок врз Турција да помогне во расчистувањето на судбината на околу 1.500 луѓе кои исчезнаа во тоа време.
	## Надминувањето на пречките ќе ги зголеми антитерористичките напори.

REMOVE:r12 Imprt IF (0 Imprt) (0 Prs + Sg3) (-1 ("да")) ; 
	## Таа спиеше еден час и почна да работи

REMOVE:r13 Imprt IF (0 Imprt) (0 Prs + Sg3) (1 CS);
	## Цитирајќи медиумски извештаи, Стејт департментот соопшти дека турските власти извршиле неколку напади на наводните ќелии на Ал каеда минатата година.

REMOVE:r14 Imprt IF (NOT 1* ("!") BARRIER S-BOUNDARY);
	# This is probably too loose, but we have to do something


REMOVE:r15 V-IND-FIN (0 V-IND-FIN) (0 N + $$NUMBER) (-1C A + $$NUMBER) ;
	## Министерот за надворешни работи, Вук Драшковиќ, во Њујорк разговараше за актуелните проблеми во покраината со генералниот секретар на ОН.

REMOVE:r16 Pron + Dem IF (0 ("тој")) (NOT 1 N) (NOT -1 PREP) (NOT -1 V-COP) (NOT 1 CS);
	## Друга милитантна група ја презеде одговорноста за убиството на еден полицаец во Атина, единствениот смртоносен напад во Грција таа година.
	## "Јас студирам и патувам," рече тој.
	## Тој е тука.
	## Тој даде својата книга.
	## додаде дека оваа поддршка зависи од тоа дали Турција ќе се придржува на принципите на ЕУ

REMOVE:r17 Interj IF (0 ("да")) ((1 V OR Pron) OR (-1 V OR Pron)); 
	# Do something better here 




SELECT:r18 V-COP IF (0 V-COP) (0 V) ((1 L-part OR A OR P-part) OR (1 Pron LINK 1 L-part OR A));
	## Ако ми се јавите, би дошол.
	## Да може бебето да прозборува, би ти рекло...
	## Полицијата се сомнева дека пратката била наменета за западна Европа.
	## Кметството било укинато во 1861 година.

SELECT:r19 V-COP IF (0 V-COP) (0 V) (-1 V-COP + V-IND-FIN);
	## Ако би била една држава, ЕУ би била седмата најголема држава во светот по површина и трета најголема по население, по Кина и Индија.

SELECT:r25 V-COP IF (0 ("<се>")) (0 V-COP) (0 Pron) (1C A);
    ## нагласија дека претстојните избори во БиХ се клучни за иднината на земјата


SELECT:r20 A IF (0 A) (0 N) (1C N-OR-PROP) ;
	## Koсово се соочува со долг пат пред себе во спречуваoето на трговијата со дрога

SELECT:r21 A IF (0 A) (0 V-IND-FIN) (1C N-OR-PROP) ;
	## Со оглед на тоа во Западна Европа почнало сериозно да се размислува за воспоставување на поморски врски со Азија.

SELECT:r22 Abbr IF (0 ("ОН")) ((-1 LOWERCASE-WORD) OR (1 LOWERCASE-WORD));
	## ОН водат истрага за заменик-шефот на косовската мисија.

SELECT:r23 N IF (0 A) (0 N) (-1 A) (1 PREP);
	## СоЕ повика на формирање на нов суд за човекови права за Косово

SELECT:r24 N IF (0 A) (0 N) (-1 PREP) (1 PREP);
    ## тие се обврзани да осигурат заштита на правата на сите етнички групи.

SELECT:r26 Dem IF (0 ("<тоа>")) (0 Dem) (0 Pers) (-1 PREP);
	##додаде дека оваа поддршка зависи од тоа дали Турција ќе се придржува на принципите на ЕУ

SELECT:r27 Dem IF (0 ("<тоа>")) (0 Dem) (0 Pers) (-1 V-COP) (1 ("<што>"));
	## Лошата страна е тоа што Бугарите велат дека повеќе не можат да си дозволат да летуваат таму.

SELECT:r28 CS IF (0 ("што")) (0 CS) (0 Itg) (0 Rel) (-1 Dem) (NOT 1 V OR Clt);
	##Лошата страна е тоа што Бугарите велат дека повеќе не можат да си дозволат да летуваат таму.

SELECT:r29 Itg IF (0 Itg) (0 Rel) (-1 BOS);
	## кој е твојот глас

REMOVE:r30 PREP IF (-1C PREP) (0 PREP) (0 Adv);
	## на околу 2.000 метри надморска височина
	
SELECT:r31 V-COP IF (0 ("<се>")) (0 V-COP) (0 Pron) (1C N) (-1C N);
	## она што Македонија го заслужува, но тоа што ја одржува Македонија на агендата на Европската Унија се реформите, а тие се неопходни за да може да се направи пробив во некои други поповолни услови."

SELECT:r32 Dem IF (0 Dem) (0 Pers) (1 ("што"));
	## тоа што ја одржува Македонија на агендата
	
SELECT:r33 Rel IF (0 ("што")) (0 CS) (0 Itg) (0 Rel) (-1 Dem) (1 V OR Clt);
	## тоа што ја одржува Македонија на агендата

#for tenses
SELECT:r34 Prs IF (0C V-IND-FIN + SG2-OR-SG3) ((-1* Prs BARRIER STRICT-S-BOUNDARY) OR (1* Prs BARRIER STRICT-S-BOUNDARY)) (NOT -1 ("да") + Pcle);
SELECT:r35 Aor IF (0C V-IND-FIN + SG2-OR-SG3) ((-1* Aor BARRIER STRICT-S-BOUNDARY) OR (1* Aor BARRIER STRICT-S-BOUNDARY)) (NOT -1 ("да") + Pcle);
SELECT:r36 Pii IF (0C V-IND-FIN + SG2-OR-SG3) ((-1* Pii BARRIER STRICT-S-BOUNDARY) OR (1* Pii BARRIER STRICT-S-BOUNDARY)) (NOT -1 ("да") + Pcle);

SELECT:r39 Prs IF (0 Prs) (0 Aor) (-1 ("да") + Pcle);
	#тој сакаше да носи камења

REMOVE:r37 Clt IF (0 ("и")) (0 CC) (0 Clt) (NOT -1* Fem BARRIER S-BOUNDARY) (NOT 1* Fem BARRIER S-BOUNDARY);
	#тој е убаво момче и пее убаво
	
SELECT:r38 A IF (0 A + Neu) (0 Adv) (1C N + Neu);
	#тој е убаво момче
	#same as rule 7?
	
SELECT:r40 Adv IF (0 A + Neu) (0 Adv) (-1C V) (NOT 1C N + Neu);
	# тој пее убаво

SELECT:r41 Ord IF (1 N) (NOT 1 ("година"));
	# 20-тите податоци


###############################################################################
#  Syntactic labelling and disambiguation
#

SECTION

LIST @+FMAINV = @+FMAINV;
LIST @-FMAINV = @-FMAINV;
LIST @+FAUXV = @+FAUXV;
LIST @-FAUXV = @-FAUXV;
LIST @SUBJ→ = @SUBJ→;
LIST @←SUBJ = @←SUBJ;
LIST @OBJ→ = @OBJ→;
LIST @←OBJ = @←OBJ;
LIST @IOBJ→ = @IOBJ→;
LIST @←IOBJ = @←IOBJ;
LIST @←SPRED = @←SPRED;
LIST @SPRED→ = @SPRED→;

LIST @→N = @→N;
LIST @N← = @N←;

LIST @INTERJ = @INTERJ;


MAP:r100 (@INTERJ) TARGET Interj ;

#
# Finite verb:
#    - Finite main verb
#    - Finite auxiliary (needs infinite main verb)
#    - Modal

# Main verb:
#    - Finite main verb
#    - Infinite main verb

# 
# Subjects:
#    - Personal pronouns (agree in person/number with finite main verb) 
#    - Demonstrative pronouns (finite main verb in Sg3/Pl3)
#    -
#    -


MAP:r400 (@SUBJ→) TARGET Pers + $$PERSON + Nom IF (1* V-IND-FIN + $$PERSON BARRIER V-IND-FIN) ;
	## Јас сум тука.
	## Ти си тука.
MAP:r401 (@←SUBJ) TARGET Pers + $$PERSON + Nom IF (-1* V-IND-FIN + $$PERSON BARRIER V-IND-FIN) ;

MAP:r402 (@SUBJ→) TARGET N + $$NUMBER IF (1 V-COP + $$NUMBER);
	## мажот е убав. 

#
# Noun modifiers
#    - Adjectives (agree with head in gender/number)
#    - Numerals 
#    -

MAP:r500 (@→N) TARGET A | Poss + $$GENDER + Sg IF (1 N + $$GENDER + Sg) ;

MAP:r501 (@→N) TARGET A | Poss + Pl IF (1 N + Pl) ;

MAP:r502 (@→N) TARGET Num IF ((1 N) OR (1 A LINK 1 N)) ;
	## Една третина од населението е помладо од 30 години.
	## Полицијата уапси еден индиски лекар пред неколку месеци.

#
# Subject predicates 
#    - Adjectives in copula clauses (agree with subject in gender/number)
#

MAP:r600 (@←SPRED) TARGET A + $$NUMBER (-1* V-COP + $$NUMBER BARRIER S-BOUNDARY) ;
	## Јас сум стар.

MAP:r601 (@←SPRED) TARGET N + $$NUMBER (-1* V-COP + $$NUMBER BARRIER S-BOUNDARY OR PREP) ;
	## Јас сум македонец. 
	## Чашата е на масата.

#
# Prepositional phrases
#    - 
#    - 

MAP:r700 (@P←) TARGET N | Pron + Dem (-1 PREP); 
	## Чашата е на масата.
	## от това


# Give up
#

MAP:r800 (@X) TARGET (prn dem) ;
MAP:r801 (@X) TARGET (prn pers) ;