try: int(x) return x except ValueError: if(x in number_dic.keys()): return number_dic[x] else: return ""; def make_nice(text): text = [replace_int(x) for x in text.split('_')] return("".join(text)) hasExport = relation('hasExport' , 'GPE' , 'CDD' , make_nice , patterns_list=[ {'left': UNIVERSAL, 'middle': IS_EXPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_EXPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_EXPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_EXPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': IS_EXPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_EXPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_EXPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_EXPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': IS_EXPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_EXPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_EXPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_EXPORT, 'comparator': 'egal', 'inverted': True} ]) listeRelation.append(hasExport) dic.update(number_dic)
try: int(x) return x except ValueError: if(x in number_dic.keys()): return number_dic[x] else: return ""; def make_nice(text): text = [replace_int(x) for x in text.split('_') if replace_int(x) != ""] return(" ".join(text)) ppdensity_grammar = "PPDENSITY: {<CD>+<PPUNIT><PER><AREA>+}" hasPopulationDensity = relation('hasPopulationDensity' , 'GPE' , 'PPDENSITY' , make_nice , patterns_list=[ {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY_MORE, 'comparator': 'more', 'inverted':True}, {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY_LESS, 'comparator': 'less', 'inverted':True}, {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY, 'comparator': 'egal', 'inverted':True}, {'left': S_POPULATION_DENSITY, 'middle': IS_MORE, 'comparator': 'more', 'inverted':True}, {'left': POPULATION_DENSITY_OF, 'middle': IS_MORE, 'comparator': 'more', 'inverted':True}, {'left': S_POPULATION_DENSITY, 'middle': IS_LESS, 'comparator': 'less', 'inverted':True}, {'left': POPULATION_DENSITY_OF, 'middle': IS_LESS, 'comparator': 'less', 'inverted':True}, {'left': S_POPULATION_DENSITY, 'middle': IS, 'comparator': 'egal', 'inverted':True}, {'left': POPULATION_DENSITY_OF, 'middle': IS, 'comparator': 'egal', 'inverted':True}, ]) listeRelation.append(hasPopulationDensity) grammar.append(ppdensity_grammar) dic.update(ppdensity_dic)
'billion': '000000000', 'million': '000000', 'thousand': '000', 'hundread': '00' } def replace_int(x): try: int(x) return x except ValueError: if(x in number_dic.keys()): return number_dic[x] else: return ""; def make_nice(text): text = [replace_int(x) for x in text.split('_')] return("".join(text)) hasGDP = relation('hasGDP' , 'GPE' , 'CDD' , make_nice , patterns_list=[ {'left': UNIVERSAL, 'middle': S_GDP_MORE, 'comparator': 'more', 'inverted': True}, {'left': GDP_IN, 'middle': IS_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_GDP_LESS, 'comparator': 'less', 'inverted': True}, {'left': GDP_IN, 'middle': IS_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_GDP, 'comparator': 'egal', 'inverted': True}, {'left': GDP_IN, 'middle': IS, 'comparator': 'egal', 'inverted': True}, ]) listeRelation.append(hasGDP)
int(x) return x except ValueError: if x in number_dic.keys(): return number_dic[x] else: return "" def make_nice(text): text = [replace_int(x) for x in text.split("_")] return "".join(text) hasPopulation = relation( "hasPopulation", "PPCD", "GPE", make_nice, patterns_list=[ {"left": UNIVERSAL, "middle": LIVE_IN, "comparator": "egal"}, {"left": THERE, "middle": IN, "comparator": "egal"}, {"left": THERE_MORE, "middle": IN, "comparator": "more"}, {"left": THERE_LESS, "middle": IN, "comparator": "less"}, ], ) listeRelation.append(hasPopulation) dic.update(haspop_dic) grammar.append(haspop_grammar)
def replace_int(x): try: int(x) return x except ValueError: if(x in number_dic.keys()): return number_dic[x] else: return ""; def make_nice(timt): timt = [replace_int(x) for x in timt.split('_')] return("".join(timt)) hasImport = relation('hasImport' , 'GPE' , 'CDD' , make_nice , patterns_list=[ {'left': UNIVERSAL, 'middle': IS_IMPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_IMPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_IMPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_IMPORT_MORE, 'comparator': 'more', 'inverted': True}, {'left': UNIVERSAL, 'middle': IS_IMPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_IMPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_IMPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_IMPORT_LESS, 'comparator': 'less', 'inverted': True}, {'left': UNIVERSAL, 'middle': IS_IMPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_IS_IMPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': ACCOUNTED_FOR_IMPORT, 'comparator': 'egal', 'inverted': True}, {'left': UNIVERSAL, 'middle': S_ACCOUNTED_FOR_IMPORT, 'comparator': 'egal', 'inverted': True} ]) listeRelation.append(hasImport)
import re from relation import relation, relationData from supportedRelations import listeRelation UNIVERSAL = re.compile(r'.*') BORN_IN = re.compile(r'.*\bborn\b.*in.*') def make_nice(x): return x bornIn = relation('bornIn' , 'PERSON' , 'GPE' , make_nice , patterns_list=[ {'left': UNIVERSAL, 'middle': BORN_IN, 'comparator': 'egal'} ]) listeRelation.append(bornIn)