aboutsummaryrefslogtreecommitdiff
path: root/data/db.struct
blob: 6459f965efc29f3ea7687ed52f651782c9d26bb2 (plain)
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
CREATE DATABASE ellinika;
use ellinika

CREATE TABLE pos(
 id 	bigint not null,                       # REL 0
 name   char(64) not null,
 abbr   char(12) not null,
 abbr_lat  char(12) not null,
 canonical enum('Y','N') not null default 'Y',
 INDEX(id),
 INDEX(abbr)
);

INSERT INTO pos VALUES(0,  "άρθρο",        "άρθρ.",  "art", 'Y');

INSERT INTO pos VALUES(conv("100",16,10),  "ουσιαστικό",   "ουσ.",   "subst", 'Y');
INSERT INTO pos VALUES(conv("101",16,10),  "αρσενικό",      "ο",  "m", 'Y');
INSERT INTO pos VALUES(conv("102",16,10),  "θηλυκό",        "η",  "f", 'Y');
INSERT INTO pos VALUES(conv("104",16,10),  "ουδέτερο",      "το",  "n", 'Y');
INSERT INTO pos VALUES(conv("101",16,10)|2,  "αρσενικό και θηλυκό", "ο/η", "m/f", 'N');
INSERT INTO pos VALUES(conv("101",16,10)|2,  "αρσενικό και θηλυκό", "ο,η", "m,f", 'Y');
INSERT INTO pos VALUES(conv("101",16,10)|2|4,"αρσενικό,θηλυκό,ουδέτερο", "ο,η,το", "m,f,n", 'N');
INSERT INTO pos VALUES(conv("114",16,10),  "πληθυντικό ουδέτερο",      "τα",  "pl.n", 'Y');

INSERT INTO pos VALUES(conv("200",16,10),  "επίθετο",      "επίθ.",   "adj", 'Y');

INSERT INTO pos VALUES(conv("400",16,10),  "επίρρημα",     "επίρρ.",  "adv", 'Y');

INSERT INTO pos VALUES(conv("800",16,10),  "αριθμός",      "αριθ.",   "num", 'Y');

INSERT INTO pos VALUES(conv("1000",16,10),  "αντωνυμία",     "αντων.",  "pron", 'Y');    

INSERT INTO pos VALUES(conv("100000",16,10),  "ρήμα",          "ρήμα",  "v", 'Y');    
INSERT INTO pos VALUES(conv("110000",16,10),  "μεταβατικό",   "μετ.",   "vt", 'Y');  
INSERT INTO pos VALUES(conv("120000",16,10),  "αμετάβατο",    "αμετ.",  "vi", 'Y'); 
INSERT INTO pos VALUES(conv("140000",16,10),  "απρώσοπο",      "απρώσ.",  "vimp", 'Y'); 
INSERT INTO pos VALUES(conv("180000",16,10),  "αποθετικό",     "αποθ.",   "vdep", 'Y'); 

INSERT INTO pos VALUES(conv("200000",16,10),  "επιφώνημα",    "επιφ.",  "int", 'Y');

INSERT INTO pos VALUES(conv("400000",16,10),  "μετοχή",       "μετχ.",  "part", 'Y');

INSERT INTO pos VALUES(conv("800000",16,10),  "μόριο",        "μόριο.", "ptc", 'Y');

INSERT INTO pos VALUES(conv("1000000",16,10),  "πρόθεση",      "πρόθ.",  "prep", 'Y');

INSERT INTO pos VALUES(conv("2000000",16,10),  "σύνδεσμος",    "σύνδ.",  "conj", 'Y');

CREATE TABLE dict(
  ident         int(32),                    # REL 1,3
  word          varchar(128) binary,        # REL 4
  sound         varchar(128) binary,
  pos           int(4),                     # REL 0
  forms         blob,
  INDEX (ident),
  INDEX  (word)
);

CREATE TABLE articles(
  index         int(32) not null auto_increment,  # REL 5
  ident         int(32) not null,           # REL 1
  subindex      int(32) not null,
  meaning       blob,
  INDEX (ident),
  INDEX  (subindex)
);  

CREATE TABLE reverse(
  ident         int(32) not null auto_increment, 
  word          varchar(128) binary,
  article       int(32)                     # REL 5
);

CREATE TABLE topic(
 ident         int(32) not null auto_increment, # REL 2
 title         varchar(128) not null,
 type          varchar(128),  # Defines whether this is a topic or a
                              # lesson reference or (maybe) something else 
 UNIQUE  (ident),
 INDEX   (title)
);

CREATE TABLE topic_tab (
 topic_ident    int(32) not null,               # REL 2 
 word_ident     int(32) not null,               # REL 1
 INDEX    (topic_ident),
 INDEX    (word_ident)
);

CREATE TABLE links(
 type enum('XREF','ANT') not null,
 ident    int(32) not null,                     # REL 1
 xref     int(32) not null,                     # REL 1
 INDEX    (ident),
 UNIQUE   (ident,xref)
);

CREATE TABLE stat(
 updated datetime not null,
 count int(32) not null
);

CREATE TABLE pending_links(
 type enum('CLOSED','XREF','ANT') not null,
 originator int(32) not null,                   # REL 3
 word varchar(128) binary,                      # REL 4
);


Return to:

Send suggestions and report system problems to the System administrator.