"""Methoden fuer Language Technologies""" def donatus(txt2): import xmlrpclib server = xmlrpclib.ServerProxy("http://archimedes.fas.harvard.edu/cgi-bin/donatus-rpc") txt=txt2.encode('utf-8') bin=xmlrpclib.Binary(txt) ret=server.donatus.analyze(bin) return ret['morphData'].data def donatusVariant2Lemma(morphData): """creates hash variant -> morphdata""" ret={} dom=xml.dom.minidom.parseString(morphData) lemmas=dom.getElementsByTagName('lemma') for lemma in lemmas: variants=lemma.getElementsByTagName('variant') for variant in variants: atr=variant.getAttribute('form') if ret.has_key(atr): ret[atr].append=lemma.getAttribute('form') else: ret[atr]=[lemma.getAttribute('form')] return ret