Package Bio :: Package MetaTool :: Module metatool_format
[hide private]
[frames] | no frames]

Module metatool_format

source code

Martel based parser to read MetaTool output files.

This is a huge regular regular expression for MetaTool 3.5 output, built using the 'regular expressiona on steroids' capabilities of Martel.

http://www2.bioinf.mdc-berlin.de/metabolic/metatool/

This helps us have endlines be consistent across platforms.

Variables [hide private]
  blank = ' '
  tab = '\t'
  blank_space = MaxRepeat(Any(blank+ tab), 1, 80)
  optional_blank_space = Rep(Any(blank+ tab))
  white_space = ' \t\n\r'
  blank_line = optional_blank_space+ AnyEol()
  lower_case_letter = Group("lower_case_letter", Any("abcdefghij...
  digits = '0123456789'
  enzyme = Group("enzyme", optional_blank_space+ Digits()+ optio...
  reaction = Group("reaction", optional_blank_space+ Digits()+ o...
  not_found_line = Group("not_found_line", optional_blank_space+...
  enzymes_header = Group("enzymes_header", optional_blank_space+...
  enzymes_list = Group("enzymes_list", Alt(Rep1(enzyme), not_fou...
  enzymes_block = Group("enzymes_block", enzymes_header+ Rep(bla...
  reactions_header = Group("reactions_header", optional_blank_sp...
  reactions_list = Group("reactions_list", Alt(Rep1(reaction), n...
  reactions_block = Group("reactions_block", reactions_header+ R...
  rev = Group("rev", Opt(lower_case_letter))
  version = Group("version", Digits("version_major")+ Any(".")+ ...
  metatool_tag = Str("METATOOL OUTPUT")
  metatool_line = Group("metatool_line", metatool_tag+ blank_spa...
  input_file_tag = Str("INPUT FILE:")
  input_file_line = Group("input_file_line", input_file_tag+ bla...
  metabolite_count_tag = Str("INTERNAL METABOLITES:")
  metabolite_count_line = Group("metabolite_count_line", metabol...
  reaction_count_tag = Str("REACTIONS:")
  reaction_count_line = Group("reaction_count_line", reaction_co...
  type_metabolite = Group("type_metabolite", Alt(Str("int"), Str...
  metabolite_info = Group("metabolite_info", optional_blank_spac...
  metabolite_line = Group("metabolite_line", metabolite_info+ To...
  metabolites_summary = Group("metabolites_summary", optional_bl...
  metabolites_block = Group("metabolites_block", Rep1(metabolite...
  graph_structure_heading = Group("graph_structure_heading", opt...
  graph_structure_line = Group("graph_structure_line", optional_...
  graph_structure_block = Group("graph_structure_block", graph_s...
  sum_is_constant_line = Group("sum_is_constant_line", optional_...
  sum_is_constant_block = Group("sum_is_constant_block", Rep(sum...
  stoichiometric_tag = Group("stoichiometric_tag", Str("STOICHIO...
  stoichiometric_line = Group("stoichiometric_line", stoichiomet...
  not_balanced_tag = Group("not_balanced_tag", Str("NOT BALANCED...
  not_balanced_line = Group("not_balanced_line", not_balanced_ta...
  subsets_tag = Group("subsets_tag", Str("SUBSETS OF REACTIONS"))
  subsets_line = Group("subsets_line", subsets_tag+ ToEol())
  reduced_system_tag = Group("reduced_system_tag", Str("REDUCED ...
  reduced_system_line = Group("reduced_system_line", reduced_sys...
  kernel_tag = Group("kernel_tag", Str("KERNEL"))
  kernel_line = Group("kernel_line", kernel_tag+ ToEol())
  convex_basis_tag = Group("convex_basis_tag", Str("CONVEX BASIS"))
  convex_basis_line = Group("convex_basis_line", convex_basis_ta...
  conservation_relations_tag = Group("conservation_relations_tag...
  conservation_relations_line = Group("conservation_relations_li...
  elementary_modes_tag = Group("elementary_modes_tag", Str("ELEM...
  elementary_modes_line = Group("elementary_modes_line", element...
  num_rows = Group("num_rows", Digits())
  num_cols = Group("num_cols", Digits())
  matrix_header = Group("matrix_header", optional_blank_space+ S...
  matrix_element = Group("matrix_element", Integer())
  matrix_row = Group("matrix_row", MaxRepeat(optional_blank_spac...
  matrix = Group("matrix", MaxRepeat(matrix_row, "num_rows", "nu...
  matrix_block = Group("matrix_block", matrix_header+ matrix)
  irreversible_vector = Group("irreversible_vector", MaxRepeat(b...
  little_gap = Str(" ")
  big_gap = Alt(Str("\t"), MaxRepeat(Str(" "), 2, 80))
  unbalanced_metabolite = Group("unbalanced_metabolite", Rep1(An...
  not_balanced_data = Group("not_balanced_data", optional_blank_...
  metabolite_roles_heading = Group("metabolite_roles_heading", S...
  metabolite_role_cols = Group("metabolite_role_cols", optional_...
  branch_metabolite = Group("branch_metabolite", optional_blank_...
  non_branch_metabolite = Group("non_branch_metabolite", optiona...
  branch_metabolite_block = Group("branch_metabolite_block", met...
  non_branch_metabolite_block = Group("non_branch_metabolite_blo...
  end_stoichiometric = Group("end_stochiometric", Rep(Expression...
  end_not_balanced = Group("end_not_balanced", Rep(Expression.As...
  end_kernel = Group("end_kernel", Rep(Expression.Assert(subsets...
  end_subsets = Group("end_subsets", Rep(Expression.Assert(reduc...
  end_reduced_system = Group("end_reduced_system", Rep(Expressio...
  end_convex_basis = Group("end_convex_basis", Rep(Expression.As...
  end_conservation_relations = Group("end_conservation_relations...
  end_elementary_modes = Group("end_elementary_modes", Rep(ToEol...
  input_file_block = Group("input_file_block", input_file_line+ ...
  metatool_block = Group("metatool_block", metatool_line+ Rep1(b...
  metabolite_count_block = Group("metabolite_count_block", metab...
  reaction_count_block = Group("reaction_count_block", reaction_...
  stoichiometric_block = Group("stoichiometric_block", stoichiom...
  not_balanced_block = Group("not_balanced_block", not_balanced_...
  kernel_block = Group("kernel_block", kernel_line+ Rep(blank_li...
  subsets_block = Group("subsets_block", subsets_line+ Rep(blank...
  reduced_system_block = Group("reduced_system_block", reduced_s...
  convex_basis_block = Group("convex_basis_block", convex_basis_...
  conservation_relations_block = Group("conservation_relations_b...
  elementary_modes_block = Group("elementary_modes_block", eleme...
  metatool_record = Group("metatool_record", metatool_block+ inp...
Variables Details [hide private]

lower_case_letter

Value:
Group("lower_case_letter", Any("abcdefghijklmnopqrstuvwxyz"))

enzyme

Value:
Group("enzyme", optional_blank_space+ Digits()+ optional_blank_space+ \
Str(':')+ ToEol())

reaction

Value:
Group("reaction", optional_blank_space+ Digits()+ optional_blank_space\
+ Str(":")+ ToEol())

not_found_line

Value:
Group("not_found_line", optional_blank_space+ Str("- not found -")+ To\
Eol())

enzymes_header

Value:
Group("enzymes_header", optional_blank_space+ Str("enzymes")+ ToEol())

enzymes_list

Value:
Group("enzymes_list", Alt(Rep1(enzyme), not_found_line))

enzymes_block

Value:
Group("enzymes_block", enzymes_header+ Rep(blank_line)+ enzymes_list)

reactions_header

Value:
Group("reactions_header", optional_blank_space+ Str("overall reaction"\
)+ ToEol())

reactions_list

Value:
Group("reactions_list", Alt(Rep1(reaction), not_found_line))

reactions_block

Value:
Group("reactions_block", reactions_header+ Rep(blank_line)+ reactions_\
list)

version

Value:
Group("version", Digits("version_major")+ Any(".")+ Digits("version_mi\
nor")+ rev)

metatool_line

Value:
Group("metatool_line", metatool_tag+ blank_space+ Str("Version")+ blan\
k_space+ version+ ToEol())

input_file_line

Value:
Group("input_file_line", input_file_tag+ blank_space+ ToEol("input_fil\
e_name"))

metabolite_count_line

Value:
Group("metabolite_count_line", metabolite_count_tag+ blank_space+ Digi\
ts("num_int_metabolites")+ ToEol())

reaction_count_line

Value:
Group("reaction_count_line", reaction_count_tag+ blank_space+ Digits("\
num_reactions")+ ToEol())

type_metabolite

Value:
Group("type_metabolite", Alt(Str("int"), Str("external")))

metabolite_info

Value:
Group("metabolite_info", optional_blank_space+ Digits()+ blank_space+ \
type_metabolite+ blank_space+ Rep1(AnyBut(white_space)))

metabolite_line

Value:
Group("metabolite_line", metabolite_info+ ToEol())

metabolites_summary

Value:
Group("metabolites_summary", optional_blank_space+ Digits()+ blank_spa\
ce+ Str("metabolites")+ ToEol())

metabolites_block

Value:
Group("metabolites_block", Rep1(metabolite_line)+ metabolites_summary+\
 Rep(blank_line))

graph_structure_heading

Value:
Group("graph_structure_heading", optional_blank_space+ Str("edges")+ b\
lank_space+ Str("frequency of nodes")+ ToEol())

graph_structure_line

Value:
Group("graph_structure_line", optional_blank_space+ Digits("edge_count\
")+ blank_space+ Digits("num_nodes")+ ToEol())

graph_structure_block

Value:
Group("graph_structure_block", graph_structure_heading+ Rep(blank_line\
)+ Rep1(graph_structure_line)+ Rep(blank_line))

sum_is_constant_line

Value:
Group("sum_is_constant_line", optional_blank_space+ Digits()+ optional\
_blank_space+ Any(":")+ optional_blank_space+ Rep1(AnyBut(white_space)\
)+ Rep(blank_space+ Any("+")+ blank_space+ Rep1(AnyBut(white_space)))+\
 optional_blank_space+ Str("=")+ ToEol())

sum_is_constant_block

Value:
Group("sum_is_constant_block", Rep(sum_is_constant_line))

stoichiometric_tag

Value:
Group("stoichiometric_tag", Str("STOICHIOMETRIC MATRIX"))

stoichiometric_line

Value:
Group("stoichiometric_line", stoichiometric_tag+ ToEol())

not_balanced_tag

Value:
Group("not_balanced_tag", Str("NOT BALANCED INTERNAL METABOLITES"))

not_balanced_line

Value:
Group("not_balanced_line", not_balanced_tag+ ToEol())

reduced_system_tag

Value:
Group("reduced_system_tag", Str("REDUCED SYSTEM"))

reduced_system_line

Value:
Group("reduced_system_line", reduced_system_tag+ Rep1(AnyBut(digits))+\
 Digits("branch_points")+ Rep1(AnyBut(digits))+ Digits()+ ToEol())

convex_basis_line

Value:
Group("convex_basis_line", convex_basis_tag+ ToEol())

conservation_relations_tag

Value:
Group("conservation_relations_tag", Str("CONSERVATION RELATIONS"))

conservation_relations_line

Value:
Group("conservation_relations_line", conservation_relations_tag+ ToEol\
())

elementary_modes_tag

Value:
Group("elementary_modes_tag", Str("ELEMENTARY MODES"))

elementary_modes_line

Value:
Group("elementary_modes_line", elementary_modes_tag+ ToEol())

matrix_header

Value:
Group("matrix_header", optional_blank_space+ Str("matrix dimension")+ \
blank_space+ Any("r")+ num_rows+ blank_space+ Any("x")+ blank_space+ A\
ny("c")+ num_cols+ optional_blank_space+ AnyEol())

matrix_row

Value:
Group("matrix_row", MaxRepeat(optional_blank_space+ matrix_element, "n\
um_cols", "num_cols")+ ToEol())

matrix

Value:
Group("matrix", MaxRepeat(matrix_row, "num_rows", "num_rows"))

irreversible_vector

Value:
Group("irreversible_vector", MaxRepeat(blank_space+ matrix_element, "n\
um_cols", "num_cols")+ ToEol())

unbalanced_metabolite

Value:
Group("unbalanced_metabolite", Rep1(AnyBut(white_space))+ Opt(little_g\
ap+ Rep1(AnyBut(white_space))))

not_balanced_data

Value:
Group("not_balanced_data", optional_blank_space+ unbalanced_metabolite\
+ Rep(big_gap+ unbalanced_metabolite)+ ToEol())

metabolite_roles_heading

Value:
Group("metabolite_roles_heading", Str("->")+ ToEol())

metabolite_role_cols

Value:
Group("metabolite_role_cols", optional_blank_space+ Str("met")+ blank_\
space+ Str("cons")+ blank_space+ Str("built")+ blank_space+ Str("react\
ions")+ ToEol())

branch_metabolite

Value:
Group("branch_metabolite", optional_blank_space+ Rep1(AnyBut(white_spa\
ce))+ blank_space+ RepN(Digits()+ blank_space, 3)+ Rep1(Any("ir"))+ To\
Eol())

non_branch_metabolite

Value:
Group("non_branch_metabolite", optional_blank_space+ Rep1(AnyBut(white\
_space))+ blank_space+ RepN(Digits()+ blank_space, 3)+ Rep1(Any("ir"))\
+ ToEol())

branch_metabolite_block

Value:
Group("branch_metabolite_block", metabolite_roles_heading+ metabolite_\
role_cols+ Rep(branch_metabolite))

non_branch_metabolite_block

Value:
Group("non_branch_metabolite_block", metabolite_roles_heading+ metabol\
ite_role_cols+ Rep(non_branch_metabolite))

end_stoichiometric

Value:
Group("end_stochiometric", Rep(Expression.Assert(not_balanced_tag, 1)+\
 Expression.Assert(kernel_tag, 1)+ ToEol()))

end_not_balanced

Value:
Group("end_not_balanced", Rep(Expression.Assert(kernel_tag, 1)+ ToEol(\
)))

end_kernel

Value:
Group("end_kernel", Rep(Expression.Assert(subsets_tag, 1)+ ToEol()))

end_subsets

Value:
Group("end_subsets", Rep(Expression.Assert(reduced_system_tag, 1)+ ToE\
ol()))

end_reduced_system

Value:
Group("end_reduced_system", Rep(Expression.Assert(convex_basis_tag, 1)\
+ ToEol()))

end_convex_basis

Value:
Group("end_convex_basis", Rep(Expression.Assert(conservation_relations\
_tag, 1)+ ToEol()))

end_conservation_relations

Value:
Group("end_conservation_relations", Rep(Expression.Assert(elementary_m\
odes_tag, 1)+ ToEol()))

end_elementary_modes

Value:
Group("end_elementary_modes", Rep(ToEol()))

input_file_block

Value:
Group("input_file_block", input_file_line+ Rep(blank_line))

metatool_block

Value:
Group("metatool_block", metatool_line+ Rep1(blank_line))

metabolite_count_block

Value:
Group("metabolite_count_block", metabolite_count_line+ Rep(blank_line)\
)

reaction_count_block

Value:
Group("reaction_count_block", reaction_count_line+ Rep(blank_line)+ me\
tabolites_block+ Rep(blank_line)+ graph_structure_block+ Rep(blank_lin\
e))

stoichiometric_block

Value:
Group("stoichiometric_block", stoichiometric_line+ Rep(blank_line)+ ma\
trix_block+ ToEol()+ irreversible_vector+ end_stoichiometric)

not_balanced_block

Value:
Group("not_balanced_block", not_balanced_line+ Rep(blank_line)+ not_ba\
lanced_data+ Rep(blank_line))

kernel_block

Value:
Group("kernel_block", kernel_line+ Rep(blank_line)+ matrix_block+ ToEo\
l()+ Rep(blank_line)+ enzymes_block+ Rep(blank_line)+ reactions_block+\
 end_kernel)

subsets_block

Value:
Group("subsets_block", subsets_line+ Rep(blank_line)+ matrix_block+ To\
Eol()+ Rep(blank_line)+ enzymes_block+ Rep(blank_line)+ reactions_bloc\
k+ end_subsets)

reduced_system_block

Value:
Group("reduced_system_block", reduced_system_line+ Rep(blank_line)+ ma\
trix_block+ ToEol()+ irreversible_vector+ Rep(blank_line)+ branch_meta\
bolite_block+ Rep(blank_line)+ non_branch_metabolite_block+ end_reduce\
d_system)

convex_basis_block

Value:
Group("convex_basis_block", convex_basis_line+ Rep(blank_line)+ matrix\
_block+ Opt(ToEol())+ Rep(blank_line)+ enzymes_block+ Rep(blank_line)+\
 reactions_block+ end_convex_basis)

conservation_relations_block

Value:
Group("conservation_relations_block", conservation_relations_line+ Rep\
(blank_line)+ matrix_block+ Rep(blank_line)+ sum_is_constant_block+ en\
d_conservation_relations)

elementary_modes_block

Value:
Group("elementary_modes_block", elementary_modes_line+ Rep(blank_line)\
+ matrix_block+ Opt(ToEol())+ Rep(blank_line)+ enzymes_block+ Rep(blan\
k_line)+ reactions_block+ end_elementary_modes)

metatool_record

Value:
Group("metatool_record", metatool_block+ input_file_block+ metabolite_\
count_block+ reaction_count_block+ stoichiometric_block+ Opt(not_balan\
ced_block)+ kernel_block+ subsets_block+ reduced_system_block+ convex_\
basis_block+ conservation_relations_block+ elementary_modes_block)