diff options
Diffstat (limited to 'generator')
-rw-r--r-- | generator/CMakeLists.txt | 4 | ||||
-rw-r--r-- | generator/frame.h | 1 | ||||
-rw-r--r-- | generator/generator.cpp | 82 | ||||
-rw-r--r-- | generator/generator.h | 3 | ||||
-rw-r--r-- | generator/group.cpp | 27 | ||||
-rw-r--r-- | generator/group.h | 1 | ||||
-rw-r--r-- | generator/part.cpp | 18 | ||||
-rw-r--r-- | generator/part.h | 7 | ||||
-rw-r--r-- | generator/role.h | 8 | ||||
-rw-r--r-- | generator/schema.sql | 8 | ||||
-rw-r--r-- | generator/vn.diff | 340 |
11 files changed, 396 insertions, 103 deletions
diff --git a/generator/CMakeLists.txt b/generator/CMakeLists.txt index 5bbd82d..95a11b5 100644 --- a/generator/CMakeLists.txt +++ b/generator/CMakeLists.txt | |||
@@ -5,8 +5,8 @@ find_package(PkgConfig) | |||
5 | pkg_check_modules(sqlite3 sqlite3 REQUIRED) | 5 | pkg_check_modules(sqlite3 sqlite3 REQUIRED) |
6 | find_package(libxml2 REQUIRED) | 6 | find_package(libxml2 REQUIRED) |
7 | 7 | ||
8 | include_directories(${sqlite3_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR} ../vendor/json) | 8 | include_directories(${sqlite3_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIR}) |
9 | add_executable(generator notion.cpp word.cpp lemma.cpp form.cpp pronunciation.cpp group.cpp frame.cpp part.cpp ../lib/selrestr.cpp database.cpp field.cpp generator.cpp main.cpp) | 9 | add_executable(generator notion.cpp word.cpp lemma.cpp form.cpp pronunciation.cpp group.cpp frame.cpp part.cpp database.cpp field.cpp generator.cpp main.cpp) |
10 | set_property(TARGET generator PROPERTY CXX_STANDARD 11) | 10 | set_property(TARGET generator PROPERTY CXX_STANDARD 11) |
11 | set_property(TARGET generator PROPERTY CXX_STANDARD_REQUIRED ON) | 11 | set_property(TARGET generator PROPERTY CXX_STANDARD_REQUIRED ON) |
12 | target_link_libraries(generator ${sqlite3_LIBRARIES} ${LIBXML2_LIBRARIES}) | 12 | target_link_libraries(generator ${sqlite3_LIBRARIES} ${LIBXML2_LIBRARIES}) |
diff --git a/generator/frame.h b/generator/frame.h index ba266f0..d26d500 100644 --- a/generator/frame.h +++ b/generator/frame.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define FRAME_H_26770FF1 | 2 | #define FRAME_H_26770FF1 |
3 | 3 | ||
4 | #include <list> | 4 | #include <list> |
5 | #include <vector> | ||
5 | #include "part.h" | 6 | #include "part.h" |
6 | 7 | ||
7 | namespace verbly { | 8 | namespace verbly { |
diff --git a/generator/generator.cpp b/generator/generator.cpp index 4cc9f64..e125b4a 100644 --- a/generator/generator.cpp +++ b/generator/generator.cpp | |||
@@ -7,7 +7,6 @@ | |||
7 | #include <fstream> | 7 | #include <fstream> |
8 | #include "../lib/enums.h" | 8 | #include "../lib/enums.h" |
9 | #include "progress.h" | 9 | #include "progress.h" |
10 | #include "../lib/selrestr.h" | ||
11 | #include "role.h" | 10 | #include "role.h" |
12 | #include "part.h" | 11 | #include "part.h" |
13 | #include "field.h" | 12 | #include "field.h" |
@@ -1303,12 +1302,20 @@ namespace verbly { | |||
1303 | std::string roleName = reinterpret_cast<const char*>(key); | 1302 | std::string roleName = reinterpret_cast<const char*>(key); |
1304 | xmlFree(key); | 1303 | xmlFree(key); |
1305 | 1304 | ||
1306 | selrestr roleSelrestrs; | 1305 | std::set<std::string> roleSelrestrs; |
1307 | for (xmlNodePtr rolenode = roletopnode->xmlChildrenNode; rolenode != nullptr; rolenode = rolenode->next) | 1306 | for (xmlNodePtr rolenode = roletopnode->xmlChildrenNode; rolenode != nullptr; rolenode = rolenode->next) |
1308 | { | 1307 | { |
1309 | if (!xmlStrcmp(rolenode->name, reinterpret_cast<const xmlChar*>("SELRESTRS"))) | 1308 | if (!xmlStrcmp(rolenode->name, reinterpret_cast<const xmlChar*>("SELRESTRS"))) |
1310 | { | 1309 | { |
1311 | roleSelrestrs = parseSelrestr(rolenode); | 1310 | for (xmlNodePtr selrestrnode = rolenode->xmlChildrenNode; selrestrnode != nullptr; selrestrnode = selrestrnode->next) |
1311 | { | ||
1312 | if (!xmlStrcmp(selrestrnode->name, reinterpret_cast<const xmlChar*>("SELRESTR"))) | ||
1313 | { | ||
1314 | key = xmlGetProp(selrestrnode, reinterpret_cast<const xmlChar*>("type")); | ||
1315 | roleSelrestrs.insert(std::string(reinterpret_cast<const char*>(key))); | ||
1316 | xmlFree(key); | ||
1317 | } | ||
1318 | } | ||
1312 | } | 1319 | } |
1313 | } | 1320 | } |
1314 | 1321 | ||
@@ -1335,7 +1342,7 @@ namespace verbly { | |||
1335 | std::string partRole = reinterpret_cast<const char*>(key); | 1342 | std::string partRole = reinterpret_cast<const char*>(key); |
1336 | xmlFree(key); | 1343 | xmlFree(key); |
1337 | 1344 | ||
1338 | selrestr partSelrestrs; | 1345 | std::set<std::string> partSelrestrs; |
1339 | std::set<std::string> partSynrestrs; | 1346 | std::set<std::string> partSynrestrs; |
1340 | 1347 | ||
1341 | for (xmlNodePtr npnode = syntaxnode->xmlChildrenNode; npnode != nullptr; npnode = npnode->next) | 1348 | for (xmlNodePtr npnode = syntaxnode->xmlChildrenNode; npnode != nullptr; npnode = npnode->next) |
@@ -1351,11 +1358,17 @@ namespace verbly { | |||
1351 | xmlFree(key); | 1358 | xmlFree(key); |
1352 | } | 1359 | } |
1353 | } | 1360 | } |
1354 | } | 1361 | } else if (!xmlStrcmp(npnode->name, reinterpret_cast<const xmlChar*>("SELRESTRS"))) |
1355 | |||
1356 | if (!xmlStrcmp(npnode->name, reinterpret_cast<const xmlChar*>("SELRESTRS"))) | ||
1357 | { | 1362 | { |
1358 | partSelrestrs = parseSelrestr(npnode); | 1363 | for (xmlNodePtr selrestrnode = npnode->xmlChildrenNode; selrestrnode != nullptr; selrestrnode = selrestrnode->next) |
1364 | { | ||
1365 | if (!xmlStrcmp(selrestrnode->name, reinterpret_cast<const xmlChar*>("SELRESTR"))) | ||
1366 | { | ||
1367 | key = xmlGetProp(selrestrnode, reinterpret_cast<const xmlChar*>("type")); | ||
1368 | partSelrestrs.insert(std::string(reinterpret_cast<const char*>(key))); | ||
1369 | xmlFree(key); | ||
1370 | } | ||
1371 | } | ||
1359 | } | 1372 | } |
1360 | } | 1373 | } |
1361 | 1374 | ||
@@ -1434,58 +1447,5 @@ namespace verbly { | |||
1434 | } | 1447 | } |
1435 | } | 1448 | } |
1436 | 1449 | ||
1437 | selrestr generator::parseSelrestr(xmlNodePtr top) | ||
1438 | { | ||
1439 | xmlChar* key; | ||
1440 | |||
1441 | if (!xmlStrcmp(top->name, reinterpret_cast<const xmlChar*>("SELRESTRS"))) | ||
1442 | { | ||
1443 | if (xmlChildElementCount(top) == 0) | ||
1444 | { | ||
1445 | return {}; | ||
1446 | } else if (xmlChildElementCount(top) == 1) | ||
1447 | { | ||
1448 | return parseSelrestr(xmlFirstElementChild(top)); | ||
1449 | } else { | ||
1450 | bool orlogic = false; | ||
1451 | if (xmlHasProp(top, reinterpret_cast<const xmlChar*>("logic"))) | ||
1452 | { | ||
1453 | key = xmlGetProp(top, reinterpret_cast<const xmlChar*>("logic")); | ||
1454 | if (!xmlStrcmp(key, reinterpret_cast<const xmlChar*>("or"))) | ||
1455 | { | ||
1456 | orlogic = true; | ||
1457 | } | ||
1458 | |||
1459 | xmlFree(key); | ||
1460 | } | ||
1461 | |||
1462 | std::list<selrestr> children; | ||
1463 | for (xmlNodePtr selrestr = top->xmlChildrenNode; selrestr != nullptr; selrestr = selrestr->next) | ||
1464 | { | ||
1465 | if (!xmlStrcmp(selrestr->name, reinterpret_cast<const xmlChar*>("SELRESTRS")) | ||
1466 | || !xmlStrcmp(selrestr->name, reinterpret_cast<const xmlChar*>("SELRESTR"))) | ||
1467 | { | ||
1468 | children.push_back(parseSelrestr(selrestr)); | ||
1469 | } | ||
1470 | } | ||
1471 | |||
1472 | return selrestr(children, orlogic); | ||
1473 | } | ||
1474 | } else if (!xmlStrcmp(top->name, reinterpret_cast<const xmlChar*>("SELRESTR"))) | ||
1475 | { | ||
1476 | key = xmlGetProp(top, reinterpret_cast<const xmlChar*>("Value")); | ||
1477 | bool selPos = (std::string(reinterpret_cast<const char*>(key)) == "+"); | ||
1478 | xmlFree(key); | ||
1479 | |||
1480 | key = xmlGetProp(top, reinterpret_cast<const xmlChar*>("type")); | ||
1481 | std::string selRestriction = reinterpret_cast<const char*>(key); | ||
1482 | xmlFree(key); | ||
1483 | |||
1484 | return selrestr(selRestriction, selPos); | ||
1485 | } else { | ||
1486 | throw std::logic_error("Badly formatted selrestr"); | ||
1487 | } | ||
1488 | } | ||
1489 | |||
1490 | }; | 1450 | }; |
1491 | }; | 1451 | }; |
diff --git a/generator/generator.h b/generator/generator.h index bc9b3c7..43b3272 100644 --- a/generator/generator.h +++ b/generator/generator.h | |||
@@ -18,7 +18,6 @@ | |||
18 | namespace verbly { | 18 | namespace verbly { |
19 | 19 | ||
20 | enum class part_of_speech; | 20 | enum class part_of_speech; |
21 | class selrestr; | ||
22 | 21 | ||
23 | namespace generator { | 22 | namespace generator { |
24 | 23 | ||
@@ -107,8 +106,6 @@ namespace verbly { | |||
107 | 106 | ||
108 | void createGroup(xmlNodePtr top, const group* parent = nullptr); | 107 | void createGroup(xmlNodePtr top, const group* parent = nullptr); |
109 | 108 | ||
110 | selrestr parseSelrestr(xmlNodePtr top); | ||
111 | |||
112 | // Input | 109 | // Input |
113 | 110 | ||
114 | std::string verbNetPath_; | 111 | std::string verbNetPath_; |
diff --git a/generator/group.cpp b/generator/group.cpp index aa28d42..5b23578 100644 --- a/generator/group.cpp +++ b/generator/group.cpp | |||
@@ -1,10 +1,10 @@ | |||
1 | #include "group.h" | 1 | #include "group.h" |
2 | #include <stdexcept> | 2 | #include <stdexcept> |
3 | #include <list> | 3 | #include <list> |
4 | #include <json.hpp> | ||
5 | #include "database.h" | 4 | #include "database.h" |
6 | #include "field.h" | 5 | #include "field.h" |
7 | #include "frame.h" | 6 | #include "frame.h" |
7 | #include "../lib/util.h" | ||
8 | 8 | ||
9 | namespace verbly { | 9 | namespace verbly { |
10 | namespace generator { | 10 | namespace generator { |
@@ -83,16 +83,22 @@ namespace verbly { | |||
83 | { | 83 | { |
84 | fields.emplace_back("role", p.getNounRole()); | 84 | fields.emplace_back("role", p.getNounRole()); |
85 | 85 | ||
86 | selrestr partSelrestr; | 86 | // Short interlude to serialize the selrestrs |
87 | if (p.getNounSelrestrs().getType() != selrestr::type::empty) | 87 | std::set<std::string> partSelrestrs = p.getNounSelrestrs(); |
88 | if (partSelrestrs.empty() && arg.hasRole(p.getNounRole())) | ||
88 | { | 89 | { |
89 | partSelrestr = p.getNounSelrestrs(); | 90 | partSelrestrs = arg.getRole(p.getNounRole()).getSelrestrs(); |
90 | } else if (arg.hasRole(p.getNounRole())) | ||
91 | { | ||
92 | partSelrestr = arg.getRole(p.getNounRole()).getSelrestrs(); | ||
93 | } | 91 | } |
94 | 92 | ||
95 | fields.emplace_back("selrestrs", partSelrestr.toJson().dump()); | 93 | for (const std::string& s : partSelrestrs) |
94 | { | ||
95 | std::list<field> selrestrFields; | ||
96 | |||
97 | selrestrFields.emplace_back("part_id", p.getId()); | ||
98 | selrestrFields.emplace_back("selrestr", s); | ||
99 | |||
100 | db.insertIntoTable("selrestrs", std::move(selrestrFields)); | ||
101 | } | ||
96 | 102 | ||
97 | // Short interlude to serialize the synrestrs | 103 | // Short interlude to serialize the synrestrs |
98 | for (const std::string& s : p.getNounSynrestrs()) | 104 | for (const std::string& s : p.getNounSynrestrs()) |
@@ -110,7 +116,10 @@ namespace verbly { | |||
110 | 116 | ||
111 | case part::type::preposition: | 117 | case part::type::preposition: |
112 | { | 118 | { |
113 | fields.emplace_back("prepositions", nlohmann::json(p.getPrepositionChoices()).dump()); | 119 | std::set<std::string> setChoices = p.getPrepositionChoices(); |
120 | std::string serializedChoices = implode(std::begin(setChoices), std::end(setChoices), ","); | ||
121 | |||
122 | fields.emplace_back("prepositions", std::move(serializedChoices)); | ||
114 | fields.emplace_back("preposition_literality", p.isPrepositionLiteral() ? 1 : 0); | 123 | fields.emplace_back("preposition_literality", p.isPrepositionLiteral() ? 1 : 0); |
115 | 124 | ||
116 | break; | 125 | break; |
diff --git a/generator/group.h b/generator/group.h index 5486fbe..a7f3a17 100644 --- a/generator/group.h +++ b/generator/group.h | |||
@@ -5,6 +5,7 @@ | |||
5 | #include <set> | 5 | #include <set> |
6 | #include <string> | 6 | #include <string> |
7 | #include <cassert> | 7 | #include <cassert> |
8 | #include <list> | ||
8 | #include "role.h" | 9 | #include "role.h" |
9 | 10 | ||
10 | namespace verbly { | 11 | namespace verbly { |
diff --git a/generator/part.cpp b/generator/part.cpp index 07618a8..d3e6656 100644 --- a/generator/part.cpp +++ b/generator/part.cpp | |||
@@ -6,12 +6,12 @@ namespace verbly { | |||
6 | 6 | ||
7 | int part::nextId_ = 0; | 7 | int part::nextId_ = 0; |
8 | 8 | ||
9 | part part::createNounPhrase(std::string role, selrestr selrestrs, std::set<std::string> synrestrs) | 9 | part part::createNounPhrase(std::string role, std::set<std::string> selrestrs, std::set<std::string> synrestrs) |
10 | { | 10 | { |
11 | part p(type::noun_phrase); | 11 | part p(type::noun_phrase); |
12 | 12 | ||
13 | new(&p.noun_phrase_.role) std::string(std::move(role)); | 13 | new(&p.noun_phrase_.role) std::string(std::move(role)); |
14 | new(&p.noun_phrase_.selrestrs) selrestr(std::move(selrestrs)); | 14 | new(&p.noun_phrase_.selrestrs) std::set<std::string>(std::move(selrestrs)); |
15 | new(&p.noun_phrase_.synrestrs) std::set<std::string>(std::move(synrestrs)); | 15 | new(&p.noun_phrase_.synrestrs) std::set<std::string>(std::move(synrestrs)); |
16 | 16 | ||
17 | return p; | 17 | return p; |
@@ -60,7 +60,7 @@ namespace verbly { | |||
60 | case type::noun_phrase: | 60 | case type::noun_phrase: |
61 | { | 61 | { |
62 | new(&result.noun_phrase_.role) std::string(other.noun_phrase_.role); | 62 | new(&result.noun_phrase_.role) std::string(other.noun_phrase_.role); |
63 | new(&result.noun_phrase_.selrestrs) selrestr(other.noun_phrase_.selrestrs); | 63 | new(&result.noun_phrase_.selrestrs) std::set<std::string>(other.noun_phrase_.selrestrs); |
64 | new(&result.noun_phrase_.synrestrs) std::set<std::string>(other.noun_phrase_.synrestrs); | 64 | new(&result.noun_phrase_.synrestrs) std::set<std::string>(other.noun_phrase_.synrestrs); |
65 | 65 | ||
66 | break; | 66 | break; |
@@ -103,7 +103,7 @@ namespace verbly { | |||
103 | case type::noun_phrase: | 103 | case type::noun_phrase: |
104 | { | 104 | { |
105 | new(&noun_phrase_.role) std::string(other.noun_phrase_.role); | 105 | new(&noun_phrase_.role) std::string(other.noun_phrase_.role); |
106 | new(&noun_phrase_.selrestrs) selrestr(other.noun_phrase_.selrestrs); | 106 | new(&noun_phrase_.selrestrs) std::set<std::string>(other.noun_phrase_.selrestrs); |
107 | new(&noun_phrase_.synrestrs) std::set<std::string>(other.noun_phrase_.synrestrs); | 107 | new(&noun_phrase_.synrestrs) std::set<std::string>(other.noun_phrase_.synrestrs); |
108 | 108 | ||
109 | break; | 109 | break; |
@@ -153,7 +153,7 @@ namespace verbly { | |||
153 | type tempType = first.type_; | 153 | type tempType = first.type_; |
154 | int tempId = first.id_; | 154 | int tempId = first.id_; |
155 | std::string tempRole; | 155 | std::string tempRole; |
156 | selrestr tempSelrestrs; | 156 | std::set<std::string> tempSelrestrs; |
157 | std::set<std::string> tempSynrestrs; | 157 | std::set<std::string> tempSynrestrs; |
158 | std::set<std::string> tempChoices; | 158 | std::set<std::string> tempChoices; |
159 | bool tempPrepLiteral; | 159 | bool tempPrepLiteral; |
@@ -204,7 +204,7 @@ namespace verbly { | |||
204 | case type::noun_phrase: | 204 | case type::noun_phrase: |
205 | { | 205 | { |
206 | new(&first.noun_phrase_.role) std::string(std::move(second.noun_phrase_.role)); | 206 | new(&first.noun_phrase_.role) std::string(std::move(second.noun_phrase_.role)); |
207 | new(&first.noun_phrase_.selrestrs) selrestr(std::move(second.noun_phrase_.selrestrs)); | 207 | new(&first.noun_phrase_.selrestrs) std::set<std::string>(std::move(second.noun_phrase_.selrestrs)); |
208 | new(&first.noun_phrase_.synrestrs) std::set<std::string>(std::move(second.noun_phrase_.synrestrs)); | 208 | new(&first.noun_phrase_.synrestrs) std::set<std::string>(std::move(second.noun_phrase_.synrestrs)); |
209 | 209 | ||
210 | break; | 210 | break; |
@@ -244,7 +244,7 @@ namespace verbly { | |||
244 | case type::noun_phrase: | 244 | case type::noun_phrase: |
245 | { | 245 | { |
246 | new(&second.noun_phrase_.role) std::string(std::move(tempRole)); | 246 | new(&second.noun_phrase_.role) std::string(std::move(tempRole)); |
247 | new(&second.noun_phrase_.selrestrs) selrestr(std::move(tempSelrestrs)); | 247 | new(&second.noun_phrase_.selrestrs) std::set<std::string>(std::move(tempSelrestrs)); |
248 | new(&second.noun_phrase_.synrestrs) std::set<std::string>(std::move(tempSynrestrs)); | 248 | new(&second.noun_phrase_.synrestrs) std::set<std::string>(std::move(tempSynrestrs)); |
249 | 249 | ||
250 | break; | 250 | break; |
@@ -285,7 +285,7 @@ namespace verbly { | |||
285 | using set_type = std::set<std::string>; | 285 | using set_type = std::set<std::string>; |
286 | 286 | ||
287 | noun_phrase_.role.~string_type(); | 287 | noun_phrase_.role.~string_type(); |
288 | noun_phrase_.selrestrs.~selrestr(); | 288 | noun_phrase_.selrestrs.~set_type(); |
289 | noun_phrase_.synrestrs.~set_type(); | 289 | noun_phrase_.synrestrs.~set_type(); |
290 | 290 | ||
291 | break; | 291 | break; |
@@ -329,7 +329,7 @@ namespace verbly { | |||
329 | } | 329 | } |
330 | } | 330 | } |
331 | 331 | ||
332 | selrestr part::getNounSelrestrs() const | 332 | std::set<std::string> part::getNounSelrestrs() const |
333 | { | 333 | { |
334 | if (type_ == type::noun_phrase) | 334 | if (type_ == type::noun_phrase) |
335 | { | 335 | { |
diff --git a/generator/part.h b/generator/part.h index 39ba1e7..01791f5 100644 --- a/generator/part.h +++ b/generator/part.h | |||
@@ -3,7 +3,6 @@ | |||
3 | 3 | ||
4 | #include <string> | 4 | #include <string> |
5 | #include <set> | 5 | #include <set> |
6 | #include "../lib/selrestr.h" | ||
7 | #include "../lib/enums.h" | 6 | #include "../lib/enums.h" |
8 | 7 | ||
9 | namespace verbly { | 8 | namespace verbly { |
@@ -17,7 +16,7 @@ namespace verbly { | |||
17 | 16 | ||
18 | // Static factories | 17 | // Static factories |
19 | 18 | ||
20 | static part createNounPhrase(std::string role, selrestr selrestrs, std::set<std::string> synrestrs); | 19 | static part createNounPhrase(std::string role, std::set<std::string> selrestrs, std::set<std::string> synrestrs); |
21 | 20 | ||
22 | static part createVerb(); | 21 | static part createVerb(); |
23 | 22 | ||
@@ -67,7 +66,7 @@ namespace verbly { | |||
67 | 66 | ||
68 | std::string getNounRole() const; | 67 | std::string getNounRole() const; |
69 | 68 | ||
70 | selrestr getNounSelrestrs() const; | 69 | std::set<std::string> getNounSelrestrs() const; |
71 | 70 | ||
72 | std::set<std::string> getNounSynrestrs() const; | 71 | std::set<std::string> getNounSynrestrs() const; |
73 | 72 | ||
@@ -104,7 +103,7 @@ namespace verbly { | |||
104 | union { | 103 | union { |
105 | struct { | 104 | struct { |
106 | std::string role; | 105 | std::string role; |
107 | selrestr selrestrs; | 106 | std::set<std::string> selrestrs; |
108 | std::set<std::string> synrestrs; | 107 | std::set<std::string> synrestrs; |
109 | } noun_phrase_; | 108 | } noun_phrase_; |
110 | struct { | 109 | struct { |
diff --git a/generator/role.h b/generator/role.h index 4884ef3..fccfa98 100644 --- a/generator/role.h +++ b/generator/role.h | |||
@@ -3,7 +3,7 @@ | |||
3 | 3 | ||
4 | #include <stdexcept> | 4 | #include <stdexcept> |
5 | #include <string> | 5 | #include <string> |
6 | #include "../lib/selrestr.h" | 6 | #include <set> |
7 | 7 | ||
8 | namespace verbly { | 8 | namespace verbly { |
9 | 9 | ||
@@ -18,7 +18,7 @@ namespace verbly { | |||
18 | 18 | ||
19 | role( | 19 | role( |
20 | std::string name, | 20 | std::string name, |
21 | selrestr selrestrs = {}) : | 21 | std::set<std::string> selrestrs = {}) : |
22 | valid_(true), | 22 | valid_(true), |
23 | name_(name), | 23 | name_(name), |
24 | selrestrs_(selrestrs) | 24 | selrestrs_(selrestrs) |
@@ -37,7 +37,7 @@ namespace verbly { | |||
37 | return name_; | 37 | return name_; |
38 | } | 38 | } |
39 | 39 | ||
40 | const selrestr& getSelrestrs() const | 40 | const std::set<std::string>& getSelrestrs() const |
41 | { | 41 | { |
42 | if (!valid_) | 42 | if (!valid_) |
43 | { | 43 | { |
@@ -51,7 +51,7 @@ namespace verbly { | |||
51 | 51 | ||
52 | bool valid_ = false; | 52 | bool valid_ = false; |
53 | std::string name_; | 53 | std::string name_; |
54 | selrestr selrestrs_; | 54 | std::set<std::string> selrestrs_; |
55 | 55 | ||
56 | }; | 56 | }; |
57 | 57 | ||
diff --git a/generator/schema.sql b/generator/schema.sql index 33ebc28..2ac658c 100644 --- a/generator/schema.sql +++ b/generator/schema.sql | |||
@@ -200,7 +200,6 @@ CREATE TABLE `parts` ( | |||
200 | `part_index` INTEGER NOT NULL, | 200 | `part_index` INTEGER NOT NULL, |
201 | `type` INTEGER NOT NULL, | 201 | `type` INTEGER NOT NULL, |
202 | `role` VARCHAR(16), | 202 | `role` VARCHAR(16), |
203 | `selrestrs` BLOB, | ||
204 | `prepositions` BLOB, | 203 | `prepositions` BLOB, |
205 | `preposition_literality` SMALLINT, | 204 | `preposition_literality` SMALLINT, |
206 | `literal_value` VARCHAR(64) | 205 | `literal_value` VARCHAR(64) |
@@ -215,3 +214,10 @@ CREATE TABLE `synrestrs` ( | |||
215 | ); | 214 | ); |
216 | 215 | ||
217 | CREATE INDEX `synrestrs_for` ON `synrestrs`(`part_id`); | 216 | CREATE INDEX `synrestrs_for` ON `synrestrs`(`part_id`); |
217 | |||
218 | CREATE TABLE `selrestrs` ( | ||
219 | `part_id` INTEGER NOT NULL, | ||
220 | `selrestr` VARCHAR(32) NOT NULL | ||
221 | ); | ||
222 | |||
223 | CREATE INDEX `selrestrs_for` ON `selrestrs`(`part_id`); | ||
diff --git a/generator/vn.diff b/generator/vn.diff index 5d5e2f3..bbfd6cf 100644 --- a/generator/vn.diff +++ b/generator/vn.diff | |||
@@ -1,8 +1,11 @@ | |||
1 | diff /Users/hatkirby/Downloads/new_vn 2/admit-65.xml datadir/vn/admit-65.xml | 1 | diff /Users/hatkirby/Downloads/new_vn 2/admit-65.xml datadir/vn/admit-65.xml |
2 | 104c104 | 2 | 104,106c104,105 |
3 | < <SELRESTRS logic="or"> | 3 | < <SELRESTRS logic="or"> |
4 | < <SELRESTR Value="+" type="location"/> | ||
5 | < <SELRESTR Value="-" type="region"/> | ||
4 | --- | 6 | --- |
5 | > <SELRESTRS> | 7 | > <SELRESTRS> |
8 | > <SELRESTR Value="+" type="non_region_location"/> | ||
6 | diff /Users/hatkirby/Downloads/new_vn 2/amuse-31.1.xml datadir/vn/amuse-31.1.xml | 9 | diff /Users/hatkirby/Downloads/new_vn 2/amuse-31.1.xml datadir/vn/amuse-31.1.xml |
7 | 270a271,273 | 10 | 270a271,273 |
8 | > <THEMROLE type="Cause"> | 11 | > <THEMROLE type="Cause"> |
@@ -30,6 +33,18 @@ diff /Users/hatkirby/Downloads/new_vn 2/animal_sounds-38.xml datadir/vn/animal_s | |||
30 | diff /Users/hatkirby/Downloads/new_vn 2/assessment-34.1.xml datadir/vn/assessment-34.1.xml | 33 | diff /Users/hatkirby/Downloads/new_vn 2/assessment-34.1.xml datadir/vn/assessment-34.1.xml |
31 | 103d102 | 34 | 103d102 |
32 | < <LEX value="'s"/> | 35 | < <LEX value="'s"/> |
36 | diff /Users/hatkirby/Downloads/new_vn 2/assuming_position-50.xml datadir/vn/assuming_position-50.xml | ||
37 | 41,42c41 | ||
38 | < <SELRESTR Value="+" type="location"/> | ||
39 | < <SELRESTR Value="-" type="region"/> | ||
40 | --- | ||
41 | > <SELRESTR Value="+" type="non_region_location"/> | ||
42 | diff /Users/hatkirby/Downloads/new_vn 2/banish-10.2.xml datadir/vn/banish-10.2.xml | ||
43 | 35,36c35 | ||
44 | < <SELRESTR Value="+" type="location"/> | ||
45 | < <SELRESTR Value="-" type="region"/> | ||
46 | --- | ||
47 | > <SELRESTR Value="+" type="non_region_location"/> | ||
33 | diff /Users/hatkirby/Downloads/new_vn 2/battle-36.4.xml datadir/vn/battle-36.4.xml | 48 | diff /Users/hatkirby/Downloads/new_vn 2/battle-36.4.xml datadir/vn/battle-36.4.xml |
34 | 96c96 | 49 | 96c96 |
35 | < <SYNRESTR Value="+" type="what_extract"/> | 50 | < <SYNRESTR Value="+" type="what_extract"/> |
@@ -85,6 +100,20 @@ diff /Users/hatkirby/Downloads/new_vn 2/break-45.1.xml datadir/vn/break-45.1.xml | |||
85 | > <SYNRESTRS> | 100 | > <SYNRESTRS> |
86 | > <SYNRESTR Value="+" type="adjp"/> | 101 | > <SYNRESTR Value="+" type="adjp"/> |
87 | > </SYNRESTRS> | 102 | > </SYNRESTRS> |
103 | diff /Users/hatkirby/Downloads/new_vn 2/bring-11.3.xml datadir/vn/bring-11.3.xml | ||
104 | 27,30c27 | ||
105 | < <SELRESTRS> | ||
106 | < <SELRESTR Value="+" type="location"/> | ||
107 | < <SELRESTR Value="-" type="region"/> | ||
108 | < </SELRESTRS> | ||
109 | --- | ||
110 | > <SELRESTR Value="+" type="non_region_location"/> | ||
111 | diff /Users/hatkirby/Downloads/new_vn 2/butter-9.9.xml datadir/vn/butter-9.9.xml | ||
112 | 155,156c155 | ||
113 | < <SELRESTR Value="+" type="location"/> | ||
114 | < <SELRESTR Value="-" type="region"/> | ||
115 | --- | ||
116 | > <SELRESTR Value="+" type="non_region_location"/> | ||
88 | diff /Users/hatkirby/Downloads/new_vn 2/characterize-29.2.xml datadir/vn/characterize-29.2.xml | 117 | diff /Users/hatkirby/Downloads/new_vn 2/characterize-29.2.xml datadir/vn/characterize-29.2.xml |
89 | 107c107 | 118 | 107c107 |
90 | < <LEX value="as"/> | 119 | < <LEX value="as"/> |
@@ -104,6 +133,31 @@ diff /Users/hatkirby/Downloads/new_vn 2/characterize-29.2.xml datadir/vn/charact | |||
104 | > <SYNRESTR Value="+" type="adjp"/> | 133 | > <SYNRESTR Value="+" type="adjp"/> |
105 | > </SYNRESTRS> | 134 | > </SYNRESTRS> |
106 | > </NP> | 135 | > </NP> |
136 | diff /Users/hatkirby/Downloads/new_vn 2/cheat-10.6.xml datadir/vn/cheat-10.6.xml | ||
137 | 56,59c56 | ||
138 | < <SELRESTRS> | ||
139 | < <SELRESTR Value="+" type="location"/> | ||
140 | < <SELRESTR Value="-" type="region"/> | ||
141 | < </SELRESTRS> | ||
142 | --- | ||
143 | > <SELRESTR Value="+" type="non_region_location"/> | ||
144 | diff /Users/hatkirby/Downloads/new_vn 2/chew-39.2.xml datadir/vn/chew-39.2.xml | ||
145 | 37,38c37 | ||
146 | < <SELRESTR Value="+" type="comestible"/> | ||
147 | < <SELRESTR Value="+" type="solid"/> | ||
148 | --- | ||
149 | > <SELRESTR Value="+" type="solid_food"/> | ||
150 | 155,156c154 | ||
151 | < <SELRESTR Value="+" type="comestible"/> | ||
152 | < <SELRESTR Value="-" type="solid"/> | ||
153 | --- | ||
154 | > <SELRESTR Value="+" type="non_solid_food"/> | ||
155 | diff /Users/hatkirby/Downloads/new_vn 2/coil-9.6.xml datadir/vn/coil-9.6.xml | ||
156 | 22,23c22 | ||
157 | < <SELRESTR Value="+" type="nonrigid"/> | ||
158 | < <SELRESTR Value="+" type="elongated"/> | ||
159 | --- | ||
160 | > <SELRESTR Value="+" type="slinky"/> | ||
107 | diff /Users/hatkirby/Downloads/new_vn 2/coloring-24.xml datadir/vn/coloring-24.xml | 161 | diff /Users/hatkirby/Downloads/new_vn 2/coloring-24.xml datadir/vn/coloring-24.xml |
108 | 89c89,91 | 162 | 89c89,91 |
109 | < <SYNRESTRS/> | 163 | < <SYNRESTRS/> |
@@ -118,6 +172,11 @@ diff /Users/hatkirby/Downloads/new_vn 2/confess-37.10.xml datadir/vn/confess-37. | |||
118 | > <SYNRESTR Value="+" type="adjp"/> | 172 | > <SYNRESTR Value="+" type="adjp"/> |
119 | > </SYNRESTRS> | 173 | > </SYNRESTRS> |
120 | > </NP> | 174 | > </NP> |
175 | diff /Users/hatkirby/Downloads/new_vn 2/confine-92.xml datadir/vn/confine-92.xml | ||
176 | 18c18 | ||
177 | < <SELRESTRS> | ||
178 | --- | ||
179 | > <SELRESTRS logic="or"> | ||
121 | diff /Users/hatkirby/Downloads/new_vn 2/consider-29.9.xml datadir/vn/consider-29.9.xml | 180 | diff /Users/hatkirby/Downloads/new_vn 2/consider-29.9.xml datadir/vn/consider-29.9.xml |
122 | 191,193c191,193 | 181 | 191,193c191,193 |
123 | < <SYNRESTRS> | 182 | < <SYNRESTRS> |
@@ -195,6 +254,47 @@ diff /Users/hatkirby/Downloads/new_vn 2/declare-29.4.xml datadir/vn/declare-29.4 | |||
195 | > <SYNRESTRS> | 254 | > <SYNRESTRS> |
196 | > <SYNRESTR Value="+" type="adjp"/> | 255 | > <SYNRESTR Value="+" type="adjp"/> |
197 | > </SYNRESTRS> | 256 | > </SYNRESTRS> |
257 | diff /Users/hatkirby/Downloads/new_vn 2/devour-39.4.xml datadir/vn/devour-39.4.xml | ||
258 | 26,27c26 | ||
259 | < <SELRESTR Value="+" type="comestible"/> | ||
260 | < <SELRESTR Value="+" type="solid"/> | ||
261 | --- | ||
262 | > <SELRESTR Value="+" type="solid_food"/> | ||
263 | 67,68c66 | ||
264 | < <SELRESTR Value="+" type="comestible"/> | ||
265 | < <SELRESTR Value="-" type="solid"/> | ||
266 | --- | ||
267 | > <SELRESTR Value="+" type="non_solid_food"/> | ||
268 | diff /Users/hatkirby/Downloads/new_vn 2/drive-11.5.xml datadir/vn/drive-11.5.xml | ||
269 | 37,40c37 | ||
270 | < <SELRESTRS> | ||
271 | < <SELRESTR Value="+" type="location"/> | ||
272 | < <SELRESTR Value="-" type="region"/> | ||
273 | < </SELRESTRS> | ||
274 | --- | ||
275 | > <SELRESTR Value="+" type="non_region_location"/> | ||
276 | diff /Users/hatkirby/Downloads/new_vn 2/eat-39.1.xml datadir/vn/eat-39.1.xml | ||
277 | 24,25c24 | ||
278 | < <SELRESTR Value="+" type="comestible"/> | ||
279 | < <SELRESTR Value="+" type="solid"/> | ||
280 | --- | ||
281 | > <SELRESTR Value="+" type="solid_food"/> | ||
282 | 148,149c147 | ||
283 | < <SELRESTR Value="+" type="comestible"/> | ||
284 | < <SELRESTR Value="-" type="solid"/> | ||
285 | --- | ||
286 | > <SELRESTR Value="+" type="non_solid_food"/> | ||
287 | diff /Users/hatkirby/Downloads/new_vn 2/enforce-63.xml datadir/vn/enforce-63.xml | ||
288 | 11c11 | ||
289 | < <SELRESTRS> | ||
290 | --- | ||
291 | > <SELRESTRS logic="or"> | ||
292 | diff /Users/hatkirby/Downloads/new_vn 2/entity_specific_modes_being-47.2.xml datadir/vn/entity_specific_modes_being-47.2.xml | ||
293 | 35,36c35 | ||
294 | < <SELRESTR Value="+" type="location"/> | ||
295 | < <SELRESTR Value="-" type="region"/> | ||
296 | --- | ||
297 | > <SELRESTR Value="+" type="non_region_location"/> | ||
198 | diff /Users/hatkirby/Downloads/new_vn 2/estimate-34.2.xml datadir/vn/estimate-34.2.xml | 298 | diff /Users/hatkirby/Downloads/new_vn 2/estimate-34.2.xml datadir/vn/estimate-34.2.xml |
199 | 123a124 | 299 | 123a124 |
200 | > <LEX value="to be"/> | 300 | > <LEX value="to be"/> |
@@ -206,12 +306,53 @@ diff /Users/hatkirby/Downloads/new_vn 2/estimate-34.2.xml datadir/vn/estimate-34 | |||
206 | > <SYNRESTRS> | 306 | > <SYNRESTRS> |
207 | > <SYNRESTR Value="+" type="adjp"/> | 307 | > <SYNRESTR Value="+" type="adjp"/> |
208 | > </SYNRESTRS> | 308 | > </SYNRESTRS> |
309 | diff /Users/hatkirby/Downloads/new_vn 2/exchange-13.6.xml datadir/vn/exchange-13.6.xml | ||
310 | 329,330c329 | ||
311 | < <SELRESTR Value="+" type="location"/> | ||
312 | < <SELRESTR Value="-" type="region"/> | ||
313 | --- | ||
314 | > <SELRESTR Value="+" type="non_region_location"/> | ||
315 | diff /Users/hatkirby/Downloads/new_vn 2/exist-47.1.xml datadir/vn/exist-47.1.xml | ||
316 | 13,14c13 | ||
317 | < <SELRESTR Value="+" type="location"/> | ||
318 | < <SELRESTR Value="-" type="region"/> | ||
319 | --- | ||
320 | > <SELRESTR Value="+" type="non_region_location"/> | ||
321 | diff /Users/hatkirby/Downloads/new_vn 2/fill-9.8.xml datadir/vn/fill-9.8.xml | ||
322 | 132,133c132 | ||
323 | < <SELRESTR Value="+" type="location"/> | ||
324 | < <SELRESTR Value="-" type="region"/> | ||
325 | --- | ||
326 | > <SELRESTR Value="+" type="non_region_location"/> | ||
327 | diff /Users/hatkirby/Downloads/new_vn 2/funnel-9.3.xml datadir/vn/funnel-9.3.xml | ||
328 | 30,31c30 | ||
329 | < <SELRESTR Value="+" type="location"/> | ||
330 | < <SELRESTR Value="-" type="region"/> | ||
331 | --- | ||
332 | > <SELRESTR Value="+" type="non_region_location"/> | ||
209 | diff /Users/hatkirby/Downloads/new_vn 2/get-13.5.1.xml datadir/vn/get-13.5.1.xml | 333 | diff /Users/hatkirby/Downloads/new_vn 2/get-13.5.1.xml datadir/vn/get-13.5.1.xml |
210 | 55,56c55 | 334 | 55,56c55 |
211 | < <SELRESTR Value="-" type="location"/> | 335 | < <SELRESTR Value="-" type="location"/> |
212 | < <SELRESTR Value="-" type="region"/> | 336 | < <SELRESTR Value="-" type="region"/> |
213 | --- | 337 | --- |
214 | > <SELRESTR Value="+" type="currency"/> | 338 | > <SELRESTR Value="+" type="currency"/> |
339 | diff /Users/hatkirby/Downloads/new_vn 2/gobble-39.3.xml datadir/vn/gobble-39.3.xml | ||
340 | 23,24c23 | ||
341 | < <SELRESTR Value="+" type="comestible"/> | ||
342 | < <SELRESTR Value="+" type="solid"/> | ||
343 | --- | ||
344 | > <SELRESTR Value="+" type="solid_food"/> | ||
345 | 118,119c117 | ||
346 | < <SELRESTR Value="+" type="comestible"/> | ||
347 | < <SELRESTR Value="-" type="solid"/> | ||
348 | --- | ||
349 | > <SELRESTR Value="+" type="non_solid_food"/> | ||
350 | diff /Users/hatkirby/Downloads/new_vn 2/herd-47.5.2.xml datadir/vn/herd-47.5.2.xml | ||
351 | 29,30c29 | ||
352 | < <SELRESTR Value="+" type="concrete"/> | ||
353 | < <SELRESTR Value="+" type="plural"/> | ||
354 | --- | ||
355 | > <SELRESTR Value="+" type="group"/> | ||
215 | diff /Users/hatkirby/Downloads/new_vn 2/hit-18.1.xml datadir/vn/hit-18.1.xml | 356 | diff /Users/hatkirby/Downloads/new_vn 2/hit-18.1.xml datadir/vn/hit-18.1.xml |
216 | 234c234,236 | 357 | 234c234,236 |
217 | < <SYNRESTRS/> | 358 | < <SYNRESTRS/> |
@@ -257,6 +398,23 @@ diff /Users/hatkirby/Downloads/new_vn 2/judgment-33.xml datadir/vn/judgment-33.x | |||
257 | < </SYNRESTRS> | 398 | < </SYNRESTRS> |
258 | --- | 399 | --- |
259 | > <SYNRESTRS/> | 400 | > <SYNRESTRS/> |
401 | diff /Users/hatkirby/Downloads/new_vn 2/keep-15.2.xml datadir/vn/keep-15.2.xml | ||
402 | 24,25c24 | ||
403 | < <SELRESTR Value="+" type="location"/> | ||
404 | < <SELRESTR Value="-" type="region"/> | ||
405 | --- | ||
406 | > <SELRESTR Value="+" type="non_region_location"/> | ||
407 | diff /Users/hatkirby/Downloads/new_vn 2/leave-51.2.xml datadir/vn/leave-51.2.xml | ||
408 | 16,17c16 | ||
409 | < <SELRESTR Value="+" type="location"/> | ||
410 | < <SELRESTR Value="-" type="region"/> | ||
411 | --- | ||
412 | > <SELRESTR Value="+" type="non_region_location"/> | ||
413 | diff /Users/hatkirby/Downloads/new_vn 2/light_emission-43.1.xml datadir/vn/light_emission-43.1.xml | ||
414 | 31c31 | ||
415 | < <SELRESTR Value="-" type="animate"/> | ||
416 | --- | ||
417 | > <SELRESTR Value="+" type="inanimate"/> | ||
260 | diff /Users/hatkirby/Downloads/new_vn 2/manner_speaking-37.3.xml datadir/vn/manner_speaking-37.3.xml | 418 | diff /Users/hatkirby/Downloads/new_vn 2/manner_speaking-37.3.xml datadir/vn/manner_speaking-37.3.xml |
261 | 264c264,266 | 419 | 264c264,266 |
262 | < <SYNRESTRS/> | 420 | < <SYNRESTRS/> |
@@ -270,6 +428,17 @@ diff /Users/hatkirby/Downloads/new_vn 2/manner_speaking-37.3.xml datadir/vn/mann | |||
270 | > <SYNRESTRS> | 428 | > <SYNRESTRS> |
271 | > <SYNRESTR Value="+" type="quotation"/> | 429 | > <SYNRESTR Value="+" type="quotation"/> |
272 | > </SYNRESTRS> | 430 | > </SYNRESTRS> |
431 | diff /Users/hatkirby/Downloads/new_vn 2/matter-91.xml datadir/vn/matter-91.xml | ||
432 | 10c10 | ||
433 | < <SELRESTRS> | ||
434 | --- | ||
435 | > <SELRESTRS logic="or"> | ||
436 | diff /Users/hatkirby/Downloads/new_vn 2/modes_of_being_with_motion-47.3.xml datadir/vn/modes_of_being_with_motion-47.3.xml | ||
437 | 64,65c64 | ||
438 | < <SELRESTR Value="+" type="location"/> | ||
439 | < <SELRESTR Value="-" type="region"/> | ||
440 | --- | ||
441 | > <SELRESTR Value="+" type="non_region_location"/> | ||
273 | diff /Users/hatkirby/Downloads/new_vn 2/other_cos-45.4.xml datadir/vn/other_cos-45.4.xml | 442 | diff /Users/hatkirby/Downloads/new_vn 2/other_cos-45.4.xml datadir/vn/other_cos-45.4.xml |
274 | 534c534,536 | 443 | 534c534,536 |
275 | < <SYNRESTRS/> | 444 | < <SYNRESTRS/> |
@@ -277,6 +446,11 @@ diff /Users/hatkirby/Downloads/new_vn 2/other_cos-45.4.xml datadir/vn/other_cos- | |||
277 | > <SYNRESTRS> | 446 | > <SYNRESTRS> |
278 | > <SYNRESTR Value="+" type="adjp"/> | 447 | > <SYNRESTR Value="+" type="adjp"/> |
279 | > </SYNRESTRS> | 448 | > </SYNRESTRS> |
449 | diff /Users/hatkirby/Downloads/new_vn 2/pay-68.xml datadir/vn/pay-68.xml | ||
450 | 13c13 | ||
451 | < <SELRESTRS> | ||
452 | --- | ||
453 | > <SELRESTRS logic="or"> | ||
280 | diff /Users/hatkirby/Downloads/new_vn 2/pocket-9.10.xml datadir/vn/pocket-9.10.xml | 454 | diff /Users/hatkirby/Downloads/new_vn 2/pocket-9.10.xml datadir/vn/pocket-9.10.xml |
281 | 256c256,258 | 455 | 256c256,258 |
282 | < <SYNRESTRS/> | 456 | < <SYNRESTRS/> |
@@ -292,7 +466,24 @@ diff /Users/hatkirby/Downloads/new_vn 2/poison-42.2.xml datadir/vn/poison-42.2.x | |||
292 | > <SYNRESTR Value="+" type="adjp"/> | 466 | > <SYNRESTR Value="+" type="adjp"/> |
293 | > </SYNRESTRS> | 467 | > </SYNRESTRS> |
294 | diff /Users/hatkirby/Downloads/new_vn 2/pour-9.5.xml datadir/vn/pour-9.5.xml | 468 | diff /Users/hatkirby/Downloads/new_vn 2/pour-9.5.xml datadir/vn/pour-9.5.xml |
295 | 59,61c59,62 | 469 | 24,27c24 |
470 | < <SELRESTRS> | ||
471 | < <SELRESTR Value="+" type="concrete"/> | ||
472 | < <SELRESTR Value="+" type="plural"/> | ||
473 | < </SELRESTRS> | ||
474 | --- | ||
475 | > <SELRESTR Value="+" type="group"/> | ||
476 | 32,33c29 | ||
477 | < <SELRESTR Value="+" type="location"/> | ||
478 | < <SELRESTR Value="-" type="region"/> | ||
479 | --- | ||
480 | > <SELRESTR Value="+" type="non_region_location"/> | ||
481 | 39,40c35 | ||
482 | < <SELRESTR Value="+" type="location"/> | ||
483 | < <SELRESTR Value="-" type="region"/> | ||
484 | --- | ||
485 | > <SELRESTR Value="+" type="non_region_location"/> | ||
486 | 59,61c54,57 | ||
296 | < <SELRESTRS> | 487 | < <SELRESTRS> |
297 | < <SELRESTR Value="+" type="path"/> | 488 | < <SELRESTR Value="+" type="path"/> |
298 | < <SELRESTR Value="-" type="dest_dir"/> | 489 | < <SELRESTR Value="-" type="dest_dir"/> |
@@ -301,7 +492,7 @@ diff /Users/hatkirby/Downloads/new_vn 2/pour-9.5.xml datadir/vn/pour-9.5.xml | |||
301 | > <SELRESTR Value="+" type="dir"/> | 492 | > <SELRESTR Value="+" type="dir"/> |
302 | > <SELRESTR Value="+" type="src"/> | 493 | > <SELRESTR Value="+" type="src"/> |
303 | > <SELRESTR Value="+" type="dest_conf"/> | 494 | > <SELRESTR Value="+" type="dest_conf"/> |
304 | 157,160c158,162 | 495 | 157,160c153,157 |
305 | < <SELRESTRS> | 496 | < <SELRESTRS> |
306 | < <SELRESTR Value="+" type="path"/> | 497 | < <SELRESTR Value="+" type="path"/> |
307 | < <SELRESTR Value="-" type="dest_dir"/> | 498 | < <SELRESTR Value="-" type="dest_dir"/> |
@@ -319,6 +510,31 @@ diff /Users/hatkirby/Downloads/new_vn 2/push-12.xml datadir/vn/push-12.xml | |||
319 | > <SYNRESTRS> | 510 | > <SYNRESTRS> |
320 | > <SYNRESTR Value="+" type="adjp"/> | 511 | > <SYNRESTR Value="+" type="adjp"/> |
321 | > </SYNRESTRS> | 512 | > </SYNRESTRS> |
513 | diff /Users/hatkirby/Downloads/new_vn 2/put-9.1.xml datadir/vn/put-9.1.xml | ||
514 | 35,36c35 | ||
515 | < <SELRESTR Value="+" type="location"/> | ||
516 | < <SELRESTR Value="-" type="region"/> | ||
517 | --- | ||
518 | > <SELRESTR Value="+" type="non_region_location"/> | ||
519 | diff /Users/hatkirby/Downloads/new_vn 2/put_direction-9.4.xml datadir/vn/put_direction-9.4.xml | ||
520 | 30,31c30 | ||
521 | < <SELRESTR Value="+" type="location"/> | ||
522 | < <SELRESTR Value="-" type="region"/> | ||
523 | --- | ||
524 | > <SELRESTR Value="+" type="non_region_location"/> | ||
525 | diff /Users/hatkirby/Downloads/new_vn 2/put_spatial-9.2.xml datadir/vn/put_spatial-9.2.xml | ||
526 | 25,26c25 | ||
527 | < <SELRESTR Value="+" type="location"/> | ||
528 | < <SELRESTR Value="-" type="region"/> | ||
529 | --- | ||
530 | > <SELRESTR Value="+" type="non_region_location"/> | ||
531 | diff /Users/hatkirby/Downloads/new_vn 2/reach-51.8.xml datadir/vn/reach-51.8.xml | ||
532 | 12,13c12,13 | ||
533 | < <SELRESTRS> | ||
534 | < <SELRESTR Value="+" type="concrete"/> | ||
535 | --- | ||
536 | > <SELRESTRS logic="or"> | ||
537 | > <SELRESTR Value="+" type="animate"/> | ||
322 | diff /Users/hatkirby/Downloads/new_vn 2/roll-51.3.1.xml datadir/vn/roll-51.3.1.xml | 538 | diff /Users/hatkirby/Downloads/new_vn 2/roll-51.3.1.xml datadir/vn/roll-51.3.1.xml |
323 | 190c190,192 | 539 | 190c190,192 |
324 | < <SYNRESTRS/> | 540 | < <SYNRESTRS/> |
@@ -357,8 +573,23 @@ diff /Users/hatkirby/Downloads/new_vn 2/seem-109.xml datadir/vn/seem-109.xml | |||
357 | > <SYNRESTRS> | 573 | > <SYNRESTRS> |
358 | > <SYNRESTR Value="+" type="adjp"/> | 574 | > <SYNRESTR Value="+" type="adjp"/> |
359 | > </SYNRESTRS> | 575 | > </SYNRESTRS> |
576 | diff /Users/hatkirby/Downloads/new_vn 2/send-11.1.xml datadir/vn/send-11.1.xml | ||
577 | 41,44c41 | ||
578 | < <SELRESTRS> | ||
579 | < <SELRESTR Value="+" type="location"/> | ||
580 | < <SELRESTR Value="-" type="region"/> | ||
581 | < </SELRESTRS> | ||
582 | --- | ||
583 | > <SELRESTR Value="+" type="non_region_location"/> | ||
360 | diff /Users/hatkirby/Downloads/new_vn 2/slide-11.2.xml datadir/vn/slide-11.2.xml | 584 | diff /Users/hatkirby/Downloads/new_vn 2/slide-11.2.xml datadir/vn/slide-11.2.xml |
361 | 69,72c69,73 | 585 | 27,30c27 |
586 | < <SELRESTRS> | ||
587 | < <SELRESTR Value="+" type="location"/> | ||
588 | < <SELRESTR Value="-" type="region"/> | ||
589 | < </SELRESTRS> | ||
590 | --- | ||
591 | > <SELRESTR Value="+" type="non_region_location"/> | ||
592 | 69,72c66,70 | ||
362 | < <SELRESTRS> | 593 | < <SELRESTRS> |
363 | < <SELRESTR Value="+" type="path"/> | 594 | < <SELRESTR Value="+" type="path"/> |
364 | < <SELRESTR Value="-" type="dest_dir"/> | 595 | < <SELRESTR Value="-" type="dest_dir"/> |
@@ -369,7 +600,7 @@ diff /Users/hatkirby/Downloads/new_vn 2/slide-11.2.xml datadir/vn/slide-11.2.xml | |||
369 | > <SELRESTR Value="+" type="src"/> | 600 | > <SELRESTR Value="+" type="src"/> |
370 | > <SELRESTR Value="+" type="dest_conf"/> | 601 | > <SELRESTR Value="+" type="dest_conf"/> |
371 | > </SELRESTRS> | 602 | > </SELRESTRS> |
372 | 218,221c219,223 | 603 | 218,221c216,220 |
373 | < <SELRESTRS> | 604 | < <SELRESTRS> |
374 | < <SELRESTR Value="+" type="path"/> | 605 | < <SELRESTR Value="+" type="path"/> |
375 | < <SELRESTR Value="-" type="dest_dir"/> | 606 | < <SELRESTR Value="-" type="dest_dir"/> |
@@ -380,6 +611,22 @@ diff /Users/hatkirby/Downloads/new_vn 2/slide-11.2.xml datadir/vn/slide-11.2.xml | |||
380 | > <SELRESTR Value="+" type="src"/> | 611 | > <SELRESTR Value="+" type="src"/> |
381 | > <SELRESTR Value="+" type="dest_conf"/> | 612 | > <SELRESTR Value="+" type="dest_conf"/> |
382 | > </SELRESTRS> | 613 | > </SELRESTRS> |
614 | diff /Users/hatkirby/Downloads/new_vn 2/smell_emission-43.3.xml datadir/vn/smell_emission-43.3.xml | ||
615 | 12c12 | ||
616 | < <SELRESTR Value="-" type="animate"/> | ||
617 | --- | ||
618 | > <SELRESTR Value="+" type="inanimate"/> | ||
619 | diff /Users/hatkirby/Downloads/new_vn 2/sound_emission-43.2.xml datadir/vn/sound_emission-43.2.xml | ||
620 | 138c138 | ||
621 | < <SELRESTR Value="-" type="animate"/> | ||
622 | --- | ||
623 | > <SELRESTR Value="+" type="inanimate"/> | ||
624 | diff /Users/hatkirby/Downloads/new_vn 2/sound_existence-47.4.xml datadir/vn/sound_existence-47.4.xml | ||
625 | 21,22c21 | ||
626 | < <SELRESTR Value="+" type="location"/> | ||
627 | < <SELRESTR Value="-" type="region"/> | ||
628 | --- | ||
629 | > <SELRESTR Value="+" type="non_region_location"/> | ||
383 | diff /Users/hatkirby/Downloads/new_vn 2/spank-18.3.xml datadir/vn/spank-18.3.xml | 630 | diff /Users/hatkirby/Downloads/new_vn 2/spank-18.3.xml datadir/vn/spank-18.3.xml |
384 | 69a70,72 | 631 | 69a70,72 |
385 | > <THEMROLE type="Recipient"> | 632 | > <THEMROLE type="Recipient"> |
@@ -405,6 +652,12 @@ diff /Users/hatkirby/Downloads/new_vn 2/spank-18.3.xml datadir/vn/spank-18.3.xml | |||
405 | > <SYNRESTRS> | 652 | > <SYNRESTRS> |
406 | > <SYNRESTR Value="+" type="body_part"/> | 653 | > <SYNRESTR Value="+" type="body_part"/> |
407 | > </SYNRESTRS> | 654 | > </SYNRESTRS> |
655 | diff /Users/hatkirby/Downloads/new_vn 2/spatial_configuration-47.6.xml datadir/vn/spatial_configuration-47.6.xml | ||
656 | 66,67c66 | ||
657 | < <SELRESTR Value="+" type="location"/> | ||
658 | < <SELRESTR Value="-" type="region"/> | ||
659 | --- | ||
660 | > <SELRESTR Value="+" type="non_region_location"/> | ||
408 | diff /Users/hatkirby/Downloads/new_vn 2/split-23.2.xml datadir/vn/split-23.2.xml | 661 | diff /Users/hatkirby/Downloads/new_vn 2/split-23.2.xml datadir/vn/split-23.2.xml |
409 | 59c59 | 662 | 59c59 |
410 | < <PREP value="off off of from"> | 663 | < <PREP value="off off of from"> |
@@ -418,6 +671,41 @@ diff /Users/hatkirby/Downloads/new_vn 2/split-23.2.xml datadir/vn/split-23.2.xml | |||
418 | < <PREP value="off off of from"> | 671 | < <PREP value="off off of from"> |
419 | --- | 672 | --- |
420 | > <PREP value="off off_of from"> | 673 | > <PREP value="off off_of from"> |
674 | diff /Users/hatkirby/Downloads/new_vn 2/spray-9.7.xml datadir/vn/spray-9.7.xml | ||
675 | 19,20c19 | ||
676 | < <SELRESTR Value="+" type="location"/> | ||
677 | < <SELRESTR Value="-" type="region"/> | ||
678 | --- | ||
679 | > <SELRESTR Value="+" type="non_region_location"/> | ||
680 | 254,255c253 | ||
681 | < <SELRESTR Value="+" type="concrete"/> | ||
682 | < <SELRESTR Value="+" type="plural"/> | ||
683 | --- | ||
684 | > <SELRESTR Value="+" type="group"/> | ||
685 | diff /Users/hatkirby/Downloads/new_vn 2/steal-10.5.xml datadir/vn/steal-10.5.xml | ||
686 | 55,58c55 | ||
687 | < <SELRESTRS> | ||
688 | < <SELRESTR Value="+" type="location"/> | ||
689 | < <SELRESTR Value="-" type="region"/> | ||
690 | < </SELRESTRS> | ||
691 | --- | ||
692 | > <SELRESTR Value="+" type="non_region_location"/> | ||
693 | diff /Users/hatkirby/Downloads/new_vn 2/substance_emission-43.4.xml datadir/vn/substance_emission-43.4.xml | ||
694 | 40c40 | ||
695 | < <SELRESTR Value="-" type="animate"/> | ||
696 | --- | ||
697 | > <SELRESTR Value="+" type="inanimate"/> | ||
698 | diff /Users/hatkirby/Downloads/new_vn 2/swarm-47.5.1.xml datadir/vn/swarm-47.5.1.xml | ||
699 | 8,9c8 | ||
700 | < <SELRESTR Value="+" type="concrete"/> | ||
701 | < <SELRESTR Value="+" type="plural"/> | ||
702 | --- | ||
703 | > <SELRESTR Value="+" type="group"/> | ||
704 | 14,15c13 | ||
705 | < <SELRESTR Value="+" type="location"/> | ||
706 | < <SELRESTR Value="-" type="region"/> | ||
707 | --- | ||
708 | > <SELRESTR Value="+" type="non_region_location"/> | ||
421 | diff /Users/hatkirby/Downloads/new_vn 2/swat-18.2.xml datadir/vn/swat-18.2.xml | 709 | diff /Users/hatkirby/Downloads/new_vn 2/swat-18.2.xml datadir/vn/swat-18.2.xml |
422 | 264c264,266 | 710 | 264c264,266 |
423 | < <SYNRESTRS/> | 711 | < <SYNRESTRS/> |
@@ -432,12 +720,25 @@ diff /Users/hatkirby/Downloads/new_vn 2/swat-18.2.xml datadir/vn/swat-18.2.xml | |||
432 | > <SYNRESTR Value="+" type="adjp"/> | 720 | > <SYNRESTR Value="+" type="adjp"/> |
433 | > </SYNRESTRS> | 721 | > </SYNRESTRS> |
434 | diff /Users/hatkirby/Downloads/new_vn 2/tape-22.4.xml datadir/vn/tape-22.4.xml | 722 | diff /Users/hatkirby/Downloads/new_vn 2/tape-22.4.xml datadir/vn/tape-22.4.xml |
435 | 364c364,366 | 723 | 93,94c93 |
724 | < <SELRESTR Value="+" type="concrete"/> | ||
725 | < <SELRESTR Value="-" type="animate"/> | ||
726 | --- | ||
727 | > <SELRESTR Value="+" type="concrete_inanimate"/> | ||
728 | 364c363,365 | ||
436 | < <SYNRESTRS/> | 729 | < <SYNRESTRS/> |
437 | --- | 730 | --- |
438 | > <SYNRESTRS> | 731 | > <SYNRESTRS> |
439 | > <SYNRESTR Value="+" type="adjp"/> | 732 | > <SYNRESTR Value="+" type="adjp"/> |
440 | > </SYNRESTRS> | 733 | > </SYNRESTRS> |
734 | diff /Users/hatkirby/Downloads/new_vn 2/throw-17.1.xml datadir/vn/throw-17.1.xml | ||
735 | 27,30c27 | ||
736 | < <SELRESTRS> | ||
737 | < <SELRESTR Value="+" type="location"/> | ||
738 | < <SELRESTR Value="-" type="region"/> | ||
739 | < </SELRESTRS> | ||
740 | --- | ||
741 | > <SELRESTR Value="+" type="non_region_location"/> | ||
441 | diff /Users/hatkirby/Downloads/new_vn 2/vehicle-51.4.1.xml datadir/vn/vehicle-51.4.1.xml | 742 | diff /Users/hatkirby/Downloads/new_vn 2/vehicle-51.4.1.xml datadir/vn/vehicle-51.4.1.xml |
442 | 227c227,229 | 743 | 227c227,229 |
443 | < <SYNRESTRS/> | 744 | < <SYNRESTRS/> |
@@ -468,18 +769,32 @@ diff /Users/hatkirby/Downloads/new_vn 2/want-32.1.xml datadir/vn/want-32.1.xml | |||
468 | > <SYNRESTR Value="+" type="adjp"/> | 769 | > <SYNRESTR Value="+" type="adjp"/> |
469 | > </SYNRESTRS> | 770 | > </SYNRESTRS> |
470 | diff /Users/hatkirby/Downloads/new_vn 2/wipe_instr-10.4.2.xml datadir/vn/wipe_instr-10.4.2.xml | 771 | diff /Users/hatkirby/Downloads/new_vn 2/wipe_instr-10.4.2.xml datadir/vn/wipe_instr-10.4.2.xml |
471 | 178c178,180 | 772 | 26,27c26 |
773 | < <SELRESTR Value="+" type="concrete"/> | ||
774 | < <SELRESTR Value="-" type="animate"/> | ||
775 | --- | ||
776 | > <SELRESTR Value="+" type="concrete_inanimate"/> | ||
777 | 37,38c36 | ||
778 | < <SELRESTR Value="+" type="concrete"/> | ||
779 | < <SELRESTR Value="-" type="animate"/> | ||
780 | --- | ||
781 | > <SELRESTR Value="+" type="concrete_inanimate"/> | ||
782 | 178c176,178 | ||
472 | < <SYNRESTRS/> | 783 | < <SYNRESTRS/> |
473 | --- | 784 | --- |
474 | > <SYNRESTRS> | 785 | > <SYNRESTRS> |
475 | > <SYNRESTR Value="+" type="adjp"/> | 786 | > <SYNRESTR Value="+" type="adjp"/> |
476 | > </SYNRESTRS> | 787 | > </SYNRESTRS> |
477 | diff /Users/hatkirby/Downloads/new_vn 2/wipe_manner-10.4.1.xml datadir/vn/wipe_manner-10.4.1.xml | 788 | diff /Users/hatkirby/Downloads/new_vn 2/wipe_manner-10.4.1.xml datadir/vn/wipe_manner-10.4.1.xml |
478 | 198c198,199 | 789 | 37,38c37 |
790 | < <SELRESTR Value="+" type="concrete"/> | ||
791 | < <SELRESTR Value="-" type="animate"/> | ||
792 | --- | ||
793 | > <SELRESTR Value="+" type="concrete_inanimate"/> | ||
794 | 198c197 | ||
479 | < <SELRESTR Value="-" type="region"/> | 795 | < <SELRESTR Value="-" type="region"/> |
480 | --- | 796 | --- |
481 | > <SELRESTR Value="+" type="location"/> | 797 | > <SELRESTR Value="+" type="non_region_location"/> |
482 | > <SELRESTR Value="-" type="region"/> | ||
483 | diff /Users/hatkirby/Downloads/new_vn 2/wish-62.xml datadir/vn/wish-62.xml | 798 | diff /Users/hatkirby/Downloads/new_vn 2/wish-62.xml datadir/vn/wish-62.xml |
484 | 91a92 | 799 | 91a92 |
485 | > <LEX value="to be"/> | 800 | > <LEX value="to be"/> |
@@ -493,3 +808,8 @@ diff /Users/hatkirby/Downloads/new_vn 2/wish-62.xml datadir/vn/wish-62.xml | |||
493 | > </SYNRESTRS> | 808 | > </SYNRESTRS> |
494 | 122a124 | 809 | 122a124 |
495 | > <ADJ/> | 810 | > <ADJ/> |
811 | diff /Users/hatkirby/Downloads/new_vn 2/withdraw-82.xml datadir/vn/withdraw-82.xml | ||
812 | 7c7 | ||
813 | < <SELRESTRS> | ||
814 | --- | ||
815 | > <SELRESTRS logic="or"> | ||