import corpus2
import grafon
from grafon.gbuilders import basegraphbuilder

####################################################
tagset_str = 'nkjp'
tagset = corpus2.get_named_tagset(tagset_str)
input_text = 'plik.cll'

####################################################
# rodzaje krawedzi, ktore beda dodawane do grafu
ebuilders = [
  grafon.ebuilders.wordtowordedgebuilder.WordToWordEdgeBuilder('w2w'),
  grafon.ebuilders.headtoheadedgebuilder.HeadToHeadEdgeBuilder('h2h'),
  grafon.ebuilders.depreledgebuilder.DepRelEdgeBuider('dep_rel'),
  grafon.ebuilders.semreledgeuilder.SemRelEdgeBuilder('sem_rel')]

####################################################
# podstawowy graf, bez krawedzi - same wezly
bgb = basegraphbuilder.BaseGraphBuilder()
bg = bgb.build_base_graph_from_file(input_text, tagset)

####################################################
# dodaje do grafu krawedzie z wykrzystaniem 
# builderow zadeklarowanych wczesniej
for ebuilder in ebuilders:
  ebuilder.add_edges(bg)
