Martel expression for the hmmpfam database search program in
hmmer.
This has been tested with version 2.2g. I should also make it work
with 2.1.1 output.
XXX This isn't completely finished and doesn't do everything quite
right. The main two problems being that it isn't well tested for a wide
variety of outputs and that the family line is not parsed into it's
respective parts (see multitude of comments on this below).
|
program_description = Std.application_name(Str("hmmpfam"))+ To...
|
|
program_version = Str("HMMER ")+ Std.application_version(Re(r"...
|
|
copyright = ToEol()+ ToEol()
|
|
files = ToEol()+ Str("HMM file:")+ Spaces()+ Std.database_name...
|
|
header = Std.search_header(program_description+ program_versio...
|
|
sequence_info = ToEol()+ Str("Query sequence:")+ Spaces()+ Gro...
|
|
model_name = Re(r"[\w-]+")
|
|
family_header = ToEol()+ Str("Scores")+ ToEol()+ Str("Model")+...
|
|
no_hit_line = Spaces()+ Str("[no hits above thresholds]")+ Any...
|
|
family_hit_line = Group("family_model", model_name)+ Spaces()+...
|
|
domain_header = ToEol()+ Str("Parsed for domains:")+ AnyEol()+...
|
|
symbol_forward = Str(".") | Str("[")
|
|
symbol_reverse = Str(".") | Str("]")
|
|
match_symbols = symbol_forward+ symbol_reverse
|
|
domain_hit_line = Group("domain_model", model_name)+ Spaces()+...
|
|
alignment_header = ToEol()+ Str("Alignments of top-scoring dom...
|
|
domain_align_header = Group("dalign_name", model_name)+ Str(":...
|
|
rf_line = Spaces()+ Str("RF ")+ ToEol()
|
|
domain_align_top = Spaces()+ UntilEol("dalign_match_top")+ Any...
|
|
domain_align_middle = Spaces()+ UntilEol("dalign_match_middle"...
|
|
domain_align_bottom = Spaces()+ ToSep("dalign_query_name", " "...
|
|
domain_alignment = domain_align_header+ Rep1(Opt(rf_line)+ dom...
|
|
record_end = Str("//")+ AnyEol()
|
|
record = Std.record(Rep(sequence_info+ family_header+(no_hit_l...
|
|
format = HeaderFooter("hmmpfam", {}, header, RecordReader.Coun...
|
|
__warningregistry__ = { ( ' Bio.expressions was deprecated, as it ...
|