def get_context_data(self, **kwargs): from syntaxrules.syntaxtree import SyntaxTree from syntaxrules.soh import SOHServer ctx = super(ArticleRuleDetailsView, self).get_context_data(**kwargs) saf = amcatxtas.get_result(int(self.kwargs['article_id']), self.object.preprocessing) sid = int(self.request.GET.get("sid", 1)) sentences = list(self.get_sentences(saf)) soh = SOHServer(url="http://localhost:3030/x") t = SyntaxTree(soh) t.load_saf(saf, sid) g = t.get_graphviz() original_tree = base64.b64encode(g.draw(format='png', prog='dot')) ruleset = self.object.get_ruleset() t.apply_ruleset(ruleset) g = t.get_graphviz(grey_rel=True) processed_tree = base64.b64encode(g.draw(format='png', prog='dot')) ruleset_dump = json.dumps(ruleset, indent=2) saf_dump = json.dumps(saf, indent=2) ctx.update(locals()) return ctx
def get_transformed(self, aid, saf, rules): print(saf) ruleset = RuleSet.objects.get(label=rules) from syntaxrules.soh import SOHServer from syntaxrules.syntaxtree import SyntaxTree soh = SOHServer("http://localhost:3030/x") t = SyntaxTree(soh) for sid in {token['sentence'] for token in saf['tokens']}: t.load_saf(saf, sid) t.apply_ruleset(ruleset.get_ruleset()) yield sid
def _get_tree(sid=1): _check_soh() soh = SOHServer(url="http://localhost:3030/x") t = SyntaxTree(soh) t.load_saf(TEST_SAF, sid) return t